"""Broadworks OCI-P Interface Response Classes"""
# Autogenerated from the Broadworks XML Schemas.
# Do not edit as changes will be overwritten.
# Generated on 2020-09-30T08:51:44.474622
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.
    """

    _ELEMENTS = (
        E(
            "user_id",
            "userId",
            str,
            False,
            True,
            False,
        ),
        E(
            "nonce",
            "nonce",
            str,
            False,
            True,
            False,
        ),
        E(
            "password_algorithm",
            "passwordAlgorithm",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* userId
    user_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* nonce
    nonce = Field(
        type=str,
        required=True,
    )
    #: str: *Required* passwordAlgorithm
    password_algorithm = Field(
        type=str,
        required=True,
    )


class AuthenticationVerifyResponse(OCIResponse):
    """
    Response to ``AuthenticationVerifyRequest()``
    Replaced By ``AuthenticationVerifyResponse14sp8()``
    """

    _ELEMENTS = (
        E(
            "login_type",
            "loginType",
            str,
            False,
            True,
            False,
        ),
        E(
            "locale",
            "locale",
            str,
            False,
            True,
            False,
        ),
        E(
            "encoding",
            "encoding",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_id",
            "groupId",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_enterprise",
            "isEnterprise",
            bool,
            False,
            True,
            False,
        ),
        E(
            "password_expires_days",
            "passwordExpiresDays",
            int,
            False,
            False,
            False,
        ),
        E(
            "user_domain",
            "userDomain",
            str,
            False,
            True,
            False,
        ),
        E(
            "last_name",
            "lastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "first_name",
            "firstName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* loginType
    login_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* locale
    locale = Field(
        type=str,
        required=True,
    )
    #: str: *Required* encoding
    encoding = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* groupId
    group_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isEnterprise
    is_enterprise = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* passwordExpiresDays
    password_expires_days = Field(
        type=int,
        required=False,
    )
    #: str: *Required* userDomain
    user_domain = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* lastName
    last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* firstName
    first_name = Field(
        type=str,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "login_type",
            "loginType",
            str,
            False,
            True,
            False,
        ),
        E(
            "locale",
            "locale",
            str,
            False,
            True,
            False,
        ),
        E(
            "encoding",
            "encoding",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_id",
            "groupId",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_enterprise",
            "isEnterprise",
            bool,
            False,
            True,
            False,
        ),
        E(
            "password_expires_days",
            "passwordExpiresDays",
            int,
            False,
            False,
            False,
        ),
        E(
            "last_name",
            "lastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "first_name",
            "firstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "user_id",
            "userId",
            str,
            False,
            True,
            False,
        ),
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* loginType
    login_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* locale
    locale = Field(
        type=str,
        required=True,
    )
    #: str: *Required* encoding
    encoding = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* groupId
    group_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isEnterprise
    is_enterprise = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* passwordExpiresDays
    password_expires_days = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* lastName
    last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* firstName
    first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* userId
    user_id = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=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()``.
    """

    _ELEMENTS = (
        E(
            "file_repository_user_name",
            "fileRepositoryUserName",
            str,
            False,
            True,
            False,
        ),
        E(
            "file_repository_password",
            "fileRepositoryPassword",
            str,
            False,
            True,
            False,
        ),
        E(
            "net_address",
            "netAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "remote_file_format",
            "remoteFileFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "port_number",
            "portNumber",
            int,
            False,
            False,
            False,
        ),
        E(
            "root_directory",
            "rootDirectory",
            str,
            False,
            False,
            False,
        ),
        E(
            "cpe_file_directory",
            "cpeFileDirectory",
            str,
            False,
            False,
            False,
        ),
        E(
            "secure",
            "secure",
            bool,
            False,
            False,
            False,
        ),
        E(
            "mac_in_non_request_uri",
            "macInNonRequestURI",
            bool,
            False,
            False,
            False,
        ),
        E(
            "mac_format_in_non_request_uri",
            "macFormatInNonRequestURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_http_digest_authentication",
            "useHttpDigestAuthentication",
            bool,
            False,
            False,
            False,
        ),
        E(
            "mac_based_file_authentication",
            "macBasedFileAuthentication",
            bool,
            False,
            False,
            False,
        ),
        E(
            "user_name_password_file_authentication",
            "userNamePasswordFileAuthentication",
            bool,
            False,
            False,
            False,
        ),
        E(
            "completion_notification",
            "completionNotification",
            bool,
            False,
            False,
            False,
        ),
        E(
            "file_category",
            "fileCategory",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* fileRepositoryUserName
    file_repository_user_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* fileRepositoryPassword
    file_repository_password = Field(
        type=str,
        required=True,
    )
    #: str: *Required* netAddress
    net_address = Field(
        type=str,
        required=True,
    )
    #: str: *Required* remoteFileFormat
    remote_file_format = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* portNumber
    port_number = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* rootDirectory
    root_directory = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* cpeFileDirectory
    cpe_file_directory = Field(
        type=str,
        required=False,
    )
    #: bool: *Optional* secure
    secure = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* macInNonRequestURI
    mac_in_non_request_uri = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* macFormatInNonRequestURI
    mac_format_in_non_request_uri = Field(
        type=str,
        required=False,
    )
    #: bool: *Optional* useHttpDigestAuthentication
    use_http_digest_authentication = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* macBasedFileAuthentication
    mac_based_file_authentication = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* userNamePasswordFileAuthentication
    user_name_password_file_authentication = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* completionNotification
    completion_notification = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* fileCategory
    file_category = Field(
        type=str,
        required=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()``
    """

    _ELEMENTS = (
        E(
            "file_repository_user_name",
            "fileRepositoryUserName",
            str,
            False,
            True,
            False,
        ),
        E(
            "file_repository_password",
            "fileRepositoryPassword",
            str,
            False,
            True,
            False,
        ),
        E(
            "net_address",
            "netAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "remote_file_format",
            "remoteFileFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "port_number",
            "portNumber",
            int,
            False,
            False,
            False,
        ),
        E(
            "root_directory",
            "rootDirectory",
            str,
            False,
            False,
            False,
        ),
        E(
            "cpe_file_directory",
            "cpeFileDirectory",
            str,
            False,
            False,
            False,
        ),
        E(
            "secure",
            "secure",
            bool,
            False,
            False,
            False,
        ),
        E(
            "mac_in_non_request_uri",
            "macInNonRequestURI",
            bool,
            False,
            False,
            False,
        ),
        E(
            "mac_format_in_non_request_uri",
            "macFormatInNonRequestURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_http_digest_authentication",
            "useHttpDigestAuthentication",
            bool,
            False,
            False,
            False,
        ),
        E(
            "mac_based_file_authentication",
            "macBasedFileAuthentication",
            bool,
            False,
            False,
            False,
        ),
        E(
            "user_name_password_file_authentication",
            "userNamePasswordFileAuthentication",
            bool,
            False,
            False,
            False,
        ),
        E(
            "completion_notification",
            "completionNotification",
            bool,
            False,
            False,
            False,
        ),
        E(
            "file_category",
            "fileCategory",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* fileRepositoryUserName
    file_repository_user_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* fileRepositoryPassword
    file_repository_password = Field(
        type=str,
        required=True,
    )
    #: str: *Required* netAddress
    net_address = Field(
        type=str,
        required=True,
    )
    #: str: *Required* remoteFileFormat
    remote_file_format = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* portNumber
    port_number = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* rootDirectory
    root_directory = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* cpeFileDirectory
    cpe_file_directory = Field(
        type=str,
        required=False,
    )
    #: bool: *Optional* secure
    secure = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* macInNonRequestURI
    mac_in_non_request_uri = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* macFormatInNonRequestURI
    mac_format_in_non_request_uri = Field(
        type=str,
        required=False,
    )
    #: bool: *Optional* useHttpDigestAuthentication
    use_http_digest_authentication = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* macBasedFileAuthentication
    mac_based_file_authentication = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* userNamePasswordFileAuthentication
    user_name_password_file_authentication = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* completionNotification
    completion_notification = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* fileCategory
    file_category = Field(
        type=str,
        required=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()``.
    """

    _ELEMENTS = (
        E(
            "file_repository_user_name",
            "fileRepositoryUserName",
            str,
            False,
            True,
            False,
        ),
        E(
            "file_repository_password",
            "fileRepositoryPassword",
            str,
            False,
            True,
            False,
        ),
        E(
            "net_address",
            "netAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "remote_file_format",
            "remoteFileFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "port_number",
            "portNumber",
            int,
            False,
            False,
            False,
        ),
        E(
            "root_directory",
            "rootDirectory",
            str,
            False,
            False,
            False,
        ),
        E(
            "cpe_file_directory",
            "cpeFileDirectory",
            str,
            False,
            False,
            False,
        ),
        E(
            "secure",
            "secure",
            bool,
            False,
            False,
            False,
        ),
        E(
            "mac_in_non_request_uri",
            "macInNonRequestURI",
            bool,
            False,
            False,
            False,
        ),
        E(
            "mac_format_in_non_request_uri",
            "macFormatInNonRequestURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_http_digest_authentication",
            "useHttpDigestAuthentication",
            bool,
            False,
            False,
            False,
        ),
        E(
            "mac_based_file_authentication",
            "macBasedFileAuthentication",
            bool,
            False,
            False,
            False,
        ),
        E(
            "user_name_password_file_authentication",
            "userNamePasswordFileAuthentication",
            bool,
            False,
            False,
            False,
        ),
        E(
            "completion_notification",
            "completionNotification",
            bool,
            False,
            False,
            False,
        ),
        E(
            "file_category",
            "fileCategory",
            str,
            False,
            False,
            False,
        ),
        E(
            "enable_caching",
            "enableCaching",
            bool,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* fileRepositoryUserName
    file_repository_user_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* fileRepositoryPassword
    file_repository_password = Field(
        type=str,
        required=True,
    )
    #: str: *Required* netAddress
    net_address = Field(
        type=str,
        required=True,
    )
    #: str: *Required* remoteFileFormat
    remote_file_format = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* portNumber
    port_number = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* rootDirectory
    root_directory = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* cpeFileDirectory
    cpe_file_directory = Field(
        type=str,
        required=False,
    )
    #: bool: *Optional* secure
    secure = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* macInNonRequestURI
    mac_in_non_request_uri = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* macFormatInNonRequestURI
    mac_format_in_non_request_uri = Field(
        type=str,
        required=False,
    )
    #: bool: *Optional* useHttpDigestAuthentication
    use_http_digest_authentication = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* macBasedFileAuthentication
    mac_based_file_authentication = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* userNamePasswordFileAuthentication
    user_name_password_file_authentication = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* completionNotification
    completion_notification = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* fileCategory
    file_category = Field(
        type=str,
        required=False,
    )
    #: bool: *Optional* enableCaching
    enable_caching = Field(
        type=bool,
        required=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.
    """

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


class EnterpriseBroadWorksMobileManagerGetDomainListResponse(OCIResponse):
    """
    Response to the ``EnterpriseBroadWorksMobileManagerGetDomainListRequest()``.
    Contains the list of domains.
    """

    _ELEMENTS = (
        E(
            "domain_name",
            "domainName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* domainName
    domain_name = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "home_zones_table",
            "homeZonesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* homeZonesTable  *Tabular*
    home_zones_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "home_zone_domain_name",
            "homeZoneDomainName",
            str,
            False,
            True,
            False,
        ),
        E(
            "mobile_country_code",
            "mobileCountryCode",
            str,
            False,
            True,
            False,
        ),
        E(
            "mobile_network_code",
            "mobileNetworkCode",
            str,
            False,
            True,
            False,
        ),
        E(
            "location_area_code",
            "locationAreaCode",
            str,
            False,
            True,
            False,
        ),
        E(
            "cell_identity",
            "cellIdentity",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* homeZoneDomainName
    home_zone_domain_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* mobileCountryCode
    mobile_country_code = Field(
        type=str,
        required=True,
    )
    #: str: *Required* mobileNetworkCode
    mobile_network_code = Field(
        type=str,
        required=True,
    )
    #: str: *Required* locationAreaCode
    location_area_code = Field(
        type=str,
        required=True,
    )
    #: str: *Required* cellIdentity
    cell_identity = Field(
        type=str,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "mobile_manager_id",
            "mobileManagerId",
            str,
            False,
            True,
            False,
        ),
        E(
            "name",
            "name",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "local_to_carrier",
            "localToCarrier",
            bool,
            False,
            True,
            False,
        ),
        E(
            "deactivation_reason",
            "deactivationReason",
            str,
            False,
            False,
            False,
        ),
        E(
            "max_tx_per_second_enabled",
            "maxTxPerSecondEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_tx_per_second",
            "maxTxPerSecond",
            int,
            False,
            False,
            False,
        ),
        E(
            "tldn_enabled",
            "tldnEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "generic_number_enabled",
            "genericNumberEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mobile_state_check_enabled",
            "mobileStateCheckEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "location_based_services_enabled",
            "locationBasedServicesEnabled",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* mobileManagerId
    mobile_manager_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* name
    name = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* localToCarrier
    local_to_carrier = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* deactivationReason
    deactivation_reason = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* maxTxPerSecondEnabled
    max_tx_per_second_enabled = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* maxTxPerSecond
    max_tx_per_second = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* tldnEnabled
    tldn_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* genericNumberEnabled
    generic_number_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* mobileStateCheckEnabled
    mobile_state_check_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* locationBasedServicesEnabled
    location_based_services_enabled = Field(
        type=bool,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "mobile_subscriber_directory_numbers_assignment_table",
            "mobileSubscriberDirectoryNumbersAssignmentTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* mobileSubscriberDirectoryNumbersAssignmentTable  *Tabular*
    mobile_subscriber_directory_numbers_assignment_table = Field(
        type=list,
        required=True,
    )


class EnterpriseBroadWorksMobilityMobileSubscriberDirectoryNumberGetAvailableListResponse(
    OCIResponse,
):
    """
    Response to ``EnterpriseBroadWorksMobilityMobileSubscriberDirectoryNumberGetAvailableListRequest()``.
    Contains a list of available Mobile Subscriber Directory Numbers not yet assigned
    to any user.
    """

    _ELEMENTS = (
        E(
            "available_mobile_subscriber_directory_number",
            "availableMobileSubscriberDirectoryNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* availableMobileSubscriberDirectoryNumber
    available_mobile_subscriber_directory_number = Field(
        type=str,
        required=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";
    """

    _ELEMENTS = (
        E(
            "profile_name",
            "profileName",
            str,
            False,
            True,
            False,
        ),
        E(
            "profile_description",
            "profileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_call_state_idle_time_yellow",
            "thresholdCurrentCallStateIdleTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_call_state_idle_time_red",
            "thresholdCurrentCallStateIdleTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_call_state_on_call_time_yellow",
            "thresholdCurrentCallStateOnCallTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_call_state_on_call_time_red",
            "thresholdCurrentCallStateOnCallTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_agent_state_unavailable_time_yellow",
            "thresholdCurrentAgentStateUnavailableTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_agent_state_unavailable_time_red",
            "thresholdCurrentAgentStateUnavailableTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_busy_in_time_yellow",
            "thresholdAverageBusyInTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_busy_in_time_red",
            "thresholdAverageBusyInTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_busy_out_time_yellow",
            "thresholdAverageBusyOutTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_busy_out_time_red",
            "thresholdAverageBusyOutTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_wrap_up_time_yellow",
            "thresholdAverageWrapUpTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_wrap_up_time_red",
            "thresholdAverageWrapUpTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_notification_email",
            "enableNotificationEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "notification_email_address",
            "notificationEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "agent_table",
            "agentTable",
            list,
            True,
            False,
            True,
        ),
    )
    #: str: *Required* profileName
    profile_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* profileDescription
    profile_description = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* thresholdCurrentCallStateIdleTimeYellow
    threshold_current_call_state_idle_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentCallStateIdleTimeRed
    threshold_current_call_state_idle_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentCallStateOnCallTimeYellow
    threshold_current_call_state_on_call_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentCallStateOnCallTimeRed
    threshold_current_call_state_on_call_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentAgentStateUnavailableTimeYellow
    threshold_current_agent_state_unavailable_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentAgentStateUnavailableTimeRed
    threshold_current_agent_state_unavailable_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageBusyInTimeYellow
    threshold_average_busy_in_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageBusyInTimeRed
    threshold_average_busy_in_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageBusyOutTimeYellow
    threshold_average_busy_out_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageBusyOutTimeRed
    threshold_average_busy_out_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageWrapUpTimeYellow
    threshold_average_wrap_up_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageWrapUpTimeRed
    threshold_average_wrap_up_time_red = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableNotificationEmail
    enable_notification_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* notificationEmailAddress
    notification_email_address = Field(
        type=str,
        required=False,
    )
    #: list: *Optional* agentTable  *Tabular*
    agent_table = Field(
        type=list,
        required=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";
    """

    _ELEMENTS = (
        E(
            "agent_table",
            "agentTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* agentTable  *Tabular*
    agent_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "profiles_table",
            "profilesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* profilesTable  *Tabular*
    profiles_table = Field(
        type=list,
        required=True,
    )


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";
    """

    _ELEMENTS = (
        E(
            "profile_description",
            "profileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_call_state_idle_time_yellow",
            "thresholdCurrentCallStateIdleTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_call_state_idle_time_red",
            "thresholdCurrentCallStateIdleTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_call_state_on_call_time_yellow",
            "thresholdCurrentCallStateOnCallTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_call_state_on_call_time_red",
            "thresholdCurrentCallStateOnCallTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_agent_state_unavailable_time_yellow",
            "thresholdCurrentAgentStateUnavailableTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_agent_state_unavailable_time_red",
            "thresholdCurrentAgentStateUnavailableTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_busy_in_time_yellow",
            "thresholdAverageBusyInTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_busy_in_time_red",
            "thresholdAverageBusyInTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_busy_out_time_yellow",
            "thresholdAverageBusyOutTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_busy_out_time_red",
            "thresholdAverageBusyOutTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_wrap_up_time_yellow",
            "thresholdAverageWrapUpTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_wrap_up_time_red",
            "thresholdAverageWrapUpTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_notification_email",
            "enableNotificationEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "notification_email_address",
            "notificationEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "agent_table",
            "agentTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Optional* profileDescription
    profile_description = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* thresholdCurrentCallStateIdleTimeYellow
    threshold_current_call_state_idle_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentCallStateIdleTimeRed
    threshold_current_call_state_idle_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentCallStateOnCallTimeYellow
    threshold_current_call_state_on_call_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentCallStateOnCallTimeRed
    threshold_current_call_state_on_call_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentAgentStateUnavailableTimeYellow
    threshold_current_agent_state_unavailable_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentAgentStateUnavailableTimeRed
    threshold_current_agent_state_unavailable_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageBusyInTimeYellow
    threshold_average_busy_in_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageBusyInTimeRed
    threshold_average_busy_in_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageBusyOutTimeYellow
    threshold_average_busy_out_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageBusyOutTimeRed
    threshold_average_busy_out_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageWrapUpTimeYellow
    threshold_average_wrap_up_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageWrapUpTimeRed
    threshold_average_wrap_up_time_red = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableNotificationEmail
    enable_notification_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* notificationEmailAddress
    notification_email_address = Field(
        type=str,
        required=False,
    )
    #: list: *Required* agentTable  *Tabular*
    agent_table = Field(
        type=list,
        required=True,
    )


class EnterpriseCallCenterAgentUnavailableCodeGetListResponse(OCIResponse):
    """
    Response to the ``EnterpriseCallCenterAgentUnavailableCodeGetListRequest()``.
    Contains a table with column headings: "Is Active", "Code", "Description".
    """

    _ELEMENTS = (
        E(
            "unavailable_codes_table",
            "unavailableCodesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* unavailableCodesTable  *Tabular*
    unavailable_codes_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )


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

    Replaced by ``EnterpriseCallCenterAgentUnavailableCodeSettingsGetResponse17sp4()``.
    """

    _ELEMENTS = (
        E(
            "enable_agent_unavailable_codes",
            "enableAgentUnavailableCodes",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_agent_unavailable_code_on_dnd",
            "defaultAgentUnavailableCodeOnDND",
            str,
            False,
            False,
            False,
        ),
        E(
            "default_agent_unavailable_code_on_personal_calls",
            "defaultAgentUnavailableCodeOnPersonalCalls",
            str,
            False,
            False,
            False,
        ),
        E(
            "default_agent_unavailable_code_on_consecutive_bounces",
            "defaultAgentUnavailableCodeOnConsecutiveBounces",
            str,
            False,
            False,
            False,
        ),
        E(
            "force_use_of_agent_unavailable_codes",
            "forceUseOfAgentUnavailableCodes",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_agent_unavailable_code",
            "defaultAgentUnavailableCode",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* enableAgentUnavailableCodes
    enable_agent_unavailable_codes = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* defaultAgentUnavailableCodeOnDND
    default_agent_unavailable_code_on_dnd = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* defaultAgentUnavailableCodeOnPersonalCalls
    default_agent_unavailable_code_on_personal_calls = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* defaultAgentUnavailableCodeOnConsecutiveBounces
    default_agent_unavailable_code_on_consecutive_bounces = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* forceUseOfAgentUnavailableCodes
    force_use_of_agent_unavailable_codes = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* defaultAgentUnavailableCode
    default_agent_unavailable_code = Field(
        type=str,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "enable_agent_unavailable_codes",
            "enableAgentUnavailableCodes",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_agent_unavailable_code_on_dnd",
            "defaultAgentUnavailableCodeOnDND",
            str,
            False,
            False,
            False,
        ),
        E(
            "default_agent_unavailable_code_on_personal_calls",
            "defaultAgentUnavailableCodeOnPersonalCalls",
            str,
            False,
            False,
            False,
        ),
        E(
            "default_agent_unavailable_code_on_consecutive_bounces",
            "defaultAgentUnavailableCodeOnConsecutiveBounces",
            str,
            False,
            False,
            False,
        ),
        E(
            "default_agent_unavailable_code_on_not_reachable",
            "defaultAgentUnavailableCodeOnNotReachable",
            str,
            False,
            False,
            False,
        ),
        E(
            "force_use_of_agent_unavailable_codes",
            "forceUseOfAgentUnavailableCodes",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_agent_unavailable_code",
            "defaultAgentUnavailableCode",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* enableAgentUnavailableCodes
    enable_agent_unavailable_codes = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* defaultAgentUnavailableCodeOnDND
    default_agent_unavailable_code_on_dnd = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* defaultAgentUnavailableCodeOnPersonalCalls
    default_agent_unavailable_code_on_personal_calls = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* defaultAgentUnavailableCodeOnConsecutiveBounces
    default_agent_unavailable_code_on_consecutive_bounces = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* defaultAgentUnavailableCodeOnNotReachable
    default_agent_unavailable_code_on_not_reachable = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* forceUseOfAgentUnavailableCodes
    force_use_of_agent_unavailable_codes = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* defaultAgentUnavailableCode
    default_agent_unavailable_code = Field(
        type=str,
        required=False,
    )


class EnterpriseCallCenterCallDispositionCodeGetListResponse(OCIResponse):
    """
    Response to the ``EnterpriseCallCenterCallDispositionCodeGetListRequest()``.
    Contains a table with column headings: "Is Active", "Code", "Description".
    """

    _ELEMENTS = (
        E(
            "disposition_codes_table",
            "dispositionCodesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* dispositionCodesTable  *Tabular*
    disposition_codes_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "call_center_table",
            "callCenterTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* callCenterTable  *Tabular*
    call_center_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "agent_user_table",
            "agentUserTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "deleted_agent_user_table",
            "deletedAgentUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* agentUserTable  *Tabular*
    agent_user_table = Field(
        type=list,
        required=True,
    )
    #: list: *Required* deletedAgentUserTable  *Tabular*
    deleted_agent_user_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "service_user_id",
            "serviceUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "deleted_service_user_id",
            "deletedServiceUserId",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* serviceUserId
    service_user_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* deletedServiceUserId
    deleted_service_user_id = Field(
        type=str,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "name",
            "name",
            str,
            False,
            False,
            False,
        ),
        E(
            "deleted_name",
            "deletedName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* name
    name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* deletedName
    deleted_name = Field(
        type=str,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "branding_choice",
            "brandingChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "branding_file_description",
            "brandingFileDescription",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* brandingChoice
    branding_choice = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* brandingFileDescription
    branding_file_description = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "report_template_table",
            "reportTemplateTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* reportTemplateTable  *Tabular*
    report_template_table = Field(
        type=list,
        required=True,
    )


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

    Replaced by ``EnterpriseCallCenterEnhancedReportingGetResponse19()``
    """

    _ELEMENTS = (
        E(
            "reporting_server",
            "reportingServer",
            str,
            False,
            True,
            False,
        ),
        E(
            "web_statistic_source",
            "webStatisticSource",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* reportingServer
    reporting_server = Field(
        type=str,
        required=True,
    )
    #: str: *Required* webStatisticSource
    web_statistic_source = Field(
        type=str,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "reporting_server",
            "reportingServer",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* reportingServer
    reporting_server = Field(
        type=str,
        required=True,
    )


class EnterpriseCallCenterEnhancedReportingReportTemplateGetListResponse(OCIResponse):
    """
    Response to ``EnterpriseCallCenterEnhancedReportingReportTemplateGetListRequest()``.
    Contains a table with column headings: "Name", "Description", "Type" and "Enabled".
    """

    _ELEMENTS = (
        E(
            "report_template_table",
            "reportTemplateTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* reportTemplateTable  *Tabular*
    report_template_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "data_template",
            "dataTemplate",
            str,
            False,
            True,
            False,
        ),
        E(
            "filter_number",
            "filterNumber",
            int,
            False,
            False,
            False,
        ),
        E(
            "xslt_template_description",
            "xsltTemplateDescription",
            str,
            False,
            True,
            False,
        ),
        E(
            "scope",
            "scope",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_enabled",
            "isEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_realtime_report",
            "isRealtimeReport",
            bool,
            False,
            False,
            False,
        ),
        E(
            "call_completion_threshold_param",
            "callCompletionThresholdParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "short_duration_threshold_param",
            "shortDurationThresholdParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_level_threshold_param",
            "serviceLevelThresholdParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_level_inclusions_param",
            "serviceLevelInclusionsParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_level_objective_threshold_param",
            "serviceLevelObjectiveThresholdParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "abandoned_call_threshold_param",
            "abandonedCallThresholdParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_level_threshold_param_number",
            "serviceLevelThresholdParamNumber",
            int,
            False,
            False,
            False,
        ),
        E(
            "abandoned_call_threshold_param_number",
            "abandonedCallThresholdParamNumber",
            int,
            False,
            False,
            False,
        ),
        E(
            "filter_value",
            "filterValue",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Required* dataTemplate
    data_template = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* filterNumber
    filter_number = Field(
        type=int,
        required=False,
    )
    #: str: *Required* xsltTemplateDescription
    xslt_template_description = Field(
        type=str,
        required=True,
    )
    #: str: *Required* scope
    scope = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isEnabled
    is_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Optional* isRealtimeReport
    is_realtime_report = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* callCompletionThresholdParam
    call_completion_threshold_param = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* shortDurationThresholdParam
    short_duration_threshold_param = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serviceLevelThresholdParam
    service_level_threshold_param = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serviceLevelInclusionsParam
    service_level_inclusions_param = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serviceLevelObjectiveThresholdParam
    service_level_objective_threshold_param = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* abandonedCallThresholdParam
    abandoned_call_threshold_param = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* serviceLevelThresholdParamNumber
    service_level_threshold_param_number = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* abandonedCallThresholdParamNumber
    abandoned_call_threshold_param_number = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* filterValue
    filter_value = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "scheduled_report_table",
            "scheduledReportTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* scheduledReportTable  *Tabular*
    scheduled_report_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "scheduled_report_table",
            "scheduledReportTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* scheduledReportTable  *Tabular*
    scheduled_report_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "scheduled_report_table",
            "scheduledReportTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* scheduledReportTable  *Tabular*
    scheduled_report_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "schedule_report_table",
            "scheduleReportTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* scheduleReportTable  *Tabular*
    schedule_report_table = Field(
        type=list,
        required=True,
    )


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

    Replaced by ``EnterpriseCallCenterGetResponse17sp4()``.
    """

    _ELEMENTS = (
        E(
            "use_system_default_guard_timer",
            "useSystemDefaultGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_guard_timer",
            "enableGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "guard_timer_seconds",
            "guardTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_system_default_unavailable_settings",
            "useSystemDefaultUnavailableSettings",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit",
            bool,
            False,
            False,
            False,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable",
            int,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* useSystemDefaultGuardTimer
    use_system_default_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableGuardTimer
    enable_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* guardTimerSeconds
    guard_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Optional* useSystemDefaultUnavailableSettings
    use_system_default_unavailable_settings = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnDNDActivation
    force_agent_unavailable_on_dnd_activation = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnPersonalCalls
    force_agent_unavailable_on_personal_calls = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnBouncedCallLimit
    force_agent_unavailable_on_bounced_call_limit = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* numberConsecutiveBouncedCallsToForceAgentUnavailable
    number_consecutive_bounced_calls_to_force_agent_unavailable = Field(
        type=int,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "use_system_default_guard_timer",
            "useSystemDefaultGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_guard_timer",
            "enableGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "guard_timer_seconds",
            "guardTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_system_default_unavailable_settings",
            "useSystemDefaultUnavailableSettings",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit",
            bool,
            False,
            False,
            False,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable",
            int,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_not_reachable",
            "forceAgentUnavailableOnNotReachable",
            bool,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* useSystemDefaultGuardTimer
    use_system_default_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableGuardTimer
    enable_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* guardTimerSeconds
    guard_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Optional* useSystemDefaultUnavailableSettings
    use_system_default_unavailable_settings = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnDNDActivation
    force_agent_unavailable_on_dnd_activation = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnPersonalCalls
    force_agent_unavailable_on_personal_calls = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnBouncedCallLimit
    force_agent_unavailable_on_bounced_call_limit = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* numberConsecutiveBouncedCallsToForceAgentUnavailable
    number_consecutive_bounced_calls_to_force_agent_unavailable = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnNotReachable
    force_agent_unavailable_on_not_reachable = Field(
        type=bool,
        required=False,
    )


class EnterpriseCallCenterGetRoutingPolicyResponse(OCIResponse):
    """
    Response to ``EnterpriseCallCenterGetRoutingPolicyRequest()``.
    Contains a table with column headings: "Service User Id", "Name" and
    "Priority".
    """

    _ELEMENTS = (
        E(
            "routing_policy",
            "routingPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_center_table",
            "callCenterTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Required* routingPolicy
    routing_policy = Field(
        type=str,
        required=True,
    )
    #: list: *Required* callCenterTable  *Tabular*
    call_center_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "enterprise_trunk_table",
            "enterpriseTrunkTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* enterpriseTrunkTable  *Tabular*
    enterprise_trunk_table = Field(
        type=list,
        required=True,
    )


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

    Replaced By ``EnterpriseEnterpriseTrunkGetResponse21()``.
    """

    _ELEMENTS = (
        E(
            "maximum_reroute_attempts",
            "maximumRerouteAttempts",
            int,
            False,
            True,
            False,
        ),
        E(
            "route_exhaustion_action",
            "routeExhaustionAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "route_exhaustion_forward_address",
            "routeExhaustionForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "ordered_routing",
            "orderedRouting",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "priority_weighted_routing",
            "priorityWeightedRouting",
            str,
            True,
            True,
            False,
        ),  # unknown
    )
    #: int: *Required* maximumRerouteAttempts
    maximum_reroute_attempts = Field(
        type=int,
        required=True,
    )
    #: str: *Required* routeExhaustionAction
    route_exhaustion_action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* routeExhaustionForwardAddress
    route_exhaustion_forward_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* orderedRouting
    ordered_routing = Field(
        type=str,
        required=True,
    )
    #: str: *Required* priorityWeightedRouting
    priority_weighted_routing = Field(
        type=str,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "maximum_reroute_attempts",
            "maximumRerouteAttempts",
            int,
            False,
            True,
            False,
        ),
        E(
            "route_exhaustion_action",
            "routeExhaustionAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "route_exhaustion_forward_address",
            "routeExhaustionForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "ordered_routing",
            "orderedRouting",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "priority_weighted_routing",
            "priorityWeightedRouting",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "enable_capacity_management",
            "enableCapacityManagement",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_active_calls",
            "maxActiveCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_trap_initial_calls",
            "capacityExceededTrapInitialCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_trap_offset_calls",
            "capacityExceededTrapOffsetCalls",
            int,
            False,
            False,
            False,
        ),
    )
    #: int: *Required* maximumRerouteAttempts
    maximum_reroute_attempts = Field(
        type=int,
        required=True,
    )
    #: str: *Required* routeExhaustionAction
    route_exhaustion_action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* routeExhaustionForwardAddress
    route_exhaustion_forward_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* orderedRouting
    ordered_routing = Field(
        type=str,
        required=True,
    )
    #: str: *Required* priorityWeightedRouting
    priority_weighted_routing = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableCapacityManagement
    enable_capacity_management = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* maxActiveCalls
    max_active_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* capacityExceededTrapInitialCalls
    capacity_exceeded_trap_initial_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* capacityExceededTrapOffsetCalls
    capacity_exceeded_trap_offset_calls = Field(
        type=int,
        required=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".
    """

    _ELEMENTS = (
        E(
            "enterprise_trunk_user_table",
            "enterpriseTrunkUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* enterpriseTrunkUserTable  *Tabular*
    enterprise_trunk_user_table = Field(
        type=list,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "directory_table",
            "directoryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* directoryTable  *Tabular*
    directory_table = Field(
        type=list,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "directory_table",
            "directoryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* directoryTable  *Tabular*
    directory_table = Field(
        type=list,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "directory_table",
            "directoryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* directoryTable  *Tabular*
    directory_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "directory_table",
            "directoryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* directoryTable  *Tabular*
    directory_table = Field(
        type=list,
        required=True,
    )


class EnterprisePreAlertingAnnouncementGetResponse(OCIResponse):
    """
    Get the Enterprise level pre-alerting service settings.
    The response is either a ``EnterprisePreAlertingAnnouncementGetResponse()`` or an
    ``ErrorResponse()``.
    """

    _ELEMENTS = (
        E(
            "announcement_interruption",
            "announcementInterruption",
            str,
            False,
            True,
            False,
        ),
        E(
            "interruption_digit_sequence",
            "interruptionDigitSequence",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_selection",
            "audioSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_media_type",
            "audioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_file_url",
            "audioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_selection",
            "videoSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_media_type",
            "videoMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_url",
            "videoFileUrl",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* announcementInterruption
    announcement_interruption = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* interruptionDigitSequence
    interruption_digit_sequence = Field(
        type=str,
        required=False,
    )
    #: str: *Required* audioSelection
    audio_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioMediaType
    audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioFileUrl
    audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Required* videoSelection
    video_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoMediaType
    video_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileUrl
    video_file_url = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "available_number_range_table",
            "availableNumberRangeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* availableNumberRangeTable  *Tabular*
    available_number_range_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "number_range_summary_table",
            "numberRangeSummaryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* numberRangeSummaryTable  *Tabular*
    number_range_summary_table = Field(
        type=list,
        required=True,
    )


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"..
    """

    _ELEMENTS = (
        E(
            "session_admission_control_group_table",
            "sessionAdmissionControlGroupTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* sessionAdmissionControlGroupTable  *Tabular*
    session_admission_control_group_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


class EnterpriseVoiceVPNGetPolicyListResponse(OCIResponse):
    """
    Response to ``EnterpriseVoiceVPNGetListResponse()``.
    Returns a 4 column table with column headings:
    "Location Code", "Min Extension Length", "Max Extension Length", "Location Selection".
    """

    _ELEMENTS = (
        E(
            "location_list",
            "locationList",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* locationList  *Tabular*
    location_list = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_selection",
            "defaultSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "e164_selection",
            "e164Selection",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* defaultSelection
    default_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Required* e164Selection
    e164_selection = Field(
        type=str,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_selection",
            "defaultSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "e164_selection",
            "e164Selection",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_phone_context",
            "usePhoneContext",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* defaultSelection
    default_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Required* e164Selection
    e164_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* usePhoneContext
    use_phone_context = Field(
        type=bool,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "login_token",
            "loginToken",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* loginToken
    login_token = Field(
        type=str,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "port_number",
            "portNumber",
            int,
            False,
            False,
            False,
        ),
    )
    #: int: *Optional* portNumber
    port_number = Field(
        type=int,
        required=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"
    """

    _ELEMENTS = (
        E(
            "device_custom_tags_table",
            "deviceCustomTagsTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceCustomTagsTable  *Tabular*
    device_custom_tags_table = Field(
        type=list,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "device_files_table",
            "deviceFilesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceFilesTable  *Tabular*
    device_files_table = Field(
        type=list,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "device_files_table",
            "deviceFilesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceFilesTable  *Tabular*
    device_files_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "file_source",
            "fileSource",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* fileSource
    file_source = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "file_source",
            "fileSource",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* fileSource
    file_source = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "file_source",
            "fileSource",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_url",
            "accessUrl",
            str,
            False,
            True,
            False,
        ),
        E(
            "repository_url",
            "repositoryUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "template_url",
            "templateUrl",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* fileSource
    file_source = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* accessUrl
    access_url = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* repositoryUrl
    repository_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* templateUrl
    template_url = Field(
        type=str,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "file_source",
            "fileSource",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_url",
            "accessUrl",
            str,
            False,
            True,
            False,
        ),
        E(
            "repository_url",
            "repositoryUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "template_url",
            "templateUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "extended_capture_enabled",
            "extendedCaptureEnabled",
            bool,
            False,
            False,
            False,
        ),
        E(
            "extended_capture_url",
            "extendedCaptureURL",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* fileSource
    file_source = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* accessUrl
    access_url = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* repositoryUrl
    repository_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* templateUrl
    template_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Optional* extendedCaptureEnabled
    extended_capture_enabled = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* extendedCaptureURL
    extended_capture_url = Field(
        type=str,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "available_access_device",
            "availableAccessDevice",
            str,
            True,
            False,
            False,
        ),  # unknown
    )
    #: str: *Optional* availableAccessDevice
    available_access_device = Field(
        type=str,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "available_access_device",
            "availableAccessDevice",
            str,
            True,
            False,
            False,
        ),  # unknown
    )
    #: str: *Optional* availableAccessDevice
    available_access_device = Field(
        type=str,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* deviceType
    device_type = Field(
        type=str,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "supports_enhanced_configuration",
            "supportsEnhancedConfiguration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "supports_reset",
            "supportsReset",
            bool,
            False,
            True,
            False,
        ),
        E(
            "configuration_type",
            "configurationType",
            str,
            False,
            False,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* supportsEnhancedConfiguration
    supports_enhanced_configuration = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportsReset
    supports_reset = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* configurationType
    configuration_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "access_device_table",
            "accessDeviceTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* accessDeviceTable  *Tabular*
    access_device_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "device_user_table",
            "deviceUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceUserTable  *Tabular*
    device_user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "type",
            "type",
            str,
            False,
            True,
            False,
        ),
        E(
            "number_of_digits",
            "numberOfDigits",
            int,
            False,
            True,
            False,
        ),
        E(
            "allow_local_and_toll_free_calls",
            "allowLocalAndTollFreeCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mandatory_usage_user_table",
            "mandatoryUsageUserTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "optional_usage_user_table",
            "optionalUsageUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Required* type
    type = Field(
        type=str,
        required=True,
    )
    #: int: *Required* numberOfDigits
    number_of_digits = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* allowLocalAndTollFreeCalls
    allow_local_and_toll_free_calls = Field(
        type=bool,
        required=True,
    )
    #: list: *Required* mandatoryUsageUserTable  *Tabular*
    mandatory_usage_user_table = Field(
        type=list,
        required=True,
    )
    #: list: *Required* optionalUsageUserTable  *Tabular*
    optional_usage_user_table = Field(
        type=list,
        required=True,
    )


class GroupAdminGetListResponse(OCIResponse):
    """
    Response to ``GroupAdminGetListRequest()``.
    Contains a 5 column table with column headings "Administrator ID",
    "Last Name", "First Name", "Department", "Language".
    """

    _ELEMENTS = (
        E(
            "group_admin_table",
            "groupAdminTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* groupAdminTable  *Tabular*
    group_admin_table = Field(
        type=list,
        required=True,
    )


class GroupAdminGetPolicyResponse(OCIResponse):
    """
    Response to ``GroupAdminGetPolicyRequest()``.
    Contains the policy settings for the group administrator.
    """

    _ELEMENTS = (
        E(
            "profile_access",
            "profileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_access",
            "userAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "admin_access",
            "adminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_access",
            "departmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_device_access",
            "accessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enhanced_service_instance_access",
            "enhancedServiceInstanceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "feature_access_code_access",
            "featureAccessCodeAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "phone_number_extension_access",
            "phoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_access",
            "serviceAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* profileAccess
    profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userAccess
    user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* adminAccess
    admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAccess
    department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* accessDeviceAccess
    access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enhancedServiceInstanceAccess
    enhanced_service_instance_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* featureAccessCodeAccess
    feature_access_code_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* phoneNumberExtensionAccess
    phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceAccess
    service_access = Field(
        type=str,
        required=True,
    )


class GroupAdminGetPolicyResponse14sp1(OCIResponse):
    """
    Response to ``GroupAdminGetPolicyRequest14sp1()``.
    Contains the policy settings for the group administrator.
    """

    _ELEMENTS = (
        E(
            "profile_access",
            "profileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_access",
            "userAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "admin_access",
            "adminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_access",
            "departmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_device_access",
            "accessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enhanced_service_instance_access",
            "enhancedServiceInstanceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "feature_access_code_access",
            "featureAccessCodeAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "phone_number_extension_access",
            "phoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_access",
            "serviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_access",
            "trunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* profileAccess
    profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userAccess
    user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* adminAccess
    admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAccess
    department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* accessDeviceAccess
    access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enhancedServiceInstanceAccess
    enhanced_service_instance_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* featureAccessCodeAccess
    feature_access_code_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* phoneNumberExtensionAccess
    phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceAccess
    service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* trunkGroupAccess
    trunk_group_access = Field(
        type=str,
        required=True,
    )


class GroupAdminGetPolicyResponse16sp1(OCIResponse):
    """
    Response to ``GroupAdminGetPolicyRequest16sp1()``.
    Contains the policy settings for the group administrator.
    Replaced By ``GroupAdminGetPolicyRequest17()``
    """

    _ELEMENTS = (
        E(
            "profile_access",
            "profileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_access",
            "userAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "admin_access",
            "adminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_access",
            "departmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_device_access",
            "accessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enhanced_service_instance_access",
            "enhancedServiceInstanceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "feature_access_code_access",
            "featureAccessCodeAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "phone_number_extension_access",
            "phoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_access",
            "serviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_access",
            "trunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "session_admission_control_access",
            "sessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* profileAccess
    profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userAccess
    user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* adminAccess
    admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAccess
    department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* accessDeviceAccess
    access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enhancedServiceInstanceAccess
    enhanced_service_instance_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* featureAccessCodeAccess
    feature_access_code_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* phoneNumberExtensionAccess
    phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceAccess
    service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* trunkGroupAccess
    trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sessionAdmissionControlAccess
    session_admission_control_access = Field(
        type=str,
        required=True,
    )


class GroupAdminGetPolicyResponse16sp2(OCIResponse):
    """
    Response to ``GroupAdminGetPolicyRequest16sp2()``.
    Contains the policy settings for the group administrator.
    """

    _ELEMENTS = (
        E(
            "profile_access",
            "profileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_access",
            "userAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "admin_access",
            "adminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_access",
            "departmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_device_access",
            "accessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enhanced_service_instance_access",
            "enhancedServiceInstanceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "feature_access_code_access",
            "featureAccessCodeAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "phone_number_extension_access",
            "phoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_number_access",
            "callingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_access",
            "serviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_access",
            "trunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "session_admission_control_access",
            "sessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "dialable_caller_id_access",
            "dialableCallerIDAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* profileAccess
    profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userAccess
    user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* adminAccess
    admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAccess
    department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* accessDeviceAccess
    access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enhancedServiceInstanceAccess
    enhanced_service_instance_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* featureAccessCodeAccess
    feature_access_code_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* phoneNumberExtensionAccess
    phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdNumberAccess
    calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceAccess
    service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* trunkGroupAccess
    trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sessionAdmissionControlAccess
    session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* dialableCallerIDAccess
    dialable_caller_id_access = Field(
        type=str,
        required=True,
    )


class GroupAdminGetPolicyResponse17(OCIResponse):
    """
    Response to ``GroupAdminGetPolicyRequest17()``.
    Contains the policy settings for the group administrator.
    """

    _ELEMENTS = (
        E(
            "profile_access",
            "profileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_access",
            "userAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "admin_access",
            "adminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_access",
            "departmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_device_access",
            "accessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enhanced_service_instance_access",
            "enhancedServiceInstanceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "feature_access_code_access",
            "featureAccessCodeAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "phone_number_extension_access",
            "phoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_number_access",
            "callingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_access",
            "serviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_access",
            "trunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "session_admission_control_access",
            "sessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "office_zone_access",
            "officeZoneAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* profileAccess
    profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userAccess
    user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* adminAccess
    admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAccess
    department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* accessDeviceAccess
    access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enhancedServiceInstanceAccess
    enhanced_service_instance_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* featureAccessCodeAccess
    feature_access_code_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* phoneNumberExtensionAccess
    phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdNumberAccess
    calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceAccess
    service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* trunkGroupAccess
    trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sessionAdmissionControlAccess
    session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* officeZoneAccess
    office_zone_access = Field(
        type=str,
        required=True,
    )


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
    """

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


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
    """

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


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)
    """

    _ELEMENTS = (
        E(
            "profile_access",
            "profileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_access",
            "userAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "admin_access",
            "adminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_access",
            "departmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_device_access",
            "accessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enhanced_service_instance_access",
            "enhancedServiceInstanceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "feature_access_code_access",
            "featureAccessCodeAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "phone_number_extension_access",
            "phoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_number_access",
            "callingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_access",
            "serviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_access",
            "trunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "session_admission_control_access",
            "sessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "office_zone_access",
            "officeZoneAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "number_activation_access",
            "numberActivationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "dialable_caller_id_access",
            "dialableCallerIDAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "communication_barring_user_profile_access",
            "communicationBarringUserProfileAccess",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* profileAccess
    profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userAccess
    user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* adminAccess
    admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAccess
    department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* accessDeviceAccess
    access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enhancedServiceInstanceAccess
    enhanced_service_instance_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* featureAccessCodeAccess
    feature_access_code_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* phoneNumberExtensionAccess
    phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdNumberAccess
    calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceAccess
    service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* trunkGroupAccess
    trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sessionAdmissionControlAccess
    session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* officeZoneAccess
    office_zone_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* numberActivationAccess
    number_activation_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* dialableCallerIDAccess
    dialable_caller_id_access = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* communicationBarringUserProfileAccess
    communication_barring_user_profile_access = Field(
        type=str,
        required=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)
    """

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


class GroupAdminGetResponse(OCIResponse):
    """
    Response to the ``GroupAdminGetRequest()``.
    The response contains the group administrators profile information.
    """

    _ELEMENTS = (
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_id",
            "groupId",
            str,
            False,
            True,
            False,
        ),
        E(
            "first_name",
            "firstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "last_name",
            "lastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "language",
            "language",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupId
    group_id = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* firstName
    first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* lastName
    last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* language
    language = Field(
        type=str,
        required=True,
    )


class GroupAdviceOfChargeGetResponse(OCIResponse):
    """
    Response to ``GroupAdviceOfChargeGetRequest()``.
    Contains a list of Advice of Charge group parameters.
    """

    _ELEMENTS = (
        E(
            "use_group_level_ao_c_settings",
            "useGroupLevelAoCSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "delay_between_notification_seconds",
            "delayBetweenNotificationSeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useGroupLevelAoCSettings
    use_group_level_ao_c_settings = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* delayBetweenNotificationSeconds
    delay_between_notification_seconds = Field(
        type=int,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "announcement_table",
            "announcementTable",
            list,
            True,
            False,
            True,
        ),
        E(
            "total_file_size",
            "totalFileSize",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_file_size",
            "maxFileSize",
            int,
            False,
            True,
            False,
        ),
    )
    #: list: *Optional* announcementTable  *Tabular*
    announcement_table = Field(
        type=list,
        required=False,
    )
    #: int: *Required* totalFileSize
    total_file_size = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxFileSize
    max_file_size = Field(
        type=int,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            True,
            False,
        ),
        E(
            "filesize",
            "filesize",
            int,
            False,
            True,
            False,
        ),
        E(
            "last_uploaded",
            "lastUploaded",
            str,
            False,
            True,
            False,
        ),
        E(
            "usage_table",
            "usageTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Required* description
    description = Field(
        type=str,
        required=True,
    )
    #: int: *Required* filesize
    filesize = Field(
        type=int,
        required=True,
    )
    #: str: *Required* lastUploaded
    last_uploaded = Field(
        type=str,
        required=True,
    )
    #: list: *Required* usageTable  *Tabular*
    usage_table = Field(
        type=list,
        required=True,
    )


class GroupApplicationServerSetGetResponse(OCIResponse):
    """
    Response to the ``GroupApplicationServerSetGetRequest()``.
    The response contains the group's Application Server set information.
    """

    _ELEMENTS = (
        E(
            "application_server_set_name",
            "applicationServerSetName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* applicationServerSetName
    application_server_set_name = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "auto_attendant_table",
            "autoAttendantTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* autoAttendantTable  *Tabular*
    auto_attendant_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "submenu_table",
            "submenuTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* submenuTable  *Tabular*
    submenu_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "submenu_table",
            "submenuTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* submenuTable  *Tabular*
    submenu_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "broad_works_anywhere_table",
            "broadWorksAnywhereTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* broadWorksAnywhereTable  *Tabular*
    broad_works_anywhere_table = Field(
        type=list,
        required=True,
    )


class GroupBroadWorksMobileManagerGetDomainListResponse(OCIResponse):
    """
    Response to the ``GroupBroadWorksMobileManagerGetDomainListRequest()``.
    Contains the list of domains.
    """

    _ELEMENTS = (
        E(
            "domain_name",
            "domainName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* domainName
    domain_name = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "home_zones_table",
            "homeZonesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* homeZonesTable  *Tabular*
    home_zones_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "home_zone_domain_name",
            "homeZoneDomainName",
            str,
            False,
            True,
            False,
        ),
        E(
            "mobile_country_code",
            "mobileCountryCode",
            str,
            False,
            True,
            False,
        ),
        E(
            "mobile_network_code",
            "mobileNetworkCode",
            str,
            False,
            True,
            False,
        ),
        E(
            "location_area_code",
            "locationAreaCode",
            str,
            False,
            True,
            False,
        ),
        E(
            "cell_identity",
            "cellIdentity",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* homeZoneDomainName
    home_zone_domain_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* mobileCountryCode
    mobile_country_code = Field(
        type=str,
        required=True,
    )
    #: str: *Required* mobileNetworkCode
    mobile_network_code = Field(
        type=str,
        required=True,
    )
    #: str: *Required* locationAreaCode
    location_area_code = Field(
        type=str,
        required=True,
    )
    #: str: *Required* cellIdentity
    cell_identity = Field(
        type=str,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "mobile_manager_id",
            "mobileManagerId",
            str,
            False,
            True,
            False,
        ),
        E(
            "name",
            "name",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "local_to_carrier",
            "localToCarrier",
            bool,
            False,
            True,
            False,
        ),
        E(
            "deactivation_reason",
            "deactivationReason",
            str,
            False,
            False,
            False,
        ),
        E(
            "max_tx_per_second_enabled",
            "maxTxPerSecondEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_tx_per_second",
            "maxTxPerSecond",
            int,
            False,
            False,
            False,
        ),
        E(
            "tldn_enabled",
            "tldnEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "generic_number_enabled",
            "genericNumberEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mobile_state_check_enabled",
            "mobileStateCheckEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "location_based_services_enabled",
            "locationBasedServicesEnabled",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* mobileManagerId
    mobile_manager_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* name
    name = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* localToCarrier
    local_to_carrier = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* deactivationReason
    deactivation_reason = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* maxTxPerSecondEnabled
    max_tx_per_second_enabled = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* maxTxPerSecond
    max_tx_per_second = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* tldnEnabled
    tldn_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* genericNumberEnabled
    generic_number_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* mobileStateCheckEnabled
    mobile_state_check_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* locationBasedServicesEnabled
    location_based_services_enabled = Field(
        type=bool,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_location_services",
            "enableLocationServices",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_msrn_lookup",
            "enableMSRNLookup",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_mobile_state_checking",
            "enableMobileStateChecking",
            bool,
            False,
            True,
            False,
        ),
        E(
            "deny_call_originations",
            "denyCallOriginations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "deny_call_terminations",
            "denyCallTerminations",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableLocationServices
    enable_location_services = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableMSRNLookup
    enable_msrn_lookup = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableMobileStateChecking
    enable_mobile_state_checking = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* denyCallOriginations
    deny_call_originations = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* denyCallTerminations
    deny_call_terminations = Field(
        type=bool,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_location_services",
            "enableLocationServices",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_msrn_lookup",
            "enableMSRNLookup",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_mobile_state_checking",
            "enableMobileStateChecking",
            bool,
            False,
            True,
            False,
        ),
        E(
            "deny_call_originations",
            "denyCallOriginations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "deny_call_terminations",
            "denyCallTerminations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_announcement_suppression",
            "enableAnnouncementSuppression",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableLocationServices
    enable_location_services = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableMSRNLookup
    enable_msrn_lookup = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableMobileStateChecking
    enable_mobile_state_checking = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* denyCallOriginations
    deny_call_originations = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* denyCallTerminations
    deny_call_terminations = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableAnnouncementSuppression
    enable_announcement_suppression = Field(
        type=bool,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "mobile_subscriber_directory_number_table",
            "mobileSubscriberDirectoryNumberTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* mobileSubscriberDirectoryNumberTable  *Tabular*
    mobile_subscriber_directory_number_table = Field(
        type=list,
        required=True,
    )


class GroupBroadWorksMobilityMobileSubscriberDirectoryNumberGetAvailableListResponse(
    OCIResponse,
):
    """
    Response to ``GroupBroadWorksMobilityMobileSubscriberDirectoryNumberGetAvailableListRequest()``.
    Contains a list of available Mobile Subscriber Directory Numbers not yet assigned
    to any user.
    """

    _ELEMENTS = (
        E(
            "mobile_subscriber_directory_number",
            "mobileSubscriberDirectoryNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* mobileSubscriberDirectoryNumber
    mobile_subscriber_directory_number = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


class GroupCallCapacityManagementGetInstanceListResponse(OCIResponse):
    """
    Response to the ``GroupCallCapacityManagementGetInstanceListRequest()``.
    Contains a table with column headings: "Name", "Is Default", "Maximum Calls",
    "Maximum Incoming Calls", "Maximum Outgoing Calls".
    """

    _ELEMENTS = (
        E(
            "call_capacity_group_table",
            "callCapacityGroupTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* callCapacityGroupTable  *Tabular*
    call_capacity_group_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "name",
            "name",
            str,
            False,
            True,
            False,
        ),
        E(
            "max_active_calls_allowed",
            "maxActiveCallsAllowed",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_incoming_active_calls_allowed",
            "maxIncomingActiveCallsAllowed",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_outgoing_active_calls_allowed",
            "maxOutgoingActiveCallsAllowed",
            int,
            False,
            False,
            False,
        ),
        E(
            "default_group_for_new_users",
            "defaultGroupForNewUsers",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Required* name
    name = Field(
        type=str,
        required=True,
    )
    #: int: *Required* maxActiveCallsAllowed
    max_active_calls_allowed = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* maxIncomingActiveCallsAllowed
    max_incoming_active_calls_allowed = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxOutgoingActiveCallsAllowed
    max_outgoing_active_calls_allowed = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* defaultGroupForNewUsers
    default_group_for_new_users = Field(
        type=bool,
        required=True,
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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";
    """

    _ELEMENTS = (
        E(
            "profile_name",
            "profileName",
            str,
            False,
            True,
            False,
        ),
        E(
            "profile_description",
            "profileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_call_state_idle_time_yellow",
            "thresholdCurrentCallStateIdleTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_call_state_idle_time_red",
            "thresholdCurrentCallStateIdleTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_call_state_on_call_time_yellow",
            "thresholdCurrentCallStateOnCallTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_call_state_on_call_time_red",
            "thresholdCurrentCallStateOnCallTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_agent_state_unavailable_time_yellow",
            "thresholdCurrentAgentStateUnavailableTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_agent_state_unavailable_time_red",
            "thresholdCurrentAgentStateUnavailableTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_busy_in_time_yellow",
            "thresholdAverageBusyInTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_busy_in_time_red",
            "thresholdAverageBusyInTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_busy_out_time_yellow",
            "thresholdAverageBusyOutTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_busy_out_time_red",
            "thresholdAverageBusyOutTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_wrap_up_time_yellow",
            "thresholdAverageWrapUpTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_wrap_up_time_red",
            "thresholdAverageWrapUpTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_notification_email",
            "enableNotificationEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "notification_email_address",
            "notificationEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "agent_table",
            "agentTable",
            list,
            True,
            False,
            True,
        ),
    )
    #: str: *Required* profileName
    profile_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* profileDescription
    profile_description = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* thresholdCurrentCallStateIdleTimeYellow
    threshold_current_call_state_idle_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentCallStateIdleTimeRed
    threshold_current_call_state_idle_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentCallStateOnCallTimeYellow
    threshold_current_call_state_on_call_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentCallStateOnCallTimeRed
    threshold_current_call_state_on_call_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentAgentStateUnavailableTimeYellow
    threshold_current_agent_state_unavailable_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentAgentStateUnavailableTimeRed
    threshold_current_agent_state_unavailable_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageBusyInTimeYellow
    threshold_average_busy_in_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageBusyInTimeRed
    threshold_average_busy_in_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageBusyOutTimeYellow
    threshold_average_busy_out_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageBusyOutTimeRed
    threshold_average_busy_out_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageWrapUpTimeYellow
    threshold_average_wrap_up_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageWrapUpTimeRed
    threshold_average_wrap_up_time_red = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableNotificationEmail
    enable_notification_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* notificationEmailAddress
    notification_email_address = Field(
        type=str,
        required=False,
    )
    #: list: *Optional* agentTable  *Tabular*
    agent_table = Field(
        type=list,
        required=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";
    """

    _ELEMENTS = (
        E(
            "agent_table",
            "agentTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* agentTable  *Tabular*
    agent_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "profiles_table",
            "profilesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* profilesTable  *Tabular*
    profiles_table = Field(
        type=list,
        required=True,
    )


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";
    """

    _ELEMENTS = (
        E(
            "profile_description",
            "profileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_call_state_idle_time_yellow",
            "thresholdCurrentCallStateIdleTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_call_state_idle_time_red",
            "thresholdCurrentCallStateIdleTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_call_state_on_call_time_yellow",
            "thresholdCurrentCallStateOnCallTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_call_state_on_call_time_red",
            "thresholdCurrentCallStateOnCallTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_agent_state_unavailable_time_yellow",
            "thresholdCurrentAgentStateUnavailableTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_agent_state_unavailable_time_red",
            "thresholdCurrentAgentStateUnavailableTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_busy_in_time_yellow",
            "thresholdAverageBusyInTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_busy_in_time_red",
            "thresholdAverageBusyInTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_busy_out_time_yellow",
            "thresholdAverageBusyOutTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_busy_out_time_red",
            "thresholdAverageBusyOutTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_wrap_up_time_yellow",
            "thresholdAverageWrapUpTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_wrap_up_time_red",
            "thresholdAverageWrapUpTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_notification_email",
            "enableNotificationEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "notification_email_address",
            "notificationEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "agent_table",
            "agentTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Optional* profileDescription
    profile_description = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* thresholdCurrentCallStateIdleTimeYellow
    threshold_current_call_state_idle_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentCallStateIdleTimeRed
    threshold_current_call_state_idle_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentCallStateOnCallTimeYellow
    threshold_current_call_state_on_call_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentCallStateOnCallTimeRed
    threshold_current_call_state_on_call_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentAgentStateUnavailableTimeYellow
    threshold_current_agent_state_unavailable_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentAgentStateUnavailableTimeRed
    threshold_current_agent_state_unavailable_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageBusyInTimeYellow
    threshold_average_busy_in_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageBusyInTimeRed
    threshold_average_busy_in_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageBusyOutTimeYellow
    threshold_average_busy_out_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageBusyOutTimeRed
    threshold_average_busy_out_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageWrapUpTimeYellow
    threshold_average_wrap_up_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageWrapUpTimeRed
    threshold_average_wrap_up_time_red = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableNotificationEmail
    enable_notification_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* notificationEmailAddress
    notification_email_address = Field(
        type=str,
        required=False,
    )
    #: list: *Required* agentTable  *Tabular*
    agent_table = Field(
        type=list,
        required=True,
    )


class GroupCallCenterAgentUnavailableCodeGetListResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterAgentUnavailableCodeGetListRequest()``.
    Contains a table with column headings: "Is Active", "Code", "Description".
    """

    _ELEMENTS = (
        E(
            "unavailable_codes_table",
            "unavailableCodesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* unavailableCodesTable  *Tabular*
    unavailable_codes_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )


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

    Replaced by ``GroupCallCenterAgentUnavailableCodeSettingsGetResponse17sp4()``.
    """

    _ELEMENTS = (
        E(
            "enable_agent_unavailable_codes",
            "enableAgentUnavailableCodes",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_agent_unavailable_code_on_dnd",
            "defaultAgentUnavailableCodeOnDND",
            str,
            False,
            False,
            False,
        ),
        E(
            "default_agent_unavailable_code_on_personal_calls",
            "defaultAgentUnavailableCodeOnPersonalCalls",
            str,
            False,
            False,
            False,
        ),
        E(
            "default_agent_unavailable_code_on_consecutive_bounces",
            "defaultAgentUnavailableCodeOnConsecutiveBounces",
            str,
            False,
            False,
            False,
        ),
        E(
            "force_use_of_agent_unavailable_codes",
            "forceUseOfAgentUnavailableCodes",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_agent_unavailable_code",
            "defaultAgentUnavailableCode",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* enableAgentUnavailableCodes
    enable_agent_unavailable_codes = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* defaultAgentUnavailableCodeOnDND
    default_agent_unavailable_code_on_dnd = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* defaultAgentUnavailableCodeOnPersonalCalls
    default_agent_unavailable_code_on_personal_calls = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* defaultAgentUnavailableCodeOnConsecutiveBounces
    default_agent_unavailable_code_on_consecutive_bounces = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* forceUseOfAgentUnavailableCodes
    force_use_of_agent_unavailable_codes = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* defaultAgentUnavailableCode
    default_agent_unavailable_code = Field(
        type=str,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "enable_agent_unavailable_codes",
            "enableAgentUnavailableCodes",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_agent_unavailable_code_on_dnd",
            "defaultAgentUnavailableCodeOnDND",
            str,
            False,
            False,
            False,
        ),
        E(
            "default_agent_unavailable_code_on_personal_calls",
            "defaultAgentUnavailableCodeOnPersonalCalls",
            str,
            False,
            False,
            False,
        ),
        E(
            "default_agent_unavailable_code_on_consecutive_bounces",
            "defaultAgentUnavailableCodeOnConsecutiveBounces",
            str,
            False,
            False,
            False,
        ),
        E(
            "default_agent_unavailable_code_on_not_reachable",
            "defaultAgentUnavailableCodeOnNotReachable",
            str,
            False,
            False,
            False,
        ),
        E(
            "force_use_of_agent_unavailable_codes",
            "forceUseOfAgentUnavailableCodes",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_agent_unavailable_code",
            "defaultAgentUnavailableCode",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* enableAgentUnavailableCodes
    enable_agent_unavailable_codes = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* defaultAgentUnavailableCodeOnDND
    default_agent_unavailable_code_on_dnd = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* defaultAgentUnavailableCodeOnPersonalCalls
    default_agent_unavailable_code_on_personal_calls = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* defaultAgentUnavailableCodeOnConsecutiveBounces
    default_agent_unavailable_code_on_consecutive_bounces = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* defaultAgentUnavailableCodeOnNotReachable
    default_agent_unavailable_code_on_not_reachable = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* forceUseOfAgentUnavailableCodes
    force_use_of_agent_unavailable_codes = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* defaultAgentUnavailableCode
    default_agent_unavailable_code = Field(
        type=str,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_rings_before_bouncing_call",
            "numberOfRingsBeforeBouncingCall",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_transfer",
            "enableTransfer",
            bool,
            False,
            False,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "bounce_call_when_agent_unavailable",
            "bounceCallWhenAgentUnavailable",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberOfRingsBeforeBouncingCall
    number_of_rings_before_bouncing_call = Field(
        type=int,
        required=True,
    )
    #: bool: *Optional* enableTransfer
    enable_transfer = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* bounceCallWhenAgentUnavailable
    bounce_call_when_agent_unavailable = Field(
        type=bool,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_rings_before_bouncing_call",
            "numberOfRingsBeforeBouncingCall",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_transfer",
            "enableTransfer",
            bool,
            False,
            False,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "bounce_call_when_agent_unavailable",
            "bounceCallWhenAgentUnavailable",
            bool,
            False,
            False,
            False,
        ),
        E(
            "alert_call_center_call_on_hold",
            "alertCallCenterCallOnHold",
            bool,
            False,
            False,
            False,
        ),
        E(
            "alert_call_center_call_on_hold_seconds",
            "alertCallCenterCallOnHoldSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "bounce_call_center_call_on_hold",
            "bounceCallCenterCallOnHold",
            bool,
            False,
            False,
            False,
        ),
        E(
            "bounce_call_center_call_on_hold_seconds",
            "bounceCallCenterCallOnHoldSeconds",
            int,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberOfRingsBeforeBouncingCall
    number_of_rings_before_bouncing_call = Field(
        type=int,
        required=True,
    )
    #: bool: *Optional* enableTransfer
    enable_transfer = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Optional* bounceCallWhenAgentUnavailable
    bounce_call_when_agent_unavailable = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* alertCallCenterCallOnHold
    alert_call_center_call_on_hold = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* alertCallCenterCallOnHoldSeconds
    alert_call_center_call_on_hold_seconds = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* bounceCallCenterCallOnHold
    bounce_call_center_call_on_hold = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* bounceCallCenterCallOnHoldSeconds
    bounce_call_center_call_on_hold_seconds = Field(
        type=int,
        required=False,
    )


class GroupCallCenterCallDispositionCodeGetListResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterCallDispositionCodeGetListRequest()``.
    Contains a table with column headings: "Is Active", "Code", "Description".
    """

    _ELEMENTS = (
        E(
            "disposition_codes_table",
            "dispositionCodesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* dispositionCodesTable  *Tabular*
    disposition_codes_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "call_center_table",
            "callCenterTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* callCenterTable  *Tabular*
    call_center_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "call_waiting_age_threshold_seconds",
            "callWaitingAgeThresholdSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "play_announcement_after_ringing",
            "playAnnouncementAfterRinging",
            bool,
            False,
            True,
            False,
        ),
        E(
            "ring_time_before_playing_announcement_seconds",
            "ringTimeBeforePlayingAnnouncementSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file_url",
            "audioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_media_type",
            "audioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_file_url",
            "videoFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_media_type",
            "videoMediaType",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* callWaitingAgeThresholdSeconds
    call_waiting_age_threshold_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* playAnnouncementAfterRinging
    play_announcement_after_ringing = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* ringTimeBeforePlayingAnnouncementSeconds
    ring_time_before_playing_announcement_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* audioFileUrl
    audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioMediaType
    audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* videoFileUrl
    video_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoMediaType
    video_media_type = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "agent_user_table",
            "agentUserTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "deleted_agent_user_table",
            "deletedAgentUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* agentUserTable  *Tabular*
    agent_user_table = Field(
        type=list,
        required=True,
    )
    #: list: *Required* deletedAgentUserTable  *Tabular*
    deleted_agent_user_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "service_user_id",
            "serviceUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "deleted_service_user_id",
            "deletedServiceUserId",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* serviceUserId
    service_user_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* deletedServiceUserId
    deleted_service_user_id = Field(
        type=str,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "name",
            "name",
            str,
            False,
            False,
            False,
        ),
        E(
            "deleted_name",
            "deletedName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* name
    name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* deletedName
    deleted_name = Field(
        type=str,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "distinctive_ringing_call_center_calls",
            "distinctiveRingingCallCenterCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "distinctive_ringing_ring_pattern_for_call_center",
            "distinctiveRingingRingPatternForCallCenter",
            str,
            False,
            True,
            False,
        ),
        E(
            "distinctive_ringing_force_delivery_ring_pattern",
            "distinctiveRingingForceDeliveryRingPattern",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* distinctiveRingingCallCenterCalls
    distinctive_ringing_call_center_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* distinctiveRingingRingPatternForCallCenter
    distinctive_ringing_ring_pattern_for_call_center = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* distinctiveRingingForceDeliveryRingPattern
    distinctive_ringing_force_delivery_ring_pattern = Field(
        type=str,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "override_agent_wrap_up_time",
            "overrideAgentWrapUpTime",
            bool,
            False,
            True,
            False,
        ),
        E(
            "wrap_up_seconds",
            "wrapUpSeconds",
            int,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* overrideAgentWrapUpTime
    override_agent_wrap_up_time = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* wrapUpSeconds
    wrap_up_seconds = Field(
        type=int,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "branding_choice",
            "brandingChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "branding_file_description",
            "brandingFileDescription",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* brandingChoice
    branding_choice = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* brandingFileDescription
    branding_file_description = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "report_template_table",
            "reportTemplateTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* reportTemplateTable  *Tabular*
    report_template_table = Field(
        type=list,
        required=True,
    )


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

    Replaced by ``GroupCallCenterEnhancedReportingGetResponse19()``
    """

    _ELEMENTS = (
        E(
            "reporting_server",
            "reportingServer",
            str,
            False,
            True,
            False,
        ),
        E(
            "web_statistic_source",
            "webStatisticSource",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* reportingServer
    reporting_server = Field(
        type=str,
        required=True,
    )
    #: str: *Required* webStatisticSource
    web_statistic_source = Field(
        type=str,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "reporting_server",
            "reportingServer",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* reportingServer
    reporting_server = Field(
        type=str,
        required=True,
    )


class GroupCallCenterEnhancedReportingReportTemplateGetListResponse(OCIResponse):
    """
    Response to ``GroupCallCenterEnhancedReportingReportTemplateGetListRequest()``.
    Contains a table with column headings: "Name", "Description", "Type" and "Enabled"
    """

    _ELEMENTS = (
        E(
            "report_template_table",
            "reportTemplateTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* reportTemplateTable  *Tabular*
    report_template_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "data_template",
            "dataTemplate",
            str,
            False,
            True,
            False,
        ),
        E(
            "filter_number",
            "filterNumber",
            int,
            False,
            False,
            False,
        ),
        E(
            "xslt_template_description",
            "xsltTemplateDescription",
            str,
            False,
            True,
            False,
        ),
        E(
            "scope",
            "scope",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_enabled",
            "isEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_realtime_report",
            "isRealtimeReport",
            bool,
            False,
            False,
            False,
        ),
        E(
            "call_completion_threshold_param",
            "callCompletionThresholdParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "short_duration_threshold_param",
            "shortDurationThresholdParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_level_threshold_param",
            "serviceLevelThresholdParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_level_inclusions_param",
            "serviceLevelInclusionsParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_level_objective_threshold_param",
            "serviceLevelObjectiveThresholdParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "abandoned_call_threshold_param",
            "abandonedCallThresholdParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_level_threshold_param_number",
            "serviceLevelThresholdParamNumber",
            int,
            False,
            False,
            False,
        ),
        E(
            "abandoned_call_threshold_param_number",
            "abandonedCallThresholdParamNumber",
            int,
            False,
            False,
            False,
        ),
        E(
            "filter_value",
            "filterValue",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Required* dataTemplate
    data_template = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* filterNumber
    filter_number = Field(
        type=int,
        required=False,
    )
    #: str: *Required* xsltTemplateDescription
    xslt_template_description = Field(
        type=str,
        required=True,
    )
    #: str: *Required* scope
    scope = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isEnabled
    is_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Optional* isRealtimeReport
    is_realtime_report = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* callCompletionThresholdParam
    call_completion_threshold_param = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* shortDurationThresholdParam
    short_duration_threshold_param = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serviceLevelThresholdParam
    service_level_threshold_param = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serviceLevelInclusionsParam
    service_level_inclusions_param = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serviceLevelObjectiveThresholdParam
    service_level_objective_threshold_param = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* abandonedCallThresholdParam
    abandoned_call_threshold_param = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* serviceLevelThresholdParamNumber
    service_level_threshold_param_number = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* abandonedCallThresholdParamNumber
    abandoned_call_threshold_param_number = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* filterValue
    filter_value = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "scheduled_report_table",
            "scheduledReportTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* scheduledReportTable  *Tabular*
    scheduled_report_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "scheduled_report_table",
            "scheduledReportTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* scheduledReportTable  *Tabular*
    scheduled_report_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "scheduled_report_table",
            "scheduledReportTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* scheduledReportTable  *Tabular*
    scheduled_report_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "schedule_report_table",
            "scheduleReportTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* scheduleReportTable  *Tabular*
    schedule_report_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_enable_via_fac",
            "allowEnableViaFAC",
            bool,
            False,
            True,
            False,
        ),
        E(
            "play_announcement_before_forwarding",
            "playAnnouncementBeforeForwarding",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file_url",
            "audioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_media_type",
            "audioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_file_url",
            "videoFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_media_type",
            "videoMediaType",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowEnableViaFAC
    allow_enable_via_fac = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* playAnnouncementBeforeForwarding
    play_announcement_before_forwarding = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* audioFileUrl
    audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioMediaType
    audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* videoFileUrl
    video_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoMediaType
    video_media_type = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "agent_table",
            "agentTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* agentTable  *Tabular*
    agent_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "entrance_message_selection",
            "entranceMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "entrance_message_audio_file_description",
            "entranceMessageAudioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "entrance_message_video_file_description",
            "entranceMessageVideoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_selection",
            "periodicComfortMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "periodic_comfort_message_audio_file_description",
            "periodicComfortMessageAudioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_file_description",
            "periodicComfortMessageVideoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "on_hold_message_selection",
            "onHoldMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "on_hold_message_audio_file_description",
            "onHoldMessageAudioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "on_hold_message_video_file_description",
            "onHoldMessageVideoFileDescription",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* entranceMessageSelection
    entrance_message_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* entranceMessageAudioFileDescription
    entrance_message_audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* entranceMessageVideoFileDescription
    entrance_message_video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Required* periodicComfortMessageSelection
    periodic_comfort_message_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* periodicComfortMessageAudioFileDescription
    periodic_comfort_message_audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* periodicComfortMessageVideoFileDescription
    periodic_comfort_message_video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Required* onHoldMessageSelection
    on_hold_message_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* onHoldMessageAudioFileDescription
    on_hold_message_audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* onHoldMessageVideoFileDescription
    on_hold_message_video_file_description = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "agent_table",
            "agentTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* agentTable  *Tabular*
    agent_table = Field(
        type=list,
        required=True,
    )


class GroupCallCenterGetDNISListResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterGetDNISListResponse()``.
    Contains a table with column headings: "Name", "Phone Number", "Extension",
    "Priority", "Is Primary DNIS".
    """

    _ELEMENTS = (
        E(
            "display_dnis_number",
            "displayDNISNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "display_dnis_name",
            "displayDNISName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "promote_calls_from_priority1to0",
            "promoteCallsFromPriority1to0",
            bool,
            False,
            True,
            False,
        ),
        E(
            "promote_calls_from_priority2to1",
            "promoteCallsFromPriority2to1",
            bool,
            False,
            True,
            False,
        ),
        E(
            "promote_calls_from_priority3to2",
            "promoteCallsFromPriority3to2",
            bool,
            False,
            True,
            False,
        ),
        E(
            "promote_calls_from_priority1to0_seconds",
            "promoteCallsFromPriority1to0Seconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "promote_calls_from_priority2to1_seconds",
            "promoteCallsFromPriority2to1Seconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "promote_calls_from_priority3to2_seconds",
            "promoteCallsFromPriority3to2Seconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "dnis_table",
            "dnisTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* displayDNISNumber
    display_dnis_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* displayDNISName
    display_dnis_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* promoteCallsFromPriority1to0
    promote_calls_from_priority1to0 = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* promoteCallsFromPriority2to1
    promote_calls_from_priority2to1 = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* promoteCallsFromPriority3to2
    promote_calls_from_priority3to2 = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* promoteCallsFromPriority1to0Seconds
    promote_calls_from_priority1to0_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* promoteCallsFromPriority2to1Seconds
    promote_calls_from_priority2to1_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* promoteCallsFromPriority3to2Seconds
    promote_calls_from_priority3to2_seconds = Field(
        type=int,
        required=True,
    )
    #: list: *Required* dnisTable  *Tabular*
    dnis_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "dnis_phone_number",
            "dnisPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "extension",
            "extension",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_custom_clid_settings",
            "useCustomCLIDSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_phone_number",
            "callingLineIdPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_last_name",
            "callingLineIdLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_first_name",
            "callingLineIdFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_custom_dnis_announcement_settings",
            "useCustomDnisAnnouncementSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "priority",
            "priority",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_outgoing_acd_call",
            "allowOutgoingACDCall",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* dnisPhoneNumber
    dnis_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* extension
    extension = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useCustomCLIDSettings
    use_custom_clid_settings = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* callingLineIdPhoneNumber
    calling_line_id_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdLastName
    calling_line_id_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdFirstName
    calling_line_id_first_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useCustomDnisAnnouncementSettings
    use_custom_dnis_announcement_settings = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* priority
    priority = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowOutgoingACDCall
    allow_outgoing_acd_call = Field(
        type=bool,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "distinctive_ringing_call_center_calls",
            "distinctiveRingingCallCenterCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "distinctive_ringing_ring_pattern_for_call_center",
            "distinctiveRingingRingPatternForCallCenter",
            str,
            False,
            True,
            False,
        ),
        E(
            "distinctive_ringing_force_delivery_ring_pattern",
            "distinctiveRingingForceDeliveryRingPattern",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* distinctiveRingingCallCenterCalls
    distinctive_ringing_call_center_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* distinctiveRingingRingPatternForCallCenter
    distinctive_ringing_ring_pattern_for_call_center = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* distinctiveRingingForceDeliveryRingPattern
    distinctive_ringing_force_delivery_ring_pattern = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "call_center_table",
            "callCenterTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* callCenterTable  *Tabular*
    call_center_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "number_of_calls_queued_now",
            "numberOfCallsQueuedNow",
            int,
            False,
            True,
            False,
        ),
        E(
            "agents_currently_staffed",
            "agentsCurrentlyStaffed",
            list,
            True,
            True,
            True,
        ),
    )
    #: int: *Required* numberOfCallsQueuedNow
    number_of_calls_queued_now = Field(
        type=int,
        required=True,
    )
    #: list: *Required* agentsCurrentlyStaffed  *Tabular*
    agents_currently_staffed = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "generate_daily_report",
            "generateDailyReport",
            bool,
            False,
            True,
            False,
        ),
        E(
            "collection_period_minutes",
            "collectionPeriodMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "reporting_email_address1",
            "reportingEmailAddress1",
            str,
            False,
            False,
            False,
        ),
        E(
            "reporting_email_address2",
            "reportingEmailAddress2",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* generateDailyReport
    generate_daily_report = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* collectionPeriodMinutes
    collection_period_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* reportingEmailAddress1
    reporting_email_address1 = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* reportingEmailAddress2
    reporting_email_address2 = Field(
        type=str,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "generate_daily_report",
            "generateDailyReport",
            bool,
            False,
            True,
            False,
        ),
        E(
            "collection_period_minutes",
            "collectionPeriodMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "reporting_email_address1",
            "reportingEmailAddress1",
            str,
            False,
            False,
            False,
        ),
        E(
            "reporting_email_address2",
            "reportingEmailAddress2",
            str,
            False,
            False,
            False,
        ),
        E(
            "statistics_source",
            "statisticsSource",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* generateDailyReport
    generate_daily_report = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* collectionPeriodMinutes
    collection_period_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* reportingEmailAddress1
    reporting_email_address1 = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* reportingEmailAddress2
    reporting_email_address2 = Field(
        type=str,
        required=False,
    )
    #: str: *Required* statisticsSource
    statistics_source = Field(
        type=str,
        required=True,
    )


class GroupCallCenterGetInstanceStatisticsReportingResponse17sp1(OCIResponse):
    """
    Response to ``GroupCallCenterGetInstanceStatisticsReportingRequest17sp1()``.
    Contains Call Center statistics reporting settings.
    """

    _ELEMENTS = (
        E(
            "generate_daily_report",
            "generateDailyReport",
            bool,
            False,
            True,
            False,
        ),
        E(
            "collection_period_minutes",
            "collectionPeriodMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "reporting_email_address1",
            "reportingEmailAddress1",
            str,
            False,
            False,
            False,
        ),
        E(
            "reporting_email_address2",
            "reportingEmailAddress2",
            str,
            False,
            False,
            False,
        ),
        E(
            "statistics_source",
            "statisticsSource",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* generateDailyReport
    generate_daily_report = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* collectionPeriodMinutes
    collection_period_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* reportingEmailAddress1
    reporting_email_address1 = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* reportingEmailAddress2
    reporting_email_address2 = Field(
        type=str,
        required=False,
    )
    #: str: *Required* statisticsSource
    statistics_source = Field(
        type=str,
        required=True,
    )


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

    Replaced by ``GroupCallCenterGetResponse17sp4()``.
    """

    _ELEMENTS = (
        E(
            "use_system_default_guard_timer",
            "useSystemDefaultGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_guard_timer",
            "enableGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "guard_timer_seconds",
            "guardTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_system_default_unavailable_settings",
            "useSystemDefaultUnavailableSettings",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit",
            bool,
            False,
            False,
            False,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable",
            int,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* useSystemDefaultGuardTimer
    use_system_default_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableGuardTimer
    enable_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* guardTimerSeconds
    guard_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Optional* useSystemDefaultUnavailableSettings
    use_system_default_unavailable_settings = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnDNDActivation
    force_agent_unavailable_on_dnd_activation = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnPersonalCalls
    force_agent_unavailable_on_personal_calls = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnBouncedCallLimit
    force_agent_unavailable_on_bounced_call_limit = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* numberConsecutiveBouncedCallsToForceAgentUnavailable
    number_consecutive_bounced_calls_to_force_agent_unavailable = Field(
        type=int,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "use_system_default_guard_timer",
            "useSystemDefaultGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_guard_timer",
            "enableGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "guard_timer_seconds",
            "guardTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_system_default_unavailable_settings",
            "useSystemDefaultUnavailableSettings",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit",
            bool,
            False,
            False,
            False,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable",
            int,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_not_reachable",
            "forceAgentUnavailableOnNotReachable",
            bool,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* useSystemDefaultGuardTimer
    use_system_default_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableGuardTimer
    enable_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* guardTimerSeconds
    guard_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Optional* useSystemDefaultUnavailableSettings
    use_system_default_unavailable_settings = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnDNDActivation
    force_agent_unavailable_on_dnd_activation = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnPersonalCalls
    force_agent_unavailable_on_personal_calls = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnBouncedCallLimit
    force_agent_unavailable_on_bounced_call_limit = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* numberConsecutiveBouncedCallsToForceAgentUnavailable
    number_consecutive_bounced_calls_to_force_agent_unavailable = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnNotReachable
    force_agent_unavailable_on_not_reachable = Field(
        type=bool,
        required=False,
    )


class GroupCallCenterGetRoutingPolicyResponse(OCIResponse):
    """
    Response to ``GroupCallCenterGetRoutingPolicyRequest()``.
    Contains a table with column headings: "Service User Id", "Name" and
    "Priority".
    """

    _ELEMENTS = (
        E(
            "routing_policy",
            "routingPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_center_table",
            "callCenterTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Required* routingPolicy
    routing_policy = Field(
        type=str,
        required=True,
    )
    #: list: *Required* callCenterTable  *Tabular*
    call_center_table = Field(
        type=list,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "reporting_server_url",
            "reportingServerURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "supervisor_table",
            "supervisorTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Optional* reportingServerURL
    reporting_server_url = Field(
        type=str,
        required=False,
    )
    #: list: *Required* supervisorTable  *Tabular*
    supervisor_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "supervisor_table",
            "supervisorTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* supervisorTable  *Tabular*
    supervisor_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            str,
            False,
            False,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_announcement_before_action",
            "playAnnouncementBeforeAction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file_url",
            "audioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_media_type",
            "audioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_file_url",
            "videoFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_media_type",
            "videoMediaType",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playAnnouncementBeforeAction
    play_announcement_before_action = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* audioFileUrl
    audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioMediaType
    audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* videoFileUrl
    video_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoMediaType
    video_media_type = Field(
        type=str,
        required=False,
    )


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

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


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

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "overflow_after_timeout",
            "overflowAfterTimeout",
            bool,
            False,
            True,
            False,
        ),
        E(
            "timeout_seconds",
            "timeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "play_announcement_before_overflow_processing",
            "playAnnouncementBeforeOverflowProcessing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file_url",
            "audioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_media_type",
            "audioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_url",
            "videoFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_media_type",
            "videoMediaType",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* overflowAfterTimeout
    overflow_after_timeout = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* timeoutSeconds
    timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* playAnnouncementBeforeOverflowProcessing
    play_announcement_before_overflow_processing = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* audioFileUrl
    audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioMediaType
    audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileUrl
    video_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoMediaType
    video_media_type = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "disposition_codes_table",
            "dispositionCodesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* dispositionCodesTable  *Tabular*
    disposition_codes_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )


class GroupCallCenterQueueStatusNotificationGetResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterQueueStatusNotificationGetRequest()``.
    The response contains the call center status configuration information.
    """

    _ELEMENTS = (
        E(
            "enable_queue_status_notification",
            "enableQueueStatusNotification",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_queue_depth_threshold",
            "enableQueueDepthThreshold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_waiting_time_threshold",
            "enableWaitingTimeThreshold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_calls_threshold",
            "numberOfCallsThreshold",
            int,
            False,
            True,
            False,
        ),
        E(
            "waiting_time_of_calls_threshold",
            "waitingTimeOfCallsThreshold",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableQueueStatusNotification
    enable_queue_status_notification = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableQueueDepthThreshold
    enable_queue_depth_threshold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableWaitingTimeThreshold
    enable_waiting_time_threshold = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberOfCallsThreshold
    number_of_calls_threshold = Field(
        type=int,
        required=True,
    )
    #: int: *Required* waitingTimeOfCallsThreshold
    waiting_time_of_calls_threshold = Field(
        type=int,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "threshold_current_calls_in_queue_yellow",
            "thresholdCurrentCallsInQueueYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_calls_in_queue_red",
            "thresholdCurrentCallsInQueueRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_longest_waiting_call_yellow",
            "thresholdCurrentLongestWaitingCallYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_current_longest_waiting_call_red",
            "thresholdCurrentLongestWaitingCallRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_estimated_wait_time_yellow",
            "thresholdAverageEstimatedWaitTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_estimated_wait_time_red",
            "thresholdAverageEstimatedWaitTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_handling_time_yellow",
            "thresholdAverageHandlingTimeYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_handling_time_red",
            "thresholdAverageHandlingTimeRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_speed_of_answer_yellow",
            "thresholdAverageSpeedOfAnswerYellow",
            int,
            False,
            False,
            False,
        ),
        E(
            "threshold_average_speed_of_answer_red",
            "thresholdAverageSpeedOfAnswerRed",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_notification_email",
            "enableNotificationEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "notification_email_address",
            "notificationEmailAddress",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* thresholdCurrentCallsInQueueYellow
    threshold_current_calls_in_queue_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentCallsInQueueRed
    threshold_current_calls_in_queue_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentLongestWaitingCallYellow
    threshold_current_longest_waiting_call_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdCurrentLongestWaitingCallRed
    threshold_current_longest_waiting_call_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageEstimatedWaitTimeYellow
    threshold_average_estimated_wait_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageEstimatedWaitTimeRed
    threshold_average_estimated_wait_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageHandlingTimeYellow
    threshold_average_handling_time_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageHandlingTimeRed
    threshold_average_handling_time_red = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageSpeedOfAnswerYellow
    threshold_average_speed_of_answer_yellow = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* thresholdAverageSpeedOfAnswerRed
    threshold_average_speed_of_answer_red = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableNotificationEmail
    enable_notification_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* notificationEmailAddress
    notification_email_address = Field(
        type=str,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_file_url",
            "audioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_media_type",
            "audioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_url",
            "videoFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_media_type",
            "videoMediaType",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioFileUrl
    audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioMediaType
    audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileUrl
    video_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoMediaType
    video_media_type = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "reporting_server_name",
            "reportingServerName",
            str,
            False,
            False,
            False,
        ),
        E(
            "supervisor_table",
            "supervisorTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Optional* reportingServerName
    reporting_server_name = Field(
        type=str,
        required=False,
    )
    #: list: *Required* supervisorTable  *Tabular*
    supervisor_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "available_hunt_group_table",
            "availableHuntGroupTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* availableHuntGroupTable  *Tabular*
    available_hunt_group_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "name",
            "name",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* name
    name = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "recall_alternate_user_id",
            "recallAlternateUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "recall_to",
            "recallTo",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Optional* recallAlternateUserId
    recall_alternate_user_id = Field(
        type=str,
        required=False,
    )
    #: str: *Required* recallTo
    recall_to = Field(
        type=str,
        required=True,
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


class GroupCallParkGetResponse(OCIResponse):
    """
    Response to the ``GroupCallParkGetRequest()``.
    Contains the settings that apply to the whole group for Call Park.
    """

    _ELEMENTS = (
        E(
            "recall_timer_seconds",
            "recallTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "display_timer_seconds",
            "displayTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_destination_announcement",
            "enableDestinationAnnouncement",
            bool,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* recallTimerSeconds
    recall_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* displayTimerSeconds
    display_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableDestinationAnnouncement
    enable_destination_announcement = Field(
        type=bool,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "recall_timer_seconds",
            "recallTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "display_timer_seconds",
            "displayTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_destination_announcement",
            "enableDestinationAnnouncement",
            bool,
            False,
            True,
            False,
        ),
        E(
            "recall_alternate_user_id",
            "recallAlternateUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "recall_ring_pattern",
            "recallRingPattern",
            str,
            False,
            True,
            False,
        ),
        E(
            "recall_to",
            "recallTo",
            str,
            False,
            True,
            False,
        ),
        E(
            "alternate_user_recall_timer_seconds",
            "alternateUserRecallTimerSeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* recallTimerSeconds
    recall_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* displayTimerSeconds
    display_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableDestinationAnnouncement
    enable_destination_announcement = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* recallAlternateUserId
    recall_alternate_user_id = Field(
        type=str,
        required=False,
    )
    #: str: *Required* recallRingPattern
    recall_ring_pattern = Field(
        type=str,
        required=True,
    )
    #: str: *Required* recallTo
    recall_to = Field(
        type=str,
        required=True,
    )
    #: int: *Required* alternateUserRecallTimerSeconds
    alternate_user_recall_timer_seconds = Field(
        type=int,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "name",
            "name",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* name
    name = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "use_group_setting",
            "useGroupSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useGroupSetting
    use_group_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )


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

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


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

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


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

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


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

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


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

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


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

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


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

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


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

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


class GroupCallProcessingGetPolicyResponse17sp3(OCIResponse):
    """
    Response to ``GroupCallProcessingGetPolicyRequest17sp3()``.
    The following elements are only used in AS data mode:
    useGroupDCLIDSetting
    enableDialableCallerID

    Replaced by ``GroupCallProcessingGetPolicyResponse17sp4()``
    """

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


class GroupCallProcessingGetPolicyResponse17sp4(OCIResponse):
    """
    Response to ``GroupCallProcessingGetPolicyRequest17sp4()``.
    The following elements are only used in AS data mode:
    useGroupDCLIDSetting
    enableDialableCallerID
    allowConfigurableCLIDForRedirectingIdentity

    Replaced by ``GroupCallProcessingGetPolicyResponse18()``
    """

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


class GroupCallProcessingGetPolicyResponse18(OCIResponse):
    """
    Response to ``GroupCallProcessingGetPolicyRequest18()``.
    The following elements are only used in AS data mode:
    useGroupDCLIDSetting
    enableDialableCallerID
    allowConfigurableCLIDForRedirectingIdentity
    allowDepartmentCLIDNameOverride
    """

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


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()``
    """

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


class GroupCallProcessingGetPolicyResponse19sp1(OCIResponse):
    """
    Response to ``GroupCallProcessingGetPolicyRequest()``.
    The following elements are only used in AS data mode:
    useGroupDCLIDSetting
    enableDialableCallerID
    allowConfigurableCLIDForRedirectingIdentity
    allowDepartmentCLIDNameOverride
    enterpriseCallsCLIDPolicy
    groupCallsCLIDPolicy
    """

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


class GroupCallRecordingGetResponse(OCIResponse):
    """
    Response to the ``GroupCallRecordingGetRequest()``.
    The response contains the group's Call Recording platform information.
    """

    _ELEMENTS = (
        E(
            "name",
            "name",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* name
    name = Field(
        type=str,
        required=False,
    )


class GroupCallingLineIdGetResponse(OCIResponse):
    """
    Response to the ``GroupCallingLineIdGetRequest()``.
    The response contains the group's calling line id settings.
    """

    _ELEMENTS = (
        E(
            "use_group_number",
            "useGroupNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_phone_number",
            "callingLineIdPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_name",
            "callingLineIdName",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* useGroupNumber
    use_group_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* callingLineIdPhoneNumber
    calling_line_id_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdName
    calling_line_id_name = Field(
        type=str,
        required=False,
    )


class GroupCallingPlanGetDigitPatternListResponse(OCIResponse):
    """
    Response to ``GroupCallingPlanGetDigitPatternListRequest()``.
    Contains a table with column headings: "Name", "Digit Pattern".
    """

    _ELEMENTS = (
        E(
            "digit_pattern_table",
            "digitPatternTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* digitPatternTable  *Tabular*
    digit_pattern_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "collaborate_bridge_table",
            "collaborateBridgeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* collaborateBridgeTable  *Tabular*
    collaborate_bridge_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "group_directory",
            "groupDirectory",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* groupDirectory
    group_directory = Field(
        type=str,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "use_default_service_provider_profile",
            "useDefaultServiceProviderProfile",
            bool,
            False,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* useDefaultServiceProviderProfile
    use_default_service_provider_profile = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* profile
    profile = Field(
        type=str,
        required=False,
    )


class GroupCommunicationBarringProfileGetAssignedListResponse(OCIResponse):
    """
    Response to the ``GroupCommunicationBarringProfileGetAssignedListRequest()``.
    The response contains a simple list of all communication barring profiles
    assigned to the group.
    """

    _ELEMENTS = (
        E(
            "profile_name",
            "profileName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* profileName
    profile_name = Field(
        type=str,
        required=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()``
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


class GroupCustomContactDirectoryGetListResponse(OCIResponse):
    """
    Response to the ``GroupCustomContactDirectoryGetListRequest()``.
    The response contains all the group's custom contact directory names.
    """

    _ELEMENTS = (
        E(
            "name",
            "name",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* name
    name = Field(
        type=str,
        required=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()``
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


class GroupCustomRingbackGroupGetResponse(OCIResponse):
    """
    Response to the ``GroupCustomRingbackGroupGetRequest()``.
    Replaced By ``GroupCustomRingbackGroupGetResponse16()``
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_selection",
            "audioSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_file_url",
            "audioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_selection",
            "videoSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_url",
            "videoFileUrl",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioSelection
    audio_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioFileUrl
    audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Required* videoSelection
    video_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileUrl
    video_file_url = Field(
        type=str,
        required=False,
    )


class GroupCustomRingbackGroupGetResponse16(OCIResponse):
    """
    Response to the ``GroupCustomRingbackGroupGetRequest16()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_selection",
            "audioSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_media_type",
            "audioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_file_url",
            "audioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_selection",
            "videoSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_media_type",
            "videoMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_url",
            "videoFileUrl",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioSelection
    audio_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioMediaType
    audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioFileUrl
    audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Required* videoSelection
    video_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoMediaType
    video_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileUrl
    video_file_url = Field(
        type=str,
        required=False,
    )


class GroupDepartmentAdminGetListResponse(OCIResponse):
    """
    Response to ``GroupDepartmentAdminGetListRequest()``.
    Contains a 5 column table with column headings "Administrator ID",
    "Last Name", "First Name", "Department", "Language".
    """

    _ELEMENTS = (
        E(
            "department_admin_table",
            "departmentAdminTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* departmentAdminTable  *Tabular*
    department_admin_table = Field(
        type=list,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "department_table",
            "departmentTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* departmentTable  *Tabular*
    department_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "event_table",
            "eventTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* eventTable  *Tabular*
    event_table = Field(
        type=list,
        required=True,
    )


class GroupDeviceManagementGetAccessDeviceCountForDeviceTypeGroupResponse(OCIResponse):
    """
    Response to ``GroupDeviceManagementGetAccessDeviceCountForDeviceTypeGroupRequest()``.
    """

    _ELEMENTS = (
        E(
            "access_device_count",
            "accessDeviceCount",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* accessDeviceCount
    access_device_count = Field(
        type=int,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "group_device_type_custom_tags_table",
            "groupDeviceTypeCustomTagsTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* groupDeviceTypeCustomTagsTable  *Tabular*
    group_device_type_custom_tags_table = Field(
        type=list,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "group_device_type_files_table",
            "groupDeviceTypeFilesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* groupDeviceTypeFilesTable  *Tabular*
    group_device_type_files_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "group_device_type_files_table",
            "groupDeviceTypeFilesTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "group_has_files_with_customizable_tags",
            "groupHasFilesWithCustomizableTags",
            bool,
            False,
            False,
            False,
        ),
    )
    #: list: *Required* groupDeviceTypeFilesTable  *Tabular*
    group_device_type_files_table = Field(
        type=list,
        required=True,
    )
    #: bool: *Optional* groupHasFilesWithCustomizableTags
    group_has_files_with_customizable_tags = Field(
        type=bool,
        required=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".
    """

    _ELEMENTS = (
        E(
            "group_device_type_files_table",
            "groupDeviceTypeFilesTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "group_has_customizable_dynamic_files",
            "groupHasCustomizableDynamicFiles",
            bool,
            False,
            True,
            False,
        ),
    )
    #: list: *Required* groupDeviceTypeFilesTable  *Tabular*
    group_device_type_files_table = Field(
        type=list,
        required=True,
    )
    #: bool: *Required* groupHasCustomizableDynamicFiles
    group_has_customizable_dynamic_files = Field(
        type=bool,
        required=True,
    )


class GroupDeviceTypeFileGetResponse(OCIResponse):
    """
    Response to ``GroupDeviceTypeFileGetRequest()``.
    Replaced By ``GroupDeviceTypeFileGetResponse14sp8()``
    """

    _ELEMENTS = (
        E(
            "file_source",
            "fileSource",
            str,
            False,
            False,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* fileSource
    file_source = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )


class GroupDeviceTypeFileGetResponse14sp8(OCIResponse):
    """
    Response to ``GroupDeviceTypeFileGetRequest14sp8()``.
    Replaced By ``GroupDeviceTypeFileGetResponse16sp1()``
    """

    _ELEMENTS = (
        E(
            "file_source",
            "fileSource",
            str,
            False,
            False,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* fileSource
    file_source = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )


class GroupDeviceTypeFileGetResponse16sp1(OCIResponse):
    """
    Response to ``GroupDeviceTypeFileGetRequest16sp1()``.
    """

    _ELEMENTS = (
        E(
            "file_source",
            "fileSource",
            str,
            False,
            False,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_url",
            "accessUrl",
            str,
            False,
            True,
            False,
        ),
        E(
            "repository_url",
            "repositoryUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "template_url",
            "templateUrl",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* fileSource
    file_source = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* accessUrl
    access_url = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* repositoryUrl
    repository_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* templateUrl
    template_url = Field(
        type=str,
        required=False,
    )


class GroupDialPlanPolicyGetAccessCodeListResponse(OCIResponse):
    """
    Response to ``GroupDialPlanPolicyGetAccessCodeListRequest()``
    Contains a table with column headings: "Access Code",
    "Enable Secondary Dial Tone", "Description"
    """

    _ELEMENTS = (
        E(
            "access_code_table",
            "accessCodeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* accessCodeTable  *Tabular*
    access_code_table = Field(
        type=list,
        required=True,
    )


class GroupDialPlanPolicyGetAccessCodeResponse(OCIResponse):
    """
    Response to ``GroupDialPlanPolicyGetAccessCodeRequest()``
    """

    _ELEMENTS = (
        E(
            "include_code_for_network_translations_and_routing",
            "includeCodeForNetworkTranslationsAndRouting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_code_for_screening_services",
            "includeCodeForScreeningServices",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_secondary_dial_tone",
            "enableSecondaryDialTone",
            bool,
            False,
            True,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* includeCodeForNetworkTranslationsAndRouting
    include_code_for_network_translations_and_routing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeCodeForScreeningServices
    include_code_for_screening_services = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableSecondaryDialTone
    enable_secondary_dial_tone = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )


class GroupDialPlanPolicyGetResponse(OCIResponse):
    """
    Response to ``GroupDialPlanPolicyGetRequest()``

    Replaced By ``GroupDialPlanPolicyGetResponse17()``
    """

    _ELEMENTS = (
        E(
            "use_setting",
            "useSetting",
            str,
            False,
            True,
            False,
        ),
        E(
            "requires_access_code_for_public_calls",
            "requiresAccessCodeForPublicCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_e164_public_calls",
            "allowE164PublicCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "public_digit_map",
            "publicDigitMap",
            str,
            False,
            False,
            False,
        ),
        E(
            "private_digit_map",
            "privateDigitMap",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* useSetting
    use_setting = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* requiresAccessCodeForPublicCalls
    requires_access_code_for_public_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowE164PublicCalls
    allow_e164_public_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* publicDigitMap
    public_digit_map = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* privateDigitMap
    private_digit_map = Field(
        type=str,
        required=False,
    )


class GroupDialPlanPolicyGetResponse17(OCIResponse):
    """
    Response to ``GroupDialPlanPolicyGetRequest17()``
    """

    _ELEMENTS = (
        E(
            "use_setting",
            "useSetting",
            str,
            False,
            True,
            False,
        ),
        E(
            "requires_access_code_for_public_calls",
            "requiresAccessCodeForPublicCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_e164_public_calls",
            "allowE164PublicCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prefer_e164_number_format_for_callback_services",
            "preferE164NumberFormatForCallbackServices",
            bool,
            False,
            True,
            False,
        ),
        E(
            "public_digit_map",
            "publicDigitMap",
            str,
            False,
            False,
            False,
        ),
        E(
            "private_digit_map",
            "privateDigitMap",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* useSetting
    use_setting = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* requiresAccessCodeForPublicCalls
    requires_access_code_for_public_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowE164PublicCalls
    allow_e164_public_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* preferE164NumberFormatForCallbackServices
    prefer_e164_number_format_for_callback_services = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* publicDigitMap
    public_digit_map = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* privateDigitMap
    private_digit_map = Field(
        type=str,
        required=False,
    )


class GroupDialableCallerIDCriteriaGetResponse(OCIResponse):
    """
    Response to the ``GroupDialableCallerIDCriteriaGetRequest()``.
    The response contains the Dialable Caller ID Criteria information.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "prefix_digits",
            "prefixDigits",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_call_type",
            "matchCallType",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_alternate_call_indicator",
            "matchAlternateCallIndicator",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_local_category",
            "matchLocalCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_national_category",
            "matchNationalCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_interlata_category",
            "matchInterlataCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_intralata_category",
            "matchIntralataCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_international_category",
            "matchInternationalCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_private_category",
            "matchPrivateCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_emergency_category",
            "matchEmergencyCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_other_category",
            "matchOtherCategory",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* prefixDigits
    prefix_digits = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* matchCallType
    match_call_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* matchAlternateCallIndicator
    match_alternate_call_indicator = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* matchLocalCategory
    match_local_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchNationalCategory
    match_national_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInterlataCategory
    match_interlata_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchIntralataCategory
    match_intralata_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInternationalCategory
    match_international_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchPrivateCategory
    match_private_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchEmergencyCategory
    match_emergency_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchOtherCategory
    match_other_category = Field(
        type=bool,
        required=True,
    )


class GroupDialableCallerIDGetResponse(OCIResponse):
    """
    Response to the ``GroupDialableCallerIDGetRequest()``.
    The criteria table�s column headings are "Active", "Name", "Description", �Prefix
    Digits�, �Priority�.
    """

    _ELEMENTS = (
        E(
            "use_group_criteria",
            "useGroupCriteria",
            bool,
            False,
            True,
            False,
        ),
        E(
            "ns_screening_failure_policy",
            "nsScreeningFailurePolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* useGroupCriteria
    use_group_criteria = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* nsScreeningFailurePolicy
    ns_screening_failure_policy = Field(
        type=str,
        required=True,
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


class GroupDigitCollectionGetResponse13mp4(OCIResponse):
    """
    Response to ``GroupDigitCollectionGetRequest13mp4()``.
    """

    _ELEMENTS = (
        E(
            "use_setting",
            "useSetting",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_code",
            "accessCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "public_digit_map",
            "publicDigitMap",
            str,
            False,
            False,
            False,
        ),
        E(
            "private_digit_map",
            "privateDigitMap",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* useSetting
    use_setting = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* accessCode
    access_code = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* publicDigitMap
    public_digit_map = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* privateDigitMap
    private_digit_map = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "agent_user_table",
            "agentUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* agentUserTable  *Tabular*
    agent_user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "agent_user_table",
            "agentUserTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "use_terminate_call_to_agent_first",
            "useTerminateCallToAgentFirst",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_original_agent_services_for_busy_and_no_answer_calls",
            "useOriginalAgentServicesForBusyAndNoAnswerCalls",
            bool,
            False,
            True,
            False,
        ),
    )
    #: list: *Required* agentUserTable  *Tabular*
    agent_user_table = Field(
        type=list,
        required=True,
    )
    #: bool: *Required* useTerminateCallToAgentFirst
    use_terminate_call_to_agent_first = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useOriginalAgentServicesForBusyAndNoAnswerCalls
    use_original_agent_services_for_busy_and_no_answer_calls = Field(
        type=bool,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "dn_table",
            "dnTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* dnTable  *Tabular*
    dn_table = Field(
        type=list,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "dn_table",
            "dnTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* dnTable  *Tabular*
    dn_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "dn_table",
            "dnTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* dnTable  *Tabular*
    dn_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "dn_table",
            "dnTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* dnTable  *Tabular*
    dn_table = Field(
        type=list,
        required=True,
    )


class GroupDnGetListResponse(OCIResponse):
    """
    Response to the ``GroupDnGetListRequest()``.
    The response contains the list of DNs assigned to the group.
    """

    _ELEMENTS = (
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "dn_table",
            "dnTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* dnTable  *Tabular*
    dn_table = Field(
        type=list,
        required=True,
    )


class GroupDomainGetAssignedListResponse(OCIResponse):
    """
    Contains a simple list of all group domain names.
    """

    _ELEMENTS = (
        E(
            "group_default_domain",
            "groupDefaultDomain",
            str,
            False,
            True,
            False,
        ),
        E(
            "domain",
            "domain",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* groupDefaultDomain
    group_default_domain = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* domain
    domain = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


class GroupEmergencyZonesGetResponse(OCIResponse):
    """
    Response to ``GroupEmergencyZonesGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "emergency_zones_prohibition",
            "emergencyZonesProhibition",
            str,
            False,
            True,
            False,
        ),
        E(
            "send_emergency_call_notify_email",
            "sendEmergencyCallNotifyEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "emergency_call_notify_email_address",
            "emergencyCallNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* emergencyZonesProhibition
    emergency_zones_prohibition = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* sendEmergencyCallNotifyEmail
    send_emergency_call_notify_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* emergencyCallNotifyEmailAddress
    emergency_call_notify_email_address = Field(
        type=str,
        required=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�.
    """

    _ELEMENTS = (
        E(
            "endpoint_table",
            "endpointTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* endpointTable  *Tabular*
    endpoint_table = Field(
        type=list,
        required=True,
    )


class GroupEnterpriseTrunkGetAvailableTrunkGroupListResponse(OCIResponse):
    """
    Response to ``GroupEnterpriseTrunkGetAvailableTrunkGroupListRequest()``.
    """

    _ELEMENTS = (
        E(
            "trunk_group_name",
            "trunkGroupName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* trunkGroupName
    trunk_group_name = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "enterprise_trunk_table",
            "enterpriseTrunkTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* enterpriseTrunkTable  *Tabular*
    enterprise_trunk_table = Field(
        type=list,
        required=True,
    )


class GroupEnterpriseTrunkGetResponse(OCIResponse):
    """
    Response to ``GroupEnterpriseTrunkGetRequest()``.

    Replaced By ``GroupEnterpriseTrunkGetResponse21()``.
    """

    _ELEMENTS = (
        E(
            "maximum_reroute_attempts",
            "maximumRerouteAttempts",
            int,
            False,
            True,
            False,
        ),
        E(
            "route_exhaustion_action",
            "routeExhaustionAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "route_exhaustion_forward_address",
            "routeExhaustionForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "ordered_routing",
            "orderedRouting",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "priority_weighted_routing",
            "priorityWeightedRouting",
            str,
            True,
            True,
            False,
        ),  # unknown
    )
    #: int: *Required* maximumRerouteAttempts
    maximum_reroute_attempts = Field(
        type=int,
        required=True,
    )
    #: str: *Required* routeExhaustionAction
    route_exhaustion_action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* routeExhaustionForwardAddress
    route_exhaustion_forward_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* orderedRouting
    ordered_routing = Field(
        type=str,
        required=True,
    )
    #: str: *Required* priorityWeightedRouting
    priority_weighted_routing = Field(
        type=str,
        required=True,
    )


class GroupEnterpriseTrunkGetResponse21(OCIResponse):
    """
    Response to ``GroupEnterpriseTrunkGetRequest21()``.
    """

    _ELEMENTS = (
        E(
            "maximum_reroute_attempts",
            "maximumRerouteAttempts",
            int,
            False,
            True,
            False,
        ),
        E(
            "route_exhaustion_action",
            "routeExhaustionAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "route_exhaustion_forward_address",
            "routeExhaustionForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "ordered_routing",
            "orderedRouting",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "priority_weighted_routing",
            "priorityWeightedRouting",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "enable_capacity_management",
            "enableCapacityManagement",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_active_calls",
            "maxActiveCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_trap_initial_calls",
            "capacityExceededTrapInitialCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_trap_offset_calls",
            "capacityExceededTrapOffsetCalls",
            int,
            False,
            False,
            False,
        ),
    )
    #: int: *Required* maximumRerouteAttempts
    maximum_reroute_attempts = Field(
        type=int,
        required=True,
    )
    #: str: *Required* routeExhaustionAction
    route_exhaustion_action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* routeExhaustionForwardAddress
    route_exhaustion_forward_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* orderedRouting
    ordered_routing = Field(
        type=str,
        required=True,
    )
    #: str: *Required* priorityWeightedRouting
    priority_weighted_routing = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableCapacityManagement
    enable_capacity_management = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* maxActiveCalls
    max_active_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* capacityExceededTrapInitialCalls
    capacity_exceeded_trap_initial_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* capacityExceededTrapOffsetCalls
    capacity_exceeded_trap_offset_calls = Field(
        type=int,
        required=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".
    """

    _ELEMENTS = (
        E(
            "enterprise_trunk_user_table",
            "enterpriseTrunkUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* enterpriseTrunkUserTable  *Tabular*
    enterprise_trunk_user_table = Field(
        type=list,
        required=True,
    )


class GroupExchangeIntegrationGetResponse(OCIResponse):
    """
    Response to ``GroupExchangeIntegrationGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "enable_exchange_integration",
            "enableExchangeIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "exchange_url",
            "exchangeURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "exchange_user_name",
            "exchangeUserName",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* enableExchangeIntegration
    enable_exchange_integration = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* exchangeURL
    exchange_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* exchangeUserName
    exchange_user_name = Field(
        type=str,
        required=False,
    )


class GroupExtensionLengthGetResponse(OCIResponse):
    """
    Response to ``GroupExtensionLengthGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "extension_length",
            "extensionLength",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* extensionLength
    extension_length = Field(
        type=int,
        required=True,
    )


class GroupExtensionLengthGetResponse17(OCIResponse):
    """
    Response to ``GroupExtensionLengthGetRequest17()``.
    """

    _ELEMENTS = (
        E(
            "min_extension_length",
            "minExtensionLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_extension_length",
            "maxExtensionLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "default_extension_length",
            "defaultExtensionLength",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* minExtensionLength
    min_extension_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxExtensionLength
    max_extension_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* defaultExtensionLength
    default_extension_length = Field(
        type=int,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "file_repository_user_table",
            "fileRepositoryUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* fileRepositoryUserTable  *Tabular*
    file_repository_user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


class GroupFindMeFollowMeGetAlertingGroupListResponse(OCIResponse):
    """
    Response to the ``GroupFindMeFollowMeGetAlertingGroupListRequest()``.
    Contains a table with column headings:
    "Name", "Priority".
    """

    _ELEMENTS = (
        E(
            "alerting_group_table",
            "alertingGroupTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* alertingGroupTable  *Tabular*
    alerting_group_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "alerting_group_description",
            "alertingGroupDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_diversion_inhibitor",
            "useDiversionInhibitor",
            bool,
            False,
            True,
            False,
        ),
        E(
            "answer_confirmation_required",
            "answerConfirmationRequired",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_rings",
            "numberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Optional* alertingGroupDescription
    alerting_group_description = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useDiversionInhibitor
    use_diversion_inhibitor = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* answerConfirmationRequired
    answer_confirmation_required = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberOfRings
    number_of_rings = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "find_me_follow_me_table",
            "findMeFollowMeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* findMeFollowMeTable  *Tabular*
    find_me_follow_me_table = Field(
        type=list,
        required=True,
    )


class GroupFlexibleSeatingAccessDeviceGetListResponse(OCIResponse):
    """
    Response to ``GroupFlexibleSeatingAccessDeviceGetListRequest()``
    """

    _ELEMENTS = (
        E(
            "available_access_device",
            "availableAccessDevice",
            str,
            True,
            False,
            False,
        ),  # unknown
    )
    #: str: *Optional* availableAccessDevice
    available_access_device = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "flexible_seating_host_table",
            "flexibleSeatingHostTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* flexibleSeatingHostTable  *Tabular*
    flexible_seating_host_table = Field(
        type=list,
        required=True,
    )


class GroupFlexibleSeatingHostGuestAssociationGetResponse(OCIResponse):
    """
    Response to ``GroupFlexibleSeatingHostGuestAssociationGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "enforce_association_limit",
            "enforceAssociationLimit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "association_limit_hours",
            "associationLimitHours",
            int,
            False,
            True,
            False,
        ),
        E(
            "access_level",
            "accessLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "guest_last_name",
            "guestLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "guest_first_name",
            "guestFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "guest_phone_number",
            "guestPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "guest_extension",
            "guestExtension",
            str,
            False,
            False,
            False,
        ),
        E(
            "guest_location_dialing_code",
            "guestLocationDialingCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "guest_association_date_time",
            "guestAssociationDateTime",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* enforceAssociationLimit
    enforce_association_limit = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* associationLimitHours
    association_limit_hours = Field(
        type=int,
        required=True,
    )
    #: str: *Required* accessLevel
    access_level = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* guestLastName
    guest_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* guestFirstName
    guest_first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* guestPhoneNumber
    guest_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* guestExtension
    guest_extension = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* guestLocationDialingCode
    guest_location_dialing_code = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* guestAssociationDateTime
    guest_association_date_time = Field(
        type=str,
        required=False,
    )


class GroupFlexibleSeatingHostRoutingPoliciesGetResponse(OCIResponse):
    """
    Response to the ``GroupFlexibleSeatingHostRoutingPoliciesGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "allow_emergency_calls",
            "allowEmergencyCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_calls_to_voice_portal",
            "allowCallsToVoicePortal",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* allowEmergencyCalls
    allow_emergency_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowCallsToVoicePortal
    allow_calls_to_voice_portal = Field(
        type=bool,
        required=True,
    )


class GroupGetDefaultResponse(OCIResponse):
    """
    Response to the ``GroupGetDefaultRequest()``. All values are default values for a
    group's profile.
    """

    _ELEMENTS = (
        E(
            "default_domain",
            "defaultDomain",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_limit",
            "userLimit",
            int,
            False,
            True,
            False,
        ),
        E(
            "time_zone",
            "timeZone",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone_display_name",
            "timeZoneDisplayName",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* defaultDomain
    default_domain = Field(
        type=str,
        required=True,
    )
    #: int: *Required* userLimit
    user_limit = Field(
        type=int,
        required=True,
    )
    #: str: *Required* timeZone
    time_zone = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZoneDisplayName
    time_zone_display_name = Field(
        type=str,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "group_table",
            "groupTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* groupTable  *Tabular*
    group_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "group_table",
            "groupTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* groupTable  *Tabular*
    group_table = Field(
        type=list,
        required=True,
    )


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()``.
    """

    _ELEMENTS = (
        E(
            "user_list_table",
            "userListTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userListTable  *Tabular*
    user_list_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "paging_group_table",
            "pagingGroupTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* pagingGroupTable  *Tabular*
    paging_group_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "originator_table",
            "originatorTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* originatorTable  *Tabular*
    originator_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "target_table",
            "targetTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* targetTable  *Tabular*
    target_table = Field(
        type=list,
        required=True,
    )


class GroupGroupPagingTargetsCapacityGetResponse(OCIResponse):
    """
    Response to ``GroupGroupPagingTargetsCapacityGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "maximum_target_users_from_service_provider",
            "maximumTargetUsersFromServiceProvider",
            int,
            False,
            True,
            False,
        ),
        E(
            "maximum_target_users",
            "maximumTargetUsers",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* maximumTargetUsersFromServiceProvider
    maximum_target_users_from_service_provider = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maximumTargetUsers
    maximum_target_users = Field(
        type=int,
        required=True,
    )


class GroupHolidayScheduleGetListResponse(OCIResponse):
    """
    Response to the ``GroupHolidayScheduleGetListRequest()``.
    The response contains all the group's holiday schedule name.
    """

    _ELEMENTS = (
        E(
            "holiday_schedule_name",
            "holidayScheduleName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* holidayScheduleName
    holiday_schedule_name = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "hunt_group_table",
            "huntGroupTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* huntGroupTable  *Tabular*
    hunt_group_table = Field(
        type=list,
        required=True,
    )


class GroupIMRNGetListResponse(OCIResponse):
    """
    Response to ``GroupIMRNGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "imrn",
            "imrn",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* imrn
    imrn = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "instant_group_call_table",
            "instantGroupCallTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* instantGroupCallTable  *Tabular*
    instant_group_call_table = Field(
        type=list,
        required=True,
    )


class GroupIntegratedIMPGetResponse(OCIResponse):
    """
    Response to the ``GroupIntegratedIMPGetRequest()``.
    The response contains the group Integrated IMP service attributes.
    """

    _ELEMENTS = (
        E(
            "use_service_provider_setting",
            "useServiceProviderSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "service_domain",
            "serviceDomain",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* useServiceProviderSetting
    use_service_provider_setting = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* serviceDomain
    service_domain = Field(
        type=str,
        required=False,
    )


class GroupInterceptGroupGetResponse(OCIResponse):
    """
    Response to the ``GroupInterceptGroupGetRequest()``.
    Replaced By ``GroupInterceptGroupGetResponse16()``
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "announcement_selection",
            "announcementSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_new_phone_number",
            "playNewPhoneNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "new_phone_number",
            "newPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "transfer_on_zero_to_phone_number",
            "transferOnZeroToPhoneNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* announcementSelection
    announcement_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playNewPhoneNumber
    play_new_phone_number = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* newPhoneNumber
    new_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* transferOnZeroToPhoneNumber
    transfer_on_zero_to_phone_number = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )


class GroupInterceptGroupGetResponse16(OCIResponse):
    """
    Response to the ``GroupInterceptGroupGetRequest16()``.
    Replaced By ``GroupInterceptGroupGetResponse16sp1()``
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "announcement_selection",
            "announcementSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_media_type",
            "audioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_media_type",
            "videoMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_new_phone_number",
            "playNewPhoneNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "new_phone_number",
            "newPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "transfer_on_zero_to_phone_number",
            "transferOnZeroToPhoneNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* announcementSelection
    announcement_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioMediaType
    audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoMediaType
    video_media_type = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playNewPhoneNumber
    play_new_phone_number = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* newPhoneNumber
    new_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* transferOnZeroToPhoneNumber
    transfer_on_zero_to_phone_number = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )


class GroupInterceptGroupGetResponse16sp1(OCIResponse):
    """
    Response to the ``GroupInterceptGroupGetRequest16sp1()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "announcement_selection",
            "announcementSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_media_type",
            "audioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_media_type",
            "videoMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_new_phone_number",
            "playNewPhoneNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "new_phone_number",
            "newPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "transfer_on_zero_to_phone_number",
            "transferOnZeroToPhoneNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "reroute_outbound_calls",
            "rerouteOutboundCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "outbound_reroute_phone_number",
            "outboundReroutePhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_outbound_local_calls",
            "allowOutboundLocalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "inbound_call_mode",
            "inboundCallMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "alternate_blocking_announcement",
            "alternateBlockingAnnouncement",
            bool,
            False,
            True,
            False,
        ),
        E(
            "route_to_voice_mail",
            "routeToVoiceMail",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* announcementSelection
    announcement_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioMediaType
    audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoMediaType
    video_media_type = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playNewPhoneNumber
    play_new_phone_number = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* newPhoneNumber
    new_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* transferOnZeroToPhoneNumber
    transfer_on_zero_to_phone_number = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* rerouteOutboundCalls
    reroute_outbound_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* outboundReroutePhoneNumber
    outbound_reroute_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowOutboundLocalCalls
    allow_outbound_local_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* inboundCallMode
    inbound_call_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* alternateBlockingAnnouncement
    alternate_blocking_announcement = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* routeToVoiceMail
    route_to_voice_mail = Field(
        type=bool,
        required=True,
    )


class GroupInventoryReportGetResponse(OCIResponse):
    """
    Response to ``GroupInventoryReportGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "inventory_report_table",
            "inventoryReportTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* inventoryReportTable  *Tabular*
    inventory_report_table = Field(
        type=list,
        required=True,
    )


class GroupLDAPIntegrationGetDirectoryResponse(OCIResponse):
    """
    Response to ``GroupLDAPIntegrationGetDirectoryRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_level",
            "useLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "server_net_address",
            "serverNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "server_port",
            "serverPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "search_base",
            "searchBase",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_ssl",
            "useSSL",
            bool,
            False,
            True,
            False,
        ),
        E(
            "require_authentication",
            "requireAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "authenticated_dn",
            "authenticatedDN",
            str,
            False,
            False,
            False,
        ),
        E(
            "authenticated_password",
            "authenticatedPassword",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_sort_enabled",
            "isSortEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_paged_result_enabled",
            "isPagedResultEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "search_filter",
            "searchFilter",
            str,
            False,
            False,
            False,
        ),
        E(
            "include_search_attribute_in_search_filter",
            "includeSearchAttributeInSearchFilter",
            bool,
            False,
            True,
            False,
        ),
        E(
            "column1_attribute_name",
            "column1AttributeName",
            str,
            False,
            True,
            False,
        ),
        E(
            "column2_attribute_name",
            "column2AttributeName",
            str,
            False,
            False,
            False,
        ),
        E(
            "column3_attribute_name",
            "column3AttributeName",
            str,
            False,
            False,
            False,
        ),
        E(
            "column4_attribute_name",
            "column4AttributeName",
            str,
            False,
            False,
            False,
        ),
        E(
            "column1_label",
            "column1Label",
            str,
            False,
            False,
            False,
        ),
        E(
            "column2_label",
            "column2Label",
            str,
            False,
            False,
            False,
        ),
        E(
            "column3_label",
            "column3Label",
            str,
            False,
            False,
            False,
        ),
        E(
            "column4_label",
            "column4Label",
            str,
            False,
            False,
            False,
        ),
        E(
            "search_column",
            "searchColumn",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* useLevel
    use_level = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* serverNetAddress
    server_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Required* serverPort
    server_port = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* searchBase
    search_base = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useSSL
    use_ssl = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requireAuthentication
    require_authentication = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* authenticatedDN
    authenticated_dn = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* authenticatedPassword
    authenticated_password = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isSortEnabled
    is_sort_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isPagedResultEnabled
    is_paged_result_enabled = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* searchFilter
    search_filter = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* includeSearchAttributeInSearchFilter
    include_search_attribute_in_search_filter = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* column1AttributeName
    column1_attribute_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* column2AttributeName
    column2_attribute_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* column3AttributeName
    column3_attribute_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* column4AttributeName
    column4_attribute_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* column1Label
    column1_label = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* column2Label
    column2_label = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* column3Label
    column3_label = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* column4Label
    column4_label = Field(
        type=str,
        required=False,
    )
    #: int: *Required* searchColumn
    search_column = Field(
        type=int,
        required=True,
    )


class GroupLDAPIntegrationGetResponse(OCIResponse):
    """
    Response to ``GroupLDAPIntegrationGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )


class GroupMWIDeliveryToMobileEndpointGetResponse(OCIResponse):
    """
    Response to ``GroupMWIDeliveryToMobileEndpointGetRequest()``.

    The templateActivationTable contains the list of templates defined for the group.
    The column headings are "Enable", "Language", "Type".
    """

    _ELEMENTS = (
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "template_activation_table",
            "templateActivationTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: list: *Required* templateActivationTable  *Tabular*
    template_activation_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "conference_bridge_table",
            "conferenceBridgeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* conferenceBridgeTable  *Tabular*
    conference_bridge_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "network_class_of_service_table",
            "networkClassOfServiceTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* networkClassOfServiceTable  *Tabular*
    network_class_of_service_table = Field(
        type=list,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "office_zone_table",
            "officeZoneTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* officeZoneTable  *Tabular*
    office_zone_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


class GroupOutgoingCallingPlanPinholeDigitPatternGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanPinholeDigitPatternGetListRequest()``.
    Contains a table with column headings: "Name", "Digit Pattern".
    """

    _ELEMENTS = (
        E(
            "digit_pattern_table",
            "digitPatternTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* digitPatternTable  *Tabular*
    digit_pattern_table = Field(
        type=list,
        required=True,
    )


class GroupPasswordRulesGetResponse(OCIResponse):
    """
    Response to ``GroupPasswordRulesGetRequest()``.
    Contains the password rules applicable to users within the group.
    Repleced by: ``GroupPasswordRulesGetResponse16()``
    """

    _ELEMENTS = (
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_id",
            "groupId",
            str,
            False,
            True,
            False,
        ),
        E(
            "disallow_user_id",
            "disallowUserId",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_old_password",
            "disallowOldPassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_old_password",
            "disallowReversedOldPassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_digits",
            "restrictMinDigits",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_digits",
            "minDigits",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_upper_case_letters",
            "restrictMinUpperCaseLetters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_upper_case_letters",
            "minUpperCaseLetters",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_lower_case_letters",
            "restrictMinLowerCaseLetters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_lower_case_letters",
            "minLowerCaseLetters",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_non_alphanumeric_characters",
            "restrictMinNonAlphanumericCharacters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_non_alphanumeric_characters",
            "minNonAlphanumericCharacters",
            int,
            False,
            True,
            False,
        ),
        E(
            "min_length",
            "minLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_failed_login_attempts",
            "maxFailedLoginAttempts",
            int,
            False,
            True,
            False,
        ),
        E(
            "password_expires_days",
            "passwordExpiresDays",
            int,
            False,
            True,
            False,
        ),
        E(
            "send_login_disabled_notify_email",
            "sendLoginDisabledNotifyEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "login_disabled_notify_email_address",
            "loginDisabledNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "disallow_rules_modification",
            "disallowRulesModification",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupId
    group_id = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* disallowUserId
    disallow_user_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowOldPassword
    disallow_old_password = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedOldPassword
    disallow_reversed_old_password = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* restrictMinDigits
    restrict_min_digits = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minDigits
    min_digits = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinUpperCaseLetters
    restrict_min_upper_case_letters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minUpperCaseLetters
    min_upper_case_letters = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinLowerCaseLetters
    restrict_min_lower_case_letters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minLowerCaseLetters
    min_lower_case_letters = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinNonAlphanumericCharacters
    restrict_min_non_alphanumeric_characters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minNonAlphanumericCharacters
    min_non_alphanumeric_characters = Field(
        type=int,
        required=True,
    )
    #: int: *Required* minLength
    min_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxFailedLoginAttempts
    max_failed_login_attempts = Field(
        type=int,
        required=True,
    )
    #: int: *Required* passwordExpiresDays
    password_expires_days = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* sendLoginDisabledNotifyEmail
    send_login_disabled_notify_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* loginDisabledNotifyEmailAddress
    login_disabled_notify_email_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* disallowRulesModification
    disallow_rules_modification = Field(
        type=bool,
        required=True,
    )


class GroupPasswordRulesGetResponse16(OCIResponse):
    """
    Response to ``GroupPasswordRulesGetRequest16()``.
    Contains the password rules applicable to users within the group.
    """

    _ELEMENTS = (
        E(
            "disallow_user_id",
            "disallowUserId",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_old_password",
            "disallowOldPassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_old_password",
            "disallowReversedOldPassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_digits",
            "restrictMinDigits",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_digits",
            "minDigits",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_upper_case_letters",
            "restrictMinUpperCaseLetters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_upper_case_letters",
            "minUpperCaseLetters",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_lower_case_letters",
            "restrictMinLowerCaseLetters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_lower_case_letters",
            "minLowerCaseLetters",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_non_alphanumeric_characters",
            "restrictMinNonAlphanumericCharacters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_non_alphanumeric_characters",
            "minNonAlphanumericCharacters",
            int,
            False,
            True,
            False,
        ),
        E(
            "min_length",
            "minLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_failed_login_attempts",
            "maxFailedLoginAttempts",
            int,
            False,
            True,
            False,
        ),
        E(
            "password_expires_days",
            "passwordExpiresDays",
            int,
            False,
            True,
            False,
        ),
        E(
            "send_login_disabled_notify_email",
            "sendLoginDisabledNotifyEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "login_disabled_notify_email_address",
            "loginDisabledNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "disallow_rules_modification",
            "disallowRulesModification",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_previous_passwords",
            "disallowPreviousPasswords",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_previous_passwords",
            "numberOfPreviousPasswords",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* disallowUserId
    disallow_user_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowOldPassword
    disallow_old_password = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedOldPassword
    disallow_reversed_old_password = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* restrictMinDigits
    restrict_min_digits = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minDigits
    min_digits = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinUpperCaseLetters
    restrict_min_upper_case_letters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minUpperCaseLetters
    min_upper_case_letters = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinLowerCaseLetters
    restrict_min_lower_case_letters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minLowerCaseLetters
    min_lower_case_letters = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinNonAlphanumericCharacters
    restrict_min_non_alphanumeric_characters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minNonAlphanumericCharacters
    min_non_alphanumeric_characters = Field(
        type=int,
        required=True,
    )
    #: int: *Required* minLength
    min_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxFailedLoginAttempts
    max_failed_login_attempts = Field(
        type=int,
        required=True,
    )
    #: int: *Required* passwordExpiresDays
    password_expires_days = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* sendLoginDisabledNotifyEmail
    send_login_disabled_notify_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* loginDisabledNotifyEmailAddress
    login_disabled_notify_email_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* disallowRulesModification
    disallow_rules_modification = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowPreviousPasswords
    disallow_previous_passwords = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberOfPreviousPasswords
    number_of_previous_passwords = Field(
        type=int,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "directory_table",
            "directoryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* directoryTable  *Tabular*
    directory_table = Field(
        type=list,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "directory_table",
            "directoryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* directoryTable  *Tabular*
    directory_table = Field(
        type=list,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "directory_table",
            "directoryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* directoryTable  *Tabular*
    directory_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "directory_table",
            "directoryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* directoryTable  *Tabular*
    directory_table = Field(
        type=list,
        required=True,
    )


class GroupPolicyGetResponse(OCIResponse):
    """
    Response to ``GroupPolicyGetRequest()``.
    Contains the policy settings for the group.
    """

    _ELEMENTS = (
        E(
            "calling_plan_access",
            "callingPlanAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "extension_access",
            "extensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "ldap_integration_access",
            "ldapIntegrationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "voice_messaging_access",
            "voiceMessagingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_admin_user_access",
            "departmentAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_authentication_access",
            "userAuthenticationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_group_directory_access",
            "userGroupDirectoryAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_profile_access",
            "userProfileAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* callingPlanAccess
    calling_plan_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* extensionAccess
    extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* ldapIntegrationAccess
    ldap_integration_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voiceMessagingAccess
    voice_messaging_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAdminUserAccess
    department_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userAuthenticationAccess
    user_authentication_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userGroupDirectoryAccess
    user_group_directory_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userProfileAccess
    user_profile_access = Field(
        type=str,
        required=True,
    )


class GroupPolicyGetResponse14sp1(OCIResponse):
    """
    Response to ``GroupPolicyGetRequest14sp1()``.
    Contains the policy settings for the group.
    """

    _ELEMENTS = (
        E(
            "calling_plan_access",
            "callingPlanAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "extension_access",
            "extensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "ldap_integration_access",
            "ldapIntegrationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "voice_messaging_access",
            "voiceMessagingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_admin_user_access",
            "departmentAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_admin_trunk_group_access",
            "departmentAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_authentication_access",
            "userAuthenticationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_group_directory_access",
            "userGroupDirectoryAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_profile_access",
            "userProfileAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* callingPlanAccess
    calling_plan_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* extensionAccess
    extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* ldapIntegrationAccess
    ldap_integration_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voiceMessagingAccess
    voice_messaging_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAdminUserAccess
    department_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAdminTrunkGroupAccess
    department_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userAuthenticationAccess
    user_authentication_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userGroupDirectoryAccess
    user_group_directory_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userProfileAccess
    user_profile_access = Field(
        type=str,
        required=True,
    )


class GroupPolicyGetResponse14sp4(OCIResponse):
    """
    Response to ``GroupPolicyGetRequest14sp4()``.
    Contains the policy settings for the group.
    """

    _ELEMENTS = (
        E(
            "calling_plan_access",
            "callingPlanAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "extension_access",
            "extensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "ldap_integration_access",
            "ldapIntegrationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "voice_messaging_access",
            "voiceMessagingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_admin_user_access",
            "departmentAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_admin_trunk_group_access",
            "departmentAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_authentication_access",
            "userAuthenticationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_group_directory_access",
            "userGroupDirectoryAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_profile_access",
            "userProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_enhanced_call_log_access",
            "userEnhancedCallLogAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* callingPlanAccess
    calling_plan_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* extensionAccess
    extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* ldapIntegrationAccess
    ldap_integration_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voiceMessagingAccess
    voice_messaging_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAdminUserAccess
    department_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAdminTrunkGroupAccess
    department_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userAuthenticationAccess
    user_authentication_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userGroupDirectoryAccess
    user_group_directory_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userProfileAccess
    user_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userEnhancedCallLogAccess
    user_enhanced_call_log_access = Field(
        type=str,
        required=True,
    )


class GroupPolicyGetResponse17(OCIResponse):
    """
    Response to ``GroupPolicyGetRequest17()``.
    Contains the policy settings for the group.
    """

    _ELEMENTS = (
        E(
            "calling_plan_access",
            "callingPlanAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "extension_access",
            "extensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "ldap_integration_access",
            "ldapIntegrationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "voice_messaging_access",
            "voiceMessagingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_admin_user_access",
            "departmentAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_admin_trunk_group_access",
            "departmentAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_admin_phone_number_extension_access",
            "departmentAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_admin_calling_line_id_number_access",
            "departmentAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_authentication_access",
            "userAuthenticationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_group_directory_access",
            "userGroupDirectoryAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_profile_access",
            "userProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_enhanced_call_log_access",
            "userEnhancedCallLogAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* callingPlanAccess
    calling_plan_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* extensionAccess
    extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* ldapIntegrationAccess
    ldap_integration_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voiceMessagingAccess
    voice_messaging_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAdminUserAccess
    department_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAdminTrunkGroupAccess
    department_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAdminPhoneNumberExtensionAccess
    department_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAdminCallingLineIdNumberAccess
    department_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userAuthenticationAccess
    user_authentication_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userGroupDirectoryAccess
    user_group_directory_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userProfileAccess
    user_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userEnhancedCallLogAccess
    user_enhanced_call_log_access = Field(
        type=str,
        required=True,
    )


class GroupPolicyGetResponse20(OCIResponse):
    """
    Response to ``GroupPolicyGetRequest20()``.
    Contains the policy settings for the group.
    """

    _ELEMENTS = (
        E(
            "calling_plan_access",
            "callingPlanAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "extension_access",
            "extensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "ldap_integration_access",
            "ldapIntegrationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "voice_messaging_access",
            "voiceMessagingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_admin_user_access",
            "departmentAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_admin_trunk_group_access",
            "departmentAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_admin_phone_number_extension_access",
            "departmentAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_admin_calling_line_id_number_access",
            "departmentAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_authentication_access",
            "userAuthenticationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_group_directory_access",
            "userGroupDirectoryAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_profile_access",
            "userProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_enhanced_call_log_access",
            "userEnhancedCallLogAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_auto_attendant_name_dialing_access",
            "userAutoAttendantNameDialingAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* callingPlanAccess
    calling_plan_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* extensionAccess
    extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* ldapIntegrationAccess
    ldap_integration_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voiceMessagingAccess
    voice_messaging_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAdminUserAccess
    department_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAdminTrunkGroupAccess
    department_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAdminPhoneNumberExtensionAccess
    department_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAdminCallingLineIdNumberAccess
    department_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userAuthenticationAccess
    user_authentication_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userGroupDirectoryAccess
    user_group_directory_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userProfileAccess
    user_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userEnhancedCallLogAccess
    user_enhanced_call_log_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userAutoAttendantNameDialingAccess
    user_auto_attendant_name_dialing_access = Field(
        type=str,
        required=True,
    )


class GroupPolycomPhoneServicesGetResponse(OCIResponse):
    """
    Response to ``GroupPolycomPhoneServicesGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "include_group_common_phone_list_in_directory",
            "includeGroupCommonPhoneListInDirectory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_group_custom_contact_directory_in_directory",
            "includeGroupCustomContactDirectoryInDirectory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "group_custom_contact_directory",
            "groupCustomContactDirectory",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* includeGroupCommonPhoneListInDirectory
    include_group_common_phone_list_in_directory = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeGroupCustomContactDirectoryInDirectory
    include_group_custom_contact_directory_in_directory = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* groupCustomContactDirectory
    group_custom_contact_directory = Field(
        type=str,
        required=False,
    )


class GroupPortalPasscodeRulesGetResponse(OCIResponse):
    """
    Response to ``GroupPortalPasscodeRulesGetRequest()``.
    Contains the group's passcode rules setting.
    """

    _ELEMENTS = (
        E(
            "use_rule_level",
            "useRuleLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "disallow_repeated_digits",
            "disallowRepeatedDigits",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_user_number",
            "disallowUserNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_user_number",
            "disallowReversedUserNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_old_passcode",
            "disallowOldPasscode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_old_passcode",
            "disallowReversedOldPasscode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_code_length",
            "minCodeLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_code_length",
            "maxCodeLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "disable_login_after_max_failed_login_attempts",
            "disableLoginAfterMaxFailedLoginAttempts",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_failed_login_attempts",
            "maxFailedLoginAttempts",
            int,
            False,
            False,
            False,
        ),
        E(
            "expire_password",
            "expirePassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "passcode_expires_days",
            "passcodeExpiresDays",
            int,
            False,
            False,
            False,
        ),
        E(
            "send_login_disabled_notify_email",
            "sendLoginDisabledNotifyEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "login_disabled_notify_email_address",
            "loginDisabledNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* useRuleLevel
    use_rule_level = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* disallowRepeatedDigits
    disallow_repeated_digits = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowUserNumber
    disallow_user_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedUserNumber
    disallow_reversed_user_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowOldPasscode
    disallow_old_passcode = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedOldPasscode
    disallow_reversed_old_passcode = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minCodeLength
    min_code_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxCodeLength
    max_code_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disableLoginAfterMaxFailedLoginAttempts
    disable_login_after_max_failed_login_attempts = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* maxFailedLoginAttempts
    max_failed_login_attempts = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* expirePassword
    expire_password = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* passcodeExpiresDays
    passcode_expires_days = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* sendLoginDisabledNotifyEmail
    send_login_disabled_notify_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* loginDisabledNotifyEmailAddress
    login_disabled_notify_email_address = Field(
        type=str,
        required=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
    """

    _ELEMENTS = (
        E(
            "use_rule_level",
            "useRuleLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "disallow_repeated_digits",
            "disallowRepeatedDigits",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_repeated_digits",
            "numberOfRepeatedDigits",
            int,
            False,
            True,
            False,
        ),
        E(
            "disallow_repeated_patterns",
            "disallowRepeatedPatterns",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_contiguous_sequences",
            "disallowContiguousSequences",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_ascending_digits",
            "numberOfAscendingDigits",
            int,
            False,
            True,
            False,
        ),
        E(
            "number_of_descending_digits",
            "numberOfDescendingDigits",
            int,
            False,
            True,
            False,
        ),
        E(
            "disallow_user_number",
            "disallowUserNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_user_number",
            "disallowReversedUserNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_old_passcode",
            "disallowOldPasscode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_previous_passcodes",
            "numberOfPreviousPasscodes",
            int,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_old_passcode",
            "disallowReversedOldPasscode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_code_length",
            "minCodeLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_code_length",
            "maxCodeLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "disable_login_after_max_failed_login_attempts",
            "disableLoginAfterMaxFailedLoginAttempts",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_failed_login_attempts",
            "maxFailedLoginAttempts",
            int,
            False,
            False,
            False,
        ),
        E(
            "expire_password",
            "expirePassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "passcode_expires_days",
            "passcodeExpiresDays",
            int,
            False,
            False,
            False,
        ),
        E(
            "send_login_disabled_notify_email",
            "sendLoginDisabledNotifyEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "login_disabled_notify_email_address",
            "loginDisabledNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* useRuleLevel
    use_rule_level = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* disallowRepeatedDigits
    disallow_repeated_digits = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberOfRepeatedDigits
    number_of_repeated_digits = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disallowRepeatedPatterns
    disallow_repeated_patterns = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowContiguousSequences
    disallow_contiguous_sequences = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberOfAscendingDigits
    number_of_ascending_digits = Field(
        type=int,
        required=True,
    )
    #: int: *Required* numberOfDescendingDigits
    number_of_descending_digits = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disallowUserNumber
    disallow_user_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedUserNumber
    disallow_reversed_user_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowOldPasscode
    disallow_old_passcode = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberOfPreviousPasscodes
    number_of_previous_passcodes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disallowReversedOldPasscode
    disallow_reversed_old_passcode = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minCodeLength
    min_code_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxCodeLength
    max_code_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disableLoginAfterMaxFailedLoginAttempts
    disable_login_after_max_failed_login_attempts = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* maxFailedLoginAttempts
    max_failed_login_attempts = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* expirePassword
    expire_password = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* passcodeExpiresDays
    passcode_expires_days = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* sendLoginDisabledNotifyEmail
    send_login_disabled_notify_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* loginDisabledNotifyEmailAddress
    login_disabled_notify_email_address = Field(
        type=str,
        required=False,
    )


class GroupPreAlertingAnnouncementGetResponse(OCIResponse):
    """
    Get the group level pre-alerting service settings.
    The response is either a ``GroupPreAlertingAnnouncementGetResponse()`` or an
    ``ErrorResponse()``.
    """

    _ELEMENTS = (
        E(
            "announcement_interruption",
            "announcementInterruption",
            str,
            False,
            True,
            False,
        ),
        E(
            "interruption_digit_sequence",
            "interruptionDigitSequence",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_selection",
            "audioSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_media_type",
            "audioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_file_url",
            "audioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_selection",
            "videoSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_media_type",
            "videoMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_url",
            "videoFileUrl",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* announcementInterruption
    announcement_interruption = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* interruptionDigitSequence
    interruption_digit_sequence = Field(
        type=str,
        required=False,
    )
    #: str: *Required* audioSelection
    audio_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioMediaType
    audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioFileUrl
    audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Required* videoSelection
    video_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoMediaType
    video_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileUrl
    video_file_url = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "available_number_range_table",
            "availableNumberRangeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* availableNumberRangeTable  *Tabular*
    available_number_range_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "number_range_summary_table",
            "numberRangeSummaryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* numberRangeSummaryTable  *Tabular*
    number_range_summary_table = Field(
        type=list,
        required=True,
    )


class GroupRoutePointBouncedCallGetResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointBouncedCallGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_rings_before_bouncing_call",
            "numberOfRingsBeforeBouncingCall",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_transfer",
            "enableTransfer",
            bool,
            False,
            False,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "bounce_call_when_agent_unavailable",
            "bounceCallWhenAgentUnavailable",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberOfRingsBeforeBouncingCall
    number_of_rings_before_bouncing_call = Field(
        type=int,
        required=True,
    )
    #: bool: *Optional* enableTransfer
    enable_transfer = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* bounceCallWhenAgentUnavailable
    bounce_call_when_agent_unavailable = Field(
        type=bool,
        required=True,
    )


class GroupRoutePointDistinctiveRingingGetResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointDistinctiveRingingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "enable_distinctive_ringing",
            "enableDistinctiveRinging",
            bool,
            False,
            True,
            False,
        ),
        E(
            "distinctive_ringing_ring_pattern",
            "distinctiveRingingRingPattern",
            str,
            False,
            True,
            False,
        ),
        E(
            "distinctive_ringing_force_delivery_ring_pattern",
            "distinctiveRingingForceDeliveryRingPattern",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableDistinctiveRinging
    enable_distinctive_ringing = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* distinctiveRingingRingPattern
    distinctive_ringing_ring_pattern = Field(
        type=str,
        required=True,
    )
    #: str: *Required* distinctiveRingingForceDeliveryRingPattern
    distinctive_ringing_force_delivery_ring_pattern = Field(
        type=str,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "external_system_table",
            "externalSystemTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* externalSystemTable  *Tabular*
    external_system_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "route_point_table",
            "routePointTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* routePointTable  *Tabular*
    route_point_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "agent_table",
            "agentTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* agentTable  *Tabular*
    agent_table = Field(
        type=list,
        required=True,
    )


class GroupRoutePointGetDNISListResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointGetDNISListRequest()``.
    Contains a table with column headings: "Name", "Phone Number", "Extension".
    """

    _ELEMENTS = (
        E(
            "display_dnis_number",
            "displayDNISNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "display_dnis_name",
            "displayDNISName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "dnis_table",
            "dnisTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* displayDNISNumber
    display_dnis_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* displayDNISName
    display_dnis_name = Field(
        type=bool,
        required=True,
    )
    #: list: *Required* dnisTable  *Tabular*
    dnis_table = Field(
        type=list,
        required=True,
    )


class GroupRoutePointGetDNISResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointGetDNISRequest()``.
    """

    _ELEMENTS = (
        E(
            "dnis_phone_number",
            "dnisPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "extension",
            "extension",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_custom_clid_settings",
            "useCustomCLIDSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_phone_number",
            "callingLineIdPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_last_name",
            "callingLineIdLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_first_name",
            "callingLineIdFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_custom_dnis_announcement_settings",
            "useCustomDnisAnnouncementSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_outgoing_acd_call",
            "allowOutgoingACDCall",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* dnisPhoneNumber
    dnis_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* extension
    extension = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useCustomCLIDSettings
    use_custom_clid_settings = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* callingLineIdPhoneNumber
    calling_line_id_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdLastName
    calling_line_id_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdFirstName
    calling_line_id_first_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useCustomDnisAnnouncementSettings
    use_custom_dnis_announcement_settings = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowOutgoingACDCall
    allow_outgoing_acd_call = Field(
        type=bool,
        required=True,
    )


class GroupRoutePointGetFailoverPolicyResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointGetFailoverPolicyRequest()``.
    """

    _ELEMENTS = (
        E(
            "enable_failover_support",
            "enableFailoverSupport",
            bool,
            False,
            True,
            False,
        ),
        E(
            "external_system",
            "externalSystem",
            str,
            False,
            False,
            False,
        ),
        E(
            "failover_phone_number",
            "failoverPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "failover_status",
            "failoverStatus",
            str,
            False,
            True,
            False,
        ),
        E(
            "per_call_enable_failover_support",
            "perCallEnableFailoverSupport",
            bool,
            False,
            True,
            False,
        ),
        E(
            "per_call_call_failure_timeout_seconds",
            "perCallCallFailureTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "per_call_outbound_call_failure_timeout_seconds",
            "perCallOutboundCallFailureTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "per_call_failover_phone_number",
            "perCallFailoverPhoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* enableFailoverSupport
    enable_failover_support = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* externalSystem
    external_system = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* failoverPhoneNumber
    failover_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Required* failoverStatus
    failover_status = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* perCallEnableFailoverSupport
    per_call_enable_failover_support = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* perCallCallFailureTimeoutSeconds
    per_call_call_failure_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* perCallOutboundCallFailureTimeoutSeconds
    per_call_outbound_call_failure_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* perCallFailoverPhoneNumber
    per_call_failover_phone_number = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "route_point_table",
            "routePointTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* routePointTable  *Tabular*
    route_point_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "disposition_codes_table",
            "dispositionCodesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* dispositionCodesTable  *Tabular*
    disposition_codes_table = Field(
        type=list,
        required=True,
    )


class GroupRoutePointQueueCallDispositionCodeGetResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointQueueCallDispositionCodeGetRequest()``
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )


class GroupRoutingProfileGetResponse(OCIResponse):
    """
    Response to ``GroupRoutingProfileGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "routing_profile",
            "routingProfile",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* routingProfile
    routing_profile = Field(
        type=str,
        required=False,
    )


class GroupScheduleGetEventListResponse(OCIResponse):
    """
    Response to ``GroupScheduleGetEventListRequest()``.
    The response contains a list of events.
    """

    _ELEMENTS = (
        E(
            "event_name",
            "eventName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* eventName
    event_name = Field(
        type=str,
        required=False,
    )


class GroupScheduleGetListResponse(OCIResponse):
    """
    Response to ``GroupScheduleGetListRequest()``.
    The response contains a list of system schedules.
    """

    _ELEMENTS = (
        E(
            "schedule_name",
            "scheduleName",
            str,
            False,
            False,
            False,
        ),
        E(
            "schedule_type",
            "scheduleType",
            str,
            False,
            False,
            False,
        ),
        E(
            "schedule_level",
            "scheduleLevel",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* scheduleName
    schedule_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* scheduleType
    schedule_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* scheduleLevel
    schedule_level = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


class GroupSeriesCompletionGetInstanceListResponse(OCIResponse):
    """
    Response to the ``GroupSeriesCompletionGetInstanceListRequest()``.
    """

    _ELEMENTS = (
        E(
            "name",
            "name",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* name
    name = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "service_packs_authorization_table",
            "servicePacksAuthorizationTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "group_services_authorization_table",
            "groupServicesAuthorizationTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "user_services_authorization_table",
            "userServicesAuthorizationTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* servicePacksAuthorizationTable  *Tabular*
    service_packs_authorization_table = Field(
        type=list,
        required=True,
    )
    #: list: *Required* groupServicesAuthorizationTable  *Tabular*
    group_services_authorization_table = Field(
        type=list,
        required=True,
    )
    #: list: *Required* userServicesAuthorizationTable  *Tabular*
    user_services_authorization_table = Field(
        type=list,
        required=True,
    )


class GroupServiceGetAuthorizedListResponse(OCIResponse):
    """
    Response to ``GroupServiceGetAuthorizedListRequest()``.
    """

    _ELEMENTS = (
        E(
            "service_pack_name",
            "servicePackName",
            str,
            False,
            False,
            False,
        ),
        E(
            "group_service_name",
            "groupServiceName",
            str,
            False,
            False,
            False,
        ),
        E(
            "user_service_name",
            "userServiceName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* servicePackName
    service_pack_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* groupServiceName
    group_service_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* userServiceName
    user_service_name = Field(
        type=str,
        required=False,
    )


class GroupServiceInstancePrivacyGetResponse(OCIResponse):
    """
    Response to ``GroupServiceInstancePrivacyGetRequest()``.
    Replaced By ``GroupServiceInstancePrivacyGetResponse17sp4()``
    """

    _ELEMENTS = (
        E(
            "enable_directory_privacy",
            "enableDirectoryPrivacy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_auto_attendant_extension_dialing_privacy",
            "enableAutoAttendantExtensionDialingPrivacy",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableDirectoryPrivacy
    enable_directory_privacy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableAutoAttendantExtensionDialingPrivacy
    enable_auto_attendant_extension_dialing_privacy = Field(
        type=bool,
        required=True,
    )


class GroupServiceInstancePrivacyGetResponse17sp4(OCIResponse):
    """
    Response to ``GroupServiceInstancePrivacyGetRequest17sp4()``.
    """

    _ELEMENTS = (
        E(
            "enable_directory_privacy",
            "enableDirectoryPrivacy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_auto_attendant_extension_dialing_privacy",
            "enableAutoAttendantExtensionDialingPrivacy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_auto_attendant_name_dialing_privacy",
            "enableAutoAttendantNameDialingPrivacy",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableDirectoryPrivacy
    enable_directory_privacy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableAutoAttendantExtensionDialingPrivacy
    enable_auto_attendant_extension_dialing_privacy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableAutoAttendantNameDialingPrivacy
    enable_auto_attendant_name_dialing_privacy = Field(
        type=bool,
        required=True,
    )


class GroupServiceIsAssignedResponse(OCIResponse):
    """
    Returns true if the GroupService is assigned, otherwise false.
    """

    _ELEMENTS = (
        E(
            "is_assigned",
            "isAssigned",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isAssigned
    is_assigned = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


class GroupServiceScriptsGroupGetLogResponse(OCIResponse):
    """
    Response to ``GroupServiceScriptsGroupGetLogRequest()``.
    """

    _ELEMENTS = (
        E(
            "log_content",
            "logContent",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* logContent
    log_content = Field(
        type=str,
        required=False,
    )


class GroupServiceScriptsGroupGetResponse(OCIResponse):
    """
    Response to ``GroupServiceScriptsGroupGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "script_name",
            "scriptName",
            str,
            False,
            False,
            False,
        ),
        E(
            "script_content",
            "scriptContent",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* scriptName
    script_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* scriptContent
    script_content = Field(
        type=str,
        required=False,
    )


class GroupSessionAdmissionControlGetResponse(OCIResponse):
    """
    Response to the ``GroupSessionAdmissionControlGetRequest()``.
    The response contains the session admission control capacity allocated for the group.
    """

    _ELEMENTS = (
        E(
            "restrict_aggregate_sessions",
            "restrictAggregateSessions",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_sessions",
            "maxSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_user_originating_sessions",
            "maxUserOriginatingSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_user_terminating_sessions",
            "maxUserTerminatingSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "count_intra_group_sessions",
            "countIntraGroupSessions",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* restrictAggregateSessions
    restrict_aggregate_sessions = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* maxSessions
    max_sessions = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxUserOriginatingSessions
    max_user_originating_sessions = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxUserTerminatingSessions
    max_user_terminating_sessions = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* countIntraGroupSessions
    count_intra_group_sessions = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "session_admission_control_group_table",
            "sessionAdmissionControlGroupTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* sessionAdmissionControlGroupTable  *Tabular*
    session_admission_control_group_table = Field(
        type=list,
        required=True,
    )


class GroupSpeedDial100GetResponse(OCIResponse):
    """
    Response to the ``GroupSpeedDial100GetRequest()``.
    """

    _ELEMENTS = (
        E(
            "prefix",
            "prefix",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* prefix
    prefix = Field(
        type=str,
        required=True,
    )


class GroupSpeedDial100GetResponse17sp1(OCIResponse):
    """
    Response to the ``GroupSpeedDial100GetRequest17sp1()``.
    """

    _ELEMENTS = (
        E(
            "prefix",
            "prefix",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* prefix
    prefix = Field(
        type=str,
        required=False,
    )


class GroupThirdPartyVoiceMailSupportGetResponse(OCIResponse):
    """
    Response to ``GroupThirdPartyVoiceMailSupportGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "group_server",
            "groupServer",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* groupServer
    group_server = Field(
        type=str,
        required=False,
    )


class GroupTimeScheduleGetListResponse(OCIResponse):
    """
    Response to the ``GroupTimeScheduleGetListRequest()``.
    The response contains all the group's time schedule name.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* timeSchedule
    time_schedule = Field(
        type=str,
        required=False,
    )


class GroupTrunkGroupGetAvailableDetailListResponse(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetAvailableDetailListRequest()``.
    """

    _ELEMENTS = (
        E(
            "trunk_group",
            "trunkGroup",
            str,
            True,
            False,
            False,
        ),  # unknown
    )
    #: str: *Optional* trunkGroup
    trunk_group = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "trunk_group_table",
            "trunkGroupTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* trunkGroupTable  *Tabular*
    trunk_group_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "trunk_group_table",
            "trunkGroupTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* trunkGroupTable  *Tabular*
    trunk_group_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "trunk_group_user_table",
            "trunkGroupUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* trunkGroupUserTable  *Tabular*
    trunk_group_user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "trunk_group_user_table",
            "trunkGroupUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* trunkGroupUserTable  *Tabular*
    trunk_group_user_table = Field(
        type=list,
        required=True,
    )


class GroupTrunkGroupSecurityClassificationGetResponse(OCIResponse):
    """
    Response to the ``GroupTrunkGroupSecurityClassificationGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "default_security_classification",
            "defaultSecurityClassification",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* defaultSecurityClassification
    default_security_classification = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "task_table",
            "taskTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* taskTable  *Tabular*
    task_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "task_table",
            "taskTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* taskTable  *Tabular*
    task_table = Field(
        type=list,
        required=True,
    )


class GroupTrunkGroupUserCreationTaskGetResponse(OCIResponse):
    """
    Response to a ``GroupTrunkGroupUserCreationTaskGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "user_id_format",
            "userIdFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_id_domain",
            "userIdDomain",
            str,
            False,
            True,
            False,
        ),
        E(
            "populate_extension",
            "populateExtension",
            bool,
            False,
            True,
            False,
        ),
        E(
            "line_port_format",
            "linePortFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "line_port_domain",
            "linePortDomain",
            str,
            False,
            True,
            False,
        ),
        E(
            "populate_contact",
            "populateContact",
            bool,
            False,
            True,
            False,
        ),
        E(
            "contact_format",
            "contactFormat",
            str,
            False,
            False,
            False,
        ),
        E(
            "contact_domain",
            "contactDomain",
            str,
            False,
            False,
            False,
        ),
        E(
            "users_created",
            "usersCreated",
            int,
            False,
            True,
            False,
        ),
        E(
            "total_users_to_create",
            "totalUsersToCreate",
            int,
            False,
            True,
            False,
        ),
        E(
            "error_count",
            "errorCount",
            int,
            False,
            True,
            False,
        ),
        E(
            "service_pack_name",
            "servicePackName",
            str,
            False,
            False,
            False,
        ),
        E(
            "user_service_name",
            "userServiceName",
            str,
            False,
            False,
            False,
        ),
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_creation_mode",
            "userCreationMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "task_summary",
            "taskSummary",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* userIdFormat
    user_id_format = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userIdDomain
    user_id_domain = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* populateExtension
    populate_extension = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* linePortFormat
    line_port_format = Field(
        type=str,
        required=True,
    )
    #: str: *Required* linePortDomain
    line_port_domain = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* populateContact
    populate_contact = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* contactFormat
    contact_format = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* contactDomain
    contact_domain = Field(
        type=str,
        required=False,
    )
    #: int: *Required* usersCreated
    users_created = Field(
        type=int,
        required=True,
    )
    #: int: *Required* totalUsersToCreate
    total_users_to_create = Field(
        type=int,
        required=True,
    )
    #: int: *Required* errorCount
    error_count = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* servicePackName
    service_pack_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* userServiceName
    user_service_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userCreationMode
    user_creation_mode = Field(
        type=str,
        required=True,
    )
    #: str: *Required* taskSummary
    task_summary = Field(
        type=str,
        required=True,
    )


class GroupTrunkGroupUserCreationTaskGetResponse14sp4(OCIResponse):
    """
    Response to a ``GroupTrunkGroupUserCreationTaskGetRequest14sp4()``.
    """

    _ELEMENTS = (
        E(
            "user_id_format",
            "userIdFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_id_domain",
            "userIdDomain",
            str,
            False,
            True,
            False,
        ),
        E(
            "populate_extension",
            "populateExtension",
            bool,
            False,
            True,
            False,
        ),
        E(
            "line_port_format",
            "linePortFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "line_port_domain",
            "linePortDomain",
            str,
            False,
            True,
            False,
        ),
        E(
            "populate_contact",
            "populateContact",
            bool,
            False,
            True,
            False,
        ),
        E(
            "contact_format",
            "contactFormat",
            str,
            False,
            False,
            False,
        ),
        E(
            "contact_domain",
            "contactDomain",
            str,
            False,
            False,
            False,
        ),
        E(
            "users_created",
            "usersCreated",
            int,
            False,
            True,
            False,
        ),
        E(
            "total_users_to_create",
            "totalUsersToCreate",
            int,
            False,
            True,
            False,
        ),
        E(
            "error_count",
            "errorCount",
            int,
            False,
            True,
            False,
        ),
        E(
            "service_pack_name",
            "servicePackName",
            str,
            False,
            False,
            False,
        ),
        E(
            "user_service_name",
            "userServiceName",
            str,
            False,
            False,
            False,
        ),
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_creation_mode",
            "userCreationMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "task_summary",
            "taskSummary",
            str,
            False,
            True,
            False,
        ),
        E(
            "report_file_key",
            "reportFileKey",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* userIdFormat
    user_id_format = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userIdDomain
    user_id_domain = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* populateExtension
    populate_extension = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* linePortFormat
    line_port_format = Field(
        type=str,
        required=True,
    )
    #: str: *Required* linePortDomain
    line_port_domain = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* populateContact
    populate_contact = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* contactFormat
    contact_format = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* contactDomain
    contact_domain = Field(
        type=str,
        required=False,
    )
    #: int: *Required* usersCreated
    users_created = Field(
        type=int,
        required=True,
    )
    #: int: *Required* totalUsersToCreate
    total_users_to_create = Field(
        type=int,
        required=True,
    )
    #: int: *Required* errorCount
    error_count = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* servicePackName
    service_pack_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* userServiceName
    user_service_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userCreationMode
    user_creation_mode = Field(
        type=str,
        required=True,
    )
    #: str: *Required* taskSummary
    task_summary = Field(
        type=str,
        required=True,
    )
    #: str: *Required* reportFileKey
    report_file_key = Field(
        type=str,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


class GroupVirtualOnNetEnterpriseExtensionsGetUserResponse(OCIResponse):
    """
    Response to ``GroupVirtualOnNetEnterpriseExtensionsGetUserRequest()``.
    """

    _ELEMENTS = (
        E(
            "extension",
            "extension",
            str,
            False,
            True,
            False,
        ),
        E(
            "first_name",
            "firstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "last_name",
            "lastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_first_name",
            "callingLineIdFirstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_last_name",
            "callingLineIdLastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "virtual_on_net_call_type_name",
            "virtualOnNetCallTypeName",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* extension
    extension = Field(
        type=str,
        required=True,
    )
    #: str: *Required* firstName
    first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* lastName
    last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdFirstName
    calling_line_id_first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdLastName
    calling_line_id_last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* virtualOnNetCallTypeName
    virtual_on_net_call_type_name = Field(
        type=str,
        required=True,
    )


class GroupVoiceMessagingGroupGetPasscodeRulesResponse(OCIResponse):
    """
    Response to ``GroupVoiceMessagingGroupGetPasscodeRulesRequest()``.
    Contains the group's voice portal passcode rules setting.
    Replaced By ``GroupPortalPasscodeRulesGetResponse()``
    """

    _ELEMENTS = (
        E(
            "use_rule_level",
            "useRuleLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "disallow_repeated_digits",
            "disallowRepeatedDigits",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_user_number",
            "disallowUserNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_user_number",
            "disallowReversedUserNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_old_passcode",
            "disallowOldPasscode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_old_passcode",
            "disallowReversedOldPasscode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_code_length",
            "minCodeLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_code_length",
            "maxCodeLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "disable_login_after_max_failed_login_attempts",
            "disableLoginAfterMaxFailedLoginAttempts",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_failed_login_attempts",
            "maxFailedLoginAttempts",
            int,
            False,
            False,
            False,
        ),
        E(
            "expire_password",
            "expirePassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "passcode_expires_days",
            "passcodeExpiresDays",
            int,
            False,
            False,
            False,
        ),
        E(
            "send_login_disabled_notify_email",
            "sendLoginDisabledNotifyEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "login_disabled_notify_email_address",
            "loginDisabledNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* useRuleLevel
    use_rule_level = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* disallowRepeatedDigits
    disallow_repeated_digits = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowUserNumber
    disallow_user_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedUserNumber
    disallow_reversed_user_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowOldPasscode
    disallow_old_passcode = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedOldPasscode
    disallow_reversed_old_passcode = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minCodeLength
    min_code_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxCodeLength
    max_code_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disableLoginAfterMaxFailedLoginAttempts
    disable_login_after_max_failed_login_attempts = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* maxFailedLoginAttempts
    max_failed_login_attempts = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* expirePassword
    expire_password = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* passcodeExpiresDays
    passcode_expires_days = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* sendLoginDisabledNotifyEmail
    send_login_disabled_notify_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* loginDisabledNotifyEmailAddress
    login_disabled_notify_email_address = Field(
        type=str,
        required=False,
    )


class GroupVoiceMessagingGroupGetResponse(OCIResponse):
    """
    Response to ``GroupVoiceMessagingGroupGetRequest()``.
    Contains the group's voice messaging settings.
    """

    _ELEMENTS = (
        E(
            "use_mail_server_setting",
            "useMailServerSetting",
            str,
            False,
            True,
            False,
        ),
        E(
            "warn_caller_before_recording_voice_message",
            "warnCallerBeforeRecordingVoiceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_users_configuring_advanced_settings",
            "allowUsersConfiguringAdvancedSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_compose_or_forward_message_to_entire_group",
            "allowComposeOrForwardMessageToEntireGroup",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mail_server_net_address",
            "mailServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mail_server_protocol",
            "mailServerProtocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "real_delete_for_imap",
            "realDeleteForImap",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_mailbox_length_minutes",
            "maxMailboxLengthMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "does_message_age",
            "doesMessageAge",
            bool,
            False,
            True,
            False,
        ),
        E(
            "hold_period_days",
            "holdPeriodDays",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* useMailServerSetting
    use_mail_server_setting = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* warnCallerBeforeRecordingVoiceMessage
    warn_caller_before_recording_voice_message = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUsersConfiguringAdvancedSettings
    allow_users_configuring_advanced_settings = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowComposeOrForwardMessageToEntireGroup
    allow_compose_or_forward_message_to_entire_group = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* mailServerNetAddress
    mail_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* mailServerProtocol
    mail_server_protocol = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* realDeleteForImap
    real_delete_for_imap = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxMailboxLengthMinutes
    max_mailbox_length_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* doesMessageAge
    does_message_age = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* holdPeriodDays
    hold_period_days = Field(
        type=int,
        required=True,
    )


class GroupVoiceMessagingGroupGetVoicePortalBrandingResponse(OCIResponse):
    """
    Response to the ``GroupVoiceMessagingGroupGetVoicePortalBrandingRequest()``.
    Replaced By ``GroupVoiceMessagingGroupGetVoicePortalBrandingResponse16()``
    """

    _ELEMENTS = (
        E(
            "voice_portal_greeting_selection",
            "voicePortalGreetingSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_greeting_file_description",
            "voicePortalGreetingFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "voice_messaging_greeting_selection",
            "voiceMessagingGreetingSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "voice_messaging_greeting_file_description",
            "voiceMessagingGreetingFileDescription",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* voicePortalGreetingSelection
    voice_portal_greeting_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* voicePortalGreetingFileDescription
    voice_portal_greeting_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Required* voiceMessagingGreetingSelection
    voice_messaging_greeting_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* voiceMessagingGreetingFileDescription
    voice_messaging_greeting_file_description = Field(
        type=str,
        required=False,
    )


class GroupVoiceMessagingGroupGetVoicePortalBrandingResponse16(OCIResponse):
    """
    Response to the ``GroupVoiceMessagingGroupGetVoicePortalBrandingRequest16()``.
    """

    _ELEMENTS = (
        E(
            "voice_portal_greeting_selection",
            "voicePortalGreetingSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_greeting_file_description",
            "voicePortalGreetingFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "voice_portal_greeting_media_type",
            "voicePortalGreetingMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "voice_messaging_greeting_selection",
            "voiceMessagingGreetingSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "voice_messaging_greeting_file_description",
            "voiceMessagingGreetingFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "voice_messaging_greeting_media_type",
            "voiceMessagingGreetingMediaType",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* voicePortalGreetingSelection
    voice_portal_greeting_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* voicePortalGreetingFileDescription
    voice_portal_greeting_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* voicePortalGreetingMediaType
    voice_portal_greeting_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Required* voiceMessagingGreetingSelection
    voice_messaging_greeting_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* voiceMessagingGreetingFileDescription
    voice_messaging_greeting_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* voiceMessagingGreetingMediaType
    voice_messaging_greeting_media_type = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "voice_xml_table",
            "voiceXmlTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* voiceXmlTable  *Tabular*
    voice_xml_table = Field(
        type=list,
        required=True,
    )


class LoginResponse13mp10(OCIResponse):
    """
    ``LoginRequest13mp10()``/Response13mp10 is 2nd stage of the 2 stage OCI login process.
    """

    _ELEMENTS = (
        E(
            "login_type",
            "loginType",
            str,
            False,
            True,
            False,
        ),
        E(
            "locale",
            "locale",
            str,
            False,
            True,
            False,
        ),
        E(
            "encoding",
            "encoding",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* loginType
    login_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* locale
    locale = Field(
        type=str,
        required=True,
    )
    #: str: *Required* encoding
    encoding = Field(
        type=str,
        required=True,
    )


class LoginResponse14sp4(OCIResponse):
    """
    ``LoginRequest14sp4()``/Response14sp4 is 2nd stage of the 2 stage OCI login process.
    """

    _ELEMENTS = (
        E(
            "login_type",
            "loginType",
            str,
            False,
            True,
            False,
        ),
        E(
            "locale",
            "locale",
            str,
            False,
            True,
            False,
        ),
        E(
            "encoding",
            "encoding",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_id",
            "groupId",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_enterprise",
            "isEnterprise",
            bool,
            False,
            True,
            False,
        ),
        E(
            "password_expires_days",
            "passwordExpiresDays",
            int,
            False,
            False,
            False,
        ),
        E(
            "user_domain",
            "userDomain",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* loginType
    login_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* locale
    locale = Field(
        type=str,
        required=True,
    )
    #: str: *Required* encoding
    encoding = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* groupId
    group_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isEnterprise
    is_enterprise = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* passwordExpiresDays
    password_expires_days = Field(
        type=int,
        required=False,
    )
    #: str: *Required* userDomain
    user_domain = Field(
        type=str,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "is_primary",
            "isPrimary",
            bool,
            False,
            True,
            False,
        ),
        E(
            "hostname_for_primary",
            "hostnameForPrimary",
            str,
            False,
            False,
            False,
        ),
        E(
            "address_for_primary",
            "addressForPrimary",
            str,
            False,
            False,
            False,
        ),
        E(
            "private_address_for_primary",
            "privateAddressForPrimary",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isPrimary
    is_primary = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* hostnameForPrimary
    hostname_for_primary = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* addressForPrimary
    address_for_primary = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* privateAddressForPrimary
    private_address_for_primary = Field(
        type=str,
        required=False,
    )


class PublicClusterGetFullyQualifiedDomainNameResponse(OCIResponse):
    """
    Response to ``PublicClusterGetFullyQualifiedDomainNameRequest()``.
    """

    _ELEMENTS = (
        E(
            "public_cluster_fqdn",
            "publicClusterFQDN",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* publicClusterFQDN
    public_cluster_fqdn = Field(
        type=str,
        required=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"
    """

    _ELEMENTS = (
        E(
            "device_custom_tags_table",
            "deviceCustomTagsTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceCustomTagsTable  *Tabular*
    device_custom_tags_table = Field(
        type=list,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "device_files_table",
            "deviceFilesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceFilesTable  *Tabular*
    device_files_table = Field(
        type=list,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "device_files_table",
            "deviceFilesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceFilesTable  *Tabular*
    device_files_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderAccessDeviceFileGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceFileGetRequest()``.
    Replaced By ``ServiceProviderAccessDeviceFileGetResponse14sp8()``
    """

    _ELEMENTS = (
        E(
            "file_source",
            "fileSource",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* fileSource
    file_source = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )


class ServiceProviderAccessDeviceFileGetResponse14sp8(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceFileGetRequest14sp8()``.
    Replaced By ``ServiceProviderAccessDeviceFileGetResponse16sp1()``
    """

    _ELEMENTS = (
        E(
            "file_source",
            "fileSource",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* fileSource
    file_source = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )


class ServiceProviderAccessDeviceFileGetResponse16sp1(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceFileGetRequest16sp1()``.
    """

    _ELEMENTS = (
        E(
            "file_source",
            "fileSource",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_url",
            "accessUrl",
            str,
            False,
            True,
            False,
        ),
        E(
            "repository_url",
            "repositoryUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "template_url",
            "templateUrl",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* fileSource
    file_source = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* accessUrl
    access_url = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* repositoryUrl
    repository_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* templateUrl
    template_url = Field(
        type=str,
        required=False,
    )


class ServiceProviderAccessDeviceFileGetResponse20(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceFileGetRequest20()``.
    """

    _ELEMENTS = (
        E(
            "file_source",
            "fileSource",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_url",
            "accessUrl",
            str,
            False,
            True,
            False,
        ),
        E(
            "repository_url",
            "repositoryUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "template_url",
            "templateUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "extended_capture_enabled",
            "extendedCaptureEnabled",
            bool,
            False,
            False,
            False,
        ),
        E(
            "extended_capture_url",
            "extendedCaptureURL",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* fileSource
    file_source = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* accessUrl
    access_url = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* repositoryUrl
    repository_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* templateUrl
    template_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Optional* extendedCaptureEnabled
    extended_capture_enabled = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* extendedCaptureURL
    extended_capture_url = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "access_device_table",
            "accessDeviceTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* accessDeviceTable  *Tabular*
    access_device_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "device_user_table",
            "deviceUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceUserTable  *Tabular*
    device_user_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderAdminGetListResponse14(OCIResponse):
    """
    Response to ``ServiceProviderAdminGetListRequest14()``.
    Contains a 5 column table with column headings "Administrator ID",
    "Last Name", "First Name", "Administrator Type", "Language".
    """

    _ELEMENTS = (
        E(
            "service_provider_admin_table",
            "serviceProviderAdminTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* serviceProviderAdminTable  *Tabular*
    service_provider_admin_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderAdminGetPolicyResponse14(OCIResponse):
    """
    Response to ``ServiceProviderAdminGetPolicyRequest14()``.
    Contains the policy settings for the service provider administrator.
    The networkPolicyAccess is returned only for the enterprise administrator.
    """

    _ELEMENTS = (
        E(
            "profile_access",
            "profileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_access",
            "groupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_access",
            "userAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "admin_access",
            "adminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_access",
            "departmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_device_access",
            "accessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "phone_number_extension_access",
            "phoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_access",
            "serviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_pack_access",
            "servicePackAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "web_branding_access",
            "webBrandingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "network_policy_access",
            "networkPolicyAccess",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* profileAccess
    profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAccess
    group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userAccess
    user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* adminAccess
    admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAccess
    department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* accessDeviceAccess
    access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* phoneNumberExtensionAccess
    phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceAccess
    service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* servicePackAccess
    service_pack_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* webBrandingAccess
    web_branding_access = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* networkPolicyAccess
    network_policy_access = Field(
        type=str,
        required=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()``
    """

    _ELEMENTS = (
        E(
            "profile_access",
            "profileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_access",
            "groupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_access",
            "userAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "admin_access",
            "adminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_access",
            "departmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_device_access",
            "accessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "phone_number_extension_access",
            "phoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_access",
            "serviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_pack_access",
            "servicePackAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "session_admission_control_access",
            "sessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "web_branding_access",
            "webBrandingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "network_policy_access",
            "networkPolicyAccess",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* profileAccess
    profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAccess
    group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userAccess
    user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* adminAccess
    admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAccess
    department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* accessDeviceAccess
    access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* phoneNumberExtensionAccess
    phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceAccess
    service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* servicePackAccess
    service_pack_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sessionAdmissionControlAccess
    session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* webBrandingAccess
    web_branding_access = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* networkPolicyAccess
    network_policy_access = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "profile_access",
            "profileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_access",
            "groupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_access",
            "userAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "admin_access",
            "adminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_access",
            "departmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_device_access",
            "accessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "phone_number_extension_access",
            "phoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_access",
            "serviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_pack_access",
            "servicePackAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "session_admission_control_access",
            "sessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "web_branding_access",
            "webBrandingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "network_policy_access",
            "networkPolicyAccess",
            str,
            False,
            False,
            False,
        ),
        E(
            "dialable_caller_id_access",
            "dialableCallerIDAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* profileAccess
    profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAccess
    group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userAccess
    user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* adminAccess
    admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAccess
    department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* accessDeviceAccess
    access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* phoneNumberExtensionAccess
    phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceAccess
    service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* servicePackAccess
    service_pack_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sessionAdmissionControlAccess
    session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* webBrandingAccess
    web_branding_access = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* networkPolicyAccess
    network_policy_access = Field(
        type=str,
        required=False,
    )
    #: str: *Required* dialableCallerIDAccess
    dialable_caller_id_access = Field(
        type=str,
        required=True,
    )


class ServiceProviderAdminGetPolicyResponse17(OCIResponse):
    """
    Response to ``ServiceProviderAdminGetPolicyRequest17()``.
    Contains the policy settings for the service provider administrator.
    The networkPolicyAccess is returned only for the enterprise administrator.
    """

    _ELEMENTS = (
        E(
            "profile_access",
            "profileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_access",
            "groupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_access",
            "userAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "admin_access",
            "adminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_access",
            "departmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_device_access",
            "accessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "phone_number_extension_access",
            "phoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_number_access",
            "callingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_access",
            "serviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_pack_access",
            "servicePackAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "session_admission_control_access",
            "sessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "web_branding_access",
            "webBrandingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "office_zone_access",
            "officeZoneAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "network_policy_access",
            "networkPolicyAccess",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* profileAccess
    profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAccess
    group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userAccess
    user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* adminAccess
    admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAccess
    department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* accessDeviceAccess
    access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* phoneNumberExtensionAccess
    phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdNumberAccess
    calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceAccess
    service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* servicePackAccess
    service_pack_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sessionAdmissionControlAccess
    session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* webBrandingAccess
    web_branding_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* officeZoneAccess
    office_zone_access = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* networkPolicyAccess
    network_policy_access = Field(
        type=str,
        required=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
    """

    _ELEMENTS = (
        E(
            "profile_access",
            "profileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_access",
            "groupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_access",
            "userAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "admin_access",
            "adminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_access",
            "departmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_device_access",
            "accessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "phone_number_extension_access",
            "phoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_number_access",
            "callingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_access",
            "serviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_pack_access",
            "servicePackAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "session_admission_control_access",
            "sessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "web_branding_access",
            "webBrandingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "office_zone_access",
            "officeZoneAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "communication_barring_access",
            "communicationBarringAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "network_policy_access",
            "networkPolicyAccess",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* profileAccess
    profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAccess
    group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userAccess
    user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* adminAccess
    admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAccess
    department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* accessDeviceAccess
    access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* phoneNumberExtensionAccess
    phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdNumberAccess
    calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceAccess
    service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* servicePackAccess
    service_pack_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sessionAdmissionControlAccess
    session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* webBrandingAccess
    web_branding_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* officeZoneAccess
    office_zone_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* communicationBarringAccess
    communication_barring_access = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* networkPolicyAccess
    network_policy_access = Field(
        type=str,
        required=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
    """

    _ELEMENTS = (
        E(
            "profile_access",
            "profileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_access",
            "groupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_access",
            "userAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "admin_access",
            "adminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_access",
            "departmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_device_access",
            "accessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "phone_number_extension_access",
            "phoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_number_access",
            "callingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_access",
            "serviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_pack_access",
            "servicePackAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "session_admission_control_access",
            "sessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "web_branding_access",
            "webBrandingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "office_zone_access",
            "officeZoneAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "communication_barring_access",
            "communicationBarringAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "network_policy_access",
            "networkPolicyAccess",
            str,
            False,
            False,
            False,
        ),
        E(
            "dialable_caller_id_access",
            "dialableCallerIDAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* profileAccess
    profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAccess
    group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userAccess
    user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* adminAccess
    admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAccess
    department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* accessDeviceAccess
    access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* phoneNumberExtensionAccess
    phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdNumberAccess
    calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceAccess
    service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* servicePackAccess
    service_pack_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sessionAdmissionControlAccess
    session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* webBrandingAccess
    web_branding_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* officeZoneAccess
    office_zone_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* communicationBarringAccess
    communication_barring_access = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* networkPolicyAccess
    network_policy_access = Field(
        type=str,
        required=False,
    )
    #: str: *Required* dialableCallerIDAccess
    dialable_caller_id_access = Field(
        type=str,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "profile_access",
            "profileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_access",
            "groupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_access",
            "userAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "admin_access",
            "adminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_access",
            "departmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_device_access",
            "accessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "phone_number_extension_access",
            "phoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_number_access",
            "callingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_access",
            "serviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_pack_access",
            "servicePackAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "session_admission_control_access",
            "sessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "web_branding_access",
            "webBrandingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "office_zone_access",
            "officeZoneAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "communication_barring_access",
            "communicationBarringAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "network_policy_access",
            "networkPolicyAccess",
            str,
            False,
            False,
            False,
        ),
        E(
            "number_activation_access",
            "numberActivationAccess",
            str,
            False,
            False,
            False,
        ),
        E(
            "dialable_caller_id_access",
            "dialableCallerIDAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* profileAccess
    profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAccess
    group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userAccess
    user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* adminAccess
    admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAccess
    department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* accessDeviceAccess
    access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* phoneNumberExtensionAccess
    phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdNumberAccess
    calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceAccess
    service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* servicePackAccess
    service_pack_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sessionAdmissionControlAccess
    session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* webBrandingAccess
    web_branding_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* officeZoneAccess
    office_zone_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* communicationBarringAccess
    communication_barring_access = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* networkPolicyAccess
    network_policy_access = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* numberActivationAccess
    number_activation_access = Field(
        type=str,
        required=False,
    )
    #: str: *Required* dialableCallerIDAccess
    dialable_caller_id_access = Field(
        type=str,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "profile_access",
            "profileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_access",
            "groupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_access",
            "userAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "admin_access",
            "adminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "department_access",
            "departmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_device_access",
            "accessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "phone_number_extension_access",
            "phoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_number_access",
            "callingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_access",
            "serviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_pack_access",
            "servicePackAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "session_admission_control_access",
            "sessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "web_branding_access",
            "webBrandingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "office_zone_access",
            "officeZoneAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "communication_barring_access",
            "communicationBarringAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "network_policy_access",
            "networkPolicyAccess",
            str,
            False,
            False,
            False,
        ),
        E(
            "number_activation_access",
            "numberActivationAccess",
            str,
            False,
            False,
            False,
        ),
        E(
            "dialable_caller_id_access",
            "dialableCallerIDAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "verify_translation_and_routing_access",
            "verifyTranslationAndRoutingAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* profileAccess
    profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAccess
    group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userAccess
    user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* adminAccess
    admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* departmentAccess
    department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* accessDeviceAccess
    access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* phoneNumberExtensionAccess
    phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdNumberAccess
    calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceAccess
    service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* servicePackAccess
    service_pack_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sessionAdmissionControlAccess
    session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* webBrandingAccess
    web_branding_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* officeZoneAccess
    office_zone_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* communicationBarringAccess
    communication_barring_access = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* networkPolicyAccess
    network_policy_access = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* numberActivationAccess
    number_activation_access = Field(
        type=str,
        required=False,
    )
    #: str: *Required* dialableCallerIDAccess
    dialable_caller_id_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* verifyTranslationAndRoutingAccess
    verify_translation_and_routing_access = Field(
        type=str,
        required=True,
    )


class ServiceProviderAdminGetResponse14(OCIResponse):
    """
    Response to the ``ServiceProviderAdminGetRequest14()``.
    The response contains the service provider administrators profile information.
    """

    _ELEMENTS = (
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            True,
            False,
        ),
        E(
            "first_name",
            "firstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "last_name",
            "lastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "language",
            "language",
            str,
            False,
            True,
            False,
        ),
        E(
            "administrator_type",
            "administratorType",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* firstName
    first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* lastName
    last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* language
    language = Field(
        type=str,
        required=True,
    )
    #: str: *Required* administratorType
    administrator_type = Field(
        type=str,
        required=True,
    )


class ServiceProviderAdviceOfChargeGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderAdviceOfChargeGetRequest()``.
    Contains a list of Advice of Charge service provider parameters.
    """

    _ELEMENTS = (
        E(
            "use_sp_level_ao_c_settings",
            "useSPLevelAoCSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "delay_between_notification_seconds",
            "delayBetweenNotificationSeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useSPLevelAoCSettings
    use_sp_level_ao_c_settings = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* delayBetweenNotificationSeconds
    delay_between_notification_seconds = Field(
        type=int,
        required=True,
    )


class ServiceProviderAnswerConfirmationGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderAnswerConfirmationGetRequest()``.
    Replaced By ``ServiceProviderAnswerConfirmationGetResponse16()``
    """

    _ELEMENTS = (
        E(
            "announcement_message_selection",
            "announcementMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "confirmation_message_audio_file_description",
            "confirmationMessageAudioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "confirmation_timout_seconds",
            "confirmationTimoutSeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* announcementMessageSelection
    announcement_message_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* confirmationMessageAudioFileDescription
    confirmation_message_audio_file_description = Field(
        type=str,
        required=False,
    )
    #: int: *Required* confirmationTimoutSeconds
    confirmation_timout_seconds = Field(
        type=int,
        required=True,
    )


class ServiceProviderAnswerConfirmationGetResponse16(OCIResponse):
    """
    Response to the ``ServiceProviderAnswerConfirmationGetRequest16()``.
    """

    _ELEMENTS = (
        E(
            "announcement_message_selection",
            "announcementMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "confirmation_message_audio_file_description",
            "confirmationMessageAudioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "confirmation_message_media_type",
            "confirmationMessageMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "confirmation_timout_seconds",
            "confirmationTimoutSeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* announcementMessageSelection
    announcement_message_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* confirmationMessageAudioFileDescription
    confirmation_message_audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* confirmationMessageMediaType
    confirmation_message_media_type = Field(
        type=str,
        required=False,
    )
    #: int: *Required* confirmationTimoutSeconds
    confirmation_timout_seconds = Field(
        type=int,
        required=True,
    )


class ServiceProviderApplicationServerSetGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderApplicationServerSetGetRequest()``.
    The response contains the service provider or enterprise's Application Server set
    information.
    """

    _ELEMENTS = (
        E(
            "application_server_set_name",
            "applicationServerSetName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* applicationServerSetName
    application_server_set_name = Field(
        type=str,
        required=False,
    )


class ServiceProviderBroadWorksCommunicatorGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderBroadWorksCommunicatorGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "configuration_server_url",
            "configurationServerURL",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* configurationServerURL
    configuration_server_url = Field(
        type=str,
        required=False,
    )


class ServiceProviderBroadWorksMobilityGetResponse(OCIResponse):
    """
    The response to a ``ServiceProviderBroadWorksMobilityGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_location_services",
            "enableLocationServices",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_msrn_lookup",
            "enableMSRNLookup",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_mobile_state_checking",
            "enableMobileStateChecking",
            bool,
            False,
            True,
            False,
        ),
        E(
            "deny_call_originations",
            "denyCallOriginations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "deny_call_terminations",
            "denyCallTerminations",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableLocationServices
    enable_location_services = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableMSRNLookup
    enable_msrn_lookup = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableMobileStateChecking
    enable_mobile_state_checking = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* denyCallOriginations
    deny_call_originations = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* denyCallTerminations
    deny_call_terminations = Field(
        type=bool,
        required=True,
    )


class ServiceProviderBroadWorksMobilityGetResponse19sp1(OCIResponse):
    """
    The response to a ``ServiceProviderBroadWorksMobilityGetRequest19sp1()``.
    """

    _ELEMENTS = (
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_location_services",
            "enableLocationServices",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_msrn_lookup",
            "enableMSRNLookup",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_mobile_state_checking",
            "enableMobileStateChecking",
            bool,
            False,
            True,
            False,
        ),
        E(
            "deny_call_originations",
            "denyCallOriginations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "deny_call_terminations",
            "denyCallTerminations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_announcement_suppression",
            "enableAnnouncementSuppression",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableLocationServices
    enable_location_services = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableMSRNLookup
    enable_msrn_lookup = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableMobileStateChecking
    enable_mobile_state_checking = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* denyCallOriginations
    deny_call_originations = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* denyCallTerminations
    deny_call_terminations = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableAnnouncementSuppression
    enable_announcement_suppression = Field(
        type=bool,
        required=True,
    )


class ServiceProviderBroadWorksMobilityMobileSubscriberDirectoryNumberGetAvailableListResponse(
    OCIResponse,
):
    """
    Response to ``ServiceProviderBroadWorksMobilityMobileSubscriberDirectoryNumberGetAvailableListRequest()``.
    Contains a list of available Mobile Subscriber Directory Numbers not yet assigned
    to any group.
    """

    _ELEMENTS = (
        E(
            "available_mobile_subscriber_directory_number",
            "availableMobileSubscriberDirectoryNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* availableMobileSubscriberDirectoryNumber
    available_mobile_subscriber_directory_number = Field(
        type=str,
        required=False,
    )


class ServiceProviderBroadWorksMobilityMobileSubscriberDirectoryNumberGetSummaryListResponse(
    OCIResponse,
):
    """
    Response to ``ServiceProviderBroadWorksMobilityMobileSubscriberDirectoryNumberGetSummaryListRequest()``.
    The column headings are "Phone Number", "Group Id" and "Mobile Network".
    """

    _ELEMENTS = (
        E(
            "mobile_subscriber_directory_numbers_summary_table",
            "mobileSubscriberDirectoryNumbersSummaryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* mobileSubscriberDirectoryNumbersSummaryTable  *Tabular*
    mobile_subscriber_directory_numbers_summary_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderCallProcessingGetPolicyResponse14(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest14()``.
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )


class ServiceProviderCallProcessingGetPolicyResponse14sp1(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest14sp1()``.
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )


class ServiceProviderCallProcessingGetPolicyResponse14sp4(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest14sp4()``.
    Replaced By : ``ServiceProviderCallProcessingGetPolicyResponse15()``
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_external_calls_via_private_dialing_plan",
            "overrideCLIDRestrictionForExternalCallsViaPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForExternalCallsViaPrivateDialingPlan
    override_clid_restriction_for_external_calls_via_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )


class ServiceProviderCallProcessingGetPolicyResponse14sp7(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest14sp7()``.
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_external_calls_via_private_dialing_plan",
            "overrideCLIDRestrictionForExternalCallsViaPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForExternalCallsViaPrivateDialingPlan
    override_clid_restriction_for_external_calls_via_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )


class ServiceProviderCallProcessingGetPolicyResponse15(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest15()``.
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )


class ServiceProviderCallProcessingGetPolicyResponse15sp2(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest15sp2()``.
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )


class ServiceProviderCallProcessingGetPolicyResponse16(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest16()``.
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )


class ServiceProviderCallProcessingGetPolicyResponse16sp2(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest16sp2()``.
    """

    _ELEMENTS = (
        E(
            "use_service_provider_dclid_setting",
            "useServiceProviderDCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useServiceProviderDCLIDSetting
    use_service_provider_dclid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )


class ServiceProviderCallProcessingGetPolicyResponse17(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest17()``.
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )


class ServiceProviderCallProcessingGetPolicyResponse17sp3(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest17sp3()``.
    The following elements are only used in AS data mode:
    useServiceProviderDCLIDSetting
    enableDialableCallerID
    """

    _ELEMENTS = (
        E(
            "use_service_provider_dclid_setting",
            "useServiceProviderDCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useServiceProviderDCLIDSetting
    use_service_provider_dclid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )


class ServiceProviderCallProcessingGetPolicyResponse17sp4(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest17sp4()``.
    The following elements are only used in AS data mode:
    useServiceProviderDCLIDSetting
    enableDialableCallerID
    allowConfigurableCLIDForRedirectingIdentity
    """

    _ELEMENTS = (
        E(
            "use_service_provider_dclid_setting",
            "useServiceProviderDCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useServiceProviderDCLIDSetting
    use_service_provider_dclid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )


class ServiceProviderCallProcessingGetPolicyResponse18sp1(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest18sp1()``.
    The following elements are only used in AS data mode:
    useServiceProviderDCLIDSetting
    enableDialableCallerID
    allowConfigurableCLIDForRedirectingIdentity
    enterpriseCallsCLIDPolicy
    groupCallsCLIDPolicy

    Replaced By ``ServiceProviderCallProcessingGetPolicyResponse19sp1()``
    """

    _ELEMENTS = (
        E(
            "use_service_provider_dclid_setting",
            "useServiceProviderDCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enterprise_calls_clid_policy",
            "enterpriseCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_calls_clid_policy",
            "groupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useServiceProviderDCLIDSetting
    use_service_provider_dclid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* enterpriseCallsCLIDPolicy
    enterprise_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupCallsCLIDPolicy
    group_calls_clid_policy = Field(
        type=str,
        required=True,
    )


class ServiceProviderCallProcessingGetPolicyResponse19sp1(OCIResponse):
    """
    Response to ``ServiceProviderCallProcessingGetPolicyRequest19sp1()``.
    The following elements are only used in AS data mode:
    useServiceProviderDCLIDSetting
    enableDialableCallerID
    allowConfigurableCLIDForRedirectingIdentity
    enterpriseCallsCLIDPolicy
    groupCallsCLIDPolicy
    """

    _ELEMENTS = (
        E(
            "use_service_provider_dclid_setting",
            "useServiceProviderDCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enterprise_calls_clid_policy",
            "enterpriseCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_calls_clid_policy",
            "groupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useServiceProviderDCLIDSetting
    use_service_provider_dclid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* enterpriseCallsCLIDPolicy
    enterprise_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupCallsCLIDPolicy
    group_calls_clid_policy = Field(
        type=str,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderCommunicationBarringDigitPatternCriteriaGetPatternListResponse(
    OCIResponse,
):
    """
    Response to the ``ServiceProviderCommunicationBarringDigitPatternCriteriaGetPatternListRequest()``.
    The response contains the Digit Pattern Criteria information.
    """

    _ELEMENTS = (
        E(
            "match_digit_pattern",
            "matchDigitPattern",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* matchDigitPattern
    match_digit_pattern = Field(
        type=str,
        required=False,
    )


class ServiceProviderCommunicationBarringDigitPatternCriteriaGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderCommunicationBarringDigitPatternCriteriaGetRequest()``.
    The response contains the Digit Pattern Criteria information.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "group_table",
            "groupTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* groupTable  *Tabular*
    group_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "profile_table",
            "profileTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* profileTable  *Tabular*
    profile_table = Field(
        type=list,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "profile_table",
            "profileTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* profileTable  *Tabular*
    profile_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "profile_table",
            "profileTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* profileTable  *Tabular*
    profile_table = Field(
        type=list,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "profile_table",
            "profileTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* profileTable  *Tabular*
    profile_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "event_table",
            "eventTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* eventTable  *Tabular*
    event_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderDeviceProfileAuthenticationPasswordRulesGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderDeviceProfileAuthenticationPasswordRulesGetRequest()``.
    Contains the device profile authentication password rules for the service provider.
    """

    _ELEMENTS = (
        E(
            "use_service_provider_settings",
            "useServiceProviderSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_authentication_name",
            "disallowAuthenticationName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_old_password",
            "disallowOldPassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_old_password",
            "disallowReversedOldPassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_digits",
            "restrictMinDigits",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_digits",
            "minDigits",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_upper_case_letters",
            "restrictMinUpperCaseLetters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_upper_case_letters",
            "minUpperCaseLetters",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_lower_case_letters",
            "restrictMinLowerCaseLetters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_lower_case_letters",
            "minLowerCaseLetters",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_non_alphanumeric_characters",
            "restrictMinNonAlphanumericCharacters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_non_alphanumeric_characters",
            "minNonAlphanumericCharacters",
            int,
            False,
            True,
            False,
        ),
        E(
            "min_length",
            "minLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "send_permanent_lockout_notification",
            "sendPermanentLockoutNotification",
            bool,
            False,
            True,
            False,
        ),
        E(
            "permanent_lockout_notify_email_address",
            "permanentLockoutNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "device_profile_authentication_lockout_type",
            "deviceProfileAuthenticationLockoutType",
            str,
            False,
            True,
            False,
        ),
        E(
            "device_profile_temporary_lockout_threshold",
            "deviceProfileTemporaryLockoutThreshold",
            int,
            False,
            True,
            False,
        ),
        E(
            "device_profile_wait_algorithm",
            "deviceProfileWaitAlgorithm",
            str,
            False,
            True,
            False,
        ),
        E(
            "device_profile_lockout_fixed_minutes",
            "deviceProfileLockoutFixedMinutes",
            str,
            False,
            True,
            False,
        ),
        E(
            "device_profile_permanent_lockout_threshold",
            "deviceProfilePermanentLockoutThreshold",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useServiceProviderSettings
    use_service_provider_settings = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowAuthenticationName
    disallow_authentication_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowOldPassword
    disallow_old_password = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedOldPassword
    disallow_reversed_old_password = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* restrictMinDigits
    restrict_min_digits = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minDigits
    min_digits = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinUpperCaseLetters
    restrict_min_upper_case_letters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minUpperCaseLetters
    min_upper_case_letters = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinLowerCaseLetters
    restrict_min_lower_case_letters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minLowerCaseLetters
    min_lower_case_letters = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinNonAlphanumericCharacters
    restrict_min_non_alphanumeric_characters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minNonAlphanumericCharacters
    min_non_alphanumeric_characters = Field(
        type=int,
        required=True,
    )
    #: int: *Required* minLength
    min_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* sendPermanentLockoutNotification
    send_permanent_lockout_notification = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* permanentLockoutNotifyEmailAddress
    permanent_lockout_notify_email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* deviceProfileAuthenticationLockoutType
    device_profile_authentication_lockout_type = Field(
        type=str,
        required=True,
    )
    #: int: *Required* deviceProfileTemporaryLockoutThreshold
    device_profile_temporary_lockout_threshold = Field(
        type=int,
        required=True,
    )
    #: str: *Required* deviceProfileWaitAlgorithm
    device_profile_wait_algorithm = Field(
        type=str,
        required=True,
    )
    #: str: *Required* deviceProfileLockoutFixedMinutes
    device_profile_lockout_fixed_minutes = Field(
        type=str,
        required=True,
    )
    #: int: *Required* deviceProfilePermanentLockoutThreshold
    device_profile_permanent_lockout_threshold = Field(
        type=int,
        required=True,
    )


class ServiceProviderDialPlanPolicyGetAccessCodeListResponse(OCIResponse):
    """
    Response to ``ServiceProviderDialPlanPolicyGetAccessCodeListRequest()``.
    Contains a table with column headings: "Access Code",
    "Enable Secondary Dial Tone", "Description".
    """

    _ELEMENTS = (
        E(
            "access_code_table",
            "accessCodeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* accessCodeTable  *Tabular*
    access_code_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderDialPlanPolicyGetAccessCodeResponse(OCIResponse):
    """
    Response to ``ServiceProviderDialPlanPolicyGetAccessCodeRequest()``
    """

    _ELEMENTS = (
        E(
            "include_code_for_network_translations_and_routing",
            "includeCodeForNetworkTranslationsAndRouting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_code_for_screening_services",
            "includeCodeForScreeningServices",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_secondary_dial_tone",
            "enableSecondaryDialTone",
            bool,
            False,
            True,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* includeCodeForNetworkTranslationsAndRouting
    include_code_for_network_translations_and_routing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeCodeForScreeningServices
    include_code_for_screening_services = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableSecondaryDialTone
    enable_secondary_dial_tone = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )


class ServiceProviderDialPlanPolicyGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderDialPlanPolicyGetRequest()``

    Replaced By ``ServiceProviderDialPlanPolicyGetResponse17()``
    """

    _ELEMENTS = (
        E(
            "requires_access_code_for_public_calls",
            "requiresAccessCodeForPublicCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_e164_public_calls",
            "allowE164PublicCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "public_digit_map",
            "publicDigitMap",
            str,
            False,
            False,
            False,
        ),
        E(
            "private_digit_map",
            "privateDigitMap",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* requiresAccessCodeForPublicCalls
    requires_access_code_for_public_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowE164PublicCalls
    allow_e164_public_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* publicDigitMap
    public_digit_map = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* privateDigitMap
    private_digit_map = Field(
        type=str,
        required=False,
    )


class ServiceProviderDialPlanPolicyGetResponse17(OCIResponse):
    """
    Response to ``ServiceProviderDialPlanPolicyGetRequest17()``
    """

    _ELEMENTS = (
        E(
            "requires_access_code_for_public_calls",
            "requiresAccessCodeForPublicCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_e164_public_calls",
            "allowE164PublicCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prefer_e164_number_format_for_callback_services",
            "preferE164NumberFormatForCallbackServices",
            bool,
            False,
            True,
            False,
        ),
        E(
            "public_digit_map",
            "publicDigitMap",
            str,
            False,
            False,
            False,
        ),
        E(
            "private_digit_map",
            "privateDigitMap",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* requiresAccessCodeForPublicCalls
    requires_access_code_for_public_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowE164PublicCalls
    allow_e164_public_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* preferE164NumberFormatForCallbackServices
    prefer_e164_number_format_for_callback_services = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* publicDigitMap
    public_digit_map = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* privateDigitMap
    private_digit_map = Field(
        type=str,
        required=False,
    )


class ServiceProviderDialableCallerIDCriteriaGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderDialableCallerIDCriteriaGetRequest()``.
    The response contains the Dialable Caller ID Criteria information.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "prefix_digits",
            "prefixDigits",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_call_type",
            "matchCallType",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_alternate_call_indicator",
            "matchAlternateCallIndicator",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_local_category",
            "matchLocalCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_national_category",
            "matchNationalCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_interlata_category",
            "matchInterlataCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_intralata_category",
            "matchIntralataCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_international_category",
            "matchInternationalCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_private_category",
            "matchPrivateCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_emergency_category",
            "matchEmergencyCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_other_category",
            "matchOtherCategory",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* prefixDigits
    prefix_digits = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* matchCallType
    match_call_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* matchAlternateCallIndicator
    match_alternate_call_indicator = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* matchLocalCategory
    match_local_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchNationalCategory
    match_national_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInterlataCategory
    match_interlata_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchIntralataCategory
    match_intralata_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInternationalCategory
    match_international_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchPrivateCategory
    match_private_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchEmergencyCategory
    match_emergency_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchOtherCategory
    match_other_category = Field(
        type=bool,
        required=True,
    )


class ServiceProviderDialableCallerIDGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderDialableCallerIDGetRequest()``.
    The criteria table?s column headings are ?Active?, "Name", "Description", ?Prefix
    Digits?, and ?Priority?.
    """

    _ELEMENTS = (
        E(
            "use_service_provider_criteria",
            "useServiceProviderCriteria",
            bool,
            False,
            True,
            False,
        ),
        E(
            "ns_screening_failure_policy",
            "nsScreeningFailurePolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* useServiceProviderCriteria
    use_service_provider_criteria = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* nsScreeningFailurePolicy
    ns_screening_failure_policy = Field(
        type=str,
        required=True,
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderDigitCollectionGetResponse13mp4(OCIResponse):
    """
    Response to ``ServiceProviderDigitCollectionGetRequest13mp4()``.
    """

    _ELEMENTS = (
        E(
            "access_code",
            "accessCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "public_digit_map",
            "publicDigitMap",
            str,
            False,
            False,
            False,
        ),
        E(
            "private_digit_map",
            "privateDigitMap",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* accessCode
    access_code = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* publicDigitMap
    public_digit_map = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* privateDigitMap
    private_digit_map = Field(
        type=str,
        required=False,
    )


class ServiceProviderDnGetAvailableListResponse(OCIResponse):
    """
    Response to ``ServiceProviderDnGetAvailableListRequest()``.
    Contains a list of available DNs not yet assigned to any group.
    """

    _ELEMENTS = (
        E(
            "available_dn",
            "availableDn",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* availableDn
    available_dn = Field(
        type=str,
        required=False,
    )


class ServiceProviderDnGetSummaryListResponse(OCIResponse):
    """
    Response to ``ServiceProviderDnGetSummaryListRequest()``.
    The column headings are "Phone Numbers, "Group Id" and "Can Delete"
    """

    _ELEMENTS = (
        E(
            "dn_summary_table",
            "dnSummaryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* dnSummaryTable  *Tabular*
    dn_summary_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderDomainGetAssignedGroupListResponse(OCIResponse):
    """
    Response to ``ServiceProviderDomainGetAssignedGroupListRequest()``.
    Contains a table with column headings: "Group Id", "Group Name"
    and a row for each group.
    """

    _ELEMENTS = (
        E(
            "group_table",
            "groupTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* groupTable  *Tabular*
    group_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderDomainGetAssignedListResponse(OCIResponse):
    """
    Contains a simple list of all service provider domain names.
    """

    _ELEMENTS = (
        E(
            "service_provider_default_domain",
            "serviceProviderDefaultDomain",
            str,
            False,
            True,
            False,
        ),
        E(
            "domain",
            "domain",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* serviceProviderDefaultDomain
    service_provider_default_domain = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* domain
    domain = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "endpoint_table",
            "endpointTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* endpointTable  *Tabular*
    endpoint_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderEnhancedCallLogsGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderEnhancedCallLogsGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "max_logged_calls",
            "maxLoggedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "call_expiration_days",
            "callExpirationDays",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* maxLoggedCalls
    max_logged_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* callExpirationDays
    call_expiration_days = Field(
        type=int,
        required=True,
    )


class ServiceProviderEnhancedCallLogsGetResponse17sp4(OCIResponse):
    """
    Response to ``ServiceProviderEnhancedCallLogsGetRequest17sp4()``.
    """

    _ELEMENTS = (
        E(
            "max_logged_calls",
            "maxLoggedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "call_expiration_days",
            "callExpirationDays",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* maxLoggedCalls
    max_logged_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* callExpirationDays
    call_expiration_days = Field(
        type=int,
        required=True,
    )


class ServiceProviderExternalCustomRingbackGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderExternalCustomRingbackGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "prefix_digits",
            "prefixDigits",
            str,
            False,
            False,
            False,
        ),
        E(
            "server_net_address",
            "serverNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "server_port",
            "serverPort",
            int,
            False,
            False,
            False,
        ),
        E(
            "timeout_seconds",
            "timeoutSeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* prefixDigits
    prefix_digits = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serverNetAddress
    server_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* serverPort
    server_port = Field(
        type=int,
        required=False,
    )
    #: int: *Required* timeoutSeconds
    timeout_seconds = Field(
        type=int,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "file_repository_user_table",
            "fileRepositoryUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* fileRepositoryUserTable  *Tabular*
    file_repository_user_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderGetDefaultResponse(OCIResponse):
    """
    Response to the ``ServiceProviderGetDefaultRequest()``. All values are default values for
    a service provider or enterprise's profile.
    """

    _ELEMENTS = (
        E(
            "is_enterprise",
            "isEnterprise",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_domain",
            "defaultDomain",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isEnterprise
    is_enterprise = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* defaultDomain
    default_domain = Field(
        type=str,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "service_provider_table",
            "serviceProviderTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* serviceProviderTable  *Tabular*
    service_provider_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderGroupPagingTargetsCapacityGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderGroupPagingTargetsCapacityGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "maximum_target_users",
            "maximumTargetUsers",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* maximumTargetUsers
    maximum_target_users = Field(
        type=int,
        required=True,
    )


class ServiceProviderIMRNGetListResponse(OCIResponse):
    """
    Response to ``ServiceProviderIMRNGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "imrn",
            "imrn",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* imrn
    imrn = Field(
        type=str,
        required=False,
    )


class ServiceProviderInCallServiceActivationGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderInCallServiceActivationGetRequest()``.

    Replaced By ``ServiceProviderInCallServiceActivationGetResponse17()``
    """

    _ELEMENTS = (
        E(
            "activation_digits",
            "activationDigits",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* activationDigits
    activation_digits = Field(
        type=str,
        required=True,
    )


class ServiceProviderInCallServiceActivationGetResponse17(OCIResponse):
    """
    Response to ``ServiceProviderInCallServiceActivationGetRequest17()``.
    """

    _ELEMENTS = (
        E(
            "flash_activation_digits",
            "flashActivationDigits",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_transfer_activation_digits",
            "callTransferActivationDigits",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* flashActivationDigits
    flash_activation_digits = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callTransferActivationDigits
    call_transfer_activation_digits = Field(
        type=str,
        required=True,
    )


class ServiceProviderIntegratedIMPGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderIntegratedIMPGetRequest()``.
    The response contains the service provider Integrated IMP service attributes.

    Replaced By ``ServiceProviderIntegratedIMPGetResponse21()``
    """

    _ELEMENTS = (
        E(
            "use_system_service_domain",
            "useSystemServiceDomain",
            bool,
            False,
            True,
            False,
        ),
        E(
            "service_domain",
            "serviceDomain",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* useSystemServiceDomain
    use_system_service_domain = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* serviceDomain
    service_domain = Field(
        type=str,
        required=False,
    )


class ServiceProviderIntegratedIMPGetResponse21(OCIResponse):
    """
    Response to the ``ServiceProviderIntegratedIMPGetRequest21()``.
    The response contains the service provider Integrated IMP service attributes.
    """

    _ELEMENTS = (
        E(
            "use_system_service_domain",
            "useSystemServiceDomain",
            bool,
            False,
            True,
            False,
        ),
        E(
            "service_domain",
            "serviceDomain",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_port",
            "servicePort",
            int,
            False,
            False,
            False,
        ),
        E(
            "use_system_messaging_server",
            "useSystemMessagingServer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "provisioning_url",
            "provisioningUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "provisioning_user_id",
            "provisioningUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "bosh_url",
            "boshURL",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* useSystemServiceDomain
    use_system_service_domain = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* serviceDomain
    service_domain = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* servicePort
    service_port = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* useSystemMessagingServer
    use_system_messaging_server = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* provisioningUrl
    provisioning_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* provisioningUserId
    provisioning_user_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* boshURL
    bosh_url = Field(
        type=str,
        required=False,
    )


class ServiceProviderLDAPIntegrationGetDirectoryResponse(OCIResponse):
    """
    Response to ``ServiceProviderLDAPIntegrationGetDirectoryRequest()``.
    """

    _ELEMENTS = (
        E(
            "server_net_address",
            "serverNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "server_port",
            "serverPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "search_base",
            "searchBase",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_ssl",
            "useSSL",
            bool,
            False,
            True,
            False,
        ),
        E(
            "require_authentication",
            "requireAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "authenticated_dn",
            "authenticatedDN",
            str,
            False,
            False,
            False,
        ),
        E(
            "authenticated_password",
            "authenticatedPassword",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_sort_enabled",
            "isSortEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_paged_result_enabled",
            "isPagedResultEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "search_filter",
            "searchFilter",
            str,
            False,
            False,
            False,
        ),
        E(
            "include_search_attribute_in_search_filter",
            "includeSearchAttributeInSearchFilter",
            bool,
            False,
            True,
            False,
        ),
        E(
            "column1_attribute_name",
            "column1AttributeName",
            str,
            False,
            True,
            False,
        ),
        E(
            "column2_attribute_name",
            "column2AttributeName",
            str,
            False,
            False,
            False,
        ),
        E(
            "column3_attribute_name",
            "column3AttributeName",
            str,
            False,
            False,
            False,
        ),
        E(
            "column4_attribute_name",
            "column4AttributeName",
            str,
            False,
            False,
            False,
        ),
        E(
            "column1_label",
            "column1Label",
            str,
            False,
            False,
            False,
        ),
        E(
            "column2_label",
            "column2Label",
            str,
            False,
            False,
            False,
        ),
        E(
            "column3_label",
            "column3Label",
            str,
            False,
            False,
            False,
        ),
        E(
            "column4_label",
            "column4Label",
            str,
            False,
            False,
            False,
        ),
        E(
            "search_column",
            "searchColumn",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* serverNetAddress
    server_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Required* serverPort
    server_port = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* searchBase
    search_base = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useSSL
    use_ssl = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requireAuthentication
    require_authentication = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* authenticatedDN
    authenticated_dn = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* authenticatedPassword
    authenticated_password = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isSortEnabled
    is_sort_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isPagedResultEnabled
    is_paged_result_enabled = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* searchFilter
    search_filter = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* includeSearchAttributeInSearchFilter
    include_search_attribute_in_search_filter = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* column1AttributeName
    column1_attribute_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* column2AttributeName
    column2_attribute_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* column3AttributeName
    column3_attribute_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* column4AttributeName
    column4_attribute_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* column1Label
    column1_label = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* column2Label
    column2_label = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* column3Label
    column3_label = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* column4Label
    column4_label = Field(
        type=str,
        required=False,
    )
    #: int: *Required* searchColumn
    search_column = Field(
        type=int,
        required=True,
    )


class ServiceProviderLanguageGetAvailableListResponse(OCIResponse):
    """
    Response to ``ServiceProviderLanguageGetAvailableListRequest()``.
    The language table column headings are: "Language", "Locale" and "Encoding".
    """

    _ELEMENTS = (
        E(
            "default_language",
            "defaultLanguage",
            str,
            False,
            True,
            False,
        ),
        E(
            "language_table",
            "languageTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Required* defaultLanguage
    default_language = Field(
        type=str,
        required=True,
    )
    #: list: *Required* languageTable  *Tabular*
    language_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderLanguageGetListResponse(OCIResponse):
    """
    Response to ``ServiceProviderLanguageGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "language",
            "language",
            str,
            False,
            False,
            False,
        ),
        E(
            "default_language",
            "defaultLanguage",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* language
    language = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* defaultLanguage
    default_language = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "template_activation_table",
            "templateActivationTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* templateActivationTable  *Tabular*
    template_activation_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderMaliciousCallTraceGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderMaliciousCallTraceGetRequest()``.
    The response contains the service provider Malicious Call Trace
    settings.
    """

    _ELEMENTS = (
        E(
            "use_system_play_mct_warning_announcement",
            "useSystemPlayMCTWarningAnnouncement",
            bool,
            False,
            True,
            False,
        ),
        E(
            "play_mct_warning_announcement",
            "playMCTWarningAnnouncement",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useSystemPlayMCTWarningAnnouncement
    use_system_play_mct_warning_announcement = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* playMCTWarningAnnouncement
    play_mct_warning_announcement = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "group_table",
            "groupTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* groupTable  *Tabular*
    group_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "network_class_of_service_table",
            "networkClassOfServiceTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* networkClassOfServiceTable  *Tabular*
    network_class_of_service_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderNumberPortabilityQueryGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderNumberPortabilityQueryGetRequest()``.
    The response contains the service provider number portability query information.
    """

    _ELEMENTS = (
        E(
            "enable_number_portability_query_for_outgoing_calls",
            "enableNumberPortabilityQueryForOutgoingCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_number_portability_query_for_incoming_calls",
            "enableNumberPortabilityQueryForIncomingCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_number_portability_query_for_network_calls_only",
            "enableNumberPortabilityQueryForNetworkCallsOnly",
            bool,
            False,
            True,
            False,
        ),
        E(
            "digit_pattern",
            "digitPattern",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* enableNumberPortabilityQueryForOutgoingCalls
    enable_number_portability_query_for_outgoing_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableNumberPortabilityQueryForIncomingCalls
    enable_number_portability_query_for_incoming_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableNumberPortabilityQueryForNetworkCallsOnly
    enable_number_portability_query_for_network_calls_only = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* digitPattern
    digit_pattern = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "group_table",
            "groupTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* groupTable  *Tabular*
    group_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "office_zone_table",
            "officeZoneTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* officeZoneTable  *Tabular*
    office_zone_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderPasswordRulesGetResponse13mp2(OCIResponse):
    """
    Response to ``ServiceProviderPasswordRulesGetRequest13mp2()``.
    Contains the group, department administrator and/or user password
    rules setting.
    Replaced By ``ServiceProviderPasswordRulesGetResponse16()``
    """

    _ELEMENTS = (
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            True,
            False,
        ),
        E(
            "rules_apply_to",
            "rulesApplyTo",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_web_add_external_authentication_users",
            "allowWebAddExternalAuthenticationUsers",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_user_id",
            "disallowUserId",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_old_password",
            "disallowOldPassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_old_password",
            "disallowReversedOldPassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_digits",
            "restrictMinDigits",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_digits",
            "minDigits",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_upper_case_letters",
            "restrictMinUpperCaseLetters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_upper_case_letters",
            "minUpperCaseLetters",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_lower_case_letters",
            "restrictMinLowerCaseLetters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_lower_case_letters",
            "minLowerCaseLetters",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_non_alphanumeric_characters",
            "restrictMinNonAlphanumericCharacters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_non_alphanumeric_characters",
            "minNonAlphanumericCharacters",
            int,
            False,
            True,
            False,
        ),
        E(
            "min_length",
            "minLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_failed_login_attempts",
            "maxFailedLoginAttempts",
            int,
            False,
            True,
            False,
        ),
        E(
            "password_expires_days",
            "passwordExpiresDays",
            int,
            False,
            True,
            False,
        ),
        E(
            "send_login_disabled_notify_email",
            "sendLoginDisabledNotifyEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "login_disabled_notify_email_address",
            "loginDisabledNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "disallow_rules_modification",
            "disallowRulesModification",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* rulesApplyTo
    rules_apply_to = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowWebAddExternalAuthenticationUsers
    allow_web_add_external_authentication_users = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowUserId
    disallow_user_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowOldPassword
    disallow_old_password = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedOldPassword
    disallow_reversed_old_password = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* restrictMinDigits
    restrict_min_digits = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minDigits
    min_digits = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinUpperCaseLetters
    restrict_min_upper_case_letters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minUpperCaseLetters
    min_upper_case_letters = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinLowerCaseLetters
    restrict_min_lower_case_letters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minLowerCaseLetters
    min_lower_case_letters = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinNonAlphanumericCharacters
    restrict_min_non_alphanumeric_characters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minNonAlphanumericCharacters
    min_non_alphanumeric_characters = Field(
        type=int,
        required=True,
    )
    #: int: *Required* minLength
    min_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxFailedLoginAttempts
    max_failed_login_attempts = Field(
        type=int,
        required=True,
    )
    #: int: *Required* passwordExpiresDays
    password_expires_days = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* sendLoginDisabledNotifyEmail
    send_login_disabled_notify_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* loginDisabledNotifyEmailAddress
    login_disabled_notify_email_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* disallowRulesModification
    disallow_rules_modification = Field(
        type=bool,
        required=True,
    )


class ServiceProviderPasswordRulesGetResponse16(OCIResponse):
    """
    Response to ``ServiceProviderPasswordRulesGetRequest16()``.
    Contains the group, department administrator and/or user password
    rules setting.
    """

    _ELEMENTS = (
        E(
            "rules_apply_to",
            "rulesApplyTo",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_web_add_external_authentication_users",
            "allowWebAddExternalAuthenticationUsers",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_user_id",
            "disallowUserId",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_old_password",
            "disallowOldPassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_old_password",
            "disallowReversedOldPassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_digits",
            "restrictMinDigits",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_digits",
            "minDigits",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_upper_case_letters",
            "restrictMinUpperCaseLetters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_upper_case_letters",
            "minUpperCaseLetters",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_lower_case_letters",
            "restrictMinLowerCaseLetters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_lower_case_letters",
            "minLowerCaseLetters",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_non_alphanumeric_characters",
            "restrictMinNonAlphanumericCharacters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_non_alphanumeric_characters",
            "minNonAlphanumericCharacters",
            int,
            False,
            True,
            False,
        ),
        E(
            "min_length",
            "minLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_failed_login_attempts",
            "maxFailedLoginAttempts",
            int,
            False,
            True,
            False,
        ),
        E(
            "password_expires_days",
            "passwordExpiresDays",
            int,
            False,
            True,
            False,
        ),
        E(
            "send_login_disabled_notify_email",
            "sendLoginDisabledNotifyEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "login_disabled_notify_email_address",
            "loginDisabledNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "disallow_rules_modification",
            "disallowRulesModification",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_previous_passwords",
            "disallowPreviousPasswords",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_previous_passwords",
            "numberOfPreviousPasswords",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* rulesApplyTo
    rules_apply_to = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowWebAddExternalAuthenticationUsers
    allow_web_add_external_authentication_users = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowUserId
    disallow_user_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowOldPassword
    disallow_old_password = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedOldPassword
    disallow_reversed_old_password = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* restrictMinDigits
    restrict_min_digits = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minDigits
    min_digits = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinUpperCaseLetters
    restrict_min_upper_case_letters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minUpperCaseLetters
    min_upper_case_letters = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinLowerCaseLetters
    restrict_min_lower_case_letters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minLowerCaseLetters
    min_lower_case_letters = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinNonAlphanumericCharacters
    restrict_min_non_alphanumeric_characters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minNonAlphanumericCharacters
    min_non_alphanumeric_characters = Field(
        type=int,
        required=True,
    )
    #: int: *Required* minLength
    min_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxFailedLoginAttempts
    max_failed_login_attempts = Field(
        type=int,
        required=True,
    )
    #: int: *Required* passwordExpiresDays
    password_expires_days = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* sendLoginDisabledNotifyEmail
    send_login_disabled_notify_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* loginDisabledNotifyEmailAddress
    login_disabled_notify_email_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* disallowRulesModification
    disallow_rules_modification = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowPreviousPasswords
    disallow_previous_passwords = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberOfPreviousPasswords
    number_of_previous_passwords = Field(
        type=int,
        required=True,
    )


class ServiceProviderPortalPasscodeRulesGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderPortalPasscodeRulesGetRequest()``.
    Contains the service provider's passcode rules setting.
    """

    _ELEMENTS = (
        E(
            "disallow_repeated_digits",
            "disallowRepeatedDigits",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_user_number",
            "disallowUserNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_user_number",
            "disallowReversedUserNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_old_passcode",
            "disallowOldPasscode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_old_passcode",
            "disallowReversedOldPasscode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_code_length",
            "minCodeLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_code_length",
            "maxCodeLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "disable_login_after_max_failed_login_attempts",
            "disableLoginAfterMaxFailedLoginAttempts",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_failed_login_attempts",
            "maxFailedLoginAttempts",
            int,
            False,
            False,
            False,
        ),
        E(
            "expire_password",
            "expirePassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "passcode_expires_days",
            "passcodeExpiresDays",
            int,
            False,
            False,
            False,
        ),
        E(
            "send_login_disabled_notify_email",
            "sendLoginDisabledNotifyEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "login_disabled_notify_email_address",
            "loginDisabledNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* disallowRepeatedDigits
    disallow_repeated_digits = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowUserNumber
    disallow_user_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedUserNumber
    disallow_reversed_user_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowOldPasscode
    disallow_old_passcode = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedOldPasscode
    disallow_reversed_old_passcode = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minCodeLength
    min_code_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxCodeLength
    max_code_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disableLoginAfterMaxFailedLoginAttempts
    disable_login_after_max_failed_login_attempts = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* maxFailedLoginAttempts
    max_failed_login_attempts = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* expirePassword
    expire_password = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* passcodeExpiresDays
    passcode_expires_days = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* sendLoginDisabledNotifyEmail
    send_login_disabled_notify_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* loginDisabledNotifyEmailAddress
    login_disabled_notify_email_address = Field(
        type=str,
        required=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
    """

    _ELEMENTS = (
        E(
            "disallow_repeated_digits",
            "disallowRepeatedDigits",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_repeated_digits",
            "numberOfRepeatedDigits",
            int,
            False,
            True,
            False,
        ),
        E(
            "disallow_repeated_patterns",
            "disallowRepeatedPatterns",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_contiguous_sequences",
            "disallowContiguousSequences",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_ascending_digits",
            "numberOfAscendingDigits",
            int,
            False,
            True,
            False,
        ),
        E(
            "number_of_descending_digits",
            "numberOfDescendingDigits",
            int,
            False,
            True,
            False,
        ),
        E(
            "disallow_user_number",
            "disallowUserNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_user_number",
            "disallowReversedUserNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_old_passcode",
            "disallowOldPasscode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_previous_passcodes",
            "numberOfPreviousPasscodes",
            int,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_old_passcode",
            "disallowReversedOldPasscode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_code_length",
            "minCodeLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_code_length",
            "maxCodeLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "disable_login_after_max_failed_login_attempts",
            "disableLoginAfterMaxFailedLoginAttempts",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_failed_login_attempts",
            "maxFailedLoginAttempts",
            int,
            False,
            False,
            False,
        ),
        E(
            "expire_password",
            "expirePassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "passcode_expires_days",
            "passcodeExpiresDays",
            int,
            False,
            False,
            False,
        ),
        E(
            "send_login_disabled_notify_email",
            "sendLoginDisabledNotifyEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "login_disabled_notify_email_address",
            "loginDisabledNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* disallowRepeatedDigits
    disallow_repeated_digits = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberOfRepeatedDigits
    number_of_repeated_digits = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disallowRepeatedPatterns
    disallow_repeated_patterns = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowContiguousSequences
    disallow_contiguous_sequences = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberOfAscendingDigits
    number_of_ascending_digits = Field(
        type=int,
        required=True,
    )
    #: int: *Required* numberOfDescendingDigits
    number_of_descending_digits = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disallowUserNumber
    disallow_user_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedUserNumber
    disallow_reversed_user_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowOldPasscode
    disallow_old_passcode = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberOfPreviousPasscodes
    number_of_previous_passcodes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disallowReversedOldPasscode
    disallow_reversed_old_passcode = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minCodeLength
    min_code_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxCodeLength
    max_code_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disableLoginAfterMaxFailedLoginAttempts
    disable_login_after_max_failed_login_attempts = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* maxFailedLoginAttempts
    max_failed_login_attempts = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* expirePassword
    expire_password = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* passcodeExpiresDays
    passcode_expires_days = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* sendLoginDisabledNotifyEmail
    send_login_disabled_notify_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* loginDisabledNotifyEmailAddress
    login_disabled_notify_email_address = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "default_country_code",
            "defaultCountryCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "country_code",
            "countryCode",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* defaultCountryCode
    default_country_code = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* countryCode
    country_code = Field(
        type=str,
        required=False,
    )


class ServiceProviderPreferredCarrierGetCarrierListResponse(OCIResponse):
    """
    Response to a ``ServiceProviderPreferredCarrierGetCarrierListRequest()``.
    Contains the lists of carriers for a specified country code for a service
    provider / enterprise.
    """

    _ELEMENTS = (
        E(
            "intra_lata_carrier",
            "intraLataCarrier",
            str,
            False,
            False,
            False,
        ),
        E(
            "inter_lata_carrier",
            "interLataCarrier",
            str,
            False,
            False,
            False,
        ),
        E(
            "international_carrier",
            "internationalCarrier",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* intraLataCarrier
    intra_lata_carrier = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* interLataCarrier
    inter_lata_carrier = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* internationalCarrier
    international_carrier = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "service_provider_carrier_table",
            "serviceProviderCarrierTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* serviceProviderCarrierTable  *Tabular*
    service_provider_carrier_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderPreferredCarrierGetResponse(OCIResponse):
    """
    Response to a ``ServiceProviderPreferredCarrierGetRequest()``.
    Contains the currently configured carriers for a specified country code for a
    service provider / enterprise.
    """

    _ELEMENTS = (
        E(
            "intra_lata_carrier",
            "intraLataCarrier",
            str,
            False,
            False,
            False,
        ),
        E(
            "inter_lata_carrier",
            "interLataCarrier",
            str,
            False,
            False,
            False,
        ),
        E(
            "international_carrier",
            "internationalCarrier",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* intraLataCarrier
    intra_lata_carrier = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* interLataCarrier
    inter_lata_carrier = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* internationalCarrier
    international_carrier = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "available_number_range_table",
            "availableNumberRangeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* availableNumberRangeTable  *Tabular*
    available_number_range_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderRouteListEnterpriseTrunkNumberRangeGetSummaryListResponse(
    OCIResponse,
):
    """
    Response to ``ServiceProviderRouteListEnterpriseTrunkNumberRangeGetSummaryListRequest()``.
    The column headings are "Number Range Start", "Number Range End", "Group Id" and
    "Is Active".
    """

    _ELEMENTS = (
        E(
            "number_range_summary_table",
            "numberRangeSummaryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* numberRangeSummaryTable  *Tabular*
    number_range_summary_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderRoutePointExternalSystemGetAssignedGroupListResponse(OCIResponse):
    """
    Response to ``ServiceProviderRoutePointExternalSystemGetAssignedGroupListRequest()``.
    Contains a table with column headings: "Group Id", "Group Name"
    and a row for each group.
    """

    _ELEMENTS = (
        E(
            "group_table",
            "groupTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* groupTable  *Tabular*
    group_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "external_system_table",
            "externalSystemTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* externalSystemTable  *Tabular*
    external_system_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderRoutingProfileGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderRoutingProfileGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "routing_profile",
            "routingProfile",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* routingProfile
    routing_profile = Field(
        type=str,
        required=False,
    )


class ServiceProviderSIPAuthenticationPasswordRulesGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderSIPAuthenticationPasswordRulesGetRequest()``.
    Contains the SIP authentication password rules for the service provider.
    """

    _ELEMENTS = (
        E(
            "use_service_provider_settings",
            "useServiceProviderSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_authentication_name",
            "disallowAuthenticationName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_old_password",
            "disallowOldPassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_old_password",
            "disallowReversedOldPassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_digits",
            "restrictMinDigits",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_digits",
            "minDigits",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_upper_case_letters",
            "restrictMinUpperCaseLetters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_upper_case_letters",
            "minUpperCaseLetters",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_lower_case_letters",
            "restrictMinLowerCaseLetters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_lower_case_letters",
            "minLowerCaseLetters",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_non_alphanumeric_characters",
            "restrictMinNonAlphanumericCharacters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_non_alphanumeric_characters",
            "minNonAlphanumericCharacters",
            int,
            False,
            True,
            False,
        ),
        E(
            "min_length",
            "minLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "send_permanent_lockout_notification",
            "sendPermanentLockoutNotification",
            bool,
            False,
            True,
            False,
        ),
        E(
            "permanent_lockout_notify_email_address",
            "permanentLockoutNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "endpoint_authentication_lockout_type",
            "endpointAuthenticationLockoutType",
            str,
            False,
            True,
            False,
        ),
        E(
            "endpoint_temporary_lockout_threshold",
            "endpointTemporaryLockoutThreshold",
            int,
            False,
            True,
            False,
        ),
        E(
            "endpoint_wait_algorithm",
            "endpointWaitAlgorithm",
            str,
            False,
            True,
            False,
        ),
        E(
            "endpoint_lockout_fixed_minutes",
            "endpointLockoutFixedMinutes",
            str,
            False,
            True,
            False,
        ),
        E(
            "endpoint_permanent_lockout_threshold",
            "endpointPermanentLockoutThreshold",
            int,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_temporary_lockout_threshold",
            "trunkGroupTemporaryLockoutThreshold",
            int,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_authentication_lockout_type",
            "trunkGroupAuthenticationLockoutType",
            str,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_wait_algorithm",
            "trunkGroupWaitAlgorithm",
            str,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_lockout_fixed_minutes",
            "trunkGroupLockoutFixedMinutes",
            str,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_permanent_lockout_threshold",
            "trunkGroupPermanentLockoutThreshold",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useServiceProviderSettings
    use_service_provider_settings = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowAuthenticationName
    disallow_authentication_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowOldPassword
    disallow_old_password = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedOldPassword
    disallow_reversed_old_password = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* restrictMinDigits
    restrict_min_digits = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minDigits
    min_digits = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinUpperCaseLetters
    restrict_min_upper_case_letters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minUpperCaseLetters
    min_upper_case_letters = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinLowerCaseLetters
    restrict_min_lower_case_letters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minLowerCaseLetters
    min_lower_case_letters = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinNonAlphanumericCharacters
    restrict_min_non_alphanumeric_characters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minNonAlphanumericCharacters
    min_non_alphanumeric_characters = Field(
        type=int,
        required=True,
    )
    #: int: *Required* minLength
    min_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* sendPermanentLockoutNotification
    send_permanent_lockout_notification = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* permanentLockoutNotifyEmailAddress
    permanent_lockout_notify_email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* endpointAuthenticationLockoutType
    endpoint_authentication_lockout_type = Field(
        type=str,
        required=True,
    )
    #: int: *Required* endpointTemporaryLockoutThreshold
    endpoint_temporary_lockout_threshold = Field(
        type=int,
        required=True,
    )
    #: str: *Required* endpointWaitAlgorithm
    endpoint_wait_algorithm = Field(
        type=str,
        required=True,
    )
    #: str: *Required* endpointLockoutFixedMinutes
    endpoint_lockout_fixed_minutes = Field(
        type=str,
        required=True,
    )
    #: int: *Required* endpointPermanentLockoutThreshold
    endpoint_permanent_lockout_threshold = Field(
        type=int,
        required=True,
    )
    #: int: *Required* trunkGroupTemporaryLockoutThreshold
    trunk_group_temporary_lockout_threshold = Field(
        type=int,
        required=True,
    )
    #: str: *Required* trunkGroupAuthenticationLockoutType
    trunk_group_authentication_lockout_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* trunkGroupWaitAlgorithm
    trunk_group_wait_algorithm = Field(
        type=str,
        required=True,
    )
    #: str: *Required* trunkGroupLockoutFixedMinutes
    trunk_group_lockout_fixed_minutes = Field(
        type=str,
        required=True,
    )
    #: int: *Required* trunkGroupPermanentLockoutThreshold
    trunk_group_permanent_lockout_threshold = Field(
        type=int,
        required=True,
    )


class ServiceProviderScheduleGetEventListResponse(OCIResponse):
    """
    Response to ``ServiceProviderScheduleGetEventListRequest()``.
    The response contains a list of events.
    """

    _ELEMENTS = (
        E(
            "event_name",
            "eventName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* eventName
    event_name = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "group_services_authorization_table",
            "groupServicesAuthorizationTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "user_services_authorization_table",
            "userServicesAuthorizationTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* groupServicesAuthorizationTable  *Tabular*
    group_services_authorization_table = Field(
        type=list,
        required=True,
    )
    #: list: *Required* userServicesAuthorizationTable  *Tabular*
    user_services_authorization_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderServiceGetUserAssignableListResponse(OCIResponse):
    """
    Response to ``ServiceProviderServiceGetUserAssignableListRequest()``.
    """

    _ELEMENTS = (
        E(
            "service_name",
            "serviceName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* serviceName
    service_name = Field(
        type=str,
        required=False,
    )


class ServiceProviderServicePackGetListResponse(OCIResponse):
    """
    Response to ``ServiceProviderServicePackGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "service_pack_name",
            "servicePackName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* servicePackName
    service_pack_name = Field(
        type=str,
        required=False,
    )


class ServiceProviderServicePackGetServiceUsageListResponse(OCIResponse):
    """
    Response to ``ServiceProviderServicePackGetServiceUsageListRequest()``.
    The column headings are "Service Pack Name", "Total Packs" and "Allocated to Groups"
    """

    _ELEMENTS = (
        E(
            "service_usage_table",
            "serviceUsageTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* serviceUsageTable  *Tabular*
    service_usage_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "service_pack_name",
            "servicePackName",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_utilization_table",
            "serviceUtilizationTable",
            list,
            True,
            False,
            True,
        ),
    )
    #: str: *Optional* servicePackName
    service_pack_name = Field(
        type=str,
        required=False,
    )
    #: list: *Optional* serviceUtilizationTable  *Tabular*
    service_utilization_table = Field(
        type=list,
        required=False,
    )


class ServiceProviderServicePackMigrationTaskGetAvailableGroupListResponse(OCIResponse):
    """
    Response to ``ServiceProviderServicePackMigrationTaskGetAvailableGroupListRequest()``.
    The groupTable column headings are: "Group Id", "Group Name", "User Count".
    """

    _ELEMENTS = (
        E(
            "group_table",
            "groupTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* groupTable  *Tabular*
    group_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "task_table",
            "taskTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* taskTable  *Tabular*
    task_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "task_table",
            "taskTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* taskTable  *Tabular*
    task_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderServicePackMigrationTaskGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderServicePackMigrationTaskGetRequest()``.
    The groupTable column headings are: "Migrate", "Group Id", "Group Name", "User Count".
    Replaced By ``ServiceProviderServicePackMigrationTaskGetResponse14sp4()``
    """

    _ELEMENTS = (
        E(
            "task_name",
            "taskName",
            str,
            False,
            True,
            False,
        ),
        E(
            "start_timestamp",
            "startTimestamp",
            str,
            False,
            False,
            False,
        ),
        E(
            "max_duration_hours",
            "maxDurationHours",
            int,
            False,
            True,
            False,
        ),
        E(
            "send_report_email",
            "sendReportEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "report_delivery_email_address",
            "reportDeliveryEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "abort_on_error",
            "abortOnError",
            bool,
            False,
            True,
            False,
        ),
        E(
            "abort_error_threshold",
            "abortErrorThreshold",
            int,
            False,
            False,
            False,
        ),
        E(
            "report_all_users",
            "reportAllUsers",
            bool,
            False,
            True,
            False,
        ),
        E(
            "automatically_increment_service_quantity",
            "automaticallyIncrementServiceQuantity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "error_count",
            "errorCount",
            int,
            False,
            True,
            False,
        ),
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
        E(
            "groups_processed",
            "groupsProcessed",
            int,
            False,
            True,
            False,
        ),
        E(
            "groups_total",
            "groupsTotal",
            int,
            False,
            True,
            False,
        ),
        E(
            "users_processed",
            "usersProcessed",
            int,
            False,
            True,
            False,
        ),
        E(
            "users_total",
            "usersTotal",
            int,
            False,
            True,
            False,
        ),
        E(
            "user_selection_type",
            "userSelectionType",
            str,
            False,
            True,
            False,
        ),
        E(
            "report_file_path_name",
            "reportFilePathName",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_table",
            "groupTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "user_selection_service_pack_name",
            "userSelectionServicePackName",
            str,
            False,
            False,
            False,
        ),
        E(
            "user_selection_service_name",
            "userSelectionServiceName",
            str,
            False,
            False,
            False,
        ),
        E(
            "remove_service_pack_name",
            "removeServicePackName",
            str,
            False,
            False,
            False,
        ),
        E(
            "remove_service_name",
            "removeServiceName",
            str,
            False,
            False,
            False,
        ),
        E(
            "assign_service_pack_name",
            "assignServicePackName",
            str,
            False,
            False,
            False,
        ),
        E(
            "assign_service_name",
            "assignServiceName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* taskName
    task_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* startTimestamp
    start_timestamp = Field(
        type=str,
        required=False,
    )
    #: int: *Required* maxDurationHours
    max_duration_hours = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* sendReportEmail
    send_report_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* reportDeliveryEmailAddress
    report_delivery_email_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* abortOnError
    abort_on_error = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* abortErrorThreshold
    abort_error_threshold = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* reportAllUsers
    report_all_users = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* automaticallyIncrementServiceQuantity
    automatically_increment_service_quantity = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* errorCount
    error_count = Field(
        type=int,
        required=True,
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )
    #: int: *Required* groupsProcessed
    groups_processed = Field(
        type=int,
        required=True,
    )
    #: int: *Required* groupsTotal
    groups_total = Field(
        type=int,
        required=True,
    )
    #: int: *Required* usersProcessed
    users_processed = Field(
        type=int,
        required=True,
    )
    #: int: *Required* usersTotal
    users_total = Field(
        type=int,
        required=True,
    )
    #: str: *Required* userSelectionType
    user_selection_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* reportFilePathName
    report_file_path_name = Field(
        type=str,
        required=True,
    )
    #: list: *Required* groupTable  *Tabular*
    group_table = Field(
        type=list,
        required=True,
    )
    #: str: *Optional* userSelectionServicePackName
    user_selection_service_pack_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* userSelectionServiceName
    user_selection_service_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* removeServicePackName
    remove_service_pack_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* removeServiceName
    remove_service_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* assignServicePackName
    assign_service_pack_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* assignServiceName
    assign_service_name = Field(
        type=str,
        required=False,
    )


class ServiceProviderServicePackMigrationTaskGetResponse14sp4(OCIResponse):
    """
    Response to ``ServiceProviderServicePackMigrationTaskGetRequest14sp4()``.
    The groupTable column headings are: "Group Id", "Group Name", "User Count".
    """

    _ELEMENTS = (
        E(
            "task_name",
            "taskName",
            str,
            False,
            True,
            False,
        ),
        E(
            "start_timestamp",
            "startTimestamp",
            str,
            False,
            False,
            False,
        ),
        E(
            "max_duration_hours",
            "maxDurationHours",
            int,
            False,
            True,
            False,
        ),
        E(
            "send_report_email",
            "sendReportEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "report_delivery_email_address",
            "reportDeliveryEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "abort_on_error",
            "abortOnError",
            bool,
            False,
            True,
            False,
        ),
        E(
            "abort_error_threshold",
            "abortErrorThreshold",
            int,
            False,
            False,
            False,
        ),
        E(
            "report_all_users",
            "reportAllUsers",
            bool,
            False,
            True,
            False,
        ),
        E(
            "automatically_increment_service_quantity",
            "automaticallyIncrementServiceQuantity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "error_count",
            "errorCount",
            int,
            False,
            True,
            False,
        ),
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
        E(
            "groups_processed",
            "groupsProcessed",
            int,
            False,
            True,
            False,
        ),
        E(
            "groups_total",
            "groupsTotal",
            int,
            False,
            True,
            False,
        ),
        E(
            "users_processed",
            "usersProcessed",
            int,
            False,
            True,
            False,
        ),
        E(
            "users_total",
            "usersTotal",
            int,
            False,
            True,
            False,
        ),
        E(
            "user_selection_type",
            "userSelectionType",
            str,
            False,
            True,
            False,
        ),
        E(
            "report_file_path_name",
            "reportFilePathName",
            str,
            False,
            True,
            False,
        ),
        E(
            "migrate_all_groups",
            "migrateAllGroups",
            bool,
            False,
            True,
            False,
        ),
        E(
            "group_table",
            "groupTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "user_selection_service_pack_name",
            "userSelectionServicePackName",
            str,
            False,
            False,
            False,
        ),
        E(
            "user_selection_service_name",
            "userSelectionServiceName",
            str,
            False,
            False,
            False,
        ),
        E(
            "remove_service_pack_name",
            "removeServicePackName",
            str,
            False,
            False,
            False,
        ),
        E(
            "remove_service_name",
            "removeServiceName",
            str,
            False,
            False,
            False,
        ),
        E(
            "assign_service_pack_name",
            "assignServicePackName",
            str,
            False,
            False,
            False,
        ),
        E(
            "assign_service_name",
            "assignServiceName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* taskName
    task_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* startTimestamp
    start_timestamp = Field(
        type=str,
        required=False,
    )
    #: int: *Required* maxDurationHours
    max_duration_hours = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* sendReportEmail
    send_report_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* reportDeliveryEmailAddress
    report_delivery_email_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* abortOnError
    abort_on_error = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* abortErrorThreshold
    abort_error_threshold = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* reportAllUsers
    report_all_users = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* automaticallyIncrementServiceQuantity
    automatically_increment_service_quantity = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* errorCount
    error_count = Field(
        type=int,
        required=True,
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )
    #: int: *Required* groupsProcessed
    groups_processed = Field(
        type=int,
        required=True,
    )
    #: int: *Required* groupsTotal
    groups_total = Field(
        type=int,
        required=True,
    )
    #: int: *Required* usersProcessed
    users_processed = Field(
        type=int,
        required=True,
    )
    #: int: *Required* usersTotal
    users_total = Field(
        type=int,
        required=True,
    )
    #: str: *Required* userSelectionType
    user_selection_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* reportFilePathName
    report_file_path_name = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* migrateAllGroups
    migrate_all_groups = Field(
        type=bool,
        required=True,
    )
    #: list: *Required* groupTable  *Tabular*
    group_table = Field(
        type=list,
        required=True,
    )
    #: str: *Optional* userSelectionServicePackName
    user_selection_service_pack_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* userSelectionServiceName
    user_selection_service_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* removeServicePackName
    remove_service_pack_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* removeServiceName
    remove_service_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* assignServicePackName
    assign_service_pack_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* assignServiceName
    assign_service_name = Field(
        type=str,
        required=False,
    )


class ServiceProviderServicePackMigrationTaskGetResponse21(OCIResponse):
    """
    Response to ``ServiceProviderServicePackMigrationTaskGetRequest21()``.
    The groupTable column headings are: "Group Id", "Group Name", and "User Count".
    """

    _ELEMENTS = (
        E(
            "task_name",
            "taskName",
            str,
            False,
            True,
            False,
        ),
        E(
            "start_timestamp",
            "startTimestamp",
            str,
            False,
            False,
            False,
        ),
        E(
            "actual_start_timestamp",
            "actualStartTimestamp",
            str,
            False,
            False,
            False,
        ),
        E(
            "expire_after_num_hours",
            "expireAfterNumHours",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_duration_hours",
            "maxDurationHours",
            int,
            False,
            True,
            False,
        ),
        E(
            "send_report_email",
            "sendReportEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "report_delivery_email_address",
            "reportDeliveryEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "abort_on_error",
            "abortOnError",
            bool,
            False,
            True,
            False,
        ),
        E(
            "abort_error_threshold",
            "abortErrorThreshold",
            int,
            False,
            False,
            False,
        ),
        E(
            "report_all_users",
            "reportAllUsers",
            bool,
            False,
            True,
            False,
        ),
        E(
            "automatically_increment_service_quantity",
            "automaticallyIncrementServiceQuantity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "error_count",
            "errorCount",
            int,
            False,
            True,
            False,
        ),
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
        E(
            "groups_processed",
            "groupsProcessed",
            int,
            False,
            True,
            False,
        ),
        E(
            "groups_total",
            "groupsTotal",
            int,
            False,
            True,
            False,
        ),
        E(
            "users_processed",
            "usersProcessed",
            int,
            False,
            True,
            False,
        ),
        E(
            "users_total",
            "usersTotal",
            int,
            False,
            True,
            False,
        ),
        E(
            "user_selection_type",
            "userSelectionType",
            str,
            False,
            True,
            False,
        ),
        E(
            "report_file_path_name",
            "reportFilePathName",
            str,
            False,
            True,
            False,
        ),
        E(
            "migrate_all_groups",
            "migrateAllGroups",
            bool,
            False,
            True,
            False,
        ),
        E(
            "group_table",
            "groupTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "user_selection_service_pack_name",
            "userSelectionServicePackName",
            str,
            False,
            False,
            False,
        ),
        E(
            "user_selection_service_name",
            "userSelectionServiceName",
            str,
            False,
            False,
            False,
        ),
        E(
            "remove_service_pack_name",
            "removeServicePackName",
            str,
            False,
            False,
            False,
        ),
        E(
            "remove_service_name",
            "removeServiceName",
            str,
            False,
            False,
            False,
        ),
        E(
            "assign_service_pack_name",
            "assignServicePackName",
            str,
            False,
            False,
            False,
        ),
        E(
            "assign_service_name",
            "assignServiceName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* taskName
    task_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* startTimestamp
    start_timestamp = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* actualStartTimestamp
    actual_start_timestamp = Field(
        type=str,
        required=False,
    )
    #: int: *Required* expireAfterNumHours
    expire_after_num_hours = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxDurationHours
    max_duration_hours = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* sendReportEmail
    send_report_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* reportDeliveryEmailAddress
    report_delivery_email_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* abortOnError
    abort_on_error = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* abortErrorThreshold
    abort_error_threshold = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* reportAllUsers
    report_all_users = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* automaticallyIncrementServiceQuantity
    automatically_increment_service_quantity = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* errorCount
    error_count = Field(
        type=int,
        required=True,
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )
    #: int: *Required* groupsProcessed
    groups_processed = Field(
        type=int,
        required=True,
    )
    #: int: *Required* groupsTotal
    groups_total = Field(
        type=int,
        required=True,
    )
    #: int: *Required* usersProcessed
    users_processed = Field(
        type=int,
        required=True,
    )
    #: int: *Required* usersTotal
    users_total = Field(
        type=int,
        required=True,
    )
    #: str: *Required* userSelectionType
    user_selection_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* reportFilePathName
    report_file_path_name = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* migrateAllGroups
    migrate_all_groups = Field(
        type=bool,
        required=True,
    )
    #: list: *Required* groupTable  *Tabular*
    group_table = Field(
        type=list,
        required=True,
    )
    #: str: *Optional* userSelectionServicePackName
    user_selection_service_pack_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* userSelectionServiceName
    user_selection_service_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* removeServicePackName
    remove_service_pack_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* removeServiceName
    remove_service_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* assignServicePackName
    assign_service_pack_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* assignServiceName
    assign_service_name = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderSessionAdmissionControlGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderSessionAdmissionControlGetRequest()``.
    The response contains the session admission control capacity allocated for the
    service provider.
    """

    _ELEMENTS = (
        E(
            "restrict_aggregate_sessions",
            "restrictAggregateSessions",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_sessions",
            "maxSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_user_originating_sessions",
            "maxUserOriginatingSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_user_terminating_sessions",
            "maxUserTerminatingSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "count_intra_service_provider_sessions",
            "countIntraServiceProviderSessions",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* restrictAggregateSessions
    restrict_aggregate_sessions = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* maxSessions
    max_sessions = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxUserOriginatingSessions
    max_user_originating_sessions = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxUserTerminatingSessions
    max_user_terminating_sessions = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* countIntraServiceProviderSessions
    count_intra_service_provider_sessions = Field(
        type=bool,
        required=True,
    )


class ServiceProviderSessionAdmissionControlWhiteListGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderSessionAdmissionControlWhiteListGetRequest()``.
    The response contains the White List information.
    """

    _ELEMENTS = (
        E(
            "match_digit_pattern",
            "matchDigitPattern",
            str,
            False,
            False,
            False,
        ),
        E(
            "enable_white_list",
            "enableWhiteList",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* matchDigitPattern
    match_digit_pattern = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* enableWhiteList
    enable_white_list = Field(
        type=bool,
        required=True,
    )


class ServiceProviderVoiceMessagingGroupGetPasscodeRulesResponse(OCIResponse):
    """
    Response to ``ServiceProviderVoiceMessagingGroupGetPasscodeRulesRequest()``.
    Contains the service provider's voice portal passcode rules setting.
    Replaced By ``ServiceProviderPortalPasscodeRulesGetResponse()``
    """

    _ELEMENTS = (
        E(
            "disallow_repeated_digits",
            "disallowRepeatedDigits",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_user_number",
            "disallowUserNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_user_number",
            "disallowReversedUserNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_old_passcode",
            "disallowOldPasscode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_old_passcode",
            "disallowReversedOldPasscode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_code_length",
            "minCodeLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_code_length",
            "maxCodeLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "disable_login_after_max_failed_login_attempts",
            "disableLoginAfterMaxFailedLoginAttempts",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_failed_login_attempts",
            "maxFailedLoginAttempts",
            int,
            False,
            False,
            False,
        ),
        E(
            "expire_password",
            "expirePassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "passcode_expires_days",
            "passcodeExpiresDays",
            int,
            False,
            False,
            False,
        ),
        E(
            "send_login_disabled_notify_email",
            "sendLoginDisabledNotifyEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "login_disabled_notify_email_address",
            "loginDisabledNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* disallowRepeatedDigits
    disallow_repeated_digits = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowUserNumber
    disallow_user_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedUserNumber
    disallow_reversed_user_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowOldPasscode
    disallow_old_passcode = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedOldPasscode
    disallow_reversed_old_passcode = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minCodeLength
    min_code_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxCodeLength
    max_code_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disableLoginAfterMaxFailedLoginAttempts
    disable_login_after_max_failed_login_attempts = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* maxFailedLoginAttempts
    max_failed_login_attempts = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* expirePassword
    expire_password = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* passcodeExpiresDays
    passcode_expires_days = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* sendLoginDisabledNotifyEmail
    send_login_disabled_notify_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* loginDisabledNotifyEmailAddress
    login_disabled_notify_email_address = Field(
        type=str,
        required=False,
    )


class ServiceProviderVoiceMessagingGroupGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderVoiceMessagingGroupGetRequest()``.
    Contains the service provider's or enterprise's voice messaging settings.
    """

    _ELEMENTS = (
        E(
            "delivery_from_address",
            "deliveryFromAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "notification_from_address",
            "notificationFromAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "voice_portal_lockout_from_address",
            "voicePortalLockoutFromAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_system_default_delivery_from_address",
            "useSystemDefaultDeliveryFromAddress",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_system_default_notification_from_address",
            "useSystemDefaultNotificationFromAddress",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_system_default_voice_portal_lockout_from_address",
            "useSystemDefaultVoicePortalLockoutFromAddress",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* deliveryFromAddress
    delivery_from_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* notificationFromAddress
    notification_from_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* voicePortalLockoutFromAddress
    voice_portal_lockout_from_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useSystemDefaultDeliveryFromAddress
    use_system_default_delivery_from_address = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useSystemDefaultNotificationFromAddress
    use_system_default_notification_from_address = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useSystemDefaultVoicePortalLockoutFromAddress
    use_system_default_voice_portal_lockout_from_address = Field(
        type=bool,
        required=True,
    )


class ServiceProviderVoiceMessagingGroupGetVoicePortalBrandingResponse(OCIResponse):
    """
    Response to the ``ServiceProviderVoiceMessagingGroupGetVoicePortalBrandingRequest()``.
    Replaced By ``ServiceProviderVoiceMessagingGroupGetVoicePortalBrandingResponse16()``
    """

    _ELEMENTS = (
        E(
            "voice_portal_greeting_selection",
            "voicePortalGreetingSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_greeting_file_description",
            "voicePortalGreetingFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "voice_messaging_greeting_selection",
            "voiceMessagingGreetingSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "voice_messaging_greeting_file_description",
            "voiceMessagingGreetingFileDescription",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* voicePortalGreetingSelection
    voice_portal_greeting_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* voicePortalGreetingFileDescription
    voice_portal_greeting_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Required* voiceMessagingGreetingSelection
    voice_messaging_greeting_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* voiceMessagingGreetingFileDescription
    voice_messaging_greeting_file_description = Field(
        type=str,
        required=False,
    )


class ServiceProviderVoiceMessagingGroupGetVoicePortalBrandingResponse16(OCIResponse):
    """
    Response to the ``ServiceProviderVoiceMessagingGroupGetVoicePortalBrandingRequest16()``.
    """

    _ELEMENTS = (
        E(
            "voice_portal_greeting_selection",
            "voicePortalGreetingSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_greeting_file_description",
            "voicePortalGreetingFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "voice_portal_greeting_media_file_type",
            "voicePortalGreetingMediaFileType",
            str,
            False,
            False,
            False,
        ),
        E(
            "voice_messaging_greeting_selection",
            "voiceMessagingGreetingSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "voice_messaging_greeting_file_description",
            "voiceMessagingGreetingFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "voice_messaging_greeting_media_file_type",
            "voiceMessagingGreetingMediaFileType",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* voicePortalGreetingSelection
    voice_portal_greeting_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* voicePortalGreetingFileDescription
    voice_portal_greeting_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* voicePortalGreetingMediaFileType
    voice_portal_greeting_media_file_type = Field(
        type=str,
        required=False,
    )
    #: str: *Required* voiceMessagingGreetingSelection
    voice_messaging_greeting_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* voiceMessagingGreetingFileDescription
    voice_messaging_greeting_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* voiceMessagingGreetingMediaFileType
    voice_messaging_greeting_media_file_type = Field(
        type=str,
        required=False,
    )


class ServiceProviderVoiceMessagingGroupGetVoicePortalResponse(OCIResponse):
    """
    Response to ``ServiceProviderVoiceMessagingGroupGetVoicePortalRequest()``.
    """

    _ELEMENTS = (
        E(
            "voice_portal_scope",
            "voicePortalScope",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* voicePortalScope
    voice_portal_scope = Field(
        type=str,
        required=True,
    )


class ServiceProviderZoneCallingRestrictionsGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderZoneCallingRestrictionsGetRequest()``
    """

    _ELEMENTS = (
        E(
            "enable_zone_calling_restrictions",
            "enableZoneCallingRestrictions",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_origination_roaming_restrictions",
            "enableOriginationRoamingRestrictions",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_emergency_origination_roaming_restrictions",
            "enableEmergencyOriginationRoamingRestrictions",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_termination_roaming_restrictions",
            "enableTerminationRoamingRestrictions",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableZoneCallingRestrictions
    enable_zone_calling_restrictions = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableOriginationRoamingRestrictions
    enable_origination_roaming_restrictions = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEmergencyOriginationRoamingRestrictions
    enable_emergency_origination_roaming_restrictions = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableTerminationRoamingRestrictions
    enable_termination_roaming_restrictions = Field(
        type=bool,
        required=True,
    )


class SystemASRParametersGetResponse(OCIResponse):
    """
    Response to ``SystemASRParametersGetRequest()``.
    Contains a list of system Application Server Registration parameters.
    Replaced By ``SystemASRParametersGetResponse14sp5()``
    """

    _ELEMENTS = (
        E(
            "max_transmissions",
            "maxTransmissions",
            int,
            False,
            True,
            False,
        ),
        E(
            "retransmission_delay_milli_seconds",
            "retransmissionDelayMilliSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "listening_port",
            "listeningPort",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* maxTransmissions
    max_transmissions = Field(
        type=int,
        required=True,
    )
    #: int: *Required* retransmissionDelayMilliSeconds
    retransmission_delay_milli_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* listeningPort
    listening_port = Field(
        type=int,
        required=True,
    )


class SystemASRParametersGetResponse14sp5(OCIResponse):
    """
    Response to ``SystemASRParametersGetRequest14sp5()``.
    Contains a list of system Application Server Registration parameters.
    """

    _ELEMENTS = (
        E(
            "max_transmissions",
            "maxTransmissions",
            int,
            False,
            True,
            False,
        ),
        E(
            "retransmission_delay_milli_seconds",
            "retransmissionDelayMilliSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "listening_port",
            "listeningPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "source_address",
            "sourceAddress",
            str,
            False,
            False,
            False,
        ),
    )
    #: int: *Required* maxTransmissions
    max_transmissions = Field(
        type=int,
        required=True,
    )
    #: int: *Required* retransmissionDelayMilliSeconds
    retransmission_delay_milli_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* listeningPort
    listening_port = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* sourceAddress
    source_address = Field(
        type=str,
        required=False,
    )


class SystemASRParametersGetResponse14sp7(OCIResponse):
    """
    Response to ``SystemASRParametersGetRequest14sp7()``.
    Contains a list of system Application Server Registration parameters.
    """

    _ELEMENTS = (
        E(
            "max_transmissions",
            "maxTransmissions",
            int,
            False,
            True,
            False,
        ),
        E(
            "retransmission_delay_milli_seconds",
            "retransmissionDelayMilliSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "listening_port",
            "listeningPort",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* maxTransmissions
    max_transmissions = Field(
        type=int,
        required=True,
    )
    #: int: *Required* retransmissionDelayMilliSeconds
    retransmission_delay_milli_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* listeningPort
    listening_port = Field(
        type=int,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "device_custom_tags_table",
            "deviceCustomTagsTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceCustomTagsTable  *Tabular*
    device_custom_tags_table = Field(
        type=list,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "device_files_table",
            "deviceFilesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceFilesTable  *Tabular*
    device_files_table = Field(
        type=list,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "device_files_table",
            "deviceFilesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceFilesTable  *Tabular*
    device_files_table = Field(
        type=list,
        required=True,
    )


class SystemAccessDeviceFileGetResponse(OCIResponse):
    """
    Response to ``SystemAccessDeviceFileGetRequest()``.
    Replaced By ``SystemAccessDeviceFileGetResponse14sp8()``
    """

    _ELEMENTS = (
        E(
            "file_source",
            "fileSource",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* fileSource
    file_source = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )


class SystemAccessDeviceFileGetResponse14sp8(OCIResponse):
    """
    Response to ``SystemAccessDeviceFileGetRequest14sp8()``.
    Replaced By ``SystemAccessDeviceFileGetResponse16sp1()``
    """

    _ELEMENTS = (
        E(
            "file_source",
            "fileSource",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* fileSource
    file_source = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )


class SystemAccessDeviceFileGetResponse16sp1(OCIResponse):
    """
    Response to ``SystemAccessDeviceFileGetRequest16sp1()``.
    """

    _ELEMENTS = (
        E(
            "file_source",
            "fileSource",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_url",
            "accessUrl",
            str,
            False,
            True,
            False,
        ),
        E(
            "repository_url",
            "repositoryUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "template_url",
            "templateUrl",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* fileSource
    file_source = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* accessUrl
    access_url = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* repositoryUrl
    repository_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* templateUrl
    template_url = Field(
        type=str,
        required=False,
    )


class SystemAccessDeviceFileGetResponse20(OCIResponse):
    """
    Response to ``SystemAccessDeviceFileGetRequest20()``.
    """

    _ELEMENTS = (
        E(
            "file_source",
            "fileSource",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_url",
            "accessUrl",
            str,
            False,
            True,
            False,
        ),
        E(
            "repository_url",
            "repositoryUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "template_url",
            "templateUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "extended_capture_enabled",
            "extendedCaptureEnabled",
            bool,
            False,
            False,
            False,
        ),
        E(
            "extended_capture_url",
            "extendedCaptureURL",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* fileSource
    file_source = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* accessUrl
    access_url = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* repositoryUrl
    repository_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* templateUrl
    template_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Optional* extendedCaptureEnabled
    extended_capture_enabled = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* extendedCaptureURL
    extended_capture_url = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "access_device_table",
            "accessDeviceTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* accessDeviceTable  *Tabular*
    access_device_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "access_device_table",
            "accessDeviceTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* accessDeviceTable  *Tabular*
    access_device_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "device_user_table",
            "deviceUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceUserTable  *Tabular*
    device_user_table = Field(
        type=list,
        required=True,
    )


class SystemAccessDeviceMonitorGetDeviceTypeListResponse(OCIResponse):
    """
    Response to ``SystemAccessDeviceMonitorGetDeviceTypeListRequest()``.
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* deviceType
    device_type = Field(
        type=str,
        required=False,
    )


class SystemAccessDeviceMonitorParametersGetResponse(OCIResponse):
    """
    Response to ``SystemAccessDeviceMonitorParametersGetListRequest()``.
    Contains a list of system Access Device Monitor parameters.
    """

    _ELEMENTS = (
        E(
            "polling_interval_minutes",
            "pollingIntervalMinutes",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* pollingIntervalMinutes
    polling_interval_minutes = Field(
        type=int,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "device_type_table",
            "deviceTypeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceTypeTable  *Tabular*
    device_type_table = Field(
        type=list,
        required=True,
    )


class SystemAccessDeviceTypeGetListResponse(OCIResponse):
    """
    Response to ``SystemAccessDeviceTypeGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* deviceType
    device_type = Field(
        type=str,
        required=True,
    )


class SystemAccountingGetChargingFunctionElementServerListResponse(OCIResponse):
    """
    Response to ``SystemAccountingGetChargingFunctionElementServerListRequest()``.
    The accounting charging function element Server table column
    headings are: "Address", "Extended Net Address", "Type", "Description".
    """

    _ELEMENTS = (
        E(
            "charging_function_element_server_table",
            "chargingFunctionElementServerTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* chargingFunctionElementServerTable  *Tabular*
    charging_function_element_server_table = Field(
        type=list,
        required=True,
    )


class SystemAccountingGetRadiusServerListResponse(OCIResponse):
    """
    Response to ``SystemAccountingGetRadiusServerListRequest()``. The Radius Server table
    column headings are: "Net Address", "Port", "Description"
    """

    _ELEMENTS = (
        E(
            "radius_server_table",
            "radiusServerTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* radiusServerTable  *Tabular*
    radius_server_table = Field(
        type=list,
        required=True,
    )


class SystemAccountingInhibitedAttributeValuePairCodeGetListResponse(OCIResponse):
    """
    Response to
    ``SystemAccountingInhibitedAttributeValuePairCodeGetListRequest()``. Contains a 2 column
    table with column headings "Attribute Value Pair Code" and "Vendor Id".
    """

    _ELEMENTS = (
        E(
            "inhibited_attribute_value_pair_code_table",
            "inhibitedAttributeValuePairCodeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* inhibitedAttributeValuePairCodeTable  *Tabular*
    inhibited_attribute_value_pair_code_table = Field(
        type=list,
        required=True,
    )


class SystemAdminGetListResponse(OCIResponse):
    """
    Response to ``SystemAdminGetListRequest()``.
    Contains a 6 column table with column headings "Administrator ID",
    "Last Name", "First Name", "Type", "Read Only", "Language".
    """

    _ELEMENTS = (
        E(
            "system_admin_table",
            "systemAdminTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* systemAdminTable  *Tabular*
    system_admin_table = Field(
        type=list,
        required=True,
    )


class SystemAdminGetResponse(OCIResponse):
    """
    Response to the ``SystemAdminGetRequest()``.
    The response contains the system or provisioning administrators profile information.
    """

    _ELEMENTS = (
        E(
            "first_name",
            "firstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "last_name",
            "lastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "language",
            "language",
            str,
            False,
            True,
            False,
        ),
        E(
            "admin_type",
            "adminType",
            str,
            False,
            True,
            False,
        ),
        E(
            "read_only",
            "readOnly",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* firstName
    first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* lastName
    last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* language
    language = Field(
        type=str,
        required=True,
    )
    #: str: *Required* adminType
    admin_type = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* readOnly
    read_only = Field(
        type=bool,
        required=True,
    )


class SystemAdviceOfChargeCostInformationSourceGetListResponse(OCIResponse):
    """
    Response to ``SystemAdviceOfChargeCostInformationSourceGetListRequest()``.
    Contains a table with column headings: "PeerIdentity", "Priority"
    """

    _ELEMENTS = (
        E(
            "cost_information_source_table",
            "costInformationSourceTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* costInformationSourceTable  *Tabular*
    cost_information_source_table = Field(
        type=list,
        required=True,
    )


class SystemAdviceOfChargeGetResponse(OCIResponse):
    """
    Response to ``SystemAdviceOfChargeGetRequest()``.
    Contains a list of system Advice of Charge parameters.
    """

    _ELEMENTS = (
        E(
            "delay_between_notification_seconds",
            "delayBetweenNotificationSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "incoming_aoc_handling",
            "incomingAocHandling",
            str,
            False,
            True,
            False,
        ),
        E(
            "cost_information_source",
            "costInformationSource",
            str,
            False,
            False,
            False,
        ),
    )
    #: int: *Required* delayBetweenNotificationSeconds
    delay_between_notification_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* incomingAocHandling
    incoming_aoc_handling = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* costInformationSource
    cost_information_source = Field(
        type=str,
        required=False,
    )


class SystemAdviceOfChargeGetResponse19sp1(OCIResponse):
    """
    Response to ``SystemAdviceOfChargeGetRequest()``.
    Contains a list of system Advice of Charge parameters.
    """

    _ELEMENTS = (
        E(
            "delay_between_notification_seconds",
            "delayBetweenNotificationSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "incoming_aoc_handling",
            "incomingAocHandling",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_ocs_enquiry",
            "useOCSEnquiry",
            bool,
            False,
            True,
            False,
        ),
        E(
            "ocs_enquiry_type",
            "OCSEnquiryType",
            str,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* delayBetweenNotificationSeconds
    delay_between_notification_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* incomingAocHandling
    incoming_aoc_handling = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useOCSEnquiry
    use_ocs_enquiry = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* OCSEnquiryType
    ocs_enquiry_type = Field(
        type=str,
        required=True,
    )


class SystemAliasGetListResponse(OCIResponse):
    """
    Response to ``SystemAliasGetListRequest()``. Contains the list of all network alias' for
    the Application Server.
    """

    _ELEMENTS = (
        E(
            "alias_net_address",
            "aliasNetAddress",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* aliasNetAddress
    alias_net_address = Field(
        type=str,
        required=False,
    )


class SystemAnonymousCallRejectionGetResponse(OCIResponse):
    """
    Response to the ``SystemAnonymousCallRejectionGetRequest()``.
    The response contains the anonymous call rejection system.".
    """

    _ELEMENTS = (
        E(
            "pai_required",
            "paiRequired",
            bool,
            False,
            True,
            False,
        ),
        E(
            "screen_only_local_calls",
            "screenOnlyLocalCalls",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* paiRequired
    pai_required = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* screenOnlyLocalCalls
    screen_only_local_calls = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "application_controller_table",
            "applicationControllerTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* applicationControllerTable  *Tabular*
    application_controller_table = Field(
        type=list,
        required=True,
    )


class SystemAttendantConsoleGetResponse(OCIResponse):
    """
    Response to ``SystemAttendantConsoleGetRequest()``.
    Contains a list of Attendant Console parameters.
    """

    _ELEMENTS = (
        E(
            "max_monitored_users",
            "maxMonitoredUsers",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* maxMonitoredUsers
    max_monitored_users = Field(
        type=int,
        required=True,
    )


class SystemAuthenticationLockoutSettingsGetResponse(OCIResponse):
    """
    Response to ``SystemAuthenticationLockoutSettingsGetRequest()``.
    Contains the authentication lockout settings in the system.
    """

    _ELEMENTS = (
        E(
            "counter_reset_interval_days",
            "counterResetIntervalDays",
            int,
            False,
            True,
            False,
        ),
        E(
            "counter_reset_hour",
            "counterResetHour",
            int,
            False,
            True,
            False,
        ),
        E(
            "counter_reset_minute",
            "counterResetMinute",
            int,
            False,
            True,
            False,
        ),
        E(
            "emergency_sip_bypass_allowed",
            "emergencySIPBypassAllowed",
            bool,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* counterResetIntervalDays
    counter_reset_interval_days = Field(
        type=int,
        required=True,
    )
    #: int: *Required* counterResetHour
    counter_reset_hour = Field(
        type=int,
        required=True,
    )
    #: int: *Required* counterResetMinute
    counter_reset_minute = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* emergencySIPBypassAllowed
    emergency_sip_bypass_allowed = Field(
        type=bool,
        required=True,
    )


class SystemAutomaticCallbackGetReleaseCauseListResponse(OCIResponse):
    """
    Response to ``SystemAutomaticCallbackGetReleaseCauseListRequest()``.
    """

    _ELEMENTS = (
        E(
            "release_cause",
            "releaseCause",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* releaseCause
    release_cause = Field(
        type=str,
        required=False,
    )


class SystemAutomaticCallbackGetResponse(OCIResponse):
    """
    Response to ``SystemAutomaticCallbackGetRequest()``.
    Replaced By ``SystemAutomaticCallbackGetResponse15()``
    """

    _ELEMENTS = (
        E(
            "monitor_minutes",
            "monitorMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "wait_between_retry_originator_minutes",
            "waitBetweenRetryOriginatorMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_monitors_per_originator",
            "maxMonitorsPerOriginator",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_callback_rings",
            "maxCallbackRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_retry_originator_minutes",
            "maxRetryOriginatorMinutes",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* monitorMinutes
    monitor_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* waitBetweenRetryOriginatorMinutes
    wait_between_retry_originator_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxMonitorsPerOriginator
    max_monitors_per_originator = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxCallbackRings
    max_callback_rings = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRetryOriginatorMinutes
    max_retry_originator_minutes = Field(
        type=int,
        required=True,
    )


class SystemAutomaticCallbackGetResponse15(OCIResponse):
    """
    Response to ``SystemAutomaticCallbackGetRequest15()``.

    Replaced By ``SystemAutomaticCallbackGetResponse15sp2()``
    """

    _ELEMENTS = (
        E(
            "monitor_minutes",
            "monitorMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_monitors_per_originator",
            "maxMonitorsPerOriginator",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_callback_rings",
            "maxCallbackRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_monitors_per_terminator",
            "maxMonitorsPerTerminator",
            int,
            False,
            True,
            False,
        ),
        E(
            "terminator_idle_guard_seconds",
            "terminatorIdleGuardSeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* monitorMinutes
    monitor_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxMonitorsPerOriginator
    max_monitors_per_originator = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxCallbackRings
    max_callback_rings = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxMonitorsPerTerminator
    max_monitors_per_terminator = Field(
        type=int,
        required=True,
    )
    #: int: *Required* terminatorIdleGuardSeconds
    terminator_idle_guard_seconds = Field(
        type=int,
        required=True,
    )


class SystemAutomaticCallbackGetResponse15sp2(OCIResponse):
    """
    Response to ``SystemAutomaticCallbackGetRequest15sp2()``.
    """

    _ELEMENTS = (
        E(
            "monitor_minutes",
            "monitorMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_monitors_per_originator",
            "maxMonitorsPerOriginator",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_callback_rings",
            "maxCallbackRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_monitors_per_terminator",
            "maxMonitorsPerTerminator",
            int,
            False,
            True,
            False,
        ),
        E(
            "terminator_idle_guard_seconds",
            "terminatorIdleGuardSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "callback_method",
            "callbackMethod",
            str,
            False,
            True,
            False,
        ),
        E(
            "polling_interval_seconds",
            "pollingIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* monitorMinutes
    monitor_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxMonitorsPerOriginator
    max_monitors_per_originator = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxCallbackRings
    max_callback_rings = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxMonitorsPerTerminator
    max_monitors_per_terminator = Field(
        type=int,
        required=True,
    )
    #: int: *Required* terminatorIdleGuardSeconds
    terminator_idle_guard_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* callbackMethod
    callback_method = Field(
        type=str,
        required=True,
    )
    #: int: *Required* pollingIntervalSeconds
    polling_interval_seconds = Field(
        type=int,
        required=True,
    )


class SystemAutomaticCallbackGetResponse17(OCIResponse):
    """
    Response to ``SystemAutomaticCallbackGetRequest17()``.
    """

    _ELEMENTS = (
        E(
            "monitor_minutes",
            "monitorMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_monitors_per_originator",
            "maxMonitorsPerOriginator",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_callback_rings",
            "maxCallbackRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_monitors_per_terminator",
            "maxMonitorsPerTerminator",
            int,
            False,
            True,
            False,
        ),
        E(
            "terminator_idle_guard_seconds",
            "terminatorIdleGuardSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "callback_method",
            "callbackMethod",
            str,
            False,
            True,
            False,
        ),
        E(
            "polling_interval_seconds",
            "pollingIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "activation_digit",
            "activationDigit",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* monitorMinutes
    monitor_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxMonitorsPerOriginator
    max_monitors_per_originator = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxCallbackRings
    max_callback_rings = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxMonitorsPerTerminator
    max_monitors_per_terminator = Field(
        type=int,
        required=True,
    )
    #: int: *Required* terminatorIdleGuardSeconds
    terminator_idle_guard_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* callbackMethod
    callback_method = Field(
        type=str,
        required=True,
    )
    #: int: *Required* pollingIntervalSeconds
    polling_interval_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* activationDigit
    activation_digit = Field(
        type=int,
        required=True,
    )


class SystemBCCTGetOCIInterfaceAddressListResponse(OCIResponse):
    """
    Response to ``SystemBCCTGetOCIInterfaceAddressListRequest()``.
    """

    _ELEMENTS = (
        E(
            "interface_net_address",
            "interfaceNetAddress",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* interfaceNetAddress
    interface_net_address = Field(
        type=str,
        required=False,
    )


class SystemBroadCloudGetResponse(OCIResponse):
    """
    Response to the ``SystemBroadCloudGetRequest()``.
    The response contains the system interface attributes for Messaging Server.
    """

    _ELEMENTS = (
        E(
            "provisioning_url",
            "provisioningUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "provisioning_user_id",
            "provisioningUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "enable_synchronization",
            "enableSynchronization",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* provisioningUrl
    provisioning_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* provisioningUserId
    provisioning_user_id = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* enableSynchronization
    enable_synchronization = Field(
        type=bool,
        required=True,
    )


class SystemBroadWorksMobileManagerGetResponse(OCIResponse):
    """
    Response to the ``SystemBroadWorksMobileManagerGetRequest()``
    """

    _ELEMENTS = (
        E(
            "scf_api_net_address1",
            "scfApiNetAddress1",
            str,
            False,
            False,
            False,
        ),
        E(
            "scf_api_net_address2",
            "scfApiNetAddress2",
            str,
            False,
            False,
            False,
        ),
        E(
            "user_name",
            "userName",
            str,
            False,
            False,
            False,
        ),
        E(
            "email_from_address",
            "emailFromAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "scf_ims_only",
            "scfIMSOnly",
            bool,
            False,
            True,
            False,
        ),
        E(
            "signaling_ip_address",
            "signalingIPAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "signaling_port",
            "signalingPort",
            int,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* scfApiNetAddress1
    scf_api_net_address1 = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* scfApiNetAddress2
    scf_api_net_address2 = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* userName
    user_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* emailFromAddress
    email_from_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* scfIMSOnly
    scf_ims_only = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* signalingIPAddress
    signaling_ip_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* signalingPort
    signaling_port = Field(
        type=int,
        required=False,
    )


class SystemBroadWorksMobilityGetIMRNListResponse(OCIResponse):
    """
    Response to ``SystemBroadWorksMobilityDnGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "imrn_number",
            "imrnNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* imrnNumber
    imrn_number = Field(
        type=str,
        required=False,
    )


class SystemBroadWorksMobilityGetMobileNetworkIMRNListResponse(OCIResponse):
    """
    Response to ``SystemBroadWorksMobilityGetMobileNetworkIMRNListRequest()``.
    """

    _ELEMENTS = (
        E(
            "imrn_number",
            "imrnNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* imrnNumber
    imrn_number = Field(
        type=str,
        required=False,
    )


class SystemBroadWorksMobilityGetResponse(OCIResponse):
    """
    The response to a ``SystemBroadWorksMobilityGetRequest()``.

    Replaced By  ``SystemBroadWorksMobilityGetResponse17sp4()``.
    """

    _ELEMENTS = (
        E(
            "enable_location_services",
            "enableLocationServices",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_msrn_lookup",
            "enableMSRNLookup",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_mobile_state_checking",
            "enableMobileStateChecking",
            bool,
            False,
            True,
            False,
        ),
        E(
            "deny_call_originations",
            "denyCallOriginations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "deny_call_terminations",
            "denyCallTerminations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "imrn_timeout_millisecnds",
            "imrnTimeoutMillisecnds",
            int,
            False,
            True,
            False,
        ),
        E(
            "scf_signaling_ip_address",
            "scfSignalingIPAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "scf_signaling_port",
            "scfSignalingPort",
            int,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* enableLocationServices
    enable_location_services = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableMSRNLookup
    enable_msrn_lookup = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableMobileStateChecking
    enable_mobile_state_checking = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* denyCallOriginations
    deny_call_originations = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* denyCallTerminations
    deny_call_terminations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* imrnTimeoutMillisecnds
    imrn_timeout_millisecnds = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* scfSignalingIPAddress
    scf_signaling_ip_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* scfSignalingPort
    scf_signaling_port = Field(
        type=int,
        required=False,
    )


class SystemBroadWorksMobilityGetResponse17sp4(OCIResponse):
    """
    The response to a ``SystemBroadWorksMobilityGetRequest17sp4()``.
    """

    _ELEMENTS = (
        E(
            "enable_location_services",
            "enableLocationServices",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_msrn_lookup",
            "enableMSRNLookup",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_mobile_state_checking",
            "enableMobileStateChecking",
            bool,
            False,
            True,
            False,
        ),
        E(
            "deny_call_originations",
            "denyCallOriginations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "deny_call_terminations",
            "denyCallTerminations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "imrn_timeout_millisecnds",
            "imrnTimeoutMillisecnds",
            int,
            False,
            True,
            False,
        ),
        E(
            "scf_signaling_net_address",
            "scfSignalingNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "scf_signaling_port",
            "scfSignalingPort",
            int,
            False,
            False,
            False,
        ),
        E(
            "refresh_period_seconds",
            "refreshPeriodSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_consecutive_failures",
            "maxConsecutiveFailures",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_response_wait_time_milliseconds",
            "maxResponseWaitTimeMilliseconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableLocationServices
    enable_location_services = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableMSRNLookup
    enable_msrn_lookup = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableMobileStateChecking
    enable_mobile_state_checking = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* denyCallOriginations
    deny_call_originations = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* denyCallTerminations
    deny_call_terminations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* imrnTimeoutMillisecnds
    imrn_timeout_millisecnds = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* scfSignalingNetAddress
    scf_signaling_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* scfSignalingPort
    scf_signaling_port = Field(
        type=int,
        required=False,
    )
    #: int: *Required* refreshPeriodSeconds
    refresh_period_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxConsecutiveFailures
    max_consecutive_failures = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxResponseWaitTimeMilliseconds
    max_response_wait_time_milliseconds = Field(
        type=int,
        required=True,
    )


class SystemBroadWorksMobilityGetResponse19sp1(OCIResponse):
    """
    The response to a ``SystemBroadWorksMobilityGetRequest19sp1()``.

    Replaced by ``SystemBroadWorksMobilityGetResponse21()``
    """

    _ELEMENTS = (
        E(
            "enable_location_services",
            "enableLocationServices",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_msrn_lookup",
            "enableMSRNLookup",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_mobile_state_checking",
            "enableMobileStateChecking",
            bool,
            False,
            True,
            False,
        ),
        E(
            "deny_call_originations",
            "denyCallOriginations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "deny_call_terminations",
            "denyCallTerminations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "imrn_timeout_millisecnds",
            "imrnTimeoutMillisecnds",
            int,
            False,
            True,
            False,
        ),
        E(
            "scf_signaling_net_address",
            "scfSignalingNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "scf_signaling_port",
            "scfSignalingPort",
            int,
            False,
            False,
            False,
        ),
        E(
            "refresh_period_seconds",
            "refreshPeriodSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_consecutive_failures",
            "maxConsecutiveFailures",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_response_wait_time_milliseconds",
            "maxResponseWaitTimeMilliseconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_announcement_suppression",
            "enableAnnouncementSuppression",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableLocationServices
    enable_location_services = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableMSRNLookup
    enable_msrn_lookup = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableMobileStateChecking
    enable_mobile_state_checking = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* denyCallOriginations
    deny_call_originations = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* denyCallTerminations
    deny_call_terminations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* imrnTimeoutMillisecnds
    imrn_timeout_millisecnds = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* scfSignalingNetAddress
    scf_signaling_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* scfSignalingPort
    scf_signaling_port = Field(
        type=int,
        required=False,
    )
    #: int: *Required* refreshPeriodSeconds
    refresh_period_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxConsecutiveFailures
    max_consecutive_failures = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxResponseWaitTimeMilliseconds
    max_response_wait_time_milliseconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableAnnouncementSuppression
    enable_announcement_suppression = Field(
        type=bool,
        required=True,
    )


class SystemBroadWorksMobilityGetResponse21(OCIResponse):
    """
    The response to a ``SystemBroadWorksMobilityGetRequest21()``.
    """

    _ELEMENTS = (
        E(
            "enable_location_services",
            "enableLocationServices",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_msrn_lookup",
            "enableMSRNLookup",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_mobile_state_checking",
            "enableMobileStateChecking",
            bool,
            False,
            True,
            False,
        ),
        E(
            "deny_call_originations",
            "denyCallOriginations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "deny_call_terminations",
            "denyCallTerminations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "imrn_timeout_millisecnds",
            "imrnTimeoutMillisecnds",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableLocationServices
    enable_location_services = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableMSRNLookup
    enable_msrn_lookup = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableMobileStateChecking
    enable_mobile_state_checking = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* denyCallOriginations
    deny_call_originations = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* denyCallTerminations
    deny_call_terminations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* imrnTimeoutMillisecnds
    imrn_timeout_millisecnds = Field(
        type=int,
        required=True,
    )


class SystemBroadWorksMobilityMobileNetworkGetListResponse(OCIResponse):
    """
    The response to a ``SystemBroadWorksMobilityMobileNetworkGetListRequest()``.
    Contains a table with column headings: "Name", "SCF Signaling Net Address", "SCF
    Signaling Port"
    """

    _ELEMENTS = (
        E(
            "mobile_network_table",
            "mobileNetworkTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* mobileNetworkTable  *Tabular*
    mobile_network_table = Field(
        type=list,
        required=True,
    )


class SystemBroadWorksMobilityMobileNetworkGetResponse(OCIResponse):
    """
    The response to a ``SystemBroadWorksMobilityMobileNetworkGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "scf_signaling_net_address",
            "scfSignalingNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "scf_signaling_port",
            "scfSignalingPort",
            int,
            False,
            False,
            False,
        ),
        E(
            "refresh_period_seconds",
            "refreshPeriodSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_consecutive_failures",
            "maxConsecutiveFailures",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_response_wait_time_milliseconds",
            "maxResponseWaitTimeMilliseconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_announcement_suppression",
            "enableAnnouncementSuppression",
            bool,
            False,
            True,
            False,
        ),
        E(
            "service_access_code_list_name",
            "serviceAccessCodeListName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* scfSignalingNetAddress
    scf_signaling_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* scfSignalingPort
    scf_signaling_port = Field(
        type=int,
        required=False,
    )
    #: int: *Required* refreshPeriodSeconds
    refresh_period_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxConsecutiveFailures
    max_consecutive_failures = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxResponseWaitTimeMilliseconds
    max_response_wait_time_milliseconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableAnnouncementSuppression
    enable_announcement_suppression = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* serviceAccessCodeListName
    service_access_code_list_name = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "mobile_subscriber_directory_numbers_summary_table",
            "mobileSubscriberDirectoryNumbersSummaryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* mobileSubscriberDirectoryNumbersSummaryTable  *Tabular*
    mobile_subscriber_directory_numbers_summary_table = Field(
        type=list,
        required=True,
    )


class SystemBroadWorksMobilityServiceAccessCodeGetListResponse(OCIResponse):
    """
    Response to ``SystemBroadWorksMobilityServiceAccessCodeGetListRequest()``.
    Contains a table with column headings: "Country Code", "Service Access Code",
    "Description".

    Replaced by SystemBroadWorksMobilityServiceAccessCodeGetListReponse21.
    """

    _ELEMENTS = (
        E(
            "service_access_code_table",
            "serviceAccessCodeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* serviceAccessCodeTable  *Tabular*
    service_access_code_table = Field(
        type=list,
        required=True,
    )


class SystemBroadWorksMobilityServiceAccessCodeGetListResponse21(OCIResponse):
    """
    Response to ``SystemBroadWorksMobilityServiceAccessCodeGetListRequest21()``.
    Contains a table with column headings: "Country Code", "Service Access Code",
    "Description"
    """

    _ELEMENTS = (
        E(
            "service_access_code_table",
            "serviceAccessCodeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* serviceAccessCodeTable  *Tabular*
    service_access_code_table = Field(
        type=list,
        required=True,
    )


class SystemBroadWorksMobilityServiceAccessCodeListGetListResponse(OCIResponse):
    """
    Response to ``SystemBroadWorksMobilityServiceAccessCodeListGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "name",
            "name",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* name
    name = Field(
        type=str,
        required=False,
    )


class SystemBroadWorksMobilityServiceAccessCodeListUsageGetResponse(OCIResponse):
    """
    Response to ``SystemBroadWorksMobilityServiceAccessCodeListUsageGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "mobile_network_name",
            "mobileNetworkName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* mobileNetworkName
    mobile_network_name = Field(
        type=str,
        required=False,
    )


class SystemBroadWorksReceptionistEnterpriseGetResponse(OCIResponse):
    """
    Response to ``SystemBroadWorksReceptionistEnterpriseGetRequest()``.
    Contains a list of BroadWorks Receptionist - Enterprise parameters.
    """

    _ELEMENTS = (
        E(
            "max_monitored_users",
            "maxMonitoredUsers",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* maxMonitoredUsers
    max_monitored_users = Field(
        type=int,
        required=True,
    )


class SystemBusyLampFieldGetResponse(OCIResponse):
    """
    Response to ``SystemBusyLampFieldGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "display_local_user_identity_last_name_first",
            "displayLocalUserIdentityLastNameFirst",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* displayLocalUserIdentityLastNameFirst
    display_local_user_identity_last_name_first = Field(
        type=bool,
        required=True,
    )


class SystemBusyLampFieldGetResponse18(OCIResponse):
    """
    Response to ``SystemBusyLampFieldGetRequest18()``.

    The following elements are only used in AS data mode:
    forceUseOfTCP
    """

    _ELEMENTS = (
        E(
            "display_local_user_identity_last_name_first",
            "displayLocalUserIdentityLastNameFirst",
            bool,
            False,
            True,
            False,
        ),
        E(
            "force_use_of_tcp",
            "forceUseOfTCP",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* displayLocalUserIdentityLastNameFirst
    display_local_user_identity_last_name_first = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forceUseOfTCP
    force_use_of_tcp = Field(
        type=bool,
        required=True,
    )


class SystemBwDiameterBaseDataGetResponse(OCIResponse):
    """
    Response to ``SystemBwDiameterBaseDataGetRequest()``.
    Contains a list of System Diameter base parameters.
    """

    _ELEMENTS = (
        E(
            "xs_realm",
            "xsRealm",
            str,
            False,
            False,
            False,
        ),
        E(
            "xs_listening_port",
            "xsListeningPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "ps_realm",
            "psRealm",
            str,
            False,
            False,
            False,
        ),
        E(
            "ps_listening_port",
            "psListeningPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "ps_relay_through_xs",
            "psRelayThroughXs",
            bool,
            False,
            True,
            False,
        ),
        E(
            "xs_relay_listening_port",
            "xsRelayListeningPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "tc_timer_seconds",
            "tcTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "tw_timer_seconds",
            "twTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "request_timer_seconds",
            "requestTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "busy_peer_detection_outstanding_txn_count",
            "busyPeerDetectionOutstandingTxnCount",
            int,
            False,
            True,
            False,
        ),
        E(
            "busy_peer_restore_outstanding_txn_count",
            "busyPeerRestoreOutstandingTxnCount",
            int,
            False,
            True,
            False,
        ),
        E(
            "dynamic_entry_inactivity_timer_hours",
            "dynamicEntryInactivityTimerHours",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* xsRealm
    xs_realm = Field(
        type=str,
        required=False,
    )
    #: int: *Required* xsListeningPort
    xs_listening_port = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* psRealm
    ps_realm = Field(
        type=str,
        required=False,
    )
    #: int: *Required* psListeningPort
    ps_listening_port = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* psRelayThroughXs
    ps_relay_through_xs = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* xsRelayListeningPort
    xs_relay_listening_port = Field(
        type=int,
        required=True,
    )
    #: int: *Required* tcTimerSeconds
    tc_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* twTimerSeconds
    tw_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* requestTimerSeconds
    request_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* busyPeerDetectionOutstandingTxnCount
    busy_peer_detection_outstanding_txn_count = Field(
        type=int,
        required=True,
    )
    #: int: *Required* busyPeerRestoreOutstandingTxnCount
    busy_peer_restore_outstanding_txn_count = Field(
        type=int,
        required=True,
    )
    #: int: *Required* dynamicEntryInactivityTimerHours
    dynamic_entry_inactivity_timer_hours = Field(
        type=int,
        required=True,
    )


class SystemBwDiameterBaseDataGetResponse17sp3(OCIResponse):
    """
    Response to ``SystemBwDiameterBaseDataGetRequest17sp3()``.
    Contains a list of System Diameter base parameters.
    """

    _ELEMENTS = (
        E(
            "xs_realm",
            "xsRealm",
            str,
            False,
            False,
            False,
        ),
        E(
            "xs_listening_port",
            "xsListeningPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "ps_realm",
            "psRealm",
            str,
            False,
            False,
            False,
        ),
        E(
            "ps_listening_port",
            "psListeningPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "ps_relay_through_xs",
            "psRelayThroughXs",
            bool,
            False,
            True,
            False,
        ),
        E(
            "xs_relay_listening_port",
            "xsRelayListeningPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "tc_timer_seconds",
            "tcTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "tw_timer_seconds",
            "twTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "request_timer_seconds",
            "requestTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "busy_peer_detection_outstanding_txn_count",
            "busyPeerDetectionOutstandingTxnCount",
            int,
            False,
            True,
            False,
        ),
        E(
            "busy_peer_restore_outstanding_txn_count",
            "busyPeerRestoreOutstandingTxnCount",
            int,
            False,
            True,
            False,
        ),
        E(
            "dynamic_entry_inactivity_timer_hours",
            "dynamicEntryInactivityTimerHours",
            int,
            False,
            True,
            False,
        ),
        E(
            "advertised_offline_billing_application",
            "advertisedOfflineBillingApplication",
            str,
            False,
            True,
            False,
        ),
        E(
            "advertised_online_billing_application",
            "advertisedOnlineBillingApplication",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* xsRealm
    xs_realm = Field(
        type=str,
        required=False,
    )
    #: int: *Required* xsListeningPort
    xs_listening_port = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* psRealm
    ps_realm = Field(
        type=str,
        required=False,
    )
    #: int: *Required* psListeningPort
    ps_listening_port = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* psRelayThroughXs
    ps_relay_through_xs = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* xsRelayListeningPort
    xs_relay_listening_port = Field(
        type=int,
        required=True,
    )
    #: int: *Required* tcTimerSeconds
    tc_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* twTimerSeconds
    tw_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* requestTimerSeconds
    request_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* busyPeerDetectionOutstandingTxnCount
    busy_peer_detection_outstanding_txn_count = Field(
        type=int,
        required=True,
    )
    #: int: *Required* busyPeerRestoreOutstandingTxnCount
    busy_peer_restore_outstanding_txn_count = Field(
        type=int,
        required=True,
    )
    #: int: *Required* dynamicEntryInactivityTimerHours
    dynamic_entry_inactivity_timer_hours = Field(
        type=int,
        required=True,
    )
    #: str: *Required* advertisedOfflineBillingApplication
    advertised_offline_billing_application = Field(
        type=str,
        required=True,
    )
    #: str: *Required* advertisedOnlineBillingApplication
    advertised_online_billing_application = Field(
        type=str,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "peer_table",
            "peerTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* peerTable  *Tabular*
    peer_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "routing_peer_table",
            "routingPeerTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* routingPeerTable  *Tabular*
    routing_peer_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "routing_realm_table",
            "routingRealmTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* routingRealmTable  *Tabular*
    routing_realm_table = Field(
        type=list,
        required=True,
    )


class SystemCAPGetACLListResponse14(OCIResponse):
    """
    Response to ``SystemCAPGetACLListRequest14()``. The table columns are:
    "Net Address" and "Description".
    """

    _ELEMENTS = (
        E(
            "acl_table",
            "aclTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* aclTable  *Tabular*
    acl_table = Field(
        type=list,
        required=True,
    )


class SystemCAPParametersGetResponse(OCIResponse):
    """
    Response to ``SystemCAPParametersGetRequest()``.
    Contains a list of system CAP parameters.
    Replaced By ``SystemCAPParametersGetResponse14sp3()``
    """

    _ELEMENTS = (
        E(
            "server_port",
            "serverPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_client_connections",
            "maxClientConnections",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_connection_ping",
            "enableConnectionPing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "connection_ping_interval_minutes",
            "connectionPingIntervalMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "ccc2_server_port",
            "CCC2ServerPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "ccc2_max_client_connections",
            "CCC2MaxClientConnections",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* serverPort
    server_port = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxClientConnections
    max_client_connections = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableConnectionPing
    enable_connection_ping = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* connectionPingIntervalMinutes
    connection_ping_interval_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* CCC2ServerPort
    ccc2_server_port = Field(
        type=int,
        required=True,
    )
    #: int: *Required* CCC2MaxClientConnections
    ccc2_max_client_connections = Field(
        type=int,
        required=True,
    )


class SystemCAPParametersGetResponse14sp3(OCIResponse):
    """
    Response to ``SystemCAPParametersGetListRequest14sp3()``.
    Contains a list of system CAP parameters.

    Replaced by ``SystemCAPParametersGetResponse19()``
    """

    _ELEMENTS = (
        E(
            "server_port",
            "serverPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_client_connections",
            "maxClientConnections",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_connection_ping",
            "enableConnectionPing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "connection_ping_interval_minutes",
            "connectionPingIntervalMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "ccc2_server_port",
            "CCC2ServerPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "ccc2_max_client_connections",
            "CCC2MaxClientConnections",
            int,
            False,
            True,
            False,
        ),
        E(
            "cap_server_call_center_port",
            "capServerCallCenterPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "cap_server_call_center_max_client_connections",
            "capServerCallCenterMaxClientConnections",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* serverPort
    server_port = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxClientConnections
    max_client_connections = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableConnectionPing
    enable_connection_ping = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* connectionPingIntervalMinutes
    connection_ping_interval_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* CCC2ServerPort
    ccc2_server_port = Field(
        type=int,
        required=True,
    )
    #: int: *Required* CCC2MaxClientConnections
    ccc2_max_client_connections = Field(
        type=int,
        required=True,
    )
    #: int: *Required* capServerCallCenterPort
    cap_server_call_center_port = Field(
        type=int,
        required=True,
    )
    #: int: *Required* capServerCallCenterMaxClientConnections
    cap_server_call_center_max_client_connections = Field(
        type=int,
        required=True,
    )


class SystemCAPParametersGetResponse19(OCIResponse):
    """
    Response to ``SystemCAPParametersGetRequest19()``.
    Contains a list of system CAP parameters.
    """

    _ELEMENTS = (
        E(
            "server_port",
            "serverPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_client_connections",
            "maxClientConnections",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_connection_ping",
            "enableConnectionPing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "connection_ping_interval_minutes",
            "connectionPingIntervalMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "ccc2_server_port",
            "CCC2ServerPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "ccc2_max_client_connections",
            "CCC2MaxClientConnections",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* serverPort
    server_port = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxClientConnections
    max_client_connections = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableConnectionPing
    enable_connection_ping = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* connectionPingIntervalMinutes
    connection_ping_interval_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* CCC2ServerPort
    ccc2_server_port = Field(
        type=int,
        required=True,
    )
    #: int: *Required* CCC2MaxClientConnections
    ccc2_max_client_connections = Field(
        type=int,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "file_server_table",
            "fileServerTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* fileServerTable  *Tabular*
    file_server_table = Field(
        type=list,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "file_server_table",
            "fileServerTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* fileServerTable  *Tabular*
    file_server_table = Field(
        type=list,
        required=True,
    )


class SystemCPEConfigParametersGetResponse(OCIResponse):
    """
    Response to ``SystemCPEConfigParametersGetListRequest()``.
    Contains a list of system CPE Config parameters.
    Replaced By ``SystemCPEConfigParametersGetResponse14sp6()``
    """

    _ELEMENTS = (
        E(
            "enable_ip_device_management",
            "enableIPDeviceManagement",
            bool,
            False,
            True,
            False,
        ),
        E(
            "ftp_connect_timeout_seconds",
            "ftpConnectTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "ftp_file_transfer_timeout_seconds",
            "ftpFileTransferTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableIPDeviceManagement
    enable_ip_device_management = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* ftpConnectTimeoutSeconds
    ftp_connect_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* ftpFileTransferTimeoutSeconds
    ftp_file_transfer_timeout_seconds = Field(
        type=int,
        required=True,
    )


class SystemCPEConfigParametersGetResponse14sp6(OCIResponse):
    """
    Response to ``SystemCPEConfigParametersGetListRequest14sp6()``.
    Contains a list of system CPE Config parameters.
    """

    _ELEMENTS = (
        E(
            "enable_ip_device_management",
            "enableIPDeviceManagement",
            bool,
            False,
            True,
            False,
        ),
        E(
            "ftp_connect_timeout_seconds",
            "ftpConnectTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "ftp_file_transfer_timeout_seconds",
            "ftpFileTransferTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "pause_between_file_rebuild_milliseconds",
            "pauseBetweenFileRebuildMilliseconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_busy_time_minutes",
            "maxBusyTimeMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "device_access_app_server_cluster_name",
            "deviceAccessAppServerClusterName",
            str,
            False,
            False,
            False,
        ),
        E(
            "file_rebuild_immediate",
            "fileRebuildImmediate",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "file_rebuild_daily",
            "fileRebuildDaily",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "file_rebuild_hourly",
            "fileRebuildHourly",
            str,
            True,
            True,
            False,
        ),  # unknown
    )
    #: bool: *Required* enableIPDeviceManagement
    enable_ip_device_management = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* ftpConnectTimeoutSeconds
    ftp_connect_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* ftpFileTransferTimeoutSeconds
    ftp_file_transfer_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* pauseBetweenFileRebuildMilliseconds
    pause_between_file_rebuild_milliseconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxBusyTimeMinutes
    max_busy_time_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* deviceAccessAppServerClusterName
    device_access_app_server_cluster_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* fileRebuildImmediate
    file_rebuild_immediate = Field(
        type=str,
        required=True,
    )
    #: str: *Required* fileRebuildDaily
    file_rebuild_daily = Field(
        type=str,
        required=True,
    )
    #: str: *Required* fileRebuildHourly
    file_rebuild_hourly = Field(
        type=str,
        required=True,
    )


class SystemCPEConfigParametersGetResponse20(OCIResponse):
    """
    Response to ``SystemCPEConfigParametersGetListRequest20()``.
    Contains a list of system CPE Config parameters.

    Replaced By ``SystemCPEConfigParametersGetResponse21()``
    """

    _ELEMENTS = (
        E(
            "enable_ip_device_management",
            "enableIPDeviceManagement",
            bool,
            False,
            True,
            False,
        ),
        E(
            "ftp_connect_timeout_seconds",
            "ftpConnectTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "ftp_file_transfer_timeout_seconds",
            "ftpFileTransferTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "pause_between_file_rebuild_milliseconds",
            "pauseBetweenFileRebuildMilliseconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_busy_time_minutes",
            "maxBusyTimeMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "device_access_app_server_cluster_name",
            "deviceAccessAppServerClusterName",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* enableIPDeviceManagement
    enable_ip_device_management = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* ftpConnectTimeoutSeconds
    ftp_connect_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* ftpFileTransferTimeoutSeconds
    ftp_file_transfer_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* pauseBetweenFileRebuildMilliseconds
    pause_between_file_rebuild_milliseconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxBusyTimeMinutes
    max_busy_time_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* deviceAccessAppServerClusterName
    device_access_app_server_cluster_name = Field(
        type=str,
        required=False,
    )


class SystemCPEConfigParametersGetResponse21(OCIResponse):
    """
    Response to ``SystemCPEConfigParametersGetListRequest21()``.
    Contains a list of system CPE Config parameters.
    """

    _ELEMENTS = (
        E(
            "enable_ip_device_management",
            "enableIPDeviceManagement",
            bool,
            False,
            True,
            False,
        ),
        E(
            "ftp_connect_timeout_seconds",
            "ftpConnectTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "ftp_file_transfer_timeout_seconds",
            "ftpFileTransferTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "pause_between_file_rebuild_milliseconds",
            "pauseBetweenFileRebuildMilliseconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "device_access_app_server_cluster_name",
            "deviceAccessAppServerClusterName",
            str,
            False,
            False,
            False,
        ),
        E(
            "min_time_between_reset_milliseconds",
            "minTimeBetweenResetMilliseconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "always_push_files_on_rebuild",
            "alwaysPushFilesOnRebuild",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_file_operation_retry_attempts",
            "maxFileOperationRetryAttempts",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_auto_rebuild_config",
            "enableAutoRebuildConfig",
            bool,
            False,
            True,
            False,
        ),
        E(
            "event_queue_size",
            "eventQueueSize",
            int,
            False,
            True,
            False,
        ),
        E(
            "allow_device_credentials_retrieval",
            "allowDeviceCredentialsRetrieval",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableIPDeviceManagement
    enable_ip_device_management = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* ftpConnectTimeoutSeconds
    ftp_connect_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* ftpFileTransferTimeoutSeconds
    ftp_file_transfer_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* pauseBetweenFileRebuildMilliseconds
    pause_between_file_rebuild_milliseconds = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* deviceAccessAppServerClusterName
    device_access_app_server_cluster_name = Field(
        type=str,
        required=False,
    )
    #: int: *Required* minTimeBetweenResetMilliseconds
    min_time_between_reset_milliseconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* alwaysPushFilesOnRebuild
    always_push_files_on_rebuild = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFileOperationRetryAttempts
    max_file_operation_retry_attempts = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableAutoRebuildConfig
    enable_auto_rebuild_config = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* eventQueueSize
    event_queue_size = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* allowDeviceCredentialsRetrieval
    allow_device_credentials_retrieval = Field(
        type=bool,
        required=True,
    )


class SystemCallCenterEnhancedReportingBrandingGetResponse(OCIResponse):
    """
    Response to the ``SystemCallCenterEnhancedReportingBrandingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "branding_choice",
            "brandingChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "custom_branding_file_description",
            "customBrandingFileDescription",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* brandingChoice
    branding_choice = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* customBrandingFileDescription
    custom_branding_file_description = Field(
        type=str,
        required=False,
    )


class SystemCallCenterEnhancedReportingGetResponse(OCIResponse):
    """
    Response to ``SystemCallCenterEnhancedReportingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "archive_reports",
            "archiveReports",
            bool,
            False,
            True,
            False,
        ),
        E(
            "report_application_url",
            "reportApplicationURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "repository_application_url",
            "repositoryApplicationURL",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* archiveReports
    archive_reports = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* reportApplicationURL
    report_application_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* repositoryApplicationURL
    repository_application_url = Field(
        type=str,
        required=False,
    )


class SystemCallCenterEnhancedReportingReportTemplateGetListResponse(OCIResponse):
    """
    Response to ``SystemCallCenterEnhancedReportingReportTemplateGetListRequest()``.
    Contains a table with column headings: "Name", "Description", "Is Custom", "Type"
    and "Enabled"
    """

    _ELEMENTS = (
        E(
            "report_template_table",
            "reportTemplateTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* reportTemplateTable  *Tabular*
    report_template_table = Field(
        type=list,
        required=True,
    )


class SystemCallCenterEnhancedReportingReportTemplateGetResponse(OCIResponse):
    """
    Response to ``SystemCallCenterEnhancedReportingReportTemplateGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "data_template",
            "dataTemplate",
            str,
            False,
            True,
            False,
        ),
        E(
            "filter_number",
            "filterNumber",
            int,
            False,
            False,
            False,
        ),
        E(
            "xslt_template_description",
            "xsltTemplateDescription",
            str,
            False,
            True,
            False,
        ),
        E(
            "scope",
            "scope",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_enabled",
            "isEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_realtime_report",
            "isRealtimeReport",
            bool,
            False,
            False,
            False,
        ),
        E(
            "call_completion_threshold_param",
            "callCompletionThresholdParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "short_duration_threshold_param",
            "shortDurationThresholdParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_level_threshold_param",
            "serviceLevelThresholdParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_level_inclusions_param",
            "serviceLevelInclusionsParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_level_objective_threshold_param",
            "serviceLevelObjectiveThresholdParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "abandoned_call_threshold_param",
            "abandonedCallThresholdParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_level_threshold_param_number",
            "serviceLevelThresholdParamNumber",
            int,
            False,
            False,
            False,
        ),
        E(
            "abandoned_call_threshold_param_number",
            "abandonedCallThresholdParamNumber",
            int,
            False,
            False,
            False,
        ),
        E(
            "filter_value",
            "filterValue",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Required* dataTemplate
    data_template = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* filterNumber
    filter_number = Field(
        type=int,
        required=False,
    )
    #: str: *Required* xsltTemplateDescription
    xslt_template_description = Field(
        type=str,
        required=True,
    )
    #: str: *Required* scope
    scope = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isEnabled
    is_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Optional* isRealtimeReport
    is_realtime_report = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* callCompletionThresholdParam
    call_completion_threshold_param = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* shortDurationThresholdParam
    short_duration_threshold_param = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serviceLevelThresholdParam
    service_level_threshold_param = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serviceLevelInclusionsParam
    service_level_inclusions_param = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serviceLevelObjectiveThresholdParam
    service_level_objective_threshold_param = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* abandonedCallThresholdParam
    abandoned_call_threshold_param = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* serviceLevelThresholdParamNumber
    service_level_threshold_param_number = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* abandonedCallThresholdParamNumber
    abandoned_call_threshold_param_number = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* filterValue
    filter_value = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "scheduled_report_table",
            "scheduledReportTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* scheduledReportTable  *Tabular*
    scheduled_report_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "scheduled_report_table",
            "scheduledReportTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* scheduledReportTable  *Tabular*
    scheduled_report_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "scheduled_report_table",
            "scheduledReportTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* scheduledReportTable  *Tabular*
    scheduled_report_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "schedule_report_table",
            "scheduleReportTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* scheduleReportTable  *Tabular*
    schedule_report_table = Field(
        type=list,
        required=True,
    )


class SystemCallCenterEnhancedReportingScheduledTaskParametersGetResponse(OCIResponse):
    """
    Response to ``SystemCallCenterEnhancedReportingScheduledTaskParametersGetRequest()``
    """

    _ELEMENTS = (
        E(
            "scheduled_report_search_interval_minutes",
            "scheduledReportSearchIntervalMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "maximum_scheduled_reports_per_interval",
            "maximumScheduledReportsPerInterval",
            int,
            False,
            True,
            False,
        ),
        E(
            "delete_scheduled_report_days_after_completion",
            "deleteScheduledReportDaysAfterCompletion",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* scheduledReportSearchIntervalMinutes
    scheduled_report_search_interval_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maximumScheduledReportsPerInterval
    maximum_scheduled_reports_per_interval = Field(
        type=int,
        required=True,
    )
    #: int: *Required* deleteScheduledReportDaysAfterCompletion
    delete_scheduled_report_days_after_completion = Field(
        type=int,
        required=True,
    )


class SystemCallCenterGetResponse(OCIResponse):
    """
    Response to ``SystemCallCenterGetRequest()``.
    Replaced By ``SystemCallCenterGetResponse14sp9()``
    """

    _ELEMENTS = (
        E(
            "default_from_address",
            "defaultFromAddress",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* defaultFromAddress
    default_from_address = Field(
        type=str,
        required=True,
    )


class SystemCallCenterGetResponse14sp9(OCIResponse):
    """
    Response to ``SystemCallCenterGetRequest14sp9()``.
    """

    _ELEMENTS = (
        E(
            "default_from_address",
            "defaultFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "statistics_sampling_period_minutes",
            "statisticsSamplingPeriodMinutes",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* defaultFromAddress
    default_from_address = Field(
        type=str,
        required=True,
    )
    #: int: *Required* statisticsSamplingPeriodMinutes
    statistics_sampling_period_minutes = Field(
        type=int,
        required=True,
    )


class SystemCallCenterGetResponse16(OCIResponse):
    """
    Response to ``SystemCallCenterGetRequest16()``.
    """

    _ELEMENTS = (
        E(
            "default_from_address",
            "defaultFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "statistics_sampling_period_minutes",
            "statisticsSamplingPeriodMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "default_enable_guard_timer",
            "defaultEnableGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_guard_timer_seconds",
            "defaultGuardTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation",
            bool,
            False,
            True,
            False,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* defaultFromAddress
    default_from_address = Field(
        type=str,
        required=True,
    )
    #: int: *Required* statisticsSamplingPeriodMinutes
    statistics_sampling_period_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* defaultEnableGuardTimer
    default_enable_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* defaultGuardTimerSeconds
    default_guard_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* forceAgentUnavailableOnDNDActivation
    force_agent_unavailable_on_dnd_activation = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forceAgentUnavailableOnPersonalCalls
    force_agent_unavailable_on_personal_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forceAgentUnavailableOnBouncedCallLimit
    force_agent_unavailable_on_bounced_call_limit = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberConsecutiveBouncedCallsToForceAgentUnavailable
    number_consecutive_bounced_calls_to_force_agent_unavailable = Field(
        type=int,
        required=True,
    )


class SystemCallCenterGetResponse17(OCIResponse):
    """
    Response to ``SystemCallCenterGetRequest17()``.

    Replaced by ``SystemCallCenterGetResponse17sp4()``.
    """

    _ELEMENTS = (
        E(
            "default_from_address",
            "defaultFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "statistics_sampling_period_minutes",
            "statisticsSamplingPeriodMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "default_enable_guard_timer",
            "defaultEnableGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_guard_timer_seconds",
            "defaultGuardTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation",
            bool,
            False,
            True,
            False,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable",
            int,
            False,
            True,
            False,
        ),
        E(
            "default_play_ring_when_offer_call",
            "defaultPlayRingWhenOfferCall",
            bool,
            False,
            True,
            False,
        ),
        E(
            "uniform_call_distribution_policy_scope",
            "uniformCallDistributionPolicyScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_handling_sampling_period_minutes",
            "callHandlingSamplingPeriodMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "call_handling_minimum_sampling_size",
            "callHandlingMinimumSamplingSize",
            int,
            False,
            True,
            False,
        ),
        E(
            "play_tone_to_agent_for_emergency_call",
            "playToneToAgentForEmergencyCall",
            bool,
            False,
            True,
            False,
        ),
        E(
            "emergency_call_clid_prefix",
            "emergencyCallCLIDPrefix",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* defaultFromAddress
    default_from_address = Field(
        type=str,
        required=True,
    )
    #: int: *Required* statisticsSamplingPeriodMinutes
    statistics_sampling_period_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* defaultEnableGuardTimer
    default_enable_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* defaultGuardTimerSeconds
    default_guard_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* forceAgentUnavailableOnDNDActivation
    force_agent_unavailable_on_dnd_activation = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forceAgentUnavailableOnPersonalCalls
    force_agent_unavailable_on_personal_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forceAgentUnavailableOnBouncedCallLimit
    force_agent_unavailable_on_bounced_call_limit = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberConsecutiveBouncedCallsToForceAgentUnavailable
    number_consecutive_bounced_calls_to_force_agent_unavailable = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* defaultPlayRingWhenOfferCall
    default_play_ring_when_offer_call = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* uniformCallDistributionPolicyScope
    uniform_call_distribution_policy_scope = Field(
        type=str,
        required=True,
    )
    #: int: *Required* callHandlingSamplingPeriodMinutes
    call_handling_sampling_period_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* callHandlingMinimumSamplingSize
    call_handling_minimum_sampling_size = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* playToneToAgentForEmergencyCall
    play_tone_to_agent_for_emergency_call = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* emergencyCallCLIDPrefix
    emergency_call_clid_prefix = Field(
        type=str,
        required=True,
    )


class SystemCallCenterGetResponse17sp4(OCIResponse):
    """
    Response to ``SystemCallCenterGetRequest17sp4()``.

    Replaced By ``SystemCallCenterGetResponse19()``.
    """

    _ELEMENTS = (
        E(
            "default_from_address",
            "defaultFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "statistics_sampling_period_minutes",
            "statisticsSamplingPeriodMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "default_enable_guard_timer",
            "defaultEnableGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_guard_timer_seconds",
            "defaultGuardTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation",
            bool,
            False,
            True,
            False,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable",
            int,
            False,
            True,
            False,
        ),
        E(
            "force_agent_unavailable_on_not_reachable",
            "forceAgentUnavailableOnNotReachable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_play_ring_when_offer_call",
            "defaultPlayRingWhenOfferCall",
            bool,
            False,
            True,
            False,
        ),
        E(
            "uniform_call_distribution_policy_scope",
            "uniformCallDistributionPolicyScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_handling_sampling_period_minutes",
            "callHandlingSamplingPeriodMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "call_handling_minimum_sampling_size",
            "callHandlingMinimumSamplingSize",
            int,
            False,
            True,
            False,
        ),
        E(
            "play_tone_to_agent_for_emergency_call",
            "playToneToAgentForEmergencyCall",
            bool,
            False,
            True,
            False,
        ),
        E(
            "emergency_call_clid_prefix",
            "emergencyCallCLIDPrefix",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* defaultFromAddress
    default_from_address = Field(
        type=str,
        required=True,
    )
    #: int: *Required* statisticsSamplingPeriodMinutes
    statistics_sampling_period_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* defaultEnableGuardTimer
    default_enable_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* defaultGuardTimerSeconds
    default_guard_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* forceAgentUnavailableOnDNDActivation
    force_agent_unavailable_on_dnd_activation = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forceAgentUnavailableOnPersonalCalls
    force_agent_unavailable_on_personal_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forceAgentUnavailableOnBouncedCallLimit
    force_agent_unavailable_on_bounced_call_limit = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberConsecutiveBouncedCallsToForceAgentUnavailable
    number_consecutive_bounced_calls_to_force_agent_unavailable = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* forceAgentUnavailableOnNotReachable
    force_agent_unavailable_on_not_reachable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* defaultPlayRingWhenOfferCall
    default_play_ring_when_offer_call = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* uniformCallDistributionPolicyScope
    uniform_call_distribution_policy_scope = Field(
        type=str,
        required=True,
    )
    #: int: *Required* callHandlingSamplingPeriodMinutes
    call_handling_sampling_period_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* callHandlingMinimumSamplingSize
    call_handling_minimum_sampling_size = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* playToneToAgentForEmergencyCall
    play_tone_to_agent_for_emergency_call = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* emergencyCallCLIDPrefix
    emergency_call_clid_prefix = Field(
        type=str,
        required=True,
    )


class SystemCallCenterGetResponse19(OCIResponse):
    """
    Response to ``SystemCallCenterGetRequest19()``.

    Replaced by ``SystemCallCenterGetRequest21()``.
    """

    _ELEMENTS = (
        E(
            "default_from_address",
            "defaultFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "statistics_sampling_period_minutes",
            "statisticsSamplingPeriodMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "default_enable_guard_timer",
            "defaultEnableGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_guard_timer_seconds",
            "defaultGuardTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation",
            bool,
            False,
            True,
            False,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable",
            int,
            False,
            True,
            False,
        ),
        E(
            "force_agent_unavailable_on_not_reachable",
            "forceAgentUnavailableOnNotReachable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_play_ring_when_offer_call",
            "defaultPlayRingWhenOfferCall",
            bool,
            False,
            True,
            False,
        ),
        E(
            "uniform_call_distribution_policy_scope",
            "uniformCallDistributionPolicyScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_handling_sampling_period_minutes",
            "callHandlingSamplingPeriodMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "call_handling_minimum_sampling_size",
            "callHandlingMinimumSamplingSize",
            int,
            False,
            True,
            False,
        ),
        E(
            "play_tone_to_agent_for_emergency_call",
            "playToneToAgentForEmergencyCall",
            bool,
            False,
            True,
            False,
        ),
        E(
            "emergency_call_clid_prefix",
            "emergencyCallCLIDPrefix",
            str,
            False,
            True,
            False,
        ),
        E(
            "threshold_crossing_notification_email_guard_timer_seconds",
            "thresholdCrossingNotificationEmailGuardTimerSeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* defaultFromAddress
    default_from_address = Field(
        type=str,
        required=True,
    )
    #: int: *Required* statisticsSamplingPeriodMinutes
    statistics_sampling_period_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* defaultEnableGuardTimer
    default_enable_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* defaultGuardTimerSeconds
    default_guard_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* forceAgentUnavailableOnDNDActivation
    force_agent_unavailable_on_dnd_activation = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forceAgentUnavailableOnPersonalCalls
    force_agent_unavailable_on_personal_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forceAgentUnavailableOnBouncedCallLimit
    force_agent_unavailable_on_bounced_call_limit = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberConsecutiveBouncedCallsToForceAgentUnavailable
    number_consecutive_bounced_calls_to_force_agent_unavailable = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* forceAgentUnavailableOnNotReachable
    force_agent_unavailable_on_not_reachable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* defaultPlayRingWhenOfferCall
    default_play_ring_when_offer_call = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* uniformCallDistributionPolicyScope
    uniform_call_distribution_policy_scope = Field(
        type=str,
        required=True,
    )
    #: int: *Required* callHandlingSamplingPeriodMinutes
    call_handling_sampling_period_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* callHandlingMinimumSamplingSize
    call_handling_minimum_sampling_size = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* playToneToAgentForEmergencyCall
    play_tone_to_agent_for_emergency_call = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* emergencyCallCLIDPrefix
    emergency_call_clid_prefix = Field(
        type=str,
        required=True,
    )
    #: int: *Required* thresholdCrossingNotificationEmailGuardTimerSeconds
    threshold_crossing_notification_email_guard_timer_seconds = Field(
        type=int,
        required=True,
    )


class SystemCallCenterGetResponse21(OCIResponse):
    """
    Response to ``SystemCallCenterGetRequest21()``.
    """

    _ELEMENTS = (
        E(
            "default_from_address",
            "defaultFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "statistics_sampling_period_minutes",
            "statisticsSamplingPeriodMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "default_enable_guard_timer",
            "defaultEnableGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_guard_timer_seconds",
            "defaultGuardTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation",
            bool,
            False,
            True,
            False,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable",
            int,
            False,
            True,
            False,
        ),
        E(
            "force_agent_unavailable_on_not_reachable",
            "forceAgentUnavailableOnNotReachable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_play_ring_when_offer_call",
            "defaultPlayRingWhenOfferCall",
            bool,
            False,
            True,
            False,
        ),
        E(
            "uniform_call_distribution_policy_scope",
            "uniformCallDistributionPolicyScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_handling_sampling_period_minutes",
            "callHandlingSamplingPeriodMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "call_handling_minimum_sampling_size",
            "callHandlingMinimumSamplingSize",
            int,
            False,
            True,
            False,
        ),
        E(
            "play_tone_to_agent_for_emergency_call",
            "playToneToAgentForEmergencyCall",
            bool,
            False,
            True,
            False,
        ),
        E(
            "emergency_call_clid_prefix",
            "emergencyCallCLIDPrefix",
            str,
            False,
            True,
            False,
        ),
        E(
            "threshold_crossing_notification_email_guard_timer_seconds",
            "thresholdCrossingNotificationEmailGuardTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "allow_agent_device_initiated_forward",
            "allowAgentDeviceInitiatedForward",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* defaultFromAddress
    default_from_address = Field(
        type=str,
        required=True,
    )
    #: int: *Required* statisticsSamplingPeriodMinutes
    statistics_sampling_period_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* defaultEnableGuardTimer
    default_enable_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* defaultGuardTimerSeconds
    default_guard_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* forceAgentUnavailableOnDNDActivation
    force_agent_unavailable_on_dnd_activation = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forceAgentUnavailableOnPersonalCalls
    force_agent_unavailable_on_personal_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forceAgentUnavailableOnBouncedCallLimit
    force_agent_unavailable_on_bounced_call_limit = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberConsecutiveBouncedCallsToForceAgentUnavailable
    number_consecutive_bounced_calls_to_force_agent_unavailable = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* forceAgentUnavailableOnNotReachable
    force_agent_unavailable_on_not_reachable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* defaultPlayRingWhenOfferCall
    default_play_ring_when_offer_call = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* uniformCallDistributionPolicyScope
    uniform_call_distribution_policy_scope = Field(
        type=str,
        required=True,
    )
    #: int: *Required* callHandlingSamplingPeriodMinutes
    call_handling_sampling_period_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* callHandlingMinimumSamplingSize
    call_handling_minimum_sampling_size = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* playToneToAgentForEmergencyCall
    play_tone_to_agent_for_emergency_call = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* emergencyCallCLIDPrefix
    emergency_call_clid_prefix = Field(
        type=str,
        required=True,
    )
    #: int: *Required* thresholdCrossingNotificationEmailGuardTimerSeconds
    threshold_crossing_notification_email_guard_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* allowAgentDeviceInitiatedForward
    allow_agent_device_initiated_forward = Field(
        type=bool,
        required=True,
    )


class SystemCallCenterReportingServerGetListResponse(OCIResponse):
    """
    Response to ``SystemCallCenterReportingServerGetListRequest()``.  The table columns are:
    "Name", "URL", "Net Address", and "Description".
    """

    _ELEMENTS = (
        E(
            "reporting_server_table",
            "reportingServerTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* reportingServerTable  *Tabular*
    reporting_server_table = Field(
        type=list,
        required=True,
    )


class SystemCallMeNowGetResponse(OCIResponse):
    """
    Response to ``SystemCallMeNowGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "passcode_length",
            "passcodeLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "passcode_timeout_seconds",
            "passcodeTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* passcodeLength
    passcode_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* passcodeTimeoutSeconds
    passcode_timeout_seconds = Field(
        type=int,
        required=True,
    )


class SystemCallNotifyGetResponse(OCIResponse):
    """
    Response to ``SystemCallNotifyGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "default_from_address",
            "defaultFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_short_subject_line",
            "useShortSubjectLine",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_dn_in_mail_body",
            "useDnInMailBody",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* defaultFromAddress
    default_from_address = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useShortSubjectLine
    use_short_subject_line = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useDnInMailBody
    use_dn_in_mail_body = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingGetPolicyResponse14(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest14()``.
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "max_conference_parties",
            "maxConferenceParties",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: int: *Required* maxConferenceParties
    max_conference_parties = Field(
        type=int,
        required=True,
    )


class SystemCallProcessingGetPolicyResponse14sp1(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest14sp1()``.
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "max_conference_parties",
            "maxConferenceParties",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: int: *Required* maxConferenceParties
    max_conference_parties = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )


class SystemCallProcessingGetPolicyResponse14sp4(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest14sp4()``.
    Replaced By : ``SystemCallProcessingGetPolicyResponse15()``
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_external_calls_via_private_dialing_plan",
            "overrideCLIDRestrictionForExternalCallsViaPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "max_conference_parties",
            "maxConferenceParties",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForExternalCallsViaPrivateDialingPlan
    override_clid_restriction_for_external_calls_via_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: int: *Required* maxConferenceParties
    max_conference_parties = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )


class SystemCallProcessingGetPolicyResponse14sp7(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest14sp7()``.
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_external_calls_via_private_dialing_plan",
            "overrideCLIDRestrictionForExternalCallsViaPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "max_conference_parties",
            "maxConferenceParties",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForExternalCallsViaPrivateDialingPlan
    override_clid_restriction_for_external_calls_via_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: int: *Required* maxConferenceParties
    max_conference_parties = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingGetPolicyResponse15(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest15()``.
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "max_conference_parties",
            "maxConferenceParties",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: int: *Required* maxConferenceParties
    max_conference_parties = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )


class SystemCallProcessingGetPolicyResponse15sp2(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest15sp2()``.
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "max_conference_parties",
            "maxConferenceParties",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: int: *Required* maxConferenceParties
    max_conference_parties = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingGetPolicyResponse16(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest16()``.
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "max_conference_parties",
            "maxConferenceParties",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: int: *Required* maxConferenceParties
    max_conference_parties = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingGetPolicyResponse16sp2(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest16sp2()``.
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "max_conference_parties",
            "maxConferenceParties",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: int: *Required* maxConferenceParties
    max_conference_parties = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingGetPolicyResponse17(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest17()``.
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "max_conference_parties",
            "maxConferenceParties",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: int: *Required* maxConferenceParties
    max_conference_parties = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingGetPolicyResponse17sp3(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest17sp3()``.
    The following elements are only used in AS data mode:
    enableDialableCallerID
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "max_conference_parties",
            "maxConferenceParties",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: int: *Required* maxConferenceParties
    max_conference_parties = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingGetPolicyResponse17sp4(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest17sp4()``.
    The following elements are only used in AS data mode:
    enableDialableCallerID
    allowConfigurableCLIDForRedirectingIdentity
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "max_conference_parties",
            "maxConferenceParties",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: int: *Required* maxConferenceParties
    max_conference_parties = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingGetPolicyResponse18sp1(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest18sp1()``.
    The following elements are only used in AS data mode:
    enableDialableCallerID
    allowConfigurableCLIDForRedirectingIdentity
    enterpriseCallsCLIDPolicy
    enterpriseGroupCallsCLIDPolicy
    serviceProviderGroupCallsCLIDPolicy

    Replaced By ``SystemCallProcessingGetPolicyResponse19sp1()``
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "max_conference_parties",
            "maxConferenceParties",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enterprise_calls_clid_policy",
            "enterpriseCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_group_calls_clid_policy",
            "enterpriseGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: int: *Required* maxConferenceParties
    max_conference_parties = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* enterpriseCallsCLIDPolicy
    enterprise_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseGroupCallsCLIDPolicy
    enterprise_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderGroupCallsCLIDPolicy
    service_provider_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )


class SystemCallProcessingGetPolicyResponse19sp1(OCIResponse):
    """
    Response to ``SystemCallProcessingGetPolicyRequest19sp1()``.
    The following elements are only used in AS data mode:
    enableDialableCallerID
    allowConfigurableCLIDForRedirectingIdentity
    enterpriseCallsCLIDPolicy
    enterpriseGroupCallsCLIDPolicy
    serviceProviderGroupCallsCLIDPolicy
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "max_conference_parties",
            "maxConferenceParties",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enterprise_calls_clid_policy",
            "enterpriseCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_group_calls_clid_policy",
            "enterpriseGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: int: *Required* maxConferenceParties
    max_conference_parties = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* enterpriseCallsCLIDPolicy
    enterprise_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseGroupCallsCLIDPolicy
    enterprise_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderGroupCallsCLIDPolicy
    service_provider_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )


class SystemCallProcessingPolicyProfileAutoAttendantProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileAutoAttendantProfileGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_clid_policy",
            "useCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_department_clid_name_override",
            "allowDepartmentCLIDNameOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enterprise_calls_clid_policy",
            "enterpriseCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_group_calls_clid_policy",
            "enterpriseGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_call_limits_policy",
            "useCallLimitsPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_translation_routing_policy",
            "useTranslationRoutingPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_incoming_clid_policy",
            "useIncomingCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useCLIDPolicy
    use_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowDepartmentCLIDNameOverride
    allow_department_clid_name_override = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* enterpriseCallsCLIDPolicy
    enterprise_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseGroupCallsCLIDPolicy
    enterprise_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderGroupCallsCLIDPolicy
    service_provider_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useCallLimitsPolicy
    use_call_limits_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useTranslationRoutingPolicy
    use_translation_routing_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useIncomingCLIDPolicy
    use_incoming_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingPolicyProfileBroadWorksAnywhereProfileGetResponse(
    OCIResponse,
):
    """
    Response to ``SystemCallProcessingPolicyProfileBroadWorksAnywhereProfileGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_clid_policy",
            "useCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_department_clid_name_override",
            "allowDepartmentCLIDNameOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enterprise_calls_clid_policy",
            "enterpriseCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_group_calls_clid_policy",
            "enterpriseGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_call_limits_policy",
            "useCallLimitsPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_translation_routing_policy",
            "useTranslationRoutingPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_incoming_clid_policy",
            "useIncomingCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useCLIDPolicy
    use_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowDepartmentCLIDNameOverride
    allow_department_clid_name_override = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* enterpriseCallsCLIDPolicy
    enterprise_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseGroupCallsCLIDPolicy
    enterprise_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderGroupCallsCLIDPolicy
    service_provider_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useCallLimitsPolicy
    use_call_limits_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useTranslationRoutingPolicy
    use_translation_routing_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useIncomingCLIDPolicy
    use_incoming_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingPolicyProfileCallCenterProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileCallCenterProfileGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_clid_policy",
            "useCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_department_clid_name_override",
            "allowDepartmentCLIDNameOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enterprise_calls_clid_policy",
            "enterpriseCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_group_calls_clid_policy",
            "enterpriseGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_call_limits_policy",
            "useCallLimitsPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_translation_routing_policy",
            "useTranslationRoutingPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_incoming_clid_policy",
            "useIncomingCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useCLIDPolicy
    use_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowDepartmentCLIDNameOverride
    allow_department_clid_name_override = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* enterpriseCallsCLIDPolicy
    enterprise_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseGroupCallsCLIDPolicy
    enterprise_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderGroupCallsCLIDPolicy
    service_provider_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useCallLimitsPolicy
    use_call_limits_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useTranslationRoutingPolicy
    use_translation_routing_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useIncomingCLIDPolicy
    use_incoming_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingPolicyProfileCollaborateProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileCollaborateProfileGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_clid_policy",
            "useCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_department_clid_name_override",
            "allowDepartmentCLIDNameOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enterprise_calls_clid_policy",
            "enterpriseCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_group_calls_clid_policy",
            "enterpriseGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_call_limits_policy",
            "useCallLimitsPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_translation_routing_policy",
            "useTranslationRoutingPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_incoming_clid_policy",
            "useIncomingCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useCLIDPolicy
    use_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowDepartmentCLIDNameOverride
    allow_department_clid_name_override = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* enterpriseCallsCLIDPolicy
    enterprise_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseGroupCallsCLIDPolicy
    enterprise_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderGroupCallsCLIDPolicy
    service_provider_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useCallLimitsPolicy
    use_call_limits_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useTranslationRoutingPolicy
    use_translation_routing_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useIncomingCLIDPolicy
    use_incoming_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingPolicyProfileFindMeFollowMeProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileFindMeFollowMeProfileGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_clid_policy",
            "useCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_department_clid_name_override",
            "allowDepartmentCLIDNameOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enterprise_calls_clid_policy",
            "enterpriseCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_group_calls_clid_policy",
            "enterpriseGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_call_limits_policy",
            "useCallLimitsPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_translation_routing_policy",
            "useTranslationRoutingPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_incoming_clid_policy",
            "useIncomingCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useCLIDPolicy
    use_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowDepartmentCLIDNameOverride
    allow_department_clid_name_override = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* enterpriseCallsCLIDPolicy
    enterprise_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseGroupCallsCLIDPolicy
    enterprise_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderGroupCallsCLIDPolicy
    service_provider_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useCallLimitsPolicy
    use_call_limits_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useTranslationRoutingPolicy
    use_translation_routing_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useIncomingCLIDPolicy
    use_incoming_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingPolicyProfileFlexibleSeatingHostProfileGetResponse(
    OCIResponse,
):
    """
    Response to ``SystemCallProcessingPolicyProfileFlexibleSeatingHostProfileGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_clid_policy",
            "useCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            False,
            False,
        ),
        E(
            "allow_department_clid_name_override",
            "allowDepartmentCLIDNameOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enterprise_calls_clid_policy",
            "enterpriseCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_group_calls_clid_policy",
            "enterpriseGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_call_limits_policy",
            "useCallLimitsPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_translation_routing_policy",
            "useTranslationRoutingPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useCLIDPolicy
    use_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Optional* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=False,
    )
    #: bool: *Required* allowDepartmentCLIDNameOverride
    allow_department_clid_name_override = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* enterpriseCallsCLIDPolicy
    enterprise_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseGroupCallsCLIDPolicy
    enterprise_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderGroupCallsCLIDPolicy
    service_provider_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useCallLimitsPolicy
    use_call_limits_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useTranslationRoutingPolicy
    use_translation_routing_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "network_class_of_service_table",
            "networkClassOfServiceTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* networkClassOfServiceTable  *Tabular*
    network_class_of_service_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "call_processing_policy_profiles_table",
            "callProcessingPolicyProfilesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* callProcessingPolicyProfilesTable  *Tabular*
    call_processing_policy_profiles_table = Field(
        type=list,
        required=True,
    )


class SystemCallProcessingPolicyProfileGetResponse(OCIResponse):
    """
    Response to a ``SystemCallProcessingPolicyProfileGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "assigned_subscriber_type",
            "assignedSubscriberType",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* assignedSubscriberType
    assigned_subscriber_type = Field(
        type=str,
        required=False,
    )


class SystemCallProcessingPolicyProfileGetResponse20(OCIResponse):
    """
    Response to a ``SystemCallProcessingPolicyProfileGetRequest20()``.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "assigned_subscriber_type",
            "assignedSubscriberType",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* assignedSubscriberType
    assigned_subscriber_type = Field(
        type=str,
        required=False,
    )


class SystemCallProcessingPolicyProfileGetResponse21(OCIResponse):
    """
    Response to a ``SystemCallProcessingPolicyProfileGetRequest21()``.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "assigned_subscriber_type",
            "assignedSubscriberType",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* assignedSubscriberType
    assigned_subscriber_type = Field(
        type=str,
        required=False,
    )


class SystemCallProcessingPolicyProfileGroupPagingProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileGroupPagingProfileGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_clid_policy",
            "useCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_department_clid_name_override",
            "allowDepartmentCLIDNameOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enterprise_calls_clid_policy",
            "enterpriseCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_group_calls_clid_policy",
            "enterpriseGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_call_limits_policy",
            "useCallLimitsPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_translation_routing_policy",
            "useTranslationRoutingPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useCLIDPolicy
    use_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowDepartmentCLIDNameOverride
    allow_department_clid_name_override = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* enterpriseCallsCLIDPolicy
    enterprise_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseGroupCallsCLIDPolicy
    enterprise_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderGroupCallsCLIDPolicy
    service_provider_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useCallLimitsPolicy
    use_call_limits_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useTranslationRoutingPolicy
    use_translation_routing_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingPolicyProfileHuntGroupProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileHuntGroupProfileGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_clid_policy",
            "useCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_department_clid_name_override",
            "allowDepartmentCLIDNameOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enterprise_calls_clid_policy",
            "enterpriseCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_group_calls_clid_policy",
            "enterpriseGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_call_limits_policy",
            "useCallLimitsPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_translation_routing_policy",
            "useTranslationRoutingPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_incoming_clid_policy",
            "useIncomingCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useCLIDPolicy
    use_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowDepartmentCLIDNameOverride
    allow_department_clid_name_override = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* enterpriseCallsCLIDPolicy
    enterprise_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseGroupCallsCLIDPolicy
    enterprise_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderGroupCallsCLIDPolicy
    service_provider_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useCallLimitsPolicy
    use_call_limits_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useTranslationRoutingPolicy
    use_translation_routing_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useIncomingCLIDPolicy
    use_incoming_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingPolicyProfileInstantGroupCallProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileInstantGroupCallProfileGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_clid_policy",
            "useCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_department_clid_name_override",
            "allowDepartmentCLIDNameOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enterprise_calls_clid_policy",
            "enterpriseCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_group_calls_clid_policy",
            "enterpriseGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_call_limits_policy",
            "useCallLimitsPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_translation_routing_policy",
            "useTranslationRoutingPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useCLIDPolicy
    use_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowDepartmentCLIDNameOverride
    allow_department_clid_name_override = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* enterpriseCallsCLIDPolicy
    enterprise_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseGroupCallsCLIDPolicy
    enterprise_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderGroupCallsCLIDPolicy
    service_provider_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useCallLimitsPolicy
    use_call_limits_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useTranslationRoutingPolicy
    use_translation_routing_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingPolicyProfileMeetMeConferencingProfileGetResponse(
    OCIResponse,
):
    """
    Response to ``SystemCallProcessingPolicyProfileMeetMeConferencingProfileGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_clid_policy",
            "useCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_department_clid_name_override",
            "allowDepartmentCLIDNameOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enterprise_calls_clid_policy",
            "enterpriseCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_group_calls_clid_policy",
            "enterpriseGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_call_limits_policy",
            "useCallLimitsPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_translation_routing_policy",
            "useTranslationRoutingPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_incoming_clid_policy",
            "useIncomingCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useCLIDPolicy
    use_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowDepartmentCLIDNameOverride
    allow_department_clid_name_override = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* enterpriseCallsCLIDPolicy
    enterprise_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseGroupCallsCLIDPolicy
    enterprise_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderGroupCallsCLIDPolicy
    service_provider_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useCallLimitsPolicy
    use_call_limits_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useTranslationRoutingPolicy
    use_translation_routing_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useIncomingCLIDPolicy
    use_incoming_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingPolicyProfileRoutePointProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileRoutePointProfileGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_clid_policy",
            "useCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_department_clid_name_override",
            "allowDepartmentCLIDNameOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enterprise_calls_clid_policy",
            "enterpriseCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_group_calls_clid_policy",
            "enterpriseGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_call_limits_policy",
            "useCallLimitsPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_translation_routing_policy",
            "useTranslationRoutingPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_incoming_clid_policy",
            "useIncomingCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useCLIDPolicy
    use_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowDepartmentCLIDNameOverride
    allow_department_clid_name_override = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* enterpriseCallsCLIDPolicy
    enterprise_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseGroupCallsCLIDPolicy
    enterprise_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderGroupCallsCLIDPolicy
    service_provider_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useCallLimitsPolicy
    use_call_limits_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useTranslationRoutingPolicy
    use_translation_routing_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useIncomingCLIDPolicy
    use_incoming_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingPolicyProfileTrunkGroupPilotProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileTrunkGroupPilotProfileGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_clid_policy",
            "useCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_department_clid_name_override",
            "allowDepartmentCLIDNameOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enterprise_calls_clid_policy",
            "enterpriseCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_group_calls_clid_policy",
            "enterpriseGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_media_policy",
            "useMediaPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_call_limits_policy",
            "useCallLimitsPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_translation_routing_policy",
            "useTranslationRoutingPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_incoming_clid_policy",
            "useIncomingCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useCLIDPolicy
    use_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowDepartmentCLIDNameOverride
    allow_department_clid_name_override = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* enterpriseCallsCLIDPolicy
    enterprise_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseGroupCallsCLIDPolicy
    enterprise_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderGroupCallsCLIDPolicy
    service_provider_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useMediaPolicy
    use_media_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useCallLimitsPolicy
    use_call_limits_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useTranslationRoutingPolicy
    use_translation_routing_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useIncomingCLIDPolicy
    use_incoming_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingPolicyProfileUserProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileUserProfileGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_clid_policy",
            "useCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_department_clid_name_override",
            "allowDepartmentCLIDNameOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enterprise_calls_clid_policy",
            "enterpriseCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_group_calls_clid_policy",
            "enterpriseGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_media_policy",
            "useMediaPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_call_limits_policy",
            "useCallLimitsPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_translation_routing_policy",
            "useTranslationRoutingPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_incoming_clid_policy",
            "useIncomingCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useCLIDPolicy
    use_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowDepartmentCLIDNameOverride
    allow_department_clid_name_override = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* enterpriseCallsCLIDPolicy
    enterprise_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseGroupCallsCLIDPolicy
    enterprise_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderGroupCallsCLIDPolicy
    service_provider_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useMediaPolicy
    use_media_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useCallLimitsPolicy
    use_call_limits_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useTranslationRoutingPolicy
    use_translation_routing_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useIncomingCLIDPolicy
    use_incoming_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingPolicyProfileVoicePortalProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileVoicePortalProfileGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_clid_policy",
            "useCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_department_clid_name_override",
            "allowDepartmentCLIDNameOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enterprise_calls_clid_policy",
            "enterpriseCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_group_calls_clid_policy",
            "enterpriseGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_call_limits_policy",
            "useCallLimitsPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_translation_routing_policy",
            "useTranslationRoutingPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useCLIDPolicy
    use_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowDepartmentCLIDNameOverride
    allow_department_clid_name_override = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* enterpriseCallsCLIDPolicy
    enterprise_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseGroupCallsCLIDPolicy
    enterprise_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderGroupCallsCLIDPolicy
    service_provider_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useCallLimitsPolicy
    use_call_limits_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useTranslationRoutingPolicy
    use_translation_routing_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )


class SystemCallProcessingPolicyProfileVoiceXMLProfileGetResponse(OCIResponse):
    """
    Response to ``SystemCallProcessingPolicyProfileVoiceXMLProfileGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_clid_policy",
            "useCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_department_clid_name_override",
            "allowDepartmentCLIDNameOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enterprise_calls_clid_policy",
            "enterpriseCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_group_calls_clid_policy",
            "enterpriseGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_group_calls_clid_policy",
            "serviceProviderGroupCallsCLIDPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_call_limits_policy",
            "useCallLimitsPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_translation_routing_policy",
            "useTranslationRoutingPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_usage_selection",
            "networkUsageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_extension_dialing",
            "enableEnterpriseExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_group_calling_line_identity_restriction",
            "enforceGroupCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_enterprise_calling_line_identity_restriction",
            "enforceEnterpriseCallingLineIdentityRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_private_dialing_plan",
            "allowEnterpriseGroupCallTypingForPrivateDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_enterprise_group_call_typing_for_public_dialing_plan",
            "allowEnterpriseGroupCallTypingForPublicDialingPlan",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_clid_restriction_for_private_call_category",
            "overrideCLIDRestrictionForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_enterprise_clid_for_private_call_category",
            "useEnterpriseCLIDForPrivateCallCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_incoming_clid_policy",
            "useIncomingCLIDPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useCLIDPolicy
    use_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowDepartmentCLIDNameOverride
    allow_department_clid_name_override = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* enterpriseCallsCLIDPolicy
    enterprise_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseGroupCallsCLIDPolicy
    enterprise_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderGroupCallsCLIDPolicy
    service_provider_group_calls_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useCallLimitsPolicy
    use_call_limits_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useTranslationRoutingPolicy
    use_translation_routing_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* networkUsageSelection
    network_usage_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableEnterpriseExtensionDialing
    enable_enterprise_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceGroupCallingLineIdentityRestriction
    enforce_group_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceEnterpriseCallingLineIdentityRestriction
    enforce_enterprise_calling_line_identity_restriction = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPrivateDialingPlan
    allow_enterprise_group_call_typing_for_private_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowEnterpriseGroupCallTypingForPublicDialingPlan
    allow_enterprise_group_call_typing_for_public_dialing_plan = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideCLIDRestrictionForPrivateCallCategory
    override_clid_restriction_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useEnterpriseCLIDForPrivateCallCategory
    use_enterprise_clid_for_private_call_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useIncomingCLIDPolicy
    use_incoming_clid_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "system_default",
            "systemDefault",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_recording_platform_table",
            "callRecordingPlatformTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Optional* systemDefault
    system_default = Field(
        type=str,
        required=False,
    )
    #: list: *Required* callRecordingPlatformTable  *Tabular*
    call_recording_platform_table = Field(
        type=list,
        required=True,
    )


class SystemCallRecordingGetPlatformUsageResponse(OCIResponse):
    """
    Response to ``SystemCallRecordingGetPlatformUsageRequest()``.
    The response contains a table with columns headings "Service Provider Id", "Group Id".
    """

    _ELEMENTS = (
        E(
            "group_table",
            "groupTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* groupTable  *Tabular*
    group_table = Field(
        type=list,
        required=True,
    )


class SystemCallRecordingGetResponse(OCIResponse):
    """
    Response to ``SystemCallRecordingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "continue_call_after_recording_failure",
            "continueCallAfterRecordingFailure",
            bool,
            False,
            True,
            False,
        ),
        E(
            "refresh_period_seconds",
            "refreshPeriodSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_consecutive_failures",
            "maxConsecutiveFailures",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_response_wait_time_milliseconds",
            "maxResponseWaitTimeMilliseconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "continue_call_after_video_recording_failure",
            "continueCallAfterVideoRecordingFailure",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* continueCallAfterRecordingFailure
    continue_call_after_recording_failure = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* refreshPeriodSeconds
    refresh_period_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxConsecutiveFailures
    max_consecutive_failures = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxResponseWaitTimeMilliseconds
    max_response_wait_time_milliseconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* continueCallAfterVideoRecordingFailure
    continue_call_after_video_recording_failure = Field(
        type=bool,
        required=True,
    )


class SystemCallReturnGetResponse(OCIResponse):
    """
    Response to ``SystemCallReturnGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "two_level_activation",
            "twoLevelActivation",
            bool,
            False,
            True,
            False,
        ),
        E(
            "provide_date",
            "provideDate",
            bool,
            False,
            True,
            False,
        ),
        E(
            "last_unanswered_call_only",
            "lastUnansweredCallOnly",
            bool,
            False,
            True,
            False,
        ),
        E(
            "confirmation_key",
            "confirmationKey",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_restricted_number",
            "allowRestrictedNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "delete_number_after_answered_call_return",
            "deleteNumberAfterAnsweredCallReturn",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* twoLevelActivation
    two_level_activation = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* provideDate
    provide_date = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* lastUnansweredCallOnly
    last_unanswered_call_only = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* confirmationKey
    confirmation_key = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowRestrictedNumber
    allow_restricted_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* deleteNumberAfterAnsweredCallReturn
    delete_number_after_answered_call_return = Field(
        type=bool,
        required=True,
    )


class SystemCallTypeGetListResponse(OCIResponse):
    """
    Response to ``SystemCallTypeGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "call_type",
            "callType",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* callType
    call_type = Field(
        type=str,
        required=True,
    )


class SystemCallTypeGetMappingListResponse(OCIResponse):
    """
    Response to ``SystemCallTypeGetMappingListRequest()``. The table columns are:
    "Country Code", "Digit Map" and "Call Type".
    """

    _ELEMENTS = (
        E(
            "call_type_mapping",
            "callTypeMapping",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* callTypeMapping  *Tabular*
    call_type_mapping = Field(
        type=list,
        required=True,
    )


class SystemCallWaitingGetResponse(OCIResponse):
    """
    Response to ``SystemCallWaitingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "play_distinctive_ringback",
            "playDistinctiveRingback",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* playDistinctiveRingback
    play_distinctive_ringback = Field(
        type=bool,
        required=True,
    )


class SystemCallingNameRetrievalGetResponse14(OCIResponse):
    """
    Response to ``SystemCallingNameRetrievalGetRequest14()``.
    """

    _ELEMENTS = (
        E(
            "query_timer_milli_seconds",
            "queryTimerMilliSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "server_net_address",
            "serverNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "server_port",
            "serverPort",
            int,
            False,
            False,
            False,
        ),
        E(
            "server_transport_protocol",
            "serverTransportProtocol",
            str,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* queryTimerMilliSeconds
    query_timer_milli_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* serverNetAddress
    server_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* serverPort
    server_port = Field(
        type=int,
        required=False,
    )
    #: str: *Required* serverTransportProtocol
    server_transport_protocol = Field(
        type=str,
        required=True,
    )


class SystemCallingNameRetrievalGetResponse16sp1(OCIResponse):
    """
    Response to ``SystemCallingNameRetrievalGetRequest16sp1()``.
    """

    _ELEMENTS = (
        E(
            "trigger_cnam_queries_for_all_network_calls",
            "triggerCNAMQueriesForAllNetworkCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "trigger_cnam_queries_for_group_and_enterprise_calls",
            "triggerCNAMQueriesForGroupAndEnterpriseCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "query_protocol",
            "queryProtocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "query_timeout_milliseconds",
            "queryTimeoutMilliseconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "sip_external_database_net_address",
            "sipExternalDatabaseNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "sip_external_database_port",
            "sipExternalDatabasePort",
            int,
            False,
            False,
            False,
        ),
        E(
            "sip_external_database_transport",
            "sipExternalDatabaseTransport",
            str,
            False,
            True,
            False,
        ),
        E(
            "soap_external_database_net_address",
            "soapExternalDatabaseNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "soap_supports_dnssrv",
            "soapSupportsDNSSRV",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* triggerCNAMQueriesForAllNetworkCalls
    trigger_cnam_queries_for_all_network_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* triggerCNAMQueriesForGroupAndEnterpriseCalls
    trigger_cnam_queries_for_group_and_enterprise_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* queryProtocol
    query_protocol = Field(
        type=str,
        required=True,
    )
    #: int: *Required* queryTimeoutMilliseconds
    query_timeout_milliseconds = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* sipExternalDatabaseNetAddress
    sip_external_database_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* sipExternalDatabasePort
    sip_external_database_port = Field(
        type=int,
        required=False,
    )
    #: str: *Required* sipExternalDatabaseTransport
    sip_external_database_transport = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* soapExternalDatabaseNetAddress
    soap_external_database_net_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* soapSupportsDNSSRV
    soap_supports_dnssrv = Field(
        type=bool,
        required=True,
    )


class SystemCallingNameRetrievalGetResponse17sp4(OCIResponse):
    """
    Response to ``SystemCallingNameRetrievalGetRequest17sp4()``.
    """

    _ELEMENTS = (
        E(
            "trigger_cnam_queries_for_all_network_calls",
            "triggerCNAMQueriesForAllNetworkCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "trigger_cnam_queries_for_group_and_enterprise_calls",
            "triggerCNAMQueriesForGroupAndEnterpriseCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "query_protocol",
            "queryProtocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "query_timeout_milliseconds",
            "queryTimeoutMilliseconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "sip_external_database_net_address",
            "sipExternalDatabaseNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "sip_external_database_port",
            "sipExternalDatabasePort",
            int,
            False,
            False,
            False,
        ),
        E(
            "sip_external_database_transport",
            "sipExternalDatabaseTransport",
            str,
            False,
            True,
            False,
        ),
        E(
            "soap_external_database_net_address",
            "soapExternalDatabaseNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "soap_supports_dnssrv",
            "soapSupportsDNSSRV",
            bool,
            False,
            True,
            False,
        ),
        E(
            "calling_name_source",
            "callingNameSource",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* triggerCNAMQueriesForAllNetworkCalls
    trigger_cnam_queries_for_all_network_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* triggerCNAMQueriesForGroupAndEnterpriseCalls
    trigger_cnam_queries_for_group_and_enterprise_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* queryProtocol
    query_protocol = Field(
        type=str,
        required=True,
    )
    #: int: *Required* queryTimeoutMilliseconds
    query_timeout_milliseconds = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* sipExternalDatabaseNetAddress
    sip_external_database_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* sipExternalDatabasePort
    sip_external_database_port = Field(
        type=int,
        required=False,
    )
    #: str: *Required* sipExternalDatabaseTransport
    sip_external_database_transport = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* soapExternalDatabaseNetAddress
    soap_external_database_net_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* soapSupportsDNSSRV
    soap_supports_dnssrv = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* callingNameSource
    calling_name_source = Field(
        type=str,
        required=True,
    )


class SystemCallingNameRetrievalGetResponse20(OCIResponse):
    """
    Response to ``SystemCallingNameRetrievalGetRequest20()``.
    """

    _ELEMENTS = (
        E(
            "trigger_cnam_queries_for_all_network_calls",
            "triggerCNAMQueriesForAllNetworkCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "trigger_cnam_queries_for_group_and_enterprise_calls",
            "triggerCNAMQueriesForGroupAndEnterpriseCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "query_protocol",
            "queryProtocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "query_timeout_milliseconds",
            "queryTimeoutMilliseconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "sip_external_database_net_address",
            "sipExternalDatabaseNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "sip_external_database_port",
            "sipExternalDatabasePort",
            int,
            False,
            False,
            False,
        ),
        E(
            "sip_external_database_transport",
            "sipExternalDatabaseTransport",
            str,
            False,
            True,
            False,
        ),
        E(
            "soap_external_database_net_address",
            "soapExternalDatabaseNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_name_source",
            "callingNameSource",
            str,
            False,
            True,
            False,
        ),
        E(
            "route_advance_timer",
            "routeAdvanceTimer",
            int,
            False,
            True,
            False,
        ),
        E(
            "retry_failed_cnam_server_interval",
            "retryFailedCNAMServerInterval",
            int,
            False,
            True,
            False,
        ),
        E(
            "ignore_restricted_presentation_indicator",
            "ignoreRestrictedPresentationIndicator",
            bool,
            False,
            True,
            False,
        ),
        E(
            "supports_dnssrv",
            "supportsDNSSRV",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* triggerCNAMQueriesForAllNetworkCalls
    trigger_cnam_queries_for_all_network_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* triggerCNAMQueriesForGroupAndEnterpriseCalls
    trigger_cnam_queries_for_group_and_enterprise_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* queryProtocol
    query_protocol = Field(
        type=str,
        required=True,
    )
    #: int: *Required* queryTimeoutMilliseconds
    query_timeout_milliseconds = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* sipExternalDatabaseNetAddress
    sip_external_database_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* sipExternalDatabasePort
    sip_external_database_port = Field(
        type=int,
        required=False,
    )
    #: str: *Required* sipExternalDatabaseTransport
    sip_external_database_transport = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* soapExternalDatabaseNetAddress
    soap_external_database_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* callingNameSource
    calling_name_source = Field(
        type=str,
        required=True,
    )
    #: int: *Required* routeAdvanceTimer
    route_advance_timer = Field(
        type=int,
        required=True,
    )
    #: int: *Required* retryFailedCNAMServerInterval
    retry_failed_cnam_server_interval = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* ignoreRestrictedPresentationIndicator
    ignore_restricted_presentation_indicator = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportsDNSSRV
    supports_dnssrv = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "calling_party_category_table",
            "callingPartyCategoryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* callingPartyCategoryTable  *Tabular*
    calling_party_category_table = Field(
        type=list,
        required=True,
    )


class SystemCallingPartyCategoryGetResponse(OCIResponse):
    """
    Response to ``SystemCallingPartyCategoryGetRequest()``.
    Contains information of a Calling Party Category defined in system.
    """

    _ELEMENTS = (
        E(
            "cpc_value",
            "cpcValue",
            str,
            False,
            False,
            False,
        ),
        E(
            "isup_oli_value",
            "isupOliValue",
            int,
            False,
            False,
            False,
        ),
        E(
            "gtd_oli_value",
            "gtdOliValue",
            str,
            False,
            False,
            False,
        ),
        E(
            "user_category",
            "userCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pay_phone",
            "payPhone",
            bool,
            False,
            True,
            False,
        ),
        E(
            "operator",
            "operator",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default",
            "default",
            bool,
            False,
            True,
            False,
        ),
        E(
            "collect_call",
            "collectCall",
            bool,
            False,
            True,
            False,
        ),
        E(
            "web_display_key",
            "webDisplayKey",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* cpcValue
    cpc_value = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* isupOliValue
    isup_oli_value = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* gtdOliValue
    gtd_oli_value = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* userCategory
    user_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* payPhone
    pay_phone = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* operator
    operator = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* default
    default = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* collectCall
    collect_call = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* webDisplayKey
    web_display_key = Field(
        type=str,
        required=False,
    )


class SystemClassmarkGetListResponse(OCIResponse):
    """
    Response to ``SystemClassmarkGetListRequest()``.
    Contains a table of with the column headings: "Class Mark", "Value" and "Web Display Key".
    """

    _ELEMENTS = (
        E(
            "classmark_table",
            "classmarkTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* classmarkTable  *Tabular*
    classmark_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "classmark_user_table",
            "classmarkUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* classmarkUserTable  *Tabular*
    classmark_user_table = Field(
        type=list,
        required=True,
    )


class SystemClientSessionParametersGetResponse(OCIResponse):
    """
    Response to ``SystemClientSessionParametersGetRequest()``.
    Contains a list of system Client Session (web and CLI) parameters.
    """

    _ELEMENTS = (
        E(
            "enable_inactivity_timeout",
            "enableInactivityTimeout",
            bool,
            False,
            True,
            False,
        ),
        E(
            "inactivity_timeout_minutes",
            "inactivityTimeoutMinutes",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableInactivityTimeout
    enable_inactivity_timeout = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* inactivityTimeoutMinutes
    inactivity_timeout_minutes = Field(
        type=int,
        required=True,
    )


class SystemCodecGetListResponse(OCIResponse):
    """
    Response to ``SystemCodecGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "codec",
            "codec",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* codec
    codec = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "alternate_call_indicator_table",
            "alternateCallIndicatorTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* alternateCallIndicatorTable  *Tabular*
    alternate_call_indicator_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "call_type_table",
            "callTypeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* callTypeTable  *Tabular*
    call_type_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


class SystemCommunicationBarringCriteriaGetResponse(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringCriteriaGetRequest()``.
    The response contains the Communication Barring Criteria information.

    Replaced By ``SystemCommunicationBarringCriteriaGetResponse17()``
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_call_type",
            "matchCallType",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_alternate_call_indicator",
            "matchAlternateCallIndicator",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_public_network",
            "matchPublicNetwork",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_private_network",
            "matchPrivateNetwork",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_local_category",
            "matchLocalCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_national_category",
            "matchNationalCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_interlata_category",
            "matchInterlataCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_intralata_category",
            "matchIntralataCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_international_category",
            "matchInternationalCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_private_category",
            "matchPrivateCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_emergency_category",
            "matchEmergencyCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_other_category",
            "matchOtherCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_inter_network",
            "matchInterNetwork",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_inter_hosting_ne",
            "matchInterHostingNE",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_inter_as",
            "matchInterAS",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_intra_as",
            "matchIntraAS",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_charge_calls",
            "matchChargeCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_no_charge_calls",
            "matchNoChargeCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_group_calls",
            "matchGroupCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_enterprise_calls",
            "matchEnterpriseCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_network_calls",
            "matchNetworkCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_network_url_calls",
            "matchNetworkURLCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_repair_calls",
            "matchRepairCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_emergency_calls",
            "matchEmergencyCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_internal_calls",
            "matchInternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "time_schedule",
            "timeSchedule",
            str,
            False,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* matchCallType
    match_call_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* matchAlternateCallIndicator
    match_alternate_call_indicator = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* matchPublicNetwork
    match_public_network = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchPrivateNetwork
    match_private_network = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchLocalCategory
    match_local_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchNationalCategory
    match_national_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInterlataCategory
    match_interlata_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchIntralataCategory
    match_intralata_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInternationalCategory
    match_international_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchPrivateCategory
    match_private_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchEmergencyCategory
    match_emergency_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchOtherCategory
    match_other_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInterNetwork
    match_inter_network = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInterHostingNE
    match_inter_hosting_ne = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInterAS
    match_inter_as = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchIntraAS
    match_intra_as = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchChargeCalls
    match_charge_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchNoChargeCalls
    match_no_charge_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchGroupCalls
    match_group_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchEnterpriseCalls
    match_enterprise_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchNetworkCalls
    match_network_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchNetworkURLCalls
    match_network_url_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchRepairCalls
    match_repair_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchEmergencyCalls
    match_emergency_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInternalCalls
    match_internal_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* timeSchedule
    time_schedule = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=str,
        required=False,
    )


class SystemCommunicationBarringCriteriaGetResponse17(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringCriteriaGetRequest17()``.
    The response contains the Communication Barring Criteria information.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_call_type",
            "matchCallType",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_alternate_call_indicator",
            "matchAlternateCallIndicator",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_virtual_on_net_call_type",
            "matchVirtualOnNetCallType",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_public_network",
            "matchPublicNetwork",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_private_network",
            "matchPrivateNetwork",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_local_category",
            "matchLocalCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_national_category",
            "matchNationalCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_interlata_category",
            "matchInterlataCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_intralata_category",
            "matchIntralataCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_international_category",
            "matchInternationalCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_private_category",
            "matchPrivateCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_emergency_category",
            "matchEmergencyCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_other_category",
            "matchOtherCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_inter_network",
            "matchInterNetwork",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_inter_hosting_ne",
            "matchInterHostingNE",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_inter_as",
            "matchInterAS",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_intra_as",
            "matchIntraAS",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_charge_calls",
            "matchChargeCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_no_charge_calls",
            "matchNoChargeCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_group_calls",
            "matchGroupCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_enterprise_calls",
            "matchEnterpriseCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_network_calls",
            "matchNetworkCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_network_url_calls",
            "matchNetworkURLCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_repair_calls",
            "matchRepairCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_emergency_calls",
            "matchEmergencyCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_internal_calls",
            "matchInternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_location",
            "matchLocation",
            str,
            False,
            True,
            False,
        ),
        E(
            "match_roaming",
            "matchRoaming",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_schedule",
            "timeSchedule",
            str,
            False,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* matchCallType
    match_call_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* matchAlternateCallIndicator
    match_alternate_call_indicator = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* matchVirtualOnNetCallType
    match_virtual_on_net_call_type = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* matchPublicNetwork
    match_public_network = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchPrivateNetwork
    match_private_network = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchLocalCategory
    match_local_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchNationalCategory
    match_national_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInterlataCategory
    match_interlata_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchIntralataCategory
    match_intralata_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInternationalCategory
    match_international_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchPrivateCategory
    match_private_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchEmergencyCategory
    match_emergency_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchOtherCategory
    match_other_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInterNetwork
    match_inter_network = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInterHostingNE
    match_inter_hosting_ne = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInterAS
    match_inter_as = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchIntraAS
    match_intra_as = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchChargeCalls
    match_charge_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchNoChargeCalls
    match_no_charge_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchGroupCalls
    match_group_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchEnterpriseCalls
    match_enterprise_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchNetworkCalls
    match_network_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchNetworkURLCalls
    match_network_url_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchRepairCalls
    match_repair_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchEmergencyCalls
    match_emergency_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInternalCalls
    match_internal_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* matchLocation
    match_location = Field(
        type=str,
        required=True,
    )
    #: str: *Required* matchRoaming
    match_roaming = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* timeSchedule
    time_schedule = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=str,
        required=False,
    )


class SystemCommunicationBarringCriteriaGetResponse19sp1(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringCriteriaGetRequest19sp1()``.
    The response contains the Communication Barring Criteria information.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_call_type",
            "matchCallType",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_alternate_call_indicator",
            "matchAlternateCallIndicator",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_virtual_on_net_call_type",
            "matchVirtualOnNetCallType",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_public_network",
            "matchPublicNetwork",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_private_network",
            "matchPrivateNetwork",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_local_category",
            "matchLocalCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_national_category",
            "matchNationalCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_interlata_category",
            "matchInterlataCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_intralata_category",
            "matchIntralataCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_international_category",
            "matchInternationalCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_private_category",
            "matchPrivateCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_emergency_category",
            "matchEmergencyCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_other_category",
            "matchOtherCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_inter_network",
            "matchInterNetwork",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_inter_hosting_ne",
            "matchInterHostingNE",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_inter_as",
            "matchInterAS",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_intra_as",
            "matchIntraAS",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_charge_calls",
            "matchChargeCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_no_charge_calls",
            "matchNoChargeCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_group_calls",
            "matchGroupCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_enterprise_calls",
            "matchEnterpriseCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_network_calls",
            "matchNetworkCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_network_url_calls",
            "matchNetworkURLCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_repair_calls",
            "matchRepairCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_emergency_calls",
            "matchEmergencyCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_internal_calls",
            "matchInternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_location",
            "matchLocation",
            str,
            False,
            True,
            False,
        ),
        E(
            "match_roaming",
            "matchRoaming",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_schedule",
            "timeSchedule",
            str,
            False,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_number_portability_status",
            "matchNumberPortabilityStatus",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* matchCallType
    match_call_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* matchAlternateCallIndicator
    match_alternate_call_indicator = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* matchVirtualOnNetCallType
    match_virtual_on_net_call_type = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* matchPublicNetwork
    match_public_network = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchPrivateNetwork
    match_private_network = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchLocalCategory
    match_local_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchNationalCategory
    match_national_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInterlataCategory
    match_interlata_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchIntralataCategory
    match_intralata_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInternationalCategory
    match_international_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchPrivateCategory
    match_private_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchEmergencyCategory
    match_emergency_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchOtherCategory
    match_other_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInterNetwork
    match_inter_network = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInterHostingNE
    match_inter_hosting_ne = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInterAS
    match_inter_as = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchIntraAS
    match_intra_as = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchChargeCalls
    match_charge_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchNoChargeCalls
    match_no_charge_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchGroupCalls
    match_group_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchEnterpriseCalls
    match_enterprise_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchNetworkCalls
    match_network_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchNetworkURLCalls
    match_network_url_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchRepairCalls
    match_repair_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchEmergencyCalls
    match_emergency_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInternalCalls
    match_internal_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* matchLocation
    match_location = Field(
        type=str,
        required=True,
    )
    #: str: *Required* matchRoaming
    match_roaming = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* timeSchedule
    time_schedule = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* matchNumberPortabilityStatus
    match_number_portability_status = Field(
        type=str,
        required=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"
    """

    _ELEMENTS = (
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


class SystemCommunicationBarringDigitPatternCriteriaGetPatternListResponse(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringDigitPatternCriteriaGetPatternListRequest()``.
    The response contains the Digit Pattern Criteria information.
    """

    _ELEMENTS = (
        E(
            "match_digit_pattern",
            "matchDigitPattern",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* matchDigitPattern
    match_digit_pattern = Field(
        type=str,
        required=False,
    )


class SystemCommunicationBarringDigitPatternCriteriaGetResponse(OCIResponse):
    """
    The response to a ``SystemCommunicationBarringDigitPatternCriteriaGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "digit_pattern",
            "digitPattern",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* digitPattern
    digit_pattern = Field(
        type=str,
        required=False,
    )


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

    _ELEMENTS = (
        E(
            "direct_transfer_screening",
            "directTransferScreening",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* directTransferScreening
    direct_transfer_screening = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


class SystemCommunicationBarringIncomingCriteriaGetResponse(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringIncomingCriteriaGetRequest()``.
    The response contains the Communication Barring Incoming Criteria information.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "time_schedule",
            "timeSchedule",
            str,
            False,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_number_portability_status",
            "matchNumberPortabilityStatus",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* timeSchedule
    time_schedule = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* matchNumberPortabilityStatus
    match_number_portability_status = Field(
        type=str,
        required=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"
    """

    _ELEMENTS = (
        E(
            "profile_table",
            "profileTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* profileTable  *Tabular*
    profile_table = Field(
        type=list,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "profile_table",
            "profileTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* profileTable  *Tabular*
    profile_table = Field(
        type=list,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "profile_table",
            "profileTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* profileTable  *Tabular*
    profile_table = Field(
        type=list,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "profile_table",
            "profileTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* profileTable  *Tabular*
    profile_table = Field(
        type=list,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "service_provider_table",
            "serviceProviderTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* serviceProviderTable  *Tabular*
    service_provider_table = Field(
        type=list,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "service_provider_table",
            "serviceProviderTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* serviceProviderTable  *Tabular*
    service_provider_table = Field(
        type=list,
        required=True,
    )


class SystemCommunicationBarringUserControlGetResponse(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringUserControlGetRequest()``.
    Contains the settings to whole system for Communication Barring User-Control
    """

    _ELEMENTS = (
        E(
            "enable_lockout",
            "enableLockout",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_number_of_failed_attempts",
            "maxNumberOfFailedAttempts",
            int,
            False,
            True,
            False,
        ),
        E(
            "lockout_minutes",
            "lockoutMinutes",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableLockout
    enable_lockout = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxNumberOfFailedAttempts
    max_number_of_failed_attempts = Field(
        type=int,
        required=True,
    )
    #: int: *Required* lockoutMinutes
    lockout_minutes = Field(
        type=int,
        required=True,
    )


class SystemConfigurableFileSystemGetResponse(OCIResponse):
    """
    Response to ``SystemConfigurableFileSystemGetRequest()``.
    Contains the File System parameters.
    """

    _ELEMENTS = (
        E(
            "media_directory",
            "mediaDirectory",
            str,
            False,
            True,
            False,
        ),
        E(
            "protocol_file",
            "protocolFile",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "protocol_web_dav",
            "protocolWebDAV",
            str,
            True,
            True,
            False,
        ),  # unknown
    )
    #: str: *Required* mediaDirectory
    media_directory = Field(
        type=str,
        required=True,
    )
    #: str: *Required* protocolFile
    protocol_file = Field(
        type=str,
        required=True,
    )
    #: str: *Required* protocolWebDAV
    protocol_web_dav = Field(
        type=str,
        required=True,
    )


class SystemConfigurableTreatmentGetListResponse(OCIResponse):
    """
    Response to a ``SystemConfigurableTreatmentGetListRequest()``. Contains a table
    with one row per treatment.
    The table columns are: "Treatment Id", "Description".
    """

    _ELEMENTS = (
        E(
            "treatment_table",
            "treatmentTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* treatmentTable  *Tabular*
    treatment_table = Field(
        type=list,
        required=True,
    )


class SystemConfigurableTreatmentGetResponse(OCIResponse):
    """
    Response to the ``SystemConfigurableTreatmentGetRequest()``.
    The response contains the treatment configurable information.
    Replaced By ``SystemConfigurableTreatmentGetResponse16()``
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "charge_indicator",
            "chargeIndicator",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_sip_status_code",
            "accessSIPStatusCode",
            int,
            False,
            False,
            False,
        ),
        E(
            "access_sip_status_message",
            "accessSIPStatusMessage",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_sip_status_code",
            "networkSIPStatusCode",
            int,
            False,
            False,
            False,
        ),
        E(
            "network_sip_status_message",
            "networkSIPStatusMessage",
            str,
            False,
            False,
            False,
        ),
        E(
            "q850_cause_value",
            "q850CauseValue",
            int,
            False,
            False,
            False,
        ),
        E(
            "q850_text",
            "q850Text",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_treatment_audio_file",
            "accessTreatmentAudioFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_treatment_video_file",
            "accessTreatmentVideoFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_treatment_audio_file",
            "networkTreatmentAudioFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_treatment_video_file",
            "networkTreatmentVideoFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "cdr_termination_cause",
            "cdrTerminationCause",
            str,
            False,
            False,
            False,
        ),
        E(
            "route_advance",
            "routeAdvance",
            bool,
            False,
            True,
            False,
        ),
        E(
            "internal_release_cause",
            "internalReleaseCause",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_send_reason_header",
            "accessSendReasonHeader",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_send_reason_header",
            "networkSendReasonHeader",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Required* chargeIndicator
    charge_indicator = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* accessSIPStatusCode
    access_sip_status_code = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* accessSIPStatusMessage
    access_sip_status_message = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* networkSIPStatusCode
    network_sip_status_code = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* networkSIPStatusMessage
    network_sip_status_message = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* q850CauseValue
    q850_cause_value = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* q850Text
    q850_text = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* accessTreatmentAudioFile
    access_treatment_audio_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* accessTreatmentVideoFile
    access_treatment_video_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* networkTreatmentAudioFile
    network_treatment_audio_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* networkTreatmentVideoFile
    network_treatment_video_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* cdrTerminationCause
    cdr_termination_cause = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* routeAdvance
    route_advance = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* internalReleaseCause
    internal_release_cause = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* accessSendReasonHeader
    access_send_reason_header = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* networkSendReasonHeader
    network_send_reason_header = Field(
        type=bool,
        required=True,
    )


class SystemConfigurableTreatmentGetResponse16(OCIResponse):
    """
    Response to the ``SystemConfigurableTreatmentGetRequest16()``.
    The response contains the treatment configurable information.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "charge_indicator",
            "chargeIndicator",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_sip_status_code",
            "accessSIPStatusCode",
            int,
            False,
            False,
            False,
        ),
        E(
            "access_sip_status_message",
            "accessSIPStatusMessage",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_sip_status_code",
            "networkSIPStatusCode",
            int,
            False,
            False,
            False,
        ),
        E(
            "network_sip_status_message",
            "networkSIPStatusMessage",
            str,
            False,
            False,
            False,
        ),
        E(
            "q850_cause_value",
            "q850CauseValue",
            int,
            False,
            False,
            False,
        ),
        E(
            "q850_text",
            "q850Text",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_treatment_audio_file",
            "accessTreatmentAudioFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_treatment_video_file",
            "accessTreatmentVideoFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_treatment_audio_file",
            "networkTreatmentAudioFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_treatment_video_file",
            "networkTreatmentVideoFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "cdr_termination_cause",
            "cdrTerminationCause",
            str,
            False,
            False,
            False,
        ),
        E(
            "route_advance",
            "routeAdvance",
            bool,
            False,
            True,
            False,
        ),
        E(
            "internal_release_cause",
            "internalReleaseCause",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_send_reason_header",
            "accessSendReasonHeader",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_send_reason_header",
            "networkSendReasonHeader",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Required* chargeIndicator
    charge_indicator = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* accessSIPStatusCode
    access_sip_status_code = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* accessSIPStatusMessage
    access_sip_status_message = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* networkSIPStatusCode
    network_sip_status_code = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* networkSIPStatusMessage
    network_sip_status_message = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* q850CauseValue
    q850_cause_value = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* q850Text
    q850_text = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* accessTreatmentAudioFile
    access_treatment_audio_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* accessTreatmentVideoFile
    access_treatment_video_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* networkTreatmentAudioFile
    network_treatment_audio_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* networkTreatmentVideoFile
    network_treatment_video_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* cdrTerminationCause
    cdr_termination_cause = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* routeAdvance
    route_advance = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* internalReleaseCause
    internal_release_cause = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* accessSendReasonHeader
    access_send_reason_header = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* networkSendReasonHeader
    network_send_reason_header = Field(
        type=bool,
        required=True,
    )


class SystemConnectedLineIdentificationPresentationGetResponse(OCIResponse):
    """
    Response to ``SystemConnectedLineIdentificationPresentationGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "enforce_user_service_assignment",
            "enforceUserServiceAssignment",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enforceUserServiceAssignment
    enforce_user_service_assignment = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "default_country_code",
            "defaultCountryCode",
            str,
            False,
            True,
            False,
        ),
        E(
            "country_code_table",
            "countryCodeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Required* defaultCountryCode
    default_country_code = Field(
        type=str,
        required=True,
    )
    #: list: *Required* countryCodeTable  *Tabular*
    country_code_table = Field(
        type=list,
        required=True,
    )


class SystemCrInterfaceGetResponse(OCIResponse):
    """
    Response to the ``SystemCrInterfaceGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "cr_audit_enabled",
            "crAuditEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cr_audit_interval_milliseconds",
            "crAuditIntervalMilliseconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "cr_audit_timeout_milliseconds",
            "crAuditTimeoutMilliseconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "cr_connection_enabled",
            "crConnectionEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cr_connection_timeout_milliseconds",
            "crConnectionTimeoutMilliseconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* crAuditEnabled
    cr_audit_enabled = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* crAuditIntervalMilliseconds
    cr_audit_interval_milliseconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* crAuditTimeoutMilliseconds
    cr_audit_timeout_milliseconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* crConnectionEnabled
    cr_connection_enabled = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* crConnectionTimeoutMilliseconds
    cr_connection_timeout_milliseconds = Field(
        type=int,
        required=True,
    )


class SystemCustomerOriginatedTraceGetResponse(OCIResponse):
    """
    Response to ``SystemCustomerOriginatedTraceGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "screen_malicious_callers",
            "screenMaliciousCallers",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* screenMaliciousCallers
    screen_malicious_callers = Field(
        type=bool,
        required=True,
    )


class SystemDTMFTransmissionGetResponse(OCIResponse):
    """
    Response to the ``SystemDTMFTransmissionGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "transmission_method",
            "transmissionMethod",
            str,
            False,
            True,
            False,
        ),
        E(
            "signaling_content_type",
            "signalingContentType",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* transmissionMethod
    transmission_method = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* signalingContentType
    signaling_content_type = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "auto_rebuild_config_table",
            "autoRebuildConfigTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* autoRebuildConfigTable  *Tabular*
    auto_rebuild_config_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "event_table",
            "eventTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* eventTable  *Tabular*
    event_table = Field(
        type=list,
        required=True,
    )


class SystemDeviceManagementGetAccessDeviceCountForDeviceTypeResponse(OCIResponse):
    """
    Response to ``SystemDeviceManagementGetAccessDeviceCountForDeviceTypeRequest()``.
    """

    _ELEMENTS = (
        E(
            "access_device_count",
            "accessDeviceCount",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* accessDeviceCount
    access_device_count = Field(
        type=int,
        required=True,
    )


class SystemDeviceManagementGetEventStatusSummaryCountResponse(OCIResponse):
    """
    Response to ``SystemDeviceManagementGetEventStatusSummaryCountRequest()``.
    The column headings are "Action, "Pending", "Queued Internally", and "Completed"
    """

    _ELEMENTS = (
        E(
            "status_count_table",
            "statusCountTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* statusCountTable  *Tabular*
    status_count_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "tags_table",
            "tagsTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* tagsTable  *Tabular*
    tags_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "tag_set_name",
            "tagSetName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* tagSetName
    tag_set_name = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "lockout_table",
            "lockoutTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* lockoutTable  *Tabular*
    lockout_table = Field(
        type=list,
        required=True,
    )


class SystemDeviceProfileAuthenticationPasswordRulesGetResponse(OCIResponse):
    """
    Response to ``SystemDeviceProfileAuthenticationPasswordRulesGetRequest()``.
    Contains the device profile authentication password rules for the system.
    """

    _ELEMENTS = (
        E(
            "disallow_authentication_name",
            "disallowAuthenticationName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_old_password",
            "disallowOldPassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_old_password",
            "disallowReversedOldPassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_digits",
            "restrictMinDigits",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_digits",
            "minDigits",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_upper_case_letters",
            "restrictMinUpperCaseLetters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_upper_case_letters",
            "minUpperCaseLetters",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_lower_case_letters",
            "restrictMinLowerCaseLetters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_lower_case_letters",
            "minLowerCaseLetters",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_non_alphanumeric_characters",
            "restrictMinNonAlphanumericCharacters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_non_alphanumeric_characters",
            "minNonAlphanumericCharacters",
            int,
            False,
            True,
            False,
        ),
        E(
            "min_length",
            "minLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "send_permanent_lockout_notification",
            "sendPermanentLockoutNotification",
            bool,
            False,
            True,
            False,
        ),
        E(
            "permanent_lockout_notify_email_address",
            "permanentLockoutNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "device_profile_authentication_lockout_type",
            "deviceProfileAuthenticationLockoutType",
            str,
            False,
            True,
            False,
        ),
        E(
            "device_profile_temporary_lockout_threshold",
            "deviceProfileTemporaryLockoutThreshold",
            int,
            False,
            True,
            False,
        ),
        E(
            "device_profile_wait_algorithm",
            "deviceProfileWaitAlgorithm",
            str,
            False,
            True,
            False,
        ),
        E(
            "device_profile_lockout_fixed_minutes",
            "deviceProfileLockoutFixedMinutes",
            str,
            False,
            True,
            False,
        ),
        E(
            "device_profile_permanent_lockout_threshold",
            "deviceProfilePermanentLockoutThreshold",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* disallowAuthenticationName
    disallow_authentication_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowOldPassword
    disallow_old_password = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedOldPassword
    disallow_reversed_old_password = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* restrictMinDigits
    restrict_min_digits = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minDigits
    min_digits = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinUpperCaseLetters
    restrict_min_upper_case_letters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minUpperCaseLetters
    min_upper_case_letters = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinLowerCaseLetters
    restrict_min_lower_case_letters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minLowerCaseLetters
    min_lower_case_letters = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinNonAlphanumericCharacters
    restrict_min_non_alphanumeric_characters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minNonAlphanumericCharacters
    min_non_alphanumeric_characters = Field(
        type=int,
        required=True,
    )
    #: int: *Required* minLength
    min_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* sendPermanentLockoutNotification
    send_permanent_lockout_notification = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* permanentLockoutNotifyEmailAddress
    permanent_lockout_notify_email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* deviceProfileAuthenticationLockoutType
    device_profile_authentication_lockout_type = Field(
        type=str,
        required=True,
    )
    #: int: *Required* deviceProfileTemporaryLockoutThreshold
    device_profile_temporary_lockout_threshold = Field(
        type=int,
        required=True,
    )
    #: str: *Required* deviceProfileWaitAlgorithm
    device_profile_wait_algorithm = Field(
        type=str,
        required=True,
    )
    #: str: *Required* deviceProfileLockoutFixedMinutes
    device_profile_lockout_fixed_minutes = Field(
        type=str,
        required=True,
    )
    #: int: *Required* deviceProfilePermanentLockoutThreshold
    device_profile_permanent_lockout_threshold = Field(
        type=int,
        required=True,
    )


class SystemDeviceTypeExportResponse(OCIResponse):
    """
    Response to ``SystemDeviceTypeExportRequest()``.
    """

    _ELEMENTS = (
        E(
            "file",
            "file",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* file
    file = Field(
        type=str,
        required=True,
    )


class SystemDeviceTypeGetAvailableListResponse(OCIResponse):
    """
    Response to ``SystemDeviceTypeGetAvailableListRequest()``.
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            False,
            False,
        ),
        E(
            "type_info",
            "typeInfo",
            str,
            True,
            False,
            False,
        ),  # unknown
    )
    #: str: *Optional* deviceType
    device_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* typeInfo
    type_info = Field(
        type=str,
        required=False,
    )


class SystemDeviceTypeGetAvailableListResponse14sp1(OCIResponse):
    """
    Response to ``SystemDeviceTypeGetAvailableListRequest14sp1()``.
    Replaced By ``SystemDeviceTypeGetAvailableListResponse14sp3()``
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            False,
            False,
        ),
        E(
            "type_info",
            "typeInfo",
            str,
            True,
            False,
            False,
        ),  # unknown
    )
    #: str: *Optional* deviceType
    device_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* typeInfo
    type_info = Field(
        type=str,
        required=False,
    )


class SystemDeviceTypeGetAvailableListResponse14sp3(OCIResponse):
    """
    Response to ``SystemDeviceTypeGetAvailableListRequest14sp3()``.
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            False,
            False,
        ),
        E(
            "type_info",
            "typeInfo",
            str,
            True,
            False,
            False,
        ),  # unknown
    )
    #: str: *Optional* deviceType
    device_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* typeInfo
    type_info = Field(
        type=str,
        required=False,
    )


class SystemDeviceTypeGetAvailableListResponse19(OCIResponse):
    """
    Response to ``SystemDeviceTypeGetAvailableListRequest19()``.

    Note: element numberOfPorts is only used by devices types with static line
    ordering enabled
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            False,
            False,
        ),
        E(
            "type_info",
            "typeInfo",
            str,
            True,
            False,
            False,
        ),  # unknown
    )
    #: str: *Optional* deviceType
    device_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* typeInfo
    type_info = Field(
        type=str,
        required=False,
    )


class SystemDialPlanPolicyGetAccessCodeListResponse(OCIResponse):
    """
    Response to ``SystemDialPlanPolicyGetAccessCodeListRequest()``.
    Contains a table with column headings: "Access Code", "Enable Secondary Dial
    Tone", "Description"
    """

    _ELEMENTS = (
        E(
            "access_code_table",
            "accessCodeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* accessCodeTable  *Tabular*
    access_code_table = Field(
        type=list,
        required=True,
    )


class SystemDialPlanPolicyGetAccessCodeResponse(OCIResponse):
    """
    Response to ``SystemDialPlanPolicyGetAccessCodeRequest()``
    """

    _ELEMENTS = (
        E(
            "include_code_for_network_translations_and_routing",
            "includeCodeForNetworkTranslationsAndRouting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_code_for_screening_services",
            "includeCodeForScreeningServices",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_secondary_dial_tone",
            "enableSecondaryDialTone",
            bool,
            False,
            True,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* includeCodeForNetworkTranslationsAndRouting
    include_code_for_network_translations_and_routing = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeCodeForScreeningServices
    include_code_for_screening_services = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableSecondaryDialTone
    enable_secondary_dial_tone = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )


class SystemDialPlanPolicyGetResponse(OCIResponse):
    """
    Response to ``SystemDialPlanPolicyGetRequest()``

    Replaced By ``SystemDialPlanPolicyGetResponse17()``
    """

    _ELEMENTS = (
        E(
            "requires_access_code_for_public_calls",
            "requiresAccessCodeForPublicCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_e164_public_calls",
            "allowE164PublicCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "public_digit_map",
            "publicDigitMap",
            str,
            False,
            True,
            False,
        ),
        E(
            "private_digit_map",
            "privateDigitMap",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* requiresAccessCodeForPublicCalls
    requires_access_code_for_public_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowE164PublicCalls
    allow_e164_public_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* publicDigitMap
    public_digit_map = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* privateDigitMap
    private_digit_map = Field(
        type=str,
        required=False,
    )


class SystemDialPlanPolicyGetResponse17(OCIResponse):
    """
    Response to ``SystemDialPlanPolicyGetRequest17()``
    """

    _ELEMENTS = (
        E(
            "requires_access_code_for_public_calls",
            "requiresAccessCodeForPublicCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_e164_public_calls",
            "allowE164PublicCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prefer_e164_number_format_for_callback_services",
            "preferE164NumberFormatForCallbackServices",
            bool,
            False,
            True,
            False,
        ),
        E(
            "public_digit_map",
            "publicDigitMap",
            str,
            False,
            True,
            False,
        ),
        E(
            "private_digit_map",
            "privateDigitMap",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* requiresAccessCodeForPublicCalls
    requires_access_code_for_public_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowE164PublicCalls
    allow_e164_public_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* preferE164NumberFormatForCallbackServices
    prefer_e164_number_format_for_callback_services = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* publicDigitMap
    public_digit_map = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* privateDigitMap
    private_digit_map = Field(
        type=str,
        required=False,
    )


class SystemDialableCallerIDCriteriaGetResponse(OCIResponse):
    """
    Response to the ``SystemDialableCallerIDCriteriaGetRequest()``.
    The response contains the Dialable Caller ID Criteria information.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "prefix_digits",
            "prefixDigits",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_call_type",
            "matchCallType",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_alternate_call_indicator",
            "matchAlternateCallIndicator",
            str,
            False,
            False,
            False,
        ),
        E(
            "match_local_category",
            "matchLocalCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_national_category",
            "matchNationalCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_interlata_category",
            "matchInterlataCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_intralata_category",
            "matchIntralataCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_international_category",
            "matchInternationalCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_private_category",
            "matchPrivateCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_emergency_category",
            "matchEmergencyCategory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "match_other_category",
            "matchOtherCategory",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* prefixDigits
    prefix_digits = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* matchCallType
    match_call_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* matchAlternateCallIndicator
    match_alternate_call_indicator = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* matchLocalCategory
    match_local_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchNationalCategory
    match_national_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInterlataCategory
    match_interlata_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchIntralataCategory
    match_intralata_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchInternationalCategory
    match_international_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchPrivateCategory
    match_private_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchEmergencyCategory
    match_emergency_category = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* matchOtherCategory
    match_other_category = Field(
        type=bool,
        required=True,
    )


class SystemDialableCallerIDGetResponse(OCIResponse):
    """
    Response to the ``SystemDialableCallerIDGetRequest()``.
    The criteria table?s column headings are ?Active?, "Name", "Description", ?Prefix
    Digits?, and ?Priority?.
    """

    _ELEMENTS = (
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


class SystemDigitCollectionGetResponse13mp4(OCIResponse):
    """
    Response to ``SystemDigitCollectionGetRequest13mp4()``.
    """

    _ELEMENTS = (
        E(
            "access_code",
            "accessCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "public_digit_map",
            "publicDigitMap",
            str,
            False,
            True,
            False,
        ),
        E(
            "private_digit_map",
            "privateDigitMap",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* accessCode
    access_code = Field(
        type=str,
        required=False,
    )
    #: str: *Required* publicDigitMap
    public_digit_map = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* privateDigitMap
    private_digit_map = Field(
        type=str,
        required=False,
    )


class SystemDnGetSummaryListResponse(OCIResponse):
    """
    Response to ``SystemDnGetSummaryListRequest()``.
    The column headings are "Phone Numbers, "Service Provider Id" and "Is Enterprise"
    """

    _ELEMENTS = (
        E(
            "dn_summary_table",
            "dnSummaryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* dnSummaryTable  *Tabular*
    dn_summary_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "dn_utilization_table",
            "dnUtilizationTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* dnUtilizationTable  *Tabular*
    dn_utilization_table = Field(
        type=list,
        required=True,
    )


class SystemDnGetUtilizationResponse(OCIResponse):
    """
    Response to ``SystemDnGetUtilizationRequest()``.
    Replaced By ``SystemDnGetUtilizationResponse14sp3()``
    """

    _ELEMENTS = (
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_id",
            "groupId",
            str,
            False,
            False,
            False,
        ),
        E(
            "user_id",
            "userId",
            str,
            False,
            False,
            False,
        ),
        E(
            "user_type",
            "userType",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_group_calling_line_id",
            "isGroupCallingLineId",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* groupId
    group_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* userId
    user_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* userType
    user_type = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isGroupCallingLineId
    is_group_calling_line_id = Field(
        type=bool,
        required=True,
    )


class SystemDnGetUtilizationResponse14sp3(OCIResponse):
    """
    Response to ``SystemDnGetUtilizationRequest14sp3()``.
    The isActivated element is only included when the DN is
    assigned to a user.
    """

    _ELEMENTS = (
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_id",
            "groupId",
            str,
            False,
            False,
            False,
        ),
        E(
            "user_id",
            "userId",
            str,
            False,
            False,
            False,
        ),
        E(
            "user_type",
            "userType",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_group_calling_line_id",
            "isGroupCallingLineId",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_activated",
            "isActivated",
            bool,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* groupId
    group_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* userId
    user_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* userType
    user_type = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isGroupCallingLineId
    is_group_calling_line_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Optional* isActivated
    is_activated = Field(
        type=bool,
        required=False,
    )


class SystemDomainGetAssignedServiceProviderListResponse(OCIResponse):
    """
    Response to ``SystemDomainGetAssignedServiceProviderListRequest()``.
    The table columns are: "Service Provider Id", "Service Provider Name" and "Is Enterprise".
    """

    _ELEMENTS = (
        E(
            "service_provider_table",
            "serviceProviderTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* serviceProviderTable  *Tabular*
    service_provider_table = Field(
        type=list,
        required=True,
    )


class SystemDomainGetListResponse(OCIResponse):
    """
    Contains a simple list of all system-level domain names.
    """

    _ELEMENTS = (
        E(
            "system_default_domain",
            "systemDefaultDomain",
            str,
            False,
            True,
            False,
        ),
        E(
            "domain",
            "domain",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* systemDefaultDomain
    system_default_domain = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* domain
    domain = Field(
        type=str,
        required=False,
    )


class SystemDomainParametersGetResponse(OCIResponse):
    """
    Response to ``SystemDomainParametersGetRequest()``.
    Contains the system Domain parameters.
    """

    _ELEMENTS = (
        E(
            "use_alias_for_domain",
            "useAliasForDomain",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_domain",
            "defaultDomain",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useAliasForDomain
    use_alias_for_domain = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* defaultDomain
    default_domain = Field(
        type=str,
        required=True,
    )


class SystemEmergencyZonesGetResponse(OCIResponse):
    """
    Response to ``SystemEmergencyZonesGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "default_from_address",
            "defaultFromAddress",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* defaultFromAddress
    default_from_address = Field(
        type=str,
        required=True,
    )


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’.
    """

    _ELEMENTS = (
        E(
            "endpoint_table",
            "endpointTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* endpointTable  *Tabular*
    endpoint_table = Field(
        type=list,
        required=True,
    )


class SystemEnhancedCallLogsGetResponse(OCIResponse):
    """
    Response to ``SystemEnhancedCallLogsGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_send_enabled",
            "isSendEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "server1_net_address",
            "server1NetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "server1_send_port",
            "server1SendPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "server1_retrieve_port",
            "server1RetrievePort",
            int,
            False,
            True,
            False,
        ),
        E(
            "server2_net_address",
            "server2NetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "server2_send_port",
            "server2SendPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "server2_retrieve_port",
            "server2RetrievePort",
            int,
            False,
            True,
            False,
        ),
        E(
            "shared_secret",
            "sharedSecret",
            str,
            False,
            False,
            False,
        ),
        E(
            "retransmission_delay_milli_seconds",
            "retransmissionDelayMilliSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_transmissions",
            "maxTransmissions",
            int,
            False,
            True,
            False,
        ),
        E(
            "soap_timeout_seconds",
            "soapTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isSendEnabled
    is_send_enabled = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* server1NetAddress
    server1_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Required* server1SendPort
    server1_send_port = Field(
        type=int,
        required=True,
    )
    #: int: *Required* server1RetrievePort
    server1_retrieve_port = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* server2NetAddress
    server2_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Required* server2SendPort
    server2_send_port = Field(
        type=int,
        required=True,
    )
    #: int: *Required* server2RetrievePort
    server2_retrieve_port = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* sharedSecret
    shared_secret = Field(
        type=str,
        required=False,
    )
    #: int: *Required* retransmissionDelayMilliSeconds
    retransmission_delay_milli_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxTransmissions
    max_transmissions = Field(
        type=int,
        required=True,
    )
    #: int: *Required* soapTimeoutSeconds
    soap_timeout_seconds = Field(
        type=int,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "is_send_enabled",
            "isSendEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "server1_net_address",
            "server1NetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "server1_send_port",
            "server1SendPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "server1_retrieve_port",
            "server1RetrievePort",
            int,
            False,
            True,
            False,
        ),
        E(
            "server2_net_address",
            "server2NetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "server2_send_port",
            "server2SendPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "server2_retrieve_port",
            "server2RetrievePort",
            int,
            False,
            True,
            False,
        ),
        E(
            "shared_secret",
            "sharedSecret",
            str,
            False,
            False,
            False,
        ),
        E(
            "retransmission_delay_milli_seconds",
            "retransmissionDelayMilliSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_transmissions",
            "maxTransmissions",
            int,
            False,
            True,
            False,
        ),
        E(
            "soap_timeout_seconds",
            "soapTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_dbs",
            "useDBS",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_non_paged_response_size",
            "maxNonPagedResponseSize",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isSendEnabled
    is_send_enabled = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* server1NetAddress
    server1_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Required* server1SendPort
    server1_send_port = Field(
        type=int,
        required=True,
    )
    #: int: *Required* server1RetrievePort
    server1_retrieve_port = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* server2NetAddress
    server2_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Required* server2SendPort
    server2_send_port = Field(
        type=int,
        required=True,
    )
    #: int: *Required* server2RetrievePort
    server2_retrieve_port = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* sharedSecret
    shared_secret = Field(
        type=str,
        required=False,
    )
    #: int: *Required* retransmissionDelayMilliSeconds
    retransmission_delay_milli_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxTransmissions
    max_transmissions = Field(
        type=int,
        required=True,
    )
    #: int: *Required* soapTimeoutSeconds
    soap_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useDBS
    use_dbs = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxNonPagedResponseSize
    max_non_paged_response_size = Field(
        type=int,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "is_send_enabled",
            "isSendEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "server1_net_address",
            "server1NetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "server1_send_port",
            "server1SendPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "server1_retrieve_port",
            "server1RetrievePort",
            int,
            False,
            True,
            False,
        ),
        E(
            "server2_net_address",
            "server2NetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "server2_send_port",
            "server2SendPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "server2_retrieve_port",
            "server2RetrievePort",
            int,
            False,
            True,
            False,
        ),
        E(
            "shared_secret",
            "sharedSecret",
            str,
            False,
            False,
            False,
        ),
        E(
            "retransmission_delay_milli_seconds",
            "retransmissionDelayMilliSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_transmissions",
            "maxTransmissions",
            int,
            False,
            True,
            False,
        ),
        E(
            "soap_timeout_seconds",
            "soapTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_dbs",
            "useDBS",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_non_paged_response_size",
            "maxNonPagedResponseSize",
            int,
            False,
            True,
            False,
        ),
        E(
            "ecl_query_application_url",
            "eclQueryApplicationURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "ecl_query_data_repository_url",
            "eclQueryDataRepositoryURL",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isSendEnabled
    is_send_enabled = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* server1NetAddress
    server1_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Required* server1SendPort
    server1_send_port = Field(
        type=int,
        required=True,
    )
    #: int: *Required* server1RetrievePort
    server1_retrieve_port = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* server2NetAddress
    server2_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Required* server2SendPort
    server2_send_port = Field(
        type=int,
        required=True,
    )
    #: int: *Required* server2RetrievePort
    server2_retrieve_port = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* sharedSecret
    shared_secret = Field(
        type=str,
        required=False,
    )
    #: int: *Required* retransmissionDelayMilliSeconds
    retransmission_delay_milli_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxTransmissions
    max_transmissions = Field(
        type=int,
        required=True,
    )
    #: int: *Required* soapTimeoutSeconds
    soap_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useDBS
    use_dbs = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxNonPagedResponseSize
    max_non_paged_response_size = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* eclQueryApplicationURL
    ecl_query_application_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* eclQueryDataRepositoryURL
    ecl_query_data_repository_url = Field(
        type=str,
        required=False,
    )


class SystemEnhancedCallLogsSchemaInstanceGetListResponse(OCIResponse):
    """
    Response to ``SystemEnhancedCallLogsSchemaInstanceGetListRequest()``.
    Contains a table with column headings: "Instance Name", "Actual Users", "Potential Users".
    """

    _ELEMENTS = (
        E(
            "schema_instance_usage_table",
            "schemaInstanceUsageTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* schemaInstanceUsageTable  *Tabular*
    schema_instance_usage_table = Field(
        type=list,
        required=True,
    )


class SystemExecutiveGetResponse(OCIResponse):
    """
    Response to ``SystemExecutiveGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "treat_virtual_on_net_calls_as_internal",
            "treatVirtualOnNetCallsAsInternal",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* treatVirtualOnNetCallsAsInternal
    treat_virtual_on_net_calls_as_internal = Field(
        type=bool,
        required=True,
    )


class SystemExpensiveCallNotificationGetResponse(OCIResponse):
    """
    Response to ``SystemExpensiveCallNotificationGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "enable_post_announcement_delay_timer",
            "enablePostAnnouncementDelayTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "post_announcement_delay_seconds",
            "postAnnouncementDelaySeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enablePostAnnouncementDelayTimer
    enable_post_announcement_delay_timer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* postAnnouncementDelaySeconds
    post_announcement_delay_seconds = Field(
        type=int,
        required=True,
    )


class SystemExpensiveCallTypeGetListResponse(OCIResponse):
    """
    Response to ``SystemExpensiveCallTypeGetListRequest()``.
    Replaced By ``SystemExpensiveCallTypeGetListResponse16sp1()``
    """

    _ELEMENTS = (
        E(
            "alternate_call_indicator",
            "alternateCallIndicator",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* alternateCallIndicator
    alternate_call_indicator = Field(
        type=str,
        required=False,
    )


class SystemExpensiveCallTypeGetListResponse16sp1(OCIResponse):
    """
    Response to ``SystemExpensiveCallTypeGetListRequest16sp1()``.
    The column headings are:
    "Alternate Call Indicator", "Treatment Audio File".
    """

    _ELEMENTS = (
        E(
            "alternate_call_indicator_table",
            "alternateCallIndicatorTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* alternateCallIndicatorTable  *Tabular*
    alternate_call_indicator_table = Field(
        type=list,
        required=True,
    )


class SystemExtensionLengthGetResponse(OCIResponse):
    """
    Response to ``SystemExtensionLengthGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "min_extension_length",
            "minExtensionLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_extension_length",
            "maxExtensionLength",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* minExtensionLength
    min_extension_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxExtensionLength
    max_extension_length = Field(
        type=int,
        required=True,
    )


class SystemExternalAuthenticationGetACLListResponse(OCIResponse):
    """
    Response to ``SystemExternalAuthenticationGetACLListRequest()``. The table columns are:
    "Net Address" and "Description".
    """

    _ELEMENTS = (
        E(
            "acl_table",
            "aclTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* aclTable  *Tabular*
    acl_table = Field(
        type=list,
        required=True,
    )


class SystemExternalEmergencyRoutingParametersGetResponse13mp13(OCIResponse):
    """
    Response to ``SystemExternalEmergencyRoutingParametersGetRequest13mp13()``.
    Contains a list of system External Emergency Routing parameters.
    """

    _ELEMENTS = (
        E(
            "service_uri",
            "serviceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "default_emergency_number",
            "defaultEmergencyNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "supports_dnssrv",
            "supportsDNSSRV",
            bool,
            False,
            True,
            False,
        ),
        E(
            "connection_timeout_seconds",
            "connectionTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* serviceURI
    service_uri = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* defaultEmergencyNumber
    default_emergency_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportsDNSSRV
    supports_dnssrv = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* connectionTimeoutSeconds
    connection_timeout_seconds = Field(
        type=int,
        required=True,
    )


class SystemFileGetContentResponse(OCIResponse):
    """
    Response to a ``SystemFileGetContentRequest()``. The fileContent length returned
    is limited to 128KBytes.
    """

    _ELEMENTS = (
        E(
            "file_content",
            "fileContent",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* fileContent
    file_content = Field(
        type=str,
        required=True,
    )


class SystemFileRepositoryDeviceGetListResponse(OCIResponse):
    """
    Response to ``SystemFileRepositoryDeviceGetListRequest()``.
    Contains a table with column headings : "Name","Protocol", "Root Directory" in a
    row for each file repository.
    """

    _ELEMENTS = (
        E(
            "file_repository_table",
            "fileRepositoryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* fileRepositoryTable  *Tabular*
    file_repository_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "file_repository_user_table",
            "fileRepositoryUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* fileRepositoryUserTable  *Tabular*
    file_repository_user_table = Field(
        type=list,
        required=True,
    )


class SystemFileRepositoryDeviceUserGetResponse(OCIResponse):
    """
    Response to ``SystemFileRepositoryDeviceUserGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "allow_put",
            "allowPut",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_delete",
            "allowDelete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_get",
            "allowGet",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* allowPut
    allow_put = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowDelete
    allow_delete = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowGet
    allow_get = Field(
        type=bool,
        required=True,
    )


class SystemGeographicRedundancyPeerSipConnectionMonitoringGetResponse(OCIResponse):
    """
    Response to ``SystemGeographicRedundancyPeerSipConnectionMonitoringGetRequest()``.
    Contains a list of Peer SIP Connection Monitoring system parameters.
    """

    _ELEMENTS = (
        E(
            "enabled",
            "enabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "heartbeat_interval",
            "heartbeatInterval",
            int,
            False,
            True,
            False,
        ),
        E(
            "heartbeat_timeout",
            "heartbeatTimeout",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enabled
    enabled = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* heartbeatInterval
    heartbeat_interval = Field(
        type=int,
        required=True,
    )
    #: int: *Required* heartbeatTimeout
    heartbeat_timeout = Field(
        type=int,
        required=True,
    )


class SystemGeographicRedundancyProxyGetResponse(OCIResponse):
    """
    Response to ``SystemGeographicRedundancyProxyGetRequest()``.
    Contains a list of Geographic Redundancy Proxy system parameters.
    """

    _ELEMENTS = (
        E(
            "enabled",
            "enabled",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enabled
    enabled = Field(
        type=bool,
        required=True,
    )


class SystemGeographicRedundancyUnreachableFromPrimaryGetUserListResponse(OCIResponse):
    """
    Response to ``SystemGeographicRedundancyUnreachableFromPrimaryGetUserListRequest()``.
    The Unreachable From Primary User table column
    headings are: "User ID", "Lineport".
    """

    _ELEMENTS = (
        E(
            "unreachable_from_primary_user_table",
            "unreachableFromPrimaryUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* unreachableFromPrimaryUserTable  *Tabular*
    unreachable_from_primary_user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "registration_table",
            "registrationTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* registrationTable  *Tabular*
    registration_table = Field(
        type=list,
        required=True,
    )


class SystemGroupNightForwardingGetResponse(OCIResponse):
    """
    Response to ``SystemGroupNightForwardingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "night_forward_inter_group_calls_within_enterprise",
            "nightForwardInterGroupCallsWithinEnterprise",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* nightForwardInterGroupCallsWithinEnterprise
    night_forward_inter_group_calls_within_enterprise = Field(
        type=bool,
        required=True,
    )


class SystemHolidayScheduleGetListResponse(OCIResponse):
    """
    Response to the ``SystemHolidayScheduleGetListRequest()``.
    The response contains all the system holiday schedule names.
    """

    _ELEMENTS = (
        E(
            "holiday_schedule_name",
            "holidayScheduleName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* holidayScheduleName
    holiday_schedule_name = Field(
        type=str,
        required=False,
    )


class SystemHomeNetworkGetListResponse(OCIResponse):
    """
    Response to the ``SystemHomeNetworkGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "msc_address",
            "mscAddress",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* mscAddress
    msc_address = Field(
        type=str,
        required=False,
    )


class SystemHuntGroupGetResponse(OCIResponse):
    """
    Response to ``SystemHuntGroupGetRequest()``.
    Replaced By ``SystemHuntGroupGetResponse17()``
    """

    _ELEMENTS = (
        E(
            "anonymous_instead_of_private_clid",
            "anonymousInsteadOfPrivateCLID",
            bool,
            False,
            True,
            False,
        ),
        E(
            "remove_hunt_group_name_from_clid",
            "removeHuntGroupNameFromCLID",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* anonymousInsteadOfPrivateCLID
    anonymous_instead_of_private_clid = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* removeHuntGroupNameFromCLID
    remove_hunt_group_name_from_clid = Field(
        type=bool,
        required=True,
    )


class SystemHuntGroupGetResponse17(OCIResponse):
    """
    Response to ``SystemHuntGroupGetRequest()``.

    Replaced by ``SystemHuntGroupGetResponse21()``.
    """

    _ELEMENTS = (
        E(
            "anonymous_instead_of_private_clid",
            "anonymousInsteadOfPrivateCLID",
            bool,
            False,
            True,
            False,
        ),
        E(
            "remove_hunt_group_name_from_clid",
            "removeHuntGroupNameFromCLID",
            bool,
            False,
            True,
            False,
        ),
        E(
            "uniform_call_distribution_policy_scope",
            "uniformCallDistributionPolicyScope",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* anonymousInsteadOfPrivateCLID
    anonymous_instead_of_private_clid = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* removeHuntGroupNameFromCLID
    remove_hunt_group_name_from_clid = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* uniformCallDistributionPolicyScope
    uniform_call_distribution_policy_scope = Field(
        type=str,
        required=True,
    )


class SystemHuntGroupGetResponse21(OCIResponse):
    """
    Response to ``SystemHuntGroupGetRequest21()``.
    """

    _ELEMENTS = (
        E(
            "remove_hunt_group_name_from_clid",
            "removeHuntGroupNameFromCLID",
            bool,
            False,
            True,
            False,
        ),
        E(
            "uniform_call_distribution_policy_scope",
            "uniformCallDistributionPolicyScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_agent_device_initiated_forward",
            "allowAgentDeviceInitiatedForward",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* removeHuntGroupNameFromCLID
    remove_hunt_group_name_from_clid = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* uniformCallDistributionPolicyScope
    uniform_call_distribution_policy_scope = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAgentDeviceInitiatedForward
    allow_agent_device_initiated_forward = Field(
        type=bool,
        required=True,
    )


class SystemInCallServiceActivationGetResponse(OCIResponse):
    """
    Response to ``SystemInCallServiceActivationGetRequest()``.

    Replaced By ``SystemInCallServiceActivationGetResponse17()``
    """

    _ELEMENTS = (
        E(
            "default_activation_digits",
            "defaultActivationDigits",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* defaultActivationDigits
    default_activation_digits = Field(
        type=str,
        required=True,
    )


class SystemInCallServiceActivationGetResponse17(OCIResponse):
    """
    Response to ``SystemInCallServiceActivationGetRequest17()``.
    """

    _ELEMENTS = (
        E(
            "default_flash_activation_digits",
            "defaultFlashActivationDigits",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_call_transfer_activation_digits",
            "defaultCallTransferActivationDigits",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* defaultFlashActivationDigits
    default_flash_activation_digits = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultCallTransferActivationDigits
    default_call_transfer_activation_digits = Field(
        type=str,
        required=True,
    )


class SystemIntegratedIMPGetResponse(OCIResponse):
    """
    Response to the ``SystemIntegratedIMPGetRequest()``.
    The response contains the system Integrated IMP service attributes.

    Replaced by ``SystemIntegratedIMPGetResponse19()``.
    """

    _ELEMENTS = (
        E(
            "service_domain",
            "serviceDomain",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_port",
            "servicePort",
            int,
            False,
            False,
            False,
        ),
        E(
            "add_service_provider_in_imp_user_id",
            "addServiceProviderInIMPUserId",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* serviceDomain
    service_domain = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* servicePort
    service_port = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* addServiceProviderInIMPUserId
    add_service_provider_in_imp_user_id = Field(
        type=bool,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "service_domain",
            "serviceDomain",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_port",
            "servicePort",
            int,
            False,
            False,
            False,
        ),
        E(
            "add_service_provider_in_imp_user_id",
            "addServiceProviderInIMPUserId",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bosh_url",
            "boshURL",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* serviceDomain
    service_domain = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* servicePort
    service_port = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* addServiceProviderInIMPUserId
    add_service_provider_in_imp_user_id = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* boshURL
    bosh_url = Field(
        type=str,
        required=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
    """

    _ELEMENTS = (
        E(
            "service_domain",
            "serviceDomain",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_port",
            "servicePort",
            int,
            False,
            False,
            False,
        ),
        E(
            "add_service_provider_in_imp_user_id",
            "addServiceProviderInIMPUserId",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bosh_url",
            "boshURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_imp_password_retrieval",
            "allowImpPasswordRetrieval",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* serviceDomain
    service_domain = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* servicePort
    service_port = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* addServiceProviderInIMPUserId
    add_service_provider_in_imp_user_id = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* boshURL
    bosh_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowImpPasswordRetrieval
    allow_imp_password_retrieval = Field(
        type=bool,
        required=True,
    )


class SystemIntelligentNetworkServiceControlGetResponse14(OCIResponse):
    """
    Response to ``SystemIntelligentNetworkServiceControlGetRequest14()``.
    """

    _ELEMENTS = (
        E(
            "pre_answer_action_timeout_seconds",
            "preAnswerActionTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "msg_reject_no_voice_mail",
            "msgRejectNoVoiceMail",
            str,
            False,
            True,
            False,
        ),
        E(
            "msg_reject_voice_mail",
            "msgRejectVoiceMail",
            str,
            False,
            True,
            False,
        ),
        E(
            "msg_pre_answer_wait",
            "msgPreAnswerWait",
            str,
            False,
            True,
            False,
        ),
        E(
            "msg_busy",
            "msgBusy",
            str,
            False,
            True,
            False,
        ),
        E(
            "msg_release",
            "msgRelease",
            str,
            False,
            True,
            False,
        ),
        E(
            "msg_no_answer",
            "msgNoAnswer",
            str,
            False,
            True,
            False,
        ),
        E(
            "msg_ocp_reject",
            "msgOCPReject",
            str,
            False,
            True,
            False,
        ),
        E(
            "msg_forward_loop",
            "msgForwardLoop",
            str,
            False,
            True,
            False,
        ),
        E(
            "msg_temporarily_unavailable",
            "msgTemporarilyUnavailable",
            str,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* preAnswerActionTimeoutSeconds
    pre_answer_action_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* msgRejectNoVoiceMail
    msg_reject_no_voice_mail = Field(
        type=str,
        required=True,
    )
    #: str: *Required* msgRejectVoiceMail
    msg_reject_voice_mail = Field(
        type=str,
        required=True,
    )
    #: str: *Required* msgPreAnswerWait
    msg_pre_answer_wait = Field(
        type=str,
        required=True,
    )
    #: str: *Required* msgBusy
    msg_busy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* msgRelease
    msg_release = Field(
        type=str,
        required=True,
    )
    #: str: *Required* msgNoAnswer
    msg_no_answer = Field(
        type=str,
        required=True,
    )
    #: str: *Required* msgOCPReject
    msg_ocp_reject = Field(
        type=str,
        required=True,
    )
    #: str: *Required* msgForwardLoop
    msg_forward_loop = Field(
        type=str,
        required=True,
    )
    #: str: *Required* msgTemporarilyUnavailable
    msg_temporarily_unavailable = Field(
        type=str,
        required=True,
    )


class SystemInterceptUserGetResponse(OCIResponse):
    """
    Response to the ``SystemInterceptUserGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "emergency_and_repair_intercept",
            "emergencyAndRepairIntercept",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* emergencyAndRepairIntercept
    emergency_and_repair_intercept = Field(
        type=bool,
        required=True,
    )


class SystemInventoryReportGetResponse(OCIResponse):
    """
    Response to ``SystemInventoryReportGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "default_from_address",
            "defaultFromAddress",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* defaultFromAddress
    default_from_address = Field(
        type=str,
        required=True,
    )


class SystemLDAPIntegrationGetDirectoryResponse(OCIResponse):
    """
    Response to ``SystemLDAPIntegrationGetDirectoryRequest()``.
    """

    _ELEMENTS = (
        E(
            "server_net_address",
            "serverNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "server_port",
            "serverPort",
            int,
            False,
            False,
            False,
        ),
        E(
            "search_base",
            "searchBase",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_ssl",
            "useSSL",
            bool,
            False,
            True,
            False,
        ),
        E(
            "require_authentication",
            "requireAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "authenticated_dn",
            "authenticatedDN",
            str,
            False,
            False,
            False,
        ),
        E(
            "authenticated_password",
            "authenticatedPassword",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_sort_enabled",
            "isSortEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_paged_result_enabled",
            "isPagedResultEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "search_filter",
            "searchFilter",
            str,
            False,
            False,
            False,
        ),
        E(
            "include_search_attribute_in_search_filter",
            "includeSearchAttributeInSearchFilter",
            bool,
            False,
            True,
            False,
        ),
        E(
            "column1_attribute_name",
            "column1AttributeName",
            str,
            False,
            True,
            False,
        ),
        E(
            "column2_attribute_name",
            "column2AttributeName",
            str,
            False,
            False,
            False,
        ),
        E(
            "column3_attribute_name",
            "column3AttributeName",
            str,
            False,
            False,
            False,
        ),
        E(
            "column4_attribute_name",
            "column4AttributeName",
            str,
            False,
            False,
            False,
        ),
        E(
            "column1_label",
            "column1Label",
            str,
            False,
            False,
            False,
        ),
        E(
            "column2_label",
            "column2Label",
            str,
            False,
            False,
            False,
        ),
        E(
            "column3_label",
            "column3Label",
            str,
            False,
            False,
            False,
        ),
        E(
            "column4_label",
            "column4Label",
            str,
            False,
            False,
            False,
        ),
        E(
            "search_column",
            "searchColumn",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* serverNetAddress
    server_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* serverPort
    server_port = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* searchBase
    search_base = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useSSL
    use_ssl = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requireAuthentication
    require_authentication = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* authenticatedDN
    authenticated_dn = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* authenticatedPassword
    authenticated_password = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isSortEnabled
    is_sort_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isPagedResultEnabled
    is_paged_result_enabled = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* searchFilter
    search_filter = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* includeSearchAttributeInSearchFilter
    include_search_attribute_in_search_filter = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* column1AttributeName
    column1_attribute_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* column2AttributeName
    column2_attribute_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* column3AttributeName
    column3_attribute_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* column4AttributeName
    column4_attribute_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* column1Label
    column1_label = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* column2Label
    column2_label = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* column3Label
    column3_label = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* column4Label
    column4_label = Field(
        type=str,
        required=False,
    )
    #: int: *Required* searchColumn
    search_column = Field(
        type=int,
        required=True,
    )


class SystemLanguageGetListResponse(OCIResponse):
    """
    Response to ``SystemLanguageGetListRequest()``.
    The language table column headings are: "Language", "Locale" and "Encoding".
    """

    _ELEMENTS = (
        E(
            "default_language",
            "defaultLanguage",
            str,
            False,
            True,
            False,
        ),
        E(
            "language_table",
            "languageTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Required* defaultLanguage
    default_language = Field(
        type=str,
        required=True,
    )
    #: list: *Required* languageTable  *Tabular*
    language_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "line_type_table",
            "lineTypeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* lineTypeTable  *Tabular*
    line_type_table = Field(
        type=list,
        required=True,
    )


class SystemLegacyAutomaticCallbackGetResponse(OCIResponse):
    """
    Response to ``SystemLegacyAutomaticCallbackGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "max_monitors_per_originator",
            "maxMonitorsPerOriginator",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_monitors_per_terminator",
            "maxMonitorsPerTerminator",
            int,
            False,
            True,
            False,
        ),
        E(
            "t2_minutes",
            "t2Minutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "t4_seconds",
            "t4Seconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "t5_seconds",
            "t5Seconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "t6_minutes",
            "t6Minutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "t7_minutes",
            "t7Minutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "t8_seconds",
            "t8Seconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "t_ring_seconds",
            "tRingSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "t10_o_minutes",
            "t10OMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "t10_t_minutes",
            "t10TMinutes",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* maxMonitorsPerOriginator
    max_monitors_per_originator = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxMonitorsPerTerminator
    max_monitors_per_terminator = Field(
        type=int,
        required=True,
    )
    #: int: *Required* t2Minutes
    t2_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* t4Seconds
    t4_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* t5Seconds
    t5_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* t6Minutes
    t6_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* t7Minutes
    t7_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* t8Seconds
    t8_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* tRingSeconds
    t_ring_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* t10OMinutes
    t10_o_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* t10TMinutes
    t10_t_minutes = Field(
        type=int,
        required=True,
    )


class SystemLicensingGetResponse(OCIResponse):
    """
    Response to ``SystemLicensingGetRequest()``. The license table columns are:
    "Name", "Licensed", "Used",
    "Available" and "Expiration Date".
    Replaced By ``SystemLicensingGetResponse14sp3()``
    """

    _ELEMENTS = (
        E(
            "license_strictness",
            "licenseStrictness",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_userlimit",
            "groupUserlimit",
            int,
            False,
            True,
            False,
        ),
        E(
            "expiration_date",
            "expirationDate",
            str,
            False,
            False,
            False,
        ),
        E(
            "host_id",
            "hostId",
            str,
            False,
            False,
            False,
        ),
        E(
            "license_name",
            "licenseName",
            str,
            False,
            False,
            False,
        ),
        E(
            "license_table",
            "licenseTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Required* licenseStrictness
    license_strictness = Field(
        type=str,
        required=True,
    )
    #: int: *Required* groupUserlimit
    group_userlimit = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* expirationDate
    expiration_date = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hostId
    host_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* licenseName
    license_name = Field(
        type=str,
        required=False,
    )
    #: list: *Required* licenseTable  *Tabular*
    license_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "license_strictness",
            "licenseStrictness",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_userlimit",
            "groupUserlimit",
            int,
            False,
            True,
            False,
        ),
        E(
            "expiration_date",
            "expirationDate",
            str,
            False,
            False,
            False,
        ),
        E(
            "host_id",
            "hostId",
            str,
            False,
            False,
            False,
        ),
        E(
            "license_name",
            "licenseName",
            str,
            False,
            False,
            False,
        ),
        E(
            "number_of_trunk_users",
            "numberOfTrunkUsers",
            int,
            False,
            True,
            False,
        ),
        E(
            "subscriber_license_table",
            "subscriberLicenseTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "group_service_license_table",
            "groupServiceLicenseTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "virtual_service_license_table",
            "virtualServiceLicenseTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "user_service_license_table",
            "userServiceLicenseTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "system_param_license_table",
            "systemParamLicenseTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Required* licenseStrictness
    license_strictness = Field(
        type=str,
        required=True,
    )
    #: int: *Required* groupUserlimit
    group_userlimit = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* expirationDate
    expiration_date = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hostId
    host_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* licenseName
    license_name = Field(
        type=str,
        required=False,
    )
    #: int: *Required* numberOfTrunkUsers
    number_of_trunk_users = Field(
        type=int,
        required=True,
    )
    #: list: *Required* subscriberLicenseTable  *Tabular*
    subscriber_license_table = Field(
        type=list,
        required=True,
    )
    #: list: *Required* groupServiceLicenseTable  *Tabular*
    group_service_license_table = Field(
        type=list,
        required=True,
    )
    #: list: *Required* virtualServiceLicenseTable  *Tabular*
    virtual_service_license_table = Field(
        type=list,
        required=True,
    )
    #: list: *Required* userServiceLicenseTable  *Tabular*
    user_service_license_table = Field(
        type=list,
        required=True,
    )
    #: list: *Required* systemParamLicenseTable  *Tabular*
    system_param_license_table = Field(
        type=list,
        required=True,
    )


class SystemLicensingGetSystemLicenseListResponse(OCIResponse):
    """
    Response to ``SystemLicensingGetSystemLicenseListRequest()``.

    Replaced by ``SystemLicensingGetSystemLicenseListResponse21()``
    """

    _ELEMENTS = (
        E(
            "license",
            "license",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* license
    license = Field(
        type=str,
        required=False,
    )


class SystemLicensingGetSystemLicenseListResponse21(OCIResponse):
    """
    Response to ``SystemLicensingGetSystemLicenseListRequest21()``.
    """

    _ELEMENTS = (
        E(
            "license",
            "license",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* license
    license = Field(
        type=str,
        required=False,
    )


class SystemLocationBasedCallingRestrictionsGetResponse(OCIResponse):
    """
    Response to ``SystemLocationBasedCallingRestrictionsGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "physical_location_indicator",
            "physicalLocationIndicator",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_msc_validation",
            "enforceMscValidation",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_office_zone_announcement",
            "enableOfficeZoneAnnouncement",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* physicalLocationIndicator
    physical_location_indicator = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceMscValidation
    enforce_msc_validation = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableOfficeZoneAnnouncement
    enable_office_zone_announcement = Field(
        type=bool,
        required=True,
    )


class SystemLocationBasedCallingRestrictionsGetResponse17sp3(OCIResponse):
    """
    Response to ``SystemLocationBasedCallingRestrictionsGetRequest17sp3()``.
    """

    _ELEMENTS = (
        E(
            "physical_location_indicator",
            "physicalLocationIndicator",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_msc_validation",
            "enforceMscValidation",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_office_zone_announcement",
            "enableOfficeZoneAnnouncement",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enhance_office_zone",
            "enhanceOfficeZone",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* physicalLocationIndicator
    physical_location_indicator = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceMscValidation
    enforce_msc_validation = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableOfficeZoneAnnouncement
    enable_office_zone_announcement = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enhanceOfficeZone
    enhance_office_zone = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "device_type_table",
            "deviceTypeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceTypeTable  *Tabular*
    device_type_table = Field(
        type=list,
        required=True,
    )


class SystemMailParametersGetResponse(OCIResponse):
    """
    Response to ``SystemMailParametersGetListRequest()``.
    Contains a list of system Mail parameters.
    """

    _ELEMENTS = (
        E(
            "primary_server_net_address",
            "primaryServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "secondary_server_net_address",
            "secondaryServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "default_from_address",
            "defaultFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_subject",
            "defaultSubject",
            str,
            False,
            False,
            False,
        ),
        E(
            "support_dnssrv_for_mail_server_access",
            "supportDNSSRVForMailServerAccess",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* primaryServerNetAddress
    primary_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* secondaryServerNetAddress
    secondary_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* defaultFromAddress
    default_from_address = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* defaultSubject
    default_subject = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* supportDNSSRVForMailServerAccess
    support_dnssrv_for_mail_server_access = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "play_mct_warning_announcement",
            "playMCTWarningAnnouncement",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* playMCTWarningAnnouncement
    play_mct_warning_announcement = Field(
        type=bool,
        required=True,
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


class SystemMediaGetListResponse(OCIResponse):
    """
    Response to ``SystemMediaGetListRequest()``. The column headings are
    "Media Name", "Codec", "Media Type", "Bandwidth Enforcement Type" and "Bandwidth".
    """

    _ELEMENTS = (
        E(
            "media_table",
            "mediaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* mediaTable  *Tabular*
    media_table = Field(
        type=list,
        required=True,
    )


class SystemMediaServerGetListResponse(OCIResponse):
    """
    Response to ``SystemMediaServerGetListRequest()``. The Media Server table column
    headings are: "Net Address", "Port", "Transport", "Description".
    """

    _ELEMENTS = (
        E(
            "media_server_table",
            "mediaServerTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* mediaServerTable  *Tabular*
    media_server_table = Field(
        type=list,
        required=True,
    )


class SystemMediaServerParametersGetResponse(OCIResponse):
    """
    Response to ``SystemMediaServerParametersGetListRequest()``.
    Contains a list of system Media Server parameters.
    """

    _ELEMENTS = (
        E(
            "media_server_response_timer_milliseconds",
            "mediaServerResponseTimerMilliseconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_server_selection_route_timer_milliseconds",
            "mediaServerSelectionRouteTimerMilliseconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_static_media_server_device",
            "useStaticMediaServerDevice",
            bool,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* mediaServerResponseTimerMilliseconds
    media_server_response_timer_milliseconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* mediaServerSelectionRouteTimerMilliseconds
    media_server_selection_route_timer_milliseconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useStaticMediaServerDevice
    use_static_media_server_device = Field(
        type=bool,
        required=True,
    )


class SystemMediaSetGetListResponse(OCIResponse):
    """
    Response to ``SystemMediaSetGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "media_set_name",
            "mediaSetName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* mediaSetName
    media_set_name = Field(
        type=str,
        required=False,
    )


class SystemMediaSetGetResponse(OCIResponse):
    """
    Response to ``SystemMediaSetGetRequest()``.
    Returns a list of media names in the set.
    """

    _ELEMENTS = (
        E(
            "media_name",
            "mediaName",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* mediaName
    media_name = Field(
        type=str,
        required=True,
    )


class SystemMeetMeConferencingGetResponse(OCIResponse):
    """
    Response to ``SystemMeetMeConferencingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "conference_id_length",
            "conferenceIdLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "moderator_pin_length",
            "moderatorPinLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_conference_end_date_restriction",
            "enableConferenceEndDateRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_end_date_restriction_months",
            "conferenceEndDateRestrictionMonths",
            int,
            False,
            True,
            False,
        ),
        E(
            "delete_expired_conferences_after_hold_period",
            "deleteExpiredConferencesAfterHoldPeriod",
            bool,
            False,
            True,
            False,
        ),
        E(
            "expired_conference_hold_period_days",
            "expiredConferenceHoldPeriodDays",
            int,
            False,
            True,
            False,
        ),
        E(
            "recording_web_app_url",
            "recordingWebAppURL",
            str,
            False,
            False,
            False,
        ),
    )
    #: int: *Required* conferenceIdLength
    conference_id_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* moderatorPinLength
    moderator_pin_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableConferenceEndDateRestriction
    enable_conference_end_date_restriction = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* conferenceEndDateRestrictionMonths
    conference_end_date_restriction_months = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* deleteExpiredConferencesAfterHoldPeriod
    delete_expired_conferences_after_hold_period = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* expiredConferenceHoldPeriodDays
    expired_conference_hold_period_days = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* recordingWebAppURL
    recording_web_app_url = Field(
        type=str,
        required=False,
    )


class SystemMeetMeConferencingGetResponse17sp3(OCIResponse):
    """
    Response to ``SystemMeetMeConferencingGetRequest17sp3()``.
    """

    _ELEMENTS = (
        E(
            "conference_id_length",
            "conferenceIdLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "moderator_pin_length",
            "moderatorPinLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_conference_end_date_restriction",
            "enableConferenceEndDateRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_end_date_restriction_months",
            "conferenceEndDateRestrictionMonths",
            int,
            False,
            True,
            False,
        ),
        E(
            "delete_expired_conferences_after_hold_period",
            "deleteExpiredConferencesAfterHoldPeriod",
            bool,
            False,
            True,
            False,
        ),
        E(
            "expired_conference_hold_period_days",
            "expiredConferenceHoldPeriodDays",
            int,
            False,
            True,
            False,
        ),
        E(
            "recording_web_app_url",
            "recordingWebAppURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "recording_file_format",
            "recordingFileFormat",
            str,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* conferenceIdLength
    conference_id_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* moderatorPinLength
    moderator_pin_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableConferenceEndDateRestriction
    enable_conference_end_date_restriction = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* conferenceEndDateRestrictionMonths
    conference_end_date_restriction_months = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* deleteExpiredConferencesAfterHoldPeriod
    delete_expired_conferences_after_hold_period = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* expiredConferenceHoldPeriodDays
    expired_conference_hold_period_days = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* recordingWebAppURL
    recording_web_app_url = Field(
        type=str,
        required=False,
    )
    #: str: *Required* recordingFileFormat
    recording_file_format = Field(
        type=str,
        required=True,
    )


class SystemMigratedUsersGetListResponse(OCIResponse):
    """
    Response to ``SystemMigratedUsersGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "user_id",
            "userId",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* userId
    user_id = Field(
        type=str,
        required=False,
    )


class SystemMultimediaPolicyGetResponse(OCIResponse):
    """
    Response to ``SystemMultimediaPolicyGetRequest()``
    """

    _ELEMENTS = (
        E(
            "restrict_non_audio_video_media_types",
            "restrictNonAudioVideoMediaTypes",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* restrictNonAudioVideoMediaTypes
    restrict_non_audio_video_media_types = Field(
        type=bool,
        required=True,
    )


class SystemMusicOnHoldGetResponse(OCIResponse):
    """
    Response to ``SystemMusicOnHoldGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "delay_milliseconds",
            "delayMilliseconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* delayMilliseconds
    delay_milliseconds = Field(
        type=int,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "service_provider_table",
            "serviceProviderTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* serviceProviderTable  *Tabular*
    service_provider_table = Field(
        type=list,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "network_class_of_service_table",
            "networkClassOfServiceTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* networkClassOfServiceTable  *Tabular*
    network_class_of_service_table = Field(
        type=list,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "network_class_of_service_table",
            "networkClassOfServiceTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* networkClassOfServiceTable  *Tabular*
    network_class_of_service_table = Field(
        type=list,
        required=True,
    )


class SystemNetworkDeviceMonitorParametersGetResponse(OCIResponse):
    """
    Response to ``SystemNetworkDeviceMonitorParametersGetListRequest()``.
    Contains a list of system Network Device Polling parameters.
    """

    _ELEMENTS = (
        E(
            "polling_interval_minutes",
            "pollingIntervalMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "failed_polling_interval_minutes",
            "failedPollingIntervalMinutes",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* pollingIntervalMinutes
    polling_interval_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* failedPollingIntervalMinutes
    failed_polling_interval_minutes = Field(
        type=int,
        required=True,
    )


class SystemNetworkProgressionGetResponse(OCIResponse):
    """
    Response to ``SystemNetworkProgressionGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "wait_period_seconds",
            "waitPeriodSeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* waitPeriodSeconds
    wait_period_seconds = Field(
        type=int,
        required=True,
    )


class SystemNetworkRoutingServerGetListResponse(OCIResponse):
    """
    Response to ``SystemNetworkRoutingServerGetListRequest()``. The routing Network
    Server table column
    headings are: "Net Address", "Port", "Transport", "Poll", "OpState", "Description".
    """

    _ELEMENTS = (
        E(
            "network_routing_server_table",
            "networkRoutingServerTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* networkRoutingServerTable  *Tabular*
    network_routing_server_table = Field(
        type=list,
        required=True,
    )


class SystemNetworkServerSyncParametersGetResponse(OCIResponse):
    """
    Response to ``SystemNetworkServerSyncParametersGetListRequest()``.
    Contains a list of system Network Server Sync parameters.
    """

    _ELEMENTS = (
        E(
            "enable_sync",
            "enableSync",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableSync
    enable_sync = Field(
        type=bool,
        required=True,
    )


class SystemNetworkServerSyncParametersGetResponse14sp2(OCIResponse):
    """
    Response to ``SystemNetworkServerSyncParametersGetRequest14sp2()``.
    Contains a list of system Network Server Sync parameters.
    Replaced By ``SystemNetworkServerSyncParametersGetResponse16()``
    """

    _ELEMENTS = (
        E(
            "enable_sync",
            "enableSync",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sync_line_ports",
            "syncLinePorts",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableSync
    enable_sync = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* syncLinePorts
    sync_line_ports = Field(
        type=bool,
        required=True,
    )


class SystemNetworkServerSyncParametersGetResponse16(OCIResponse):
    """
    Response to ``SystemNetworkServerSyncParametersGetRequest16()``.
    Contains a list of system Network Server Sync parameters.
    Replaced By ``SystemNetworkServerSyncParametersGetResponse17sp4()``
    """

    _ELEMENTS = (
        E(
            "enable_sync",
            "enableSync",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sync_line_ports",
            "syncLinePorts",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sync_device_management_info",
            "syncDeviceManagementInfo",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableSync
    enable_sync = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* syncLinePorts
    sync_line_ports = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* syncDeviceManagementInfo
    sync_device_management_info = Field(
        type=bool,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "enable_sync",
            "enableSync",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sync_line_ports",
            "syncLinePorts",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sync_device_management_info",
            "syncDeviceManagementInfo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sync_trunk_groups",
            "syncTrunkGroups",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableSync
    enable_sync = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* syncLinePorts
    sync_line_ports = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* syncDeviceManagementInfo
    sync_device_management_info = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* syncTrunkGroups
    sync_trunk_groups = Field(
        type=bool,
        required=True,
    )


class SystemNetworkSynchingServerGetListResponse(OCIResponse):
    """
    Response to ``SystemNetworkSynchingServerGetListRequest()``. The Network Server
    table column
    headings are: "Net Address", "Port", "Description".
    """

    _ELEMENTS = (
        E(
            "preferred_network_server_net_address",
            "preferredNetworkServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_synching_server_table",
            "networkSynchingServerTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Optional* preferredNetworkServerNetAddress
    preferred_network_server_net_address = Field(
        type=str,
        required=False,
    )
    #: list: *Required* networkSynchingServerTable  *Tabular*
    network_synching_server_table = Field(
        type=list,
        required=True,
    )


class SystemNumberActivationGetResponse(OCIResponse):
    """
    Response to ``SystemNumberActivationGetRequest()``.
    Contains the system number activation setting.
    """

    _ELEMENTS = (
        E(
            "use_number_activation",
            "useNumberActivation",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useNumberActivation
    use_number_activation = Field(
        type=bool,
        required=True,
    )


class SystemNumberActivationGetResponse18sp1(OCIResponse):
    """
    Response to ``SystemNumberActivationGetRequest18sp1()``.
    Contains the system number activation setting.
    """

    _ELEMENTS = (
        E(
            "number_activation_mode",
            "numberActivationMode",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* numberActivationMode
    number_activation_mode = Field(
        type=str,
        required=True,
    )


class SystemNumberActivationGetResponse21(OCIResponse):
    """
    Response to ``SystemNumberActivationGetRequest21()``.
    Contains the system number activation and enterprise trunk number range
    activation setting.
    """

    _ELEMENTS = (
        E(
            "number_activation_mode",
            "numberActivationMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_enterprise_trunk_number_range_activation",
            "enableEnterpriseTrunkNumberRangeActivation",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* numberActivationMode
    number_activation_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableEnterpriseTrunkNumberRangeActivation
    enable_enterprise_trunk_number_range_activation = Field(
        type=bool,
        required=True,
    )


class SystemNumberPortabilityQueryDigitPatternGetListResponse(OCIResponse):
    """
    Response to the ``SystemNumberPortabilityQueryDigitPatternGetListRequest()``.
    Contains a table with column headings:
    "Digit Pattern", "Status".
    """

    _ELEMENTS = (
        E(
            "status_digit_pattern_table",
            "statusDigitPatternTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* statusDigitPatternTable  *Tabular*
    status_digit_pattern_table = Field(
        type=list,
        required=True,
    )


class SystemNumberPortabilityQueryDigitPatternGetResponse(OCIResponse):
    """
    Response to the ``SystemNumberPortabilityQueryDigitPatternGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )


class SystemNumberPortabilityQueryGetResponse(OCIResponse):
    """
    Response to the ``SystemNumberPortabilityQueryGetRequest()``.
    Returns system Number Portability Query Parameters.
    """

    _ELEMENTS = (
        E(
            "continue_call_as_dialed_on_timeout_or_error",
            "continueCallAsDialedOnTimeoutOrError",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_portability_name_lookup_timeout_milliseconds",
            "numberPortabilityNameLookupTimeoutMilliseconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* continueCallAsDialedOnTimeoutOrError
    continue_call_as_dialed_on_timeout_or_error = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberPortabilityNameLookupTimeoutMilliseconds
    number_portability_name_lookup_timeout_milliseconds = Field(
        type=int,
        required=True,
    )


class SystemNumberPortabilityQueryStatusGetListResponse(OCIResponse):
    """
    Response to the ``SystemNumberPortabilityQueryStatusGetListRequest()``.
    Contains a table with column headings:
    "Status and Treatment File Name".
    """

    _ELEMENTS = (
        E(
            "status_table",
            "statusTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* statusTable  *Tabular*
    status_table = Field(
        type=list,
        required=True,
    )


class SystemNumberPortabilityQueryStatusGetResponse(OCIResponse):
    """
    Response to the ``SystemNumberPortabilityQueryStatusGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "treatment_file_name",
            "treatmentFileName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* treatmentFileName
    treatment_file_name = Field(
        type=str,
        required=False,
    )


class SystemOCICallControlApplicationGetACLListResponse(OCIResponse):
    """
    Response to ``SystemOCICallControlApplicationGetACLListRequest()``. The table columns are:
    "Net Address" and "Description".
    """

    _ELEMENTS = (
        E(
            "acl_table",
            "aclTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* aclTable  *Tabular*
    acl_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "app_table",
            "appTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* appTable  *Tabular*
    app_table = Field(
        type=list,
        required=True,
    )


class SystemOCICallControlGetACLListResponse(OCIResponse):
    """
    Response to ``SystemOCICallControlGetACLListRequest()``. The table columns are:
    "Net Address" and "Description".
    """

    _ELEMENTS = (
        E(
            "acl_table",
            "aclTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* aclTable  *Tabular*
    acl_table = Field(
        type=list,
        required=True,
    )


class SystemOCIGetACLListResponse(OCIResponse):
    """
    Response to ``SystemOCIGetACLListRequest()``.
    Returns a 2 coulmn table with column headings:
    "Net Address" and "Description".
    """

    _ELEMENTS = (
        E(
            "acl_table",
            "aclTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* aclTable  *Tabular*
    acl_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "oci_reporting_acl_table",
            "ociReportingACLTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* ociReportingACLTable  *Tabular*
    oci_reporting_acl_table = Field(
        type=list,
        required=True,
    )


class SystemOCIReportingGetMessageNameListResponse(OCIResponse):
    """
    Response to ``SystemOCIReportingGetMessageNameListRequest()``.
    """

    _ELEMENTS = (
        E(
            "message_name_starts_with",
            "messageNameStartsWith",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* messageNameStartsWith
    message_name_starts_with = Field(
        type=str,
        required=False,
    )


class SystemOCIReportingParametersGetResponse(OCIResponse):
    """
    Response to ``SystemOCIReportingParametersGetListRequest()``.
    Contains a list of system OCI Reporting parameters.
    """

    _ELEMENTS = (
        E(
            "server_port",
            "serverPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_connection_ping",
            "enableConnectionPing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "connection_ping_interval_seconds",
            "connectionPingIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "alter_passwords",
            "alterPasswords",
            bool,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* serverPort
    server_port = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableConnectionPing
    enable_connection_ping = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* connectionPingIntervalSeconds
    connection_ping_interval_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* alterPasswords
    alter_passwords = Field(
        type=bool,
        required=True,
    )


class SystemOCIReportingParametersGetResponse14sp1(OCIResponse):
    """
    Response to ``SystemOCIReportingParametersGetRequest14sp1()``.
    Contains a list of system OCI Reporting parameters.
    """

    _ELEMENTS = (
        E(
            "server_port",
            "serverPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_connection_ping",
            "enableConnectionPing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "connection_ping_interval_seconds",
            "connectionPingIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "alter_passwords",
            "alterPasswords",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_public_identity_reporting",
            "enablePublicIdentityReporting",
            bool,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* serverPort
    server_port = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableConnectionPing
    enable_connection_ping = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* connectionPingIntervalSeconds
    connection_ping_interval_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* alterPasswords
    alter_passwords = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enablePublicIdentityReporting
    enable_public_identity_reporting = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "service_provider_table",
            "serviceProviderTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* serviceProviderTable  *Tabular*
    service_provider_table = Field(
        type=list,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "office_zone_table",
            "officeZoneTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* officeZoneTable  *Tabular*
    office_zone_table = Field(
        type=list,
        required=True,
    )


class SystemOfficeZoneGetResponse(OCIResponse):
    """
    Response to the ``SystemOfficeZoneGetRequest()``.
    The response contains the Office Zone information.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "zone_name",
            "zoneName",
            str,
            False,
            True,
            False,
        ),
        E(
            "primary_zone_name",
            "primaryZoneName",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Required* zoneName
    zone_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* primaryZoneName
    primary_zone_name = Field(
        type=str,
        required=True,
    )


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"
    """

    _ELEMENTS = (
        E(
            "office_zone_table",
            "officeZoneTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* officeZoneTable  *Tabular*
    office_zone_table = Field(
        type=list,
        required=True,
    )


class SystemOutgoingCallingPlanCallTypeGetListResponse(OCIResponse):
    """
    Response to ``SystemOutgoingCallingPlanCallTypeGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "call_type",
            "callType",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* callType
    call_type = Field(
        type=str,
        required=True,
    )


class SystemOutgoingCallingPlanCallTypeGetMappingListResponse(OCIResponse):
    """
    Response to ``SystemOutgoingCallingPlanCallTypeGetMappingListRequest()``. The
    table columns are:
    "Country Code", "Digit Map" and "Call Type".
    """

    _ELEMENTS = (
        E(
            "call_type_mapping",
            "callTypeMapping",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* callTypeMapping  *Tabular*
    call_type_mapping = Field(
        type=list,
        required=True,
    )


class SystemOutgoingCallingPlanGetResponse(OCIResponse):
    """
    Response to ``SystemOutgoingCallingPlanGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "direct_transfer_screening",
            "directTransferScreening",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* directTransferScreening
    direct_transfer_screening = Field(
        type=bool,
        required=True,
    )


class SystemOutgoingCallingPlanGetResponse17sp3(OCIResponse):
    """
    Response to ``SystemOutgoingCallingPlanGetRequest17sp3()``.
    """

    _ELEMENTS = (
        E(
            "direct_transfer_screening",
            "directTransferScreening",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_enhanced_toll_call_typing",
            "enableEnhancedTollCallTyping",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* directTransferScreening
    direct_transfer_screening = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableEnhancedTollCallTyping
    enable_enhanced_toll_call_typing = Field(
        type=bool,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "rules_apply_to",
            "rulesApplyTo",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_web_add_external_authentication_users",
            "allowWebAddExternalAuthenticationUsers",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_user_id",
            "disallowUserId",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_old_password",
            "disallowOldPassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_old_password",
            "disallowReversedOldPassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_digits",
            "restrictMinDigits",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_digits",
            "minDigits",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_upper_case_letters",
            "restrictMinUpperCaseLetters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_upper_case_letters",
            "minUpperCaseLetters",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_lower_case_letters",
            "restrictMinLowerCaseLetters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_lower_case_letters",
            "minLowerCaseLetters",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_non_alphanumeric_characters",
            "restrictMinNonAlphanumericCharacters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_non_alphanumeric_characters",
            "minNonAlphanumericCharacters",
            int,
            False,
            True,
            False,
        ),
        E(
            "min_length",
            "minLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_failed_login_attempts",
            "maxFailedLoginAttempts",
            int,
            False,
            True,
            False,
        ),
        E(
            "password_expires_days",
            "passwordExpiresDays",
            int,
            False,
            True,
            False,
        ),
        E(
            "send_login_disabled_notify_email",
            "sendLoginDisabledNotifyEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "login_disabled_notify_email_address",
            "loginDisabledNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "disallow_rules_modification",
            "disallowRulesModification",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* rulesApplyTo
    rules_apply_to = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowWebAddExternalAuthenticationUsers
    allow_web_add_external_authentication_users = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowUserId
    disallow_user_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowOldPassword
    disallow_old_password = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedOldPassword
    disallow_reversed_old_password = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* restrictMinDigits
    restrict_min_digits = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minDigits
    min_digits = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinUpperCaseLetters
    restrict_min_upper_case_letters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minUpperCaseLetters
    min_upper_case_letters = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinLowerCaseLetters
    restrict_min_lower_case_letters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minLowerCaseLetters
    min_lower_case_letters = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinNonAlphanumericCharacters
    restrict_min_non_alphanumeric_characters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minNonAlphanumericCharacters
    min_non_alphanumeric_characters = Field(
        type=int,
        required=True,
    )
    #: int: *Required* minLength
    min_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxFailedLoginAttempts
    max_failed_login_attempts = Field(
        type=int,
        required=True,
    )
    #: int: *Required* passwordExpiresDays
    password_expires_days = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* sendLoginDisabledNotifyEmail
    send_login_disabled_notify_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* loginDisabledNotifyEmailAddress
    login_disabled_notify_email_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* disallowRulesModification
    disallow_rules_modification = Field(
        type=bool,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "rules_apply_to",
            "rulesApplyTo",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_web_add_external_authentication_users",
            "allowWebAddExternalAuthenticationUsers",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_user_id",
            "disallowUserId",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_old_password",
            "disallowOldPassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_old_password",
            "disallowReversedOldPassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_digits",
            "restrictMinDigits",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_digits",
            "minDigits",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_upper_case_letters",
            "restrictMinUpperCaseLetters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_upper_case_letters",
            "minUpperCaseLetters",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_lower_case_letters",
            "restrictMinLowerCaseLetters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_lower_case_letters",
            "minLowerCaseLetters",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_non_alphanumeric_characters",
            "restrictMinNonAlphanumericCharacters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_non_alphanumeric_characters",
            "minNonAlphanumericCharacters",
            int,
            False,
            True,
            False,
        ),
        E(
            "min_length",
            "minLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_failed_login_attempts",
            "maxFailedLoginAttempts",
            int,
            False,
            True,
            False,
        ),
        E(
            "password_expires_days",
            "passwordExpiresDays",
            int,
            False,
            True,
            False,
        ),
        E(
            "send_login_disabled_notify_email",
            "sendLoginDisabledNotifyEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "login_disabled_notify_email_address",
            "loginDisabledNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "disallow_rules_modification",
            "disallowRulesModification",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_previous_passwords",
            "disallowPreviousPasswords",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_previous_passwords",
            "numberOfPreviousPasswords",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* rulesApplyTo
    rules_apply_to = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowWebAddExternalAuthenticationUsers
    allow_web_add_external_authentication_users = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowUserId
    disallow_user_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowOldPassword
    disallow_old_password = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedOldPassword
    disallow_reversed_old_password = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* restrictMinDigits
    restrict_min_digits = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minDigits
    min_digits = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinUpperCaseLetters
    restrict_min_upper_case_letters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minUpperCaseLetters
    min_upper_case_letters = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinLowerCaseLetters
    restrict_min_lower_case_letters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minLowerCaseLetters
    min_lower_case_letters = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinNonAlphanumericCharacters
    restrict_min_non_alphanumeric_characters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minNonAlphanumericCharacters
    min_non_alphanumeric_characters = Field(
        type=int,
        required=True,
    )
    #: int: *Required* minLength
    min_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxFailedLoginAttempts
    max_failed_login_attempts = Field(
        type=int,
        required=True,
    )
    #: int: *Required* passwordExpiresDays
    password_expires_days = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* sendLoginDisabledNotifyEmail
    send_login_disabled_notify_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* loginDisabledNotifyEmailAddress
    login_disabled_notify_email_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* disallowRulesModification
    disallow_rules_modification = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowPreviousPasswords
    disallow_previous_passwords = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberOfPreviousPasswords
    number_of_previous_passwords = Field(
        type=int,
        required=True,
    )


class SystemPerformanceMeasurementReportingGetFileServerListResponse(OCIResponse):
    """
    Response to ``SystemPerformanceMeasurementReportingGetFileServerListRequest()``.
    The table columns are:
    "FTP Host Net Address", "FTP User Id", "Passive FTP".
    """

    _ELEMENTS = (
        E(
            "file_server_table",
            "fileServerTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* fileServerTable  *Tabular*
    file_server_table = Field(
        type=list,
        required=True,
    )


class SystemPerformanceMeasurementReportingGetResponse(OCIResponse):
    """
    Response to ``SystemPerformanceMeasurementReportingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "reporting_interval",
            "reportingInterval",
            int,
            False,
            True,
            False,
        ),
        E(
            "reset_measurements_after_each_report",
            "resetMeasurementsAfterEachReport",
            bool,
            False,
            True,
            False,
        ),
        E(
            "report_enterprise",
            "reportEnterprise",
            bool,
            False,
            True,
            False,
        ),
        E(
            "report_service_provider",
            "reportServiceProvider",
            bool,
            False,
            True,
            False,
        ),
        E(
            "report_device",
            "reportDevice",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* reportingInterval
    reporting_interval = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* resetMeasurementsAfterEachReport
    reset_measurements_after_each_report = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* reportEnterprise
    report_enterprise = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* reportServiceProvider
    report_service_provider = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* reportDevice
    report_device = Field(
        type=bool,
        required=True,
    )


class SystemPersonalAssistantGetResponse(OCIResponse):
    """
    Response to the ``SystemPersonalAssistantGetRequest()``.
    Returns system Personal Assistant Parameters.
    """

    _ELEMENTS = (
        E(
            "transfer_to_attendant_key",
            "transferToAttendantKey",
            str,
            False,
            True,
            False,
        ),
        E(
            "transfer_to_voice_messaging_key",
            "transferToVoiceMessagingKey",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* transferToAttendantKey
    transfer_to_attendant_key = Field(
        type=str,
        required=True,
    )
    #: str: *Required* transferToVoiceMessagingKey
    transfer_to_voice_messaging_key = Field(
        type=str,
        required=True,
    )


class SystemPhysicalLocationGetResponse(OCIResponse):
    """
    Response to ``SystemPhysicalLocationGetRequest()``.
    Contains a list of system Physical Location parameters.
    """

    _ELEMENTS = (
        E(
            "always_allow_emergency_calls",
            "alwaysAllowEmergencyCalls",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* alwaysAllowEmergencyCalls
    always_allow_emergency_calls = Field(
        type=bool,
        required=True,
    )


class SystemPolicyGetDefaultResponse14(OCIResponse):
    """
    Response to ``SystemPolicyGetDefaultRequest14()``.
    Contains the default policy settings for the system.
    """

    _ELEMENTS = (
        E(
            "group_calling_plan_access",
            "groupCallingPlanAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_extension_access",
            "groupExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_ldap_integration_access",
            "groupLDAPIntegrationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_voice_messaging_access",
            "groupVoiceMessagingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_user_access",
            "groupDepartmentAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_authentication_access",
            "groupUserAuthenticationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_group_directory_access",
            "groupUserGroupDirectoryAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_profile_access",
            "groupUserProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_profile_access",
            "groupAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_user_access",
            "groupAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_admin_access",
            "groupAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_department_access",
            "groupAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_access_device_access",
            "groupAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_feature_access_code_access",
            "groupAdminFeatureAccessCodeAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_service_access",
            "groupAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_profile_access",
            "serviceProviderAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_group_access",
            "serviceProviderAdminGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_user_access",
            "serviceProviderAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_admin_access",
            "serviceProviderAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_access",
            "serviceProviderAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* groupCallingPlanAccess
    group_calling_plan_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupExtensionAccess
    group_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupLDAPIntegrationAccess
    group_ldap_integration_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupVoiceMessagingAccess
    group_voice_messaging_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminUserAccess
    group_department_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserAuthenticationAccess
    group_user_authentication_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserGroupDirectoryAccess
    group_user_group_directory_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserProfileAccess
    group_user_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminProfileAccess
    group_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminUserAccess
    group_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAdminAccess
    group_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminDepartmentAccess
    group_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAccessDeviceAccess
    group_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminEnhancedServiceInstanceAccess
    group_admin_enhanced_service_instance_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminFeatureAccessCodeAccess
    group_admin_feature_access_code_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminPhoneNumberExtensionAccess
    group_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminServiceAccess
    group_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminProfileAccess
    service_provider_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminGroupAccess
    service_provider_admin_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminUserAccess
    service_provider_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAdminAccess
    service_provider_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminDepartmentAccess
    service_provider_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAccessDeviceAccess
    service_provider_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminPhoneNumberExtensionAccess
    service_provider_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServiceAccess
    service_provider_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServicePackAccess
    service_provider_admin_service_pack_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminWebBrandingAccess
    service_provider_admin_web_branding_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseAdminNetworkPolicyAccess
    enterprise_admin_network_policy_access = Field(
        type=str,
        required=True,
    )


class SystemPolicyGetDefaultResponse14sp1(OCIResponse):
    """
    Response to ``SystemPolicyGetDefaultRequest14sp1()``.
    Contains the default policy settings for the system.
    """

    _ELEMENTS = (
        E(
            "group_calling_plan_access",
            "groupCallingPlanAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_extension_access",
            "groupExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_ldap_integration_access",
            "groupLDAPIntegrationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_voice_messaging_access",
            "groupVoiceMessagingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_user_access",
            "groupDepartmentAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_trunk_group_access",
            "groupDepartmentAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_authentication_access",
            "groupUserAuthenticationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_group_directory_access",
            "groupUserGroupDirectoryAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_profile_access",
            "groupUserProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_profile_access",
            "groupAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_user_access",
            "groupAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_admin_access",
            "groupAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_department_access",
            "groupAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_access_device_access",
            "groupAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_feature_access_code_access",
            "groupAdminFeatureAccessCodeAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_service_access",
            "groupAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_trunk_group_access",
            "groupAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_profile_access",
            "serviceProviderAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_group_access",
            "serviceProviderAdminGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_user_access",
            "serviceProviderAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_admin_access",
            "serviceProviderAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_access",
            "serviceProviderAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* groupCallingPlanAccess
    group_calling_plan_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupExtensionAccess
    group_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupLDAPIntegrationAccess
    group_ldap_integration_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupVoiceMessagingAccess
    group_voice_messaging_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminUserAccess
    group_department_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminTrunkGroupAccess
    group_department_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserAuthenticationAccess
    group_user_authentication_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserGroupDirectoryAccess
    group_user_group_directory_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserProfileAccess
    group_user_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminProfileAccess
    group_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminUserAccess
    group_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAdminAccess
    group_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminDepartmentAccess
    group_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAccessDeviceAccess
    group_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminEnhancedServiceInstanceAccess
    group_admin_enhanced_service_instance_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminFeatureAccessCodeAccess
    group_admin_feature_access_code_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminPhoneNumberExtensionAccess
    group_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminServiceAccess
    group_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminTrunkGroupAccess
    group_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminProfileAccess
    service_provider_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminGroupAccess
    service_provider_admin_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminUserAccess
    service_provider_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAdminAccess
    service_provider_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminDepartmentAccess
    service_provider_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAccessDeviceAccess
    service_provider_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminPhoneNumberExtensionAccess
    service_provider_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServiceAccess
    service_provider_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServicePackAccess
    service_provider_admin_service_pack_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminWebBrandingAccess
    service_provider_admin_web_branding_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseAdminNetworkPolicyAccess
    enterprise_admin_network_policy_access = Field(
        type=str,
        required=True,
    )


class SystemPolicyGetDefaultResponse14sp4(OCIResponse):
    """
    Response to ``SystemPolicyGetDefaultRequest14sp4()``.
    Contains the default policy settings for the system.
    """

    _ELEMENTS = (
        E(
            "group_calling_plan_access",
            "groupCallingPlanAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_extension_access",
            "groupExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_ldap_integration_access",
            "groupLDAPIntegrationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_voice_messaging_access",
            "groupVoiceMessagingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_user_access",
            "groupDepartmentAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_trunk_group_access",
            "groupDepartmentAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_authentication_access",
            "groupUserAuthenticationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_group_directory_access",
            "groupUserGroupDirectoryAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_profile_access",
            "groupUserProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_enhanced_call_logs_access",
            "groupUserEnhancedCallLogsAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_profile_access",
            "groupAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_user_access",
            "groupAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_admin_access",
            "groupAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_department_access",
            "groupAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_access_device_access",
            "groupAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_feature_access_code_access",
            "groupAdminFeatureAccessCodeAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_service_access",
            "groupAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_trunk_group_access",
            "groupAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_profile_access",
            "serviceProviderAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_group_access",
            "serviceProviderAdminGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_user_access",
            "serviceProviderAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_admin_access",
            "serviceProviderAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_access",
            "serviceProviderAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* groupCallingPlanAccess
    group_calling_plan_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupExtensionAccess
    group_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupLDAPIntegrationAccess
    group_ldap_integration_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupVoiceMessagingAccess
    group_voice_messaging_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminUserAccess
    group_department_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminTrunkGroupAccess
    group_department_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserAuthenticationAccess
    group_user_authentication_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserGroupDirectoryAccess
    group_user_group_directory_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserProfileAccess
    group_user_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserEnhancedCallLogsAccess
    group_user_enhanced_call_logs_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminProfileAccess
    group_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminUserAccess
    group_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAdminAccess
    group_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminDepartmentAccess
    group_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAccessDeviceAccess
    group_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminEnhancedServiceInstanceAccess
    group_admin_enhanced_service_instance_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminFeatureAccessCodeAccess
    group_admin_feature_access_code_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminPhoneNumberExtensionAccess
    group_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminServiceAccess
    group_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminTrunkGroupAccess
    group_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminProfileAccess
    service_provider_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminGroupAccess
    service_provider_admin_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminUserAccess
    service_provider_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAdminAccess
    service_provider_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminDepartmentAccess
    service_provider_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAccessDeviceAccess
    service_provider_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminPhoneNumberExtensionAccess
    service_provider_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServiceAccess
    service_provider_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServicePackAccess
    service_provider_admin_service_pack_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminWebBrandingAccess
    service_provider_admin_web_branding_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseAdminNetworkPolicyAccess
    enterprise_admin_network_policy_access = Field(
        type=str,
        required=True,
    )


class SystemPolicyGetDefaultResponse16sp1(OCIResponse):
    """
    Response to ``SystemPolicyGetDefaultRequest16sp1()``.
    Contains the default policy settings for the system.
    """

    _ELEMENTS = (
        E(
            "group_calling_plan_access",
            "groupCallingPlanAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_extension_access",
            "groupExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_ldap_integration_access",
            "groupLDAPIntegrationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_voice_messaging_access",
            "groupVoiceMessagingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_user_access",
            "groupDepartmentAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_trunk_group_access",
            "groupDepartmentAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_authentication_access",
            "groupUserAuthenticationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_group_directory_access",
            "groupUserGroupDirectoryAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_profile_access",
            "groupUserProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_enhanced_call_logs_access",
            "groupUserEnhancedCallLogsAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_profile_access",
            "groupAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_user_access",
            "groupAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_admin_access",
            "groupAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_department_access",
            "groupAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_access_device_access",
            "groupAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_feature_access_code_access",
            "groupAdminFeatureAccessCodeAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_service_access",
            "groupAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_trunk_group_access",
            "groupAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_session_admission_control_access",
            "groupAdminSessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_profile_access",
            "serviceProviderAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_group_access",
            "serviceProviderAdminGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_user_access",
            "serviceProviderAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_admin_access",
            "serviceProviderAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_access",
            "serviceProviderAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_session_admission_control_access",
            "serviceProviderAdminSessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* groupCallingPlanAccess
    group_calling_plan_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupExtensionAccess
    group_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupLDAPIntegrationAccess
    group_ldap_integration_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupVoiceMessagingAccess
    group_voice_messaging_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminUserAccess
    group_department_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminTrunkGroupAccess
    group_department_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserAuthenticationAccess
    group_user_authentication_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserGroupDirectoryAccess
    group_user_group_directory_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserProfileAccess
    group_user_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserEnhancedCallLogsAccess
    group_user_enhanced_call_logs_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminProfileAccess
    group_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminUserAccess
    group_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAdminAccess
    group_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminDepartmentAccess
    group_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAccessDeviceAccess
    group_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminEnhancedServiceInstanceAccess
    group_admin_enhanced_service_instance_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminFeatureAccessCodeAccess
    group_admin_feature_access_code_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminPhoneNumberExtensionAccess
    group_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminServiceAccess
    group_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminTrunkGroupAccess
    group_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminSessionAdmissionControlAccess
    group_admin_session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminProfileAccess
    service_provider_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminGroupAccess
    service_provider_admin_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminUserAccess
    service_provider_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAdminAccess
    service_provider_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminDepartmentAccess
    service_provider_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAccessDeviceAccess
    service_provider_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminPhoneNumberExtensionAccess
    service_provider_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServiceAccess
    service_provider_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServicePackAccess
    service_provider_admin_service_pack_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminSessionAdmissionControlAccess
    service_provider_admin_session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminWebBrandingAccess
    service_provider_admin_web_branding_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseAdminNetworkPolicyAccess
    enterprise_admin_network_policy_access = Field(
        type=str,
        required=True,
    )


class SystemPolicyGetDefaultResponse16sp2(OCIResponse):
    """
    Response to ``SystemPolicyGetDefaultRequest16sp2()``.
    Contains the default policy settings for the system.
    """

    _ELEMENTS = (
        E(
            "group_calling_plan_access",
            "groupCallingPlanAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_extension_access",
            "groupExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_ldap_integration_access",
            "groupLDAPIntegrationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_voice_messaging_access",
            "groupVoiceMessagingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_user_access",
            "groupDepartmentAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_trunk_group_access",
            "groupDepartmentAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_phone_number_extension_access",
            "groupDepartmentAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_calling_line_id_number_access",
            "groupDepartmentAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_authentication_access",
            "groupUserAuthenticationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_group_directory_access",
            "groupUserGroupDirectoryAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_profile_access",
            "groupUserProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_enhanced_call_logs_access",
            "groupUserEnhancedCallLogsAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_profile_access",
            "groupAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_user_access",
            "groupAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_admin_access",
            "groupAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_department_access",
            "groupAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_access_device_access",
            "groupAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_feature_access_code_access",
            "groupAdminFeatureAccessCodeAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_calling_line_id_number_access",
            "groupAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_service_access",
            "groupAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_trunk_group_access",
            "groupAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_session_admission_control_access",
            "groupAdminSessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_dialable_caller_id_access",
            "groupAdminDialableCallerIDAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_office_zone_access",
            "groupAdminOfficeZoneAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_number_activation_access",
            "groupAdminNumberActivationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_profile_access",
            "serviceProviderAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_group_access",
            "serviceProviderAdminGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_user_access",
            "serviceProviderAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_admin_access",
            "serviceProviderAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_calling_line_id_number_access",
            "serviceProviderAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_access",
            "serviceProviderAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_session_admission_control_access",
            "serviceProviderAdminSessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_office_zone_access",
            "serviceProviderAdminOfficeZoneAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_dialable_caller_id_access",
            "serviceProviderAdminDialableCallerIDAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_admin_number_activation_access",
            "enterpriseAdminNumberActivationAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* groupCallingPlanAccess
    group_calling_plan_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupExtensionAccess
    group_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupLDAPIntegrationAccess
    group_ldap_integration_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupVoiceMessagingAccess
    group_voice_messaging_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminUserAccess
    group_department_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminTrunkGroupAccess
    group_department_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminPhoneNumberExtensionAccess
    group_department_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminCallingLineIdNumberAccess
    group_department_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserAuthenticationAccess
    group_user_authentication_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserGroupDirectoryAccess
    group_user_group_directory_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserProfileAccess
    group_user_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserEnhancedCallLogsAccess
    group_user_enhanced_call_logs_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminProfileAccess
    group_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminUserAccess
    group_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAdminAccess
    group_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminDepartmentAccess
    group_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAccessDeviceAccess
    group_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminEnhancedServiceInstanceAccess
    group_admin_enhanced_service_instance_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminFeatureAccessCodeAccess
    group_admin_feature_access_code_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminPhoneNumberExtensionAccess
    group_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminCallingLineIdNumberAccess
    group_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminServiceAccess
    group_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminTrunkGroupAccess
    group_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminSessionAdmissionControlAccess
    group_admin_session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminDialableCallerIDAccess
    group_admin_dialable_caller_id_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminOfficeZoneAccess
    group_admin_office_zone_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminNumberActivationAccess
    group_admin_number_activation_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminProfileAccess
    service_provider_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminGroupAccess
    service_provider_admin_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminUserAccess
    service_provider_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAdminAccess
    service_provider_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminDepartmentAccess
    service_provider_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAccessDeviceAccess
    service_provider_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminPhoneNumberExtensionAccess
    service_provider_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminCallingLineIdNumberAccess
    service_provider_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServiceAccess
    service_provider_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServicePackAccess
    service_provider_admin_service_pack_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminSessionAdmissionControlAccess
    service_provider_admin_session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminWebBrandingAccess
    service_provider_admin_web_branding_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminOfficeZoneAccess
    service_provider_admin_office_zone_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseAdminNetworkPolicyAccess
    enterprise_admin_network_policy_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminDialableCallerIDAccess
    service_provider_admin_dialable_caller_id_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseAdminNumberActivationAccess
    enterprise_admin_number_activation_access = Field(
        type=str,
        required=True,
    )


class SystemPolicyGetDefaultResponse17(OCIResponse):
    """
    Response to ``SystemPolicyGetDefaultRequest17()``.
    Contains the default policy settings for the system.
    """

    _ELEMENTS = (
        E(
            "group_calling_plan_access",
            "groupCallingPlanAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_extension_access",
            "groupExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_ldap_integration_access",
            "groupLDAPIntegrationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_voice_messaging_access",
            "groupVoiceMessagingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_user_access",
            "groupDepartmentAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_trunk_group_access",
            "groupDepartmentAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_phone_number_extension_access",
            "groupDepartmentAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_calling_line_id_number_access",
            "groupDepartmentAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_authentication_access",
            "groupUserAuthenticationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_group_directory_access",
            "groupUserGroupDirectoryAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_profile_access",
            "groupUserProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_enhanced_call_logs_access",
            "groupUserEnhancedCallLogsAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_profile_access",
            "groupAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_user_access",
            "groupAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_admin_access",
            "groupAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_department_access",
            "groupAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_access_device_access",
            "groupAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_feature_access_code_access",
            "groupAdminFeatureAccessCodeAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_calling_line_id_number_access",
            "groupAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_service_access",
            "groupAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_trunk_group_access",
            "groupAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_session_admission_control_access",
            "groupAdminSessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_office_zone_access",
            "groupAdminOfficeZoneAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_profile_access",
            "serviceProviderAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_group_access",
            "serviceProviderAdminGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_user_access",
            "serviceProviderAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_admin_access",
            "serviceProviderAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_calling_line_id_number_access",
            "serviceProviderAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_access",
            "serviceProviderAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_session_admission_control_access",
            "serviceProviderAdminSessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_office_zone_access",
            "serviceProviderAdminOfficeZoneAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* groupCallingPlanAccess
    group_calling_plan_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupExtensionAccess
    group_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupLDAPIntegrationAccess
    group_ldap_integration_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupVoiceMessagingAccess
    group_voice_messaging_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminUserAccess
    group_department_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminTrunkGroupAccess
    group_department_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminPhoneNumberExtensionAccess
    group_department_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminCallingLineIdNumberAccess
    group_department_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserAuthenticationAccess
    group_user_authentication_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserGroupDirectoryAccess
    group_user_group_directory_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserProfileAccess
    group_user_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserEnhancedCallLogsAccess
    group_user_enhanced_call_logs_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminProfileAccess
    group_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminUserAccess
    group_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAdminAccess
    group_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminDepartmentAccess
    group_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAccessDeviceAccess
    group_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminEnhancedServiceInstanceAccess
    group_admin_enhanced_service_instance_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminFeatureAccessCodeAccess
    group_admin_feature_access_code_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminPhoneNumberExtensionAccess
    group_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminCallingLineIdNumberAccess
    group_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminServiceAccess
    group_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminTrunkGroupAccess
    group_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminSessionAdmissionControlAccess
    group_admin_session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminOfficeZoneAccess
    group_admin_office_zone_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminProfileAccess
    service_provider_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminGroupAccess
    service_provider_admin_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminUserAccess
    service_provider_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAdminAccess
    service_provider_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminDepartmentAccess
    service_provider_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAccessDeviceAccess
    service_provider_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminPhoneNumberExtensionAccess
    service_provider_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminCallingLineIdNumberAccess
    service_provider_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServiceAccess
    service_provider_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServicePackAccess
    service_provider_admin_service_pack_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminSessionAdmissionControlAccess
    service_provider_admin_session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminWebBrandingAccess
    service_provider_admin_web_branding_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminOfficeZoneAccess
    service_provider_admin_office_zone_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseAdminNetworkPolicyAccess
    enterprise_admin_network_policy_access = Field(
        type=str,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "group_calling_plan_access",
            "groupCallingPlanAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_extension_access",
            "groupExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_ldap_integration_access",
            "groupLDAPIntegrationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_voice_messaging_access",
            "groupVoiceMessagingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_user_access",
            "groupDepartmentAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_trunk_group_access",
            "groupDepartmentAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_phone_number_extension_access",
            "groupDepartmentAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_calling_line_id_number_access",
            "groupDepartmentAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_authentication_access",
            "groupUserAuthenticationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_group_directory_access",
            "groupUserGroupDirectoryAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_profile_access",
            "groupUserProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_enhanced_call_logs_access",
            "groupUserEnhancedCallLogsAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_profile_access",
            "groupAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_user_access",
            "groupAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_admin_access",
            "groupAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_department_access",
            "groupAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_access_device_access",
            "groupAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_feature_access_code_access",
            "groupAdminFeatureAccessCodeAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_calling_line_id_number_access",
            "groupAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_service_access",
            "groupAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_trunk_group_access",
            "groupAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_session_admission_control_access",
            "groupAdminSessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_office_zone_access",
            "groupAdminOfficeZoneAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_profile_access",
            "serviceProviderAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_group_access",
            "serviceProviderAdminGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_user_access",
            "serviceProviderAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_admin_access",
            "serviceProviderAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_calling_line_id_number_access",
            "serviceProviderAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_access",
            "serviceProviderAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_session_admission_control_access",
            "serviceProviderAdminSessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_office_zone_access",
            "serviceProviderAdminOfficeZoneAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_communication_barring_access",
            "serviceProviderAdminCommunicationBarringAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* groupCallingPlanAccess
    group_calling_plan_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupExtensionAccess
    group_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupLDAPIntegrationAccess
    group_ldap_integration_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupVoiceMessagingAccess
    group_voice_messaging_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminUserAccess
    group_department_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminTrunkGroupAccess
    group_department_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminPhoneNumberExtensionAccess
    group_department_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminCallingLineIdNumberAccess
    group_department_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserAuthenticationAccess
    group_user_authentication_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserGroupDirectoryAccess
    group_user_group_directory_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserProfileAccess
    group_user_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserEnhancedCallLogsAccess
    group_user_enhanced_call_logs_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminProfileAccess
    group_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminUserAccess
    group_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAdminAccess
    group_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminDepartmentAccess
    group_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAccessDeviceAccess
    group_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminEnhancedServiceInstanceAccess
    group_admin_enhanced_service_instance_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminFeatureAccessCodeAccess
    group_admin_feature_access_code_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminPhoneNumberExtensionAccess
    group_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminCallingLineIdNumberAccess
    group_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminServiceAccess
    group_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminTrunkGroupAccess
    group_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminSessionAdmissionControlAccess
    group_admin_session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminOfficeZoneAccess
    group_admin_office_zone_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminProfileAccess
    service_provider_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminGroupAccess
    service_provider_admin_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminUserAccess
    service_provider_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAdminAccess
    service_provider_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminDepartmentAccess
    service_provider_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAccessDeviceAccess
    service_provider_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminPhoneNumberExtensionAccess
    service_provider_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminCallingLineIdNumberAccess
    service_provider_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServiceAccess
    service_provider_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServicePackAccess
    service_provider_admin_service_pack_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminSessionAdmissionControlAccess
    service_provider_admin_session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminWebBrandingAccess
    service_provider_admin_web_branding_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminOfficeZoneAccess
    service_provider_admin_office_zone_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminCommunicationBarringAccess
    service_provider_admin_communication_barring_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseAdminNetworkPolicyAccess
    enterprise_admin_network_policy_access = Field(
        type=str,
        required=True,
    )


class SystemPolicyGetDefaultResponse17sp3(OCIResponse):
    """
    Response to ``SystemPolicyGetDefaultRequest17sp3()``.
    Contains the default policy settings for the system.
    """

    _ELEMENTS = (
        E(
            "group_calling_plan_access",
            "groupCallingPlanAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_extension_access",
            "groupExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_ldap_integration_access",
            "groupLDAPIntegrationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_voice_messaging_access",
            "groupVoiceMessagingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_user_access",
            "groupDepartmentAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_trunk_group_access",
            "groupDepartmentAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_phone_number_extension_access",
            "groupDepartmentAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_calling_line_id_number_access",
            "groupDepartmentAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_authentication_access",
            "groupUserAuthenticationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_group_directory_access",
            "groupUserGroupDirectoryAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_profile_access",
            "groupUserProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_enhanced_call_logs_access",
            "groupUserEnhancedCallLogsAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_profile_access",
            "groupAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_user_access",
            "groupAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_admin_access",
            "groupAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_department_access",
            "groupAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_access_device_access",
            "groupAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_feature_access_code_access",
            "groupAdminFeatureAccessCodeAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_calling_line_id_number_access",
            "groupAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_service_access",
            "groupAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_trunk_group_access",
            "groupAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_session_admission_control_access",
            "groupAdminSessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_office_zone_access",
            "groupAdminOfficeZoneAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_dialable_caller_id_access",
            "groupAdminDialableCallerIDAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_profile_access",
            "serviceProviderAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_group_access",
            "serviceProviderAdminGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_user_access",
            "serviceProviderAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_admin_access",
            "serviceProviderAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_calling_line_id_number_access",
            "serviceProviderAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_access",
            "serviceProviderAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_session_admission_control_access",
            "serviceProviderAdminSessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_office_zone_access",
            "serviceProviderAdminOfficeZoneAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_dialable_caller_id_access",
            "serviceProviderAdminDialableCallerIDAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* groupCallingPlanAccess
    group_calling_plan_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupExtensionAccess
    group_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupLDAPIntegrationAccess
    group_ldap_integration_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupVoiceMessagingAccess
    group_voice_messaging_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminUserAccess
    group_department_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminTrunkGroupAccess
    group_department_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminPhoneNumberExtensionAccess
    group_department_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminCallingLineIdNumberAccess
    group_department_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserAuthenticationAccess
    group_user_authentication_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserGroupDirectoryAccess
    group_user_group_directory_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserProfileAccess
    group_user_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserEnhancedCallLogsAccess
    group_user_enhanced_call_logs_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminProfileAccess
    group_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminUserAccess
    group_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAdminAccess
    group_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminDepartmentAccess
    group_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAccessDeviceAccess
    group_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminEnhancedServiceInstanceAccess
    group_admin_enhanced_service_instance_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminFeatureAccessCodeAccess
    group_admin_feature_access_code_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminPhoneNumberExtensionAccess
    group_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminCallingLineIdNumberAccess
    group_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminServiceAccess
    group_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminTrunkGroupAccess
    group_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminSessionAdmissionControlAccess
    group_admin_session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminOfficeZoneAccess
    group_admin_office_zone_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminDialableCallerIDAccess
    group_admin_dialable_caller_id_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminProfileAccess
    service_provider_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminGroupAccess
    service_provider_admin_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminUserAccess
    service_provider_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAdminAccess
    service_provider_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminDepartmentAccess
    service_provider_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAccessDeviceAccess
    service_provider_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminPhoneNumberExtensionAccess
    service_provider_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminCallingLineIdNumberAccess
    service_provider_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServiceAccess
    service_provider_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServicePackAccess
    service_provider_admin_service_pack_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminSessionAdmissionControlAccess
    service_provider_admin_session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminWebBrandingAccess
    service_provider_admin_web_branding_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminOfficeZoneAccess
    service_provider_admin_office_zone_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseAdminNetworkPolicyAccess
    enterprise_admin_network_policy_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminDialableCallerIDAccess
    service_provider_admin_dialable_caller_id_access = Field(
        type=str,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "group_calling_plan_access",
            "groupCallingPlanAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_extension_access",
            "groupExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_ldap_integration_access",
            "groupLDAPIntegrationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_voice_messaging_access",
            "groupVoiceMessagingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_user_access",
            "groupDepartmentAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_trunk_group_access",
            "groupDepartmentAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_phone_number_extension_access",
            "groupDepartmentAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_calling_line_id_number_access",
            "groupDepartmentAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_authentication_access",
            "groupUserAuthenticationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_group_directory_access",
            "groupUserGroupDirectoryAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_profile_access",
            "groupUserProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_enhanced_call_logs_access",
            "groupUserEnhancedCallLogsAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_profile_access",
            "groupAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_user_access",
            "groupAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_admin_access",
            "groupAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_department_access",
            "groupAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_access_device_access",
            "groupAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_feature_access_code_access",
            "groupAdminFeatureAccessCodeAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_calling_line_id_number_access",
            "groupAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_service_access",
            "groupAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_trunk_group_access",
            "groupAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_session_admission_control_access",
            "groupAdminSessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_office_zone_access",
            "groupAdminOfficeZoneAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_number_activation_access",
            "groupAdminNumberActivationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_dialable_caller_id_access",
            "groupAdminDialableCallerIDAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_profile_access",
            "serviceProviderAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_group_access",
            "serviceProviderAdminGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_user_access",
            "serviceProviderAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_admin_access",
            "serviceProviderAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_calling_line_id_number_access",
            "serviceProviderAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_access",
            "serviceProviderAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_session_admission_control_access",
            "serviceProviderAdminSessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_office_zone_access",
            "serviceProviderAdminOfficeZoneAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_communication_barring_access",
            "serviceProviderAdminCommunicationBarringAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_admin_number_activation_access",
            "enterpriseAdminNumberActivationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_dialable_caller_id_access",
            "serviceProviderAdminDialableCallerIDAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* groupCallingPlanAccess
    group_calling_plan_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupExtensionAccess
    group_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupLDAPIntegrationAccess
    group_ldap_integration_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupVoiceMessagingAccess
    group_voice_messaging_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminUserAccess
    group_department_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminTrunkGroupAccess
    group_department_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminPhoneNumberExtensionAccess
    group_department_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminCallingLineIdNumberAccess
    group_department_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserAuthenticationAccess
    group_user_authentication_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserGroupDirectoryAccess
    group_user_group_directory_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserProfileAccess
    group_user_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserEnhancedCallLogsAccess
    group_user_enhanced_call_logs_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminProfileAccess
    group_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminUserAccess
    group_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAdminAccess
    group_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminDepartmentAccess
    group_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAccessDeviceAccess
    group_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminEnhancedServiceInstanceAccess
    group_admin_enhanced_service_instance_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminFeatureAccessCodeAccess
    group_admin_feature_access_code_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminPhoneNumberExtensionAccess
    group_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminCallingLineIdNumberAccess
    group_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminServiceAccess
    group_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminTrunkGroupAccess
    group_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminSessionAdmissionControlAccess
    group_admin_session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminOfficeZoneAccess
    group_admin_office_zone_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminNumberActivationAccess
    group_admin_number_activation_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminDialableCallerIDAccess
    group_admin_dialable_caller_id_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminProfileAccess
    service_provider_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminGroupAccess
    service_provider_admin_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminUserAccess
    service_provider_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAdminAccess
    service_provider_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminDepartmentAccess
    service_provider_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAccessDeviceAccess
    service_provider_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminPhoneNumberExtensionAccess
    service_provider_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminCallingLineIdNumberAccess
    service_provider_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServiceAccess
    service_provider_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServicePackAccess
    service_provider_admin_service_pack_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminSessionAdmissionControlAccess
    service_provider_admin_session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminWebBrandingAccess
    service_provider_admin_web_branding_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminOfficeZoneAccess
    service_provider_admin_office_zone_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminCommunicationBarringAccess
    service_provider_admin_communication_barring_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseAdminNetworkPolicyAccess
    enterprise_admin_network_policy_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseAdminNumberActivationAccess
    enterprise_admin_number_activation_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminDialableCallerIDAccess
    service_provider_admin_dialable_caller_id_access = Field(
        type=str,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "group_calling_plan_access",
            "groupCallingPlanAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_extension_access",
            "groupExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_ldap_integration_access",
            "groupLDAPIntegrationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_voice_messaging_access",
            "groupVoiceMessagingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_user_access",
            "groupDepartmentAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_trunk_group_access",
            "groupDepartmentAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_phone_number_extension_access",
            "groupDepartmentAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_calling_line_id_number_access",
            "groupDepartmentAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_authentication_access",
            "groupUserAuthenticationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_group_directory_access",
            "groupUserGroupDirectoryAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_profile_access",
            "groupUserProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_enhanced_call_logs_access",
            "groupUserEnhancedCallLogsAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_profile_access",
            "groupAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_user_access",
            "groupAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_admin_access",
            "groupAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_department_access",
            "groupAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_access_device_access",
            "groupAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_feature_access_code_access",
            "groupAdminFeatureAccessCodeAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_calling_line_id_number_access",
            "groupAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_service_access",
            "groupAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_trunk_group_access",
            "groupAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_session_admission_control_access",
            "groupAdminSessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_office_zone_access",
            "groupAdminOfficeZoneAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_number_activation_access",
            "groupAdminNumberActivationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_dialable_caller_id_access",
            "groupAdminDialableCallerIDAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_communication_barring_user_profile_access",
            "groupAdminCommunicationBarringUserProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_profile_access",
            "serviceProviderAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_group_access",
            "serviceProviderAdminGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_user_access",
            "serviceProviderAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_admin_access",
            "serviceProviderAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_calling_line_id_number_access",
            "serviceProviderAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_access",
            "serviceProviderAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_session_admission_control_access",
            "serviceProviderAdminSessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_office_zone_access",
            "serviceProviderAdminOfficeZoneAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_communication_barring_access",
            "serviceProviderAdminCommunicationBarringAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_admin_number_activation_access",
            "enterpriseAdminNumberActivationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_dialable_caller_id_access",
            "serviceProviderAdminDialableCallerIDAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* groupCallingPlanAccess
    group_calling_plan_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupExtensionAccess
    group_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupLDAPIntegrationAccess
    group_ldap_integration_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupVoiceMessagingAccess
    group_voice_messaging_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminUserAccess
    group_department_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminTrunkGroupAccess
    group_department_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminPhoneNumberExtensionAccess
    group_department_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminCallingLineIdNumberAccess
    group_department_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserAuthenticationAccess
    group_user_authentication_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserGroupDirectoryAccess
    group_user_group_directory_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserProfileAccess
    group_user_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserEnhancedCallLogsAccess
    group_user_enhanced_call_logs_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminProfileAccess
    group_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminUserAccess
    group_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAdminAccess
    group_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminDepartmentAccess
    group_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAccessDeviceAccess
    group_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminEnhancedServiceInstanceAccess
    group_admin_enhanced_service_instance_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminFeatureAccessCodeAccess
    group_admin_feature_access_code_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminPhoneNumberExtensionAccess
    group_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminCallingLineIdNumberAccess
    group_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminServiceAccess
    group_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminTrunkGroupAccess
    group_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminSessionAdmissionControlAccess
    group_admin_session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminOfficeZoneAccess
    group_admin_office_zone_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminNumberActivationAccess
    group_admin_number_activation_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminDialableCallerIDAccess
    group_admin_dialable_caller_id_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminCommunicationBarringUserProfileAccess
    group_admin_communication_barring_user_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminProfileAccess
    service_provider_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminGroupAccess
    service_provider_admin_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminUserAccess
    service_provider_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAdminAccess
    service_provider_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminDepartmentAccess
    service_provider_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAccessDeviceAccess
    service_provider_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminPhoneNumberExtensionAccess
    service_provider_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminCallingLineIdNumberAccess
    service_provider_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServiceAccess
    service_provider_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServicePackAccess
    service_provider_admin_service_pack_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminSessionAdmissionControlAccess
    service_provider_admin_session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminWebBrandingAccess
    service_provider_admin_web_branding_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminOfficeZoneAccess
    service_provider_admin_office_zone_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminCommunicationBarringAccess
    service_provider_admin_communication_barring_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseAdminNetworkPolicyAccess
    enterprise_admin_network_policy_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseAdminNumberActivationAccess
    enterprise_admin_number_activation_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminDialableCallerIDAccess
    service_provider_admin_dialable_caller_id_access = Field(
        type=str,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "group_calling_plan_access",
            "groupCallingPlanAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_extension_access",
            "groupExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_ldap_integration_access",
            "groupLDAPIntegrationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_voice_messaging_access",
            "groupVoiceMessagingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_user_access",
            "groupDepartmentAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_trunk_group_access",
            "groupDepartmentAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_phone_number_extension_access",
            "groupDepartmentAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_department_admin_calling_line_id_number_access",
            "groupDepartmentAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_authentication_access",
            "groupUserAuthenticationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_group_directory_access",
            "groupUserGroupDirectoryAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_profile_access",
            "groupUserProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_enhanced_call_logs_access",
            "groupUserEnhancedCallLogsAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_user_auto_attendant_name_dialing_access",
            "groupUserAutoAttendantNameDialingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_profile_access",
            "groupAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_user_access",
            "groupAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_admin_access",
            "groupAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_department_access",
            "groupAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_access_device_access",
            "groupAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_enhanced_service_instance_access",
            "groupAdminEnhancedServiceInstanceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_feature_access_code_access",
            "groupAdminFeatureAccessCodeAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_phone_number_extension_access",
            "groupAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_calling_line_id_number_access",
            "groupAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_service_access",
            "groupAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_trunk_group_access",
            "groupAdminTrunkGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_verify_translation_and_routing_access",
            "groupAdminVerifyTranslationAndRoutingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_session_admission_control_access",
            "groupAdminSessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_office_zone_access",
            "groupAdminOfficeZoneAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_number_activation_access",
            "groupAdminNumberActivationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_dialable_caller_id_access",
            "groupAdminDialableCallerIDAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_admin_communication_barring_user_profile_access",
            "groupAdminCommunicationBarringUserProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_profile_access",
            "serviceProviderAdminProfileAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_group_access",
            "serviceProviderAdminGroupAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_user_access",
            "serviceProviderAdminUserAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_admin_access",
            "serviceProviderAdminAdminAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_department_access",
            "serviceProviderAdminDepartmentAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_access_device_access",
            "serviceProviderAdminAccessDeviceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_phone_number_extension_access",
            "serviceProviderAdminPhoneNumberExtensionAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_calling_line_id_number_access",
            "serviceProviderAdminCallingLineIdNumberAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_access",
            "serviceProviderAdminServiceAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_service_pack_access",
            "serviceProviderAdminServicePackAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_session_admission_control_access",
            "serviceProviderAdminSessionAdmissionControlAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_verify_translation_and_routing_access",
            "serviceProviderAdminVerifyTranslationAndRoutingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_web_branding_access",
            "serviceProviderAdminWebBrandingAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_office_zone_access",
            "serviceProviderAdminOfficeZoneAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_communication_barring_access",
            "serviceProviderAdminCommunicationBarringAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_admin_network_policy_access",
            "enterpriseAdminNetworkPolicyAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_admin_number_activation_access",
            "enterpriseAdminNumberActivationAccess",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_admin_dialable_caller_id_access",
            "serviceProviderAdminDialableCallerIDAccess",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* groupCallingPlanAccess
    group_calling_plan_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupExtensionAccess
    group_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupLDAPIntegrationAccess
    group_ldap_integration_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupVoiceMessagingAccess
    group_voice_messaging_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminUserAccess
    group_department_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminTrunkGroupAccess
    group_department_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminPhoneNumberExtensionAccess
    group_department_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupDepartmentAdminCallingLineIdNumberAccess
    group_department_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserAuthenticationAccess
    group_user_authentication_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserGroupDirectoryAccess
    group_user_group_directory_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserProfileAccess
    group_user_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserEnhancedCallLogsAccess
    group_user_enhanced_call_logs_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupUserAutoAttendantNameDialingAccess
    group_user_auto_attendant_name_dialing_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminProfileAccess
    group_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminUserAccess
    group_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAdminAccess
    group_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminDepartmentAccess
    group_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminAccessDeviceAccess
    group_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminEnhancedServiceInstanceAccess
    group_admin_enhanced_service_instance_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminFeatureAccessCodeAccess
    group_admin_feature_access_code_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminPhoneNumberExtensionAccess
    group_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminCallingLineIdNumberAccess
    group_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminServiceAccess
    group_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminTrunkGroupAccess
    group_admin_trunk_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminVerifyTranslationAndRoutingAccess
    group_admin_verify_translation_and_routing_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminSessionAdmissionControlAccess
    group_admin_session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminOfficeZoneAccess
    group_admin_office_zone_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminNumberActivationAccess
    group_admin_number_activation_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminDialableCallerIDAccess
    group_admin_dialable_caller_id_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupAdminCommunicationBarringUserProfileAccess
    group_admin_communication_barring_user_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminProfileAccess
    service_provider_admin_profile_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminGroupAccess
    service_provider_admin_group_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminUserAccess
    service_provider_admin_user_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAdminAccess
    service_provider_admin_admin_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminDepartmentAccess
    service_provider_admin_department_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminAccessDeviceAccess
    service_provider_admin_access_device_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminPhoneNumberExtensionAccess
    service_provider_admin_phone_number_extension_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminCallingLineIdNumberAccess
    service_provider_admin_calling_line_id_number_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServiceAccess
    service_provider_admin_service_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminServicePackAccess
    service_provider_admin_service_pack_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminSessionAdmissionControlAccess
    service_provider_admin_session_admission_control_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminVerifyTranslationAndRoutingAccess
    service_provider_admin_verify_translation_and_routing_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminWebBrandingAccess
    service_provider_admin_web_branding_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminOfficeZoneAccess
    service_provider_admin_office_zone_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminCommunicationBarringAccess
    service_provider_admin_communication_barring_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseAdminNetworkPolicyAccess
    enterprise_admin_network_policy_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* enterpriseAdminNumberActivationAccess
    enterprise_admin_number_activation_access = Field(
        type=str,
        required=True,
    )
    #: str: *Required* serviceProviderAdminDialableCallerIDAccess
    service_provider_admin_dialable_caller_id_access = Field(
        type=str,
        required=True,
    )


class SystemPortalAPIGetACLListResponse(OCIResponse):
    """
    Response to ``SystemPortalAPIGetACLListRequest()``.
    Returns a table with column headings:
    "Net Address" and "Description".
    """

    _ELEMENTS = (
        E(
            "acl_table",
            "aclTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* aclTable  *Tabular*
    acl_table = Field(
        type=list,
        required=True,
    )


class SystemPortalPasscodeRulesGetResponse(OCIResponse):
    """
    Response to ``SystemPortalPasscodeRulesGetRequest()``.
    Contains the system passcode rules setting.
    """

    _ELEMENTS = (
        E(
            "disallow_repeated_digits",
            "disallowRepeatedDigits",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_user_number",
            "disallowUserNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_user_number",
            "disallowReversedUserNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_old_passcode",
            "disallowOldPasscode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_old_passcode",
            "disallowReversedOldPasscode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_code_length",
            "minCodeLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_code_length",
            "maxCodeLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "disable_login_after_max_failed_login_attempts",
            "disableLoginAfterMaxFailedLoginAttempts",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_failed_login_attempts",
            "maxFailedLoginAttempts",
            int,
            False,
            False,
            False,
        ),
        E(
            "expire_password",
            "expirePassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "passcode_expires_days",
            "passcodeExpiresDays",
            int,
            False,
            False,
            False,
        ),
        E(
            "send_login_disabled_notify_email",
            "sendLoginDisabledNotifyEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "login_disabled_notify_email_address",
            "loginDisabledNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "default_password",
            "defaultPassword",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* disallowRepeatedDigits
    disallow_repeated_digits = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowUserNumber
    disallow_user_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedUserNumber
    disallow_reversed_user_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowOldPasscode
    disallow_old_passcode = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedOldPasscode
    disallow_reversed_old_passcode = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minCodeLength
    min_code_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxCodeLength
    max_code_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disableLoginAfterMaxFailedLoginAttempts
    disable_login_after_max_failed_login_attempts = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* maxFailedLoginAttempts
    max_failed_login_attempts = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* expirePassword
    expire_password = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* passcodeExpiresDays
    passcode_expires_days = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* sendLoginDisabledNotifyEmail
    send_login_disabled_notify_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* loginDisabledNotifyEmailAddress
    login_disabled_notify_email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* defaultPassword
    default_password = Field(
        type=str,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "disallow_repeated_digits",
            "disallowRepeatedDigits",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_repeated_digits",
            "numberOfRepeatedDigits",
            int,
            False,
            True,
            False,
        ),
        E(
            "disallow_repeated_patterns",
            "disallowRepeatedPatterns",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_contiguous_sequences",
            "disallowContiguousSequences",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_ascending_digits",
            "numberOfAscendingDigits",
            int,
            False,
            True,
            False,
        ),
        E(
            "number_of_descending_digits",
            "numberOfDescendingDigits",
            int,
            False,
            True,
            False,
        ),
        E(
            "disallow_user_number",
            "disallowUserNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_user_number",
            "disallowReversedUserNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_old_passcode",
            "disallowOldPasscode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_previous_passcodes",
            "numberOfPreviousPasscodes",
            int,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_old_passcode",
            "disallowReversedOldPasscode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_code_length",
            "minCodeLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_code_length",
            "maxCodeLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "disable_login_after_max_failed_login_attempts",
            "disableLoginAfterMaxFailedLoginAttempts",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_failed_login_attempts",
            "maxFailedLoginAttempts",
            int,
            False,
            False,
            False,
        ),
        E(
            "expire_password",
            "expirePassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "passcode_expires_days",
            "passcodeExpiresDays",
            int,
            False,
            False,
            False,
        ),
        E(
            "send_login_disabled_notify_email",
            "sendLoginDisabledNotifyEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "login_disabled_notify_email_address",
            "loginDisabledNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "default_password",
            "defaultPassword",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* disallowRepeatedDigits
    disallow_repeated_digits = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberOfRepeatedDigits
    number_of_repeated_digits = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disallowRepeatedPatterns
    disallow_repeated_patterns = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowContiguousSequences
    disallow_contiguous_sequences = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberOfAscendingDigits
    number_of_ascending_digits = Field(
        type=int,
        required=True,
    )
    #: int: *Required* numberOfDescendingDigits
    number_of_descending_digits = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disallowUserNumber
    disallow_user_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedUserNumber
    disallow_reversed_user_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowOldPasscode
    disallow_old_passcode = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* numberOfPreviousPasscodes
    number_of_previous_passcodes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disallowReversedOldPasscode
    disallow_reversed_old_passcode = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minCodeLength
    min_code_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxCodeLength
    max_code_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disableLoginAfterMaxFailedLoginAttempts
    disable_login_after_max_failed_login_attempts = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* maxFailedLoginAttempts
    max_failed_login_attempts = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* expirePassword
    expire_password = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* passcodeExpiresDays
    passcode_expires_days = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* sendLoginDisabledNotifyEmail
    send_login_disabled_notify_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* loginDisabledNotifyEmailAddress
    login_disabled_notify_email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* defaultPassword
    default_password = Field(
        type=str,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "groups_using_carrier_table",
            "groupsUsingCarrierTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* groupsUsingCarrierTable  *Tabular*
    groups_using_carrier_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "system_carrier_table",
            "systemCarrierTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* systemCarrierTable  *Tabular*
    system_carrier_table = Field(
        type=list,
        required=True,
    )


class SystemPreferredCarrierGetResponse(OCIResponse):
    """
    Response to a ``SystemPreferredCarrierGetRequest()``.
    Contains the attributes of a carrier.
    """

    _ELEMENTS = (
        E(
            "cic",
            "cic",
            str,
            False,
            True,
            False,
        ),
        E(
            "country_code",
            "countryCode",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_intra_lata",
            "isIntraLata",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_inter_lata",
            "isInterLata",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_international",
            "isInternational",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* cic
    cic = Field(
        type=str,
        required=True,
    )
    #: str: *Required* countryCode
    country_code = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isIntraLata
    is_intra_lata = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isInterLata
    is_inter_lata = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isInternational
    is_international = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "users_using_carrier_table",
            "usersUsingCarrierTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* usersUsingCarrierTable  *Tabular*
    users_using_carrier_table = Field(
        type=list,
        required=True,
    )


class SystemProvisioningValidationGetResponse(OCIResponse):
    """
    Response to the ``SystemProvisioningValidationGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )


class SystemProvisioningValidationGetResponse14sp2(OCIResponse):
    """
    Response to the ``SystemProvisioningValidationGetRequest14sp2()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_network_server_query_active",
            "isNetworkServerQueryActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "timeout_seconds",
            "timeoutSeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isNetworkServerQueryActive
    is_network_server_query_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* timeoutSeconds
    timeout_seconds = Field(
        type=int,
        required=True,
    )


class SystemRedundancyParametersGetResponse(OCIResponse):
    """
    Replaced By ``SystemRedundancyParametersGetResponse16sp2()``

    Response to ``SystemRedundancyParametersGetRequest()``.
    Contains a list of system Redundancy parameters.
    """

    _ELEMENTS = (
        E(
            "roll_back_timer_minutes",
            "rollBackTimerMinutes",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* rollBackTimerMinutes
    roll_back_timer_minutes = Field(
        type=int,
        required=True,
    )


class SystemRedundancyParametersGetResponse16sp2(OCIResponse):
    """
    Response to ``SystemRedundancyParametersGetRequest16sp2()``.
    Contains a list of system Redundancy parameters.
    """

    _ELEMENTS = (
        E(
            "roll_back_timer_minutes",
            "rollBackTimerMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "send_sip_option_message_upon_migration",
            "sendSipOptionMessageUponMigration",
            bool,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* rollBackTimerMinutes
    roll_back_timer_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* sendSipOptionMessageUponMigration
    send_sip_option_message_upon_migration = Field(
        type=bool,
        required=True,
    )


class SystemRoamingNetworkGetListResponse(OCIResponse):
    """
    Response to the ``SystemRoamingNetworkGetListRequest()``.
    Contains a table with columns: "MSC Address", "Network Translation Index".
    """

    _ELEMENTS = (
        E(
            "roaming_network_table",
            "roamingNetworkTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* roamingNetworkTable  *Tabular*
    roaming_network_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "number_range_summary_table",
            "numberRangeSummaryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* numberRangeSummaryTable  *Tabular*
    number_range_summary_table = Field(
        type=list,
        required=True,
    )


class SystemRoutePointExternalSystemApplicationControllerGetResponse(OCIResponse):
    """
    Response to the ``SystemRoutePointExternalSystemApplicationControllerGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "application_controller",
            "applicationController",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* applicationController
    application_controller = Field(
        type=str,
        required=False,
    )


class SystemRoutePointExternalSystemGetListResponse(OCIResponse):
    """
    Response to the ``SystemRoutePointExternalSystemGetListRequest()``.

    Contains a table with column headings:
    "External System", "Description".
    """

    _ELEMENTS = (
        E(
            "external_system_table",
            "externalSystemTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* externalSystemTable  *Tabular*
    external_system_table = Field(
        type=list,
        required=True,
    )


class SystemRoutePointExternalSystemGetRoutePointListResponse(OCIResponse):
    """
    Response to the ``SystemRoutePointExternalSystemGetRoutePointListRequest()``.
    """

    _ELEMENTS = (
        E(
            "service_user_id",
            "serviceUserId",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* serviceUserId
    service_user_id = Field(
        type=str,
        required=False,
    )


class SystemRoutingGetResponse(OCIResponse):
    """
    Response to ``SystemRoutingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_route_round_robin",
            "isRouteRoundRobin",
            bool,
            False,
            True,
            False,
        ),
        E(
            "route_timer_seconds",
            "routeTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "dns_resolved_address_selection_policy",
            "dnsResolvedAddressSelectionPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "stateful_expiration_minutes",
            "statefulExpirationMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_addresses_per_hostname",
            "maxAddressesPerHostname",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_addresses_during_setup",
            "maxAddressesDuringSetup",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isRouteRoundRobin
    is_route_round_robin = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* routeTimerSeconds
    route_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* dnsResolvedAddressSelectionPolicy
    dns_resolved_address_selection_policy = Field(
        type=str,
        required=True,
    )
    #: int: *Required* statefulExpirationMinutes
    stateful_expiration_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxAddressesPerHostname
    max_addresses_per_hostname = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxAddressesDuringSetup
    max_addresses_during_setup = Field(
        type=int,
        required=True,
    )


class SystemRoutingGetRouteDeviceListResponse(OCIResponse):
    """
    Response to ``SystemRoutingGetRouteDeviceListRequest()``. The column headings are
    "Net Address",
    "Port", "Transport" and "Description".
    """

    _ELEMENTS = (
        E(
            "route_device_table",
            "routeDeviceTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* routeDeviceTable  *Tabular*
    route_device_table = Field(
        type=list,
        required=True,
    )


class SystemRoutingGetRouteListResponse(OCIResponse):
    """
    Response to ``SystemRoutingGetRouteListRequest()``.
    """

    _ELEMENTS = (
        E(
            "route_name",
            "routeName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* routeName
    route_name = Field(
        type=str,
        required=False,
    )


class SystemRoutingGetTranslationListResponse(OCIResponse):
    """
    Response to ``SystemRoutingGetTranslationListRequest()``. The column headings are
    "Routing Digits"
    and "Route".
    """

    _ELEMENTS = (
        E(
            "routing_table",
            "routingTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* routingTable  *Tabular*
    routing_table = Field(
        type=list,
        required=True,
    )


class SystemRoutingProfileGetListResponse(OCIResponse):
    """
    Response to ``SystemRoutingProfileGetListRequest()``.
    Returns a list of routing profiles defined in the system.
    """

    _ELEMENTS = (
        E(
            "routing_profile",
            "routingProfile",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* routingProfile
    routing_profile = Field(
        type=str,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "lockout_table",
            "lockoutTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* lockoutTable  *Tabular*
    lockout_table = Field(
        type=list,
        required=True,
    )


class SystemSIPAuthenticationPasswordRulesGetResponse(OCIResponse):
    """
    Response to ``SystemSIPAuthenticationPasswordRulesGetRequest()``.
    Contains the SIP authentication password rules for the system.
    """

    _ELEMENTS = (
        E(
            "disallow_authentication_name",
            "disallowAuthenticationName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_old_password",
            "disallowOldPassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_old_password",
            "disallowReversedOldPassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_digits",
            "restrictMinDigits",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_digits",
            "minDigits",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_upper_case_letters",
            "restrictMinUpperCaseLetters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_upper_case_letters",
            "minUpperCaseLetters",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_lower_case_letters",
            "restrictMinLowerCaseLetters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_lower_case_letters",
            "minLowerCaseLetters",
            int,
            False,
            True,
            False,
        ),
        E(
            "restrict_min_non_alphanumeric_characters",
            "restrictMinNonAlphanumericCharacters",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_non_alphanumeric_characters",
            "minNonAlphanumericCharacters",
            int,
            False,
            True,
            False,
        ),
        E(
            "min_length",
            "minLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "send_permanent_lockout_notification",
            "sendPermanentLockoutNotification",
            bool,
            False,
            True,
            False,
        ),
        E(
            "permanent_lockout_notify_email_address",
            "permanentLockoutNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "endpoint_authentication_lockout_type",
            "endpointAuthenticationLockoutType",
            str,
            False,
            True,
            False,
        ),
        E(
            "endpoint_temporary_lockout_threshold",
            "endpointTemporaryLockoutThreshold",
            int,
            False,
            True,
            False,
        ),
        E(
            "endpoint_wait_algorithm",
            "endpointWaitAlgorithm",
            str,
            False,
            True,
            False,
        ),
        E(
            "endpoint_lockout_fixed_minutes",
            "endpointLockoutFixedMinutes",
            str,
            False,
            True,
            False,
        ),
        E(
            "endpoint_permanent_lockout_threshold",
            "endpointPermanentLockoutThreshold",
            int,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_authentication_lockout_type",
            "trunkGroupAuthenticationLockoutType",
            str,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_temporary_lockout_threshold",
            "trunkGroupTemporaryLockoutThreshold",
            int,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_wait_algorithm",
            "trunkGroupWaitAlgorithm",
            str,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_lockout_fixed_minutes",
            "trunkGroupLockoutFixedMinutes",
            str,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_permanent_lockout_threshold",
            "trunkGroupPermanentLockoutThreshold",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* disallowAuthenticationName
    disallow_authentication_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowOldPassword
    disallow_old_password = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedOldPassword
    disallow_reversed_old_password = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* restrictMinDigits
    restrict_min_digits = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minDigits
    min_digits = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinUpperCaseLetters
    restrict_min_upper_case_letters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minUpperCaseLetters
    min_upper_case_letters = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinLowerCaseLetters
    restrict_min_lower_case_letters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minLowerCaseLetters
    min_lower_case_letters = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* restrictMinNonAlphanumericCharacters
    restrict_min_non_alphanumeric_characters = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minNonAlphanumericCharacters
    min_non_alphanumeric_characters = Field(
        type=int,
        required=True,
    )
    #: int: *Required* minLength
    min_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* sendPermanentLockoutNotification
    send_permanent_lockout_notification = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* permanentLockoutNotifyEmailAddress
    permanent_lockout_notify_email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* endpointAuthenticationLockoutType
    endpoint_authentication_lockout_type = Field(
        type=str,
        required=True,
    )
    #: int: *Required* endpointTemporaryLockoutThreshold
    endpoint_temporary_lockout_threshold = Field(
        type=int,
        required=True,
    )
    #: str: *Required* endpointWaitAlgorithm
    endpoint_wait_algorithm = Field(
        type=str,
        required=True,
    )
    #: str: *Required* endpointLockoutFixedMinutes
    endpoint_lockout_fixed_minutes = Field(
        type=str,
        required=True,
    )
    #: int: *Required* endpointPermanentLockoutThreshold
    endpoint_permanent_lockout_threshold = Field(
        type=int,
        required=True,
    )
    #: str: *Required* trunkGroupAuthenticationLockoutType
    trunk_group_authentication_lockout_type = Field(
        type=str,
        required=True,
    )
    #: int: *Required* trunkGroupTemporaryLockoutThreshold
    trunk_group_temporary_lockout_threshold = Field(
        type=int,
        required=True,
    )
    #: str: *Required* trunkGroupWaitAlgorithm
    trunk_group_wait_algorithm = Field(
        type=str,
        required=True,
    )
    #: str: *Required* trunkGroupLockoutFixedMinutes
    trunk_group_lockout_fixed_minutes = Field(
        type=str,
        required=True,
    )
    #: int: *Required* trunkGroupPermanentLockoutThreshold
    trunk_group_permanent_lockout_threshold = Field(
        type=int,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "lockout_table",
            "lockoutTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* lockoutTable  *Tabular*
    lockout_table = Field(
        type=list,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "device_type_files_table",
            "deviceTypeFilesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceTypeFilesTable  *Tabular*
    device_type_files_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "device_type_files_table",
            "deviceTypeFilesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceTypeFilesTable  *Tabular*
    device_type_files_table = Field(
        type=list,
        required=True,
    )


class SystemSIPDeviceTypeFileGetResponse(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeFileGetRequest()``.
    Replaced By ``SystemSIPDeviceTypeFileGetResponse14sp8()``
    """

    _ELEMENTS = (
        E(
            "file_format",
            "fileFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "remote_file_format",
            "remoteFileFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "file_category",
            "fileCategory",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_file_customization",
            "allowFileCustomization",
            bool,
            False,
            True,
            False,
        ),
        E(
            "file_source",
            "fileSource",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_http_digest_authentication",
            "useHttpDigestAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mac_based_file_authentication",
            "macBasedFileAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_name_password_file_authentication",
            "userNamePasswordFileAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mac_in_non_request_uri",
            "macInNonRequestURI",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mac_format_in_non_request_uri",
            "macFormatInNonRequestURI",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* fileFormat
    file_format = Field(
        type=str,
        required=True,
    )
    #: str: *Required* remoteFileFormat
    remote_file_format = Field(
        type=str,
        required=True,
    )
    #: str: *Required* fileCategory
    file_category = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowFileCustomization
    allow_file_customization = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* fileSource
    file_source = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useHttpDigestAuthentication
    use_http_digest_authentication = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* macBasedFileAuthentication
    mac_based_file_authentication = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* userNamePasswordFileAuthentication
    user_name_password_file_authentication = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* macInNonRequestURI
    mac_in_non_request_uri = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* macFormatInNonRequestURI
    mac_format_in_non_request_uri = Field(
        type=str,
        required=False,
    )


class SystemSIPDeviceTypeFileGetResponse14sp8(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeFileGetRequest14sp8()``.
    """

    _ELEMENTS = (
        E(
            "remote_file_format",
            "remoteFileFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "file_category",
            "fileCategory",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_file_customization",
            "allowFileCustomization",
            bool,
            False,
            True,
            False,
        ),
        E(
            "file_source",
            "fileSource",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_http_digest_authentication",
            "useHttpDigestAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mac_based_file_authentication",
            "macBasedFileAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_name_password_file_authentication",
            "userNamePasswordFileAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mac_in_non_request_uri",
            "macInNonRequestURI",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mac_format_in_non_request_uri",
            "macFormatInNonRequestURI",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* remoteFileFormat
    remote_file_format = Field(
        type=str,
        required=True,
    )
    #: str: *Required* fileCategory
    file_category = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowFileCustomization
    allow_file_customization = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* fileSource
    file_source = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useHttpDigestAuthentication
    use_http_digest_authentication = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* macBasedFileAuthentication
    mac_based_file_authentication = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* userNamePasswordFileAuthentication
    user_name_password_file_authentication = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* macInNonRequestURI
    mac_in_non_request_uri = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* macFormatInNonRequestURI
    mac_format_in_non_request_uri = Field(
        type=str,
        required=False,
    )


class SystemSIPDeviceTypeFileGetResponse16sp1(OCIResponse):
    """
    Replaced By ``SystemSIPDeviceTypeFileGetResponse18()``.
    Response to ``SystemSIPDeviceTypeFileGetRequest16sp1()``.
    """

    _ELEMENTS = (
        E(
            "remote_file_format",
            "remoteFileFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "file_category",
            "fileCategory",
            str,
            False,
            True,
            False,
        ),
        E(
            "file_customization",
            "fileCustomization",
            str,
            False,
            True,
            False,
        ),
        E(
            "file_source",
            "fileSource",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_http_digest_authentication",
            "useHttpDigestAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mac_based_file_authentication",
            "macBasedFileAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_name_password_file_authentication",
            "userNamePasswordFileAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mac_in_non_request_uri",
            "macInNonRequestURI",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mac_format_in_non_request_uri",
            "macFormatInNonRequestURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_url",
            "accessUrl",
            str,
            False,
            True,
            False,
        ),
        E(
            "repository_url",
            "repositoryUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "template_url",
            "templateUrl",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* remoteFileFormat
    remote_file_format = Field(
        type=str,
        required=True,
    )
    #: str: *Required* fileCategory
    file_category = Field(
        type=str,
        required=True,
    )
    #: str: *Required* fileCustomization
    file_customization = Field(
        type=str,
        required=True,
    )
    #: str: *Required* fileSource
    file_source = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useHttpDigestAuthentication
    use_http_digest_authentication = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* macBasedFileAuthentication
    mac_based_file_authentication = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* userNamePasswordFileAuthentication
    user_name_password_file_authentication = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* macInNonRequestURI
    mac_in_non_request_uri = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* macFormatInNonRequestURI
    mac_format_in_non_request_uri = Field(
        type=str,
        required=False,
    )
    #: str: *Required* accessUrl
    access_url = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* repositoryUrl
    repository_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* templateUrl
    template_url = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "remote_file_format",
            "remoteFileFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "file_category",
            "fileCategory",
            str,
            False,
            True,
            False,
        ),
        E(
            "file_customization",
            "fileCustomization",
            str,
            False,
            True,
            False,
        ),
        E(
            "file_source",
            "fileSource",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_http_digest_authentication",
            "useHttpDigestAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mac_based_file_authentication",
            "macBasedFileAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_name_password_file_authentication",
            "userNamePasswordFileAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mac_in_non_request_uri",
            "macInNonRequestURI",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mac_format_in_non_request_uri",
            "macFormatInNonRequestURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_url",
            "accessUrl",
            str,
            False,
            True,
            False,
        ),
        E(
            "repository_url",
            "repositoryUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "template_url",
            "templateUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_http",
            "allowHttp",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_https",
            "allowHttps",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_tftp",
            "allowTftp",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_caching",
            "enableCaching",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* remoteFileFormat
    remote_file_format = Field(
        type=str,
        required=True,
    )
    #: str: *Required* fileCategory
    file_category = Field(
        type=str,
        required=True,
    )
    #: str: *Required* fileCustomization
    file_customization = Field(
        type=str,
        required=True,
    )
    #: str: *Required* fileSource
    file_source = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useHttpDigestAuthentication
    use_http_digest_authentication = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* macBasedFileAuthentication
    mac_based_file_authentication = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* userNamePasswordFileAuthentication
    user_name_password_file_authentication = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* macInNonRequestURI
    mac_in_non_request_uri = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* macFormatInNonRequestURI
    mac_format_in_non_request_uri = Field(
        type=str,
        required=False,
    )
    #: str: *Required* accessUrl
    access_url = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* repositoryUrl
    repository_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* templateUrl
    template_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowHttp
    allow_http = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowHttps
    allow_https = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowTftp
    allow_tftp = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableCaching
    enable_caching = Field(
        type=bool,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "remote_file_format",
            "remoteFileFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "file_category",
            "fileCategory",
            str,
            False,
            True,
            False,
        ),
        E(
            "file_customization",
            "fileCustomization",
            str,
            False,
            True,
            False,
        ),
        E(
            "file_source",
            "fileSource",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_http_digest_authentication",
            "useHttpDigestAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mac_based_file_authentication",
            "macBasedFileAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_name_password_file_authentication",
            "userNamePasswordFileAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mac_in_non_request_uri",
            "macInNonRequestURI",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mac_format_in_non_request_uri",
            "macFormatInNonRequestURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_url",
            "accessUrl",
            str,
            False,
            True,
            False,
        ),
        E(
            "repository_url",
            "repositoryUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "template_url",
            "templateUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_http",
            "allowHttp",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_https",
            "allowHttps",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_tftp",
            "allowTftp",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_caching",
            "enableCaching",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_upload_from_device",
            "allowUploadFromDevice",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* remoteFileFormat
    remote_file_format = Field(
        type=str,
        required=True,
    )
    #: str: *Required* fileCategory
    file_category = Field(
        type=str,
        required=True,
    )
    #: str: *Required* fileCustomization
    file_customization = Field(
        type=str,
        required=True,
    )
    #: str: *Required* fileSource
    file_source = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useHttpDigestAuthentication
    use_http_digest_authentication = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* macBasedFileAuthentication
    mac_based_file_authentication = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* userNamePasswordFileAuthentication
    user_name_password_file_authentication = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* macInNonRequestURI
    mac_in_non_request_uri = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* macFormatInNonRequestURI
    mac_format_in_non_request_uri = Field(
        type=str,
        required=False,
    )
    #: str: *Required* accessUrl
    access_url = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* repositoryUrl
    repository_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* templateUrl
    template_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowHttp
    allow_http = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowHttps
    allow_https = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowTftp
    allow_tftp = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableCaching
    enable_caching = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUploadFromDevice
    allow_upload_from_device = Field(
        type=bool,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "remote_file_format",
            "remoteFileFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "file_category",
            "fileCategory",
            str,
            False,
            True,
            False,
        ),
        E(
            "file_customization",
            "fileCustomization",
            str,
            False,
            True,
            False,
        ),
        E(
            "file_source",
            "fileSource",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_http_digest_authentication",
            "useHttpDigestAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mac_based_file_authentication",
            "macBasedFileAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_name_password_file_authentication",
            "userNamePasswordFileAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mac_in_non_request_uri",
            "macInNonRequestURI",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mac_format_in_non_request_uri",
            "macFormatInNonRequestURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_url",
            "accessUrl",
            str,
            False,
            True,
            False,
        ),
        E(
            "repository_url",
            "repositoryUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "template_url",
            "templateUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_http",
            "allowHttp",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_https",
            "allowHttps",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_tftp",
            "allowTftp",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_caching",
            "enableCaching",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_upload_from_device",
            "allowUploadFromDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_extended_file_capture_mode",
            "defaultExtendedFileCaptureMode",
            bool,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* remoteFileFormat
    remote_file_format = Field(
        type=str,
        required=True,
    )
    #: str: *Required* fileCategory
    file_category = Field(
        type=str,
        required=True,
    )
    #: str: *Required* fileCustomization
    file_customization = Field(
        type=str,
        required=True,
    )
    #: str: *Required* fileSource
    file_source = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useHttpDigestAuthentication
    use_http_digest_authentication = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* macBasedFileAuthentication
    mac_based_file_authentication = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* userNamePasswordFileAuthentication
    user_name_password_file_authentication = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* macInNonRequestURI
    mac_in_non_request_uri = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* macFormatInNonRequestURI
    mac_format_in_non_request_uri = Field(
        type=str,
        required=False,
    )
    #: str: *Required* accessUrl
    access_url = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* repositoryUrl
    repository_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* templateUrl
    template_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowHttp
    allow_http = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowHttps
    allow_https = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowTftp
    allow_tftp = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableCaching
    enable_caching = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUploadFromDevice
    allow_upload_from_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Optional* defaultExtendedFileCaptureMode
    default_extended_file_capture_mode = Field(
        type=bool,
        required=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".
    """

    _ELEMENTS = (
        E(
            "device_type_table",
            "deviceTypeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceTypeTable  *Tabular*
    device_type_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "device_type_languages_table",
            "deviceTypeLanguagesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceTypeLanguagesTable  *Tabular*
    device_type_languages_table = Field(
        type=list,
        required=True,
    )


class SystemSIPDeviceTypeServiceGetResponse(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeServiceGetRequest()``.
    Contains the list of device type services integrated to BroadWorks.
    """

    _ELEMENTS = (
        E(
            "supports_polycom_phone_services",
            "supportsPolycomPhoneServices",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* supportsPolycomPhoneServices
    supports_polycom_phone_services = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "diversion_reason_table",
            "diversionReasonTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* diversionReasonTable  *Tabular*
    diversion_reason_table = Field(
        type=list,
        required=True,
    )


class SystemSIPGetACLListResponse(OCIResponse):
    """
    Response to ``SystemSIPGetACLListRequest()``. The table columns are:
    "Net Address", "Transport" and "Description".
    """

    _ELEMENTS = (
        E(
            "acl_table",
            "aclTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* aclTable  *Tabular*
    acl_table = Field(
        type=list,
        required=True,
    )


class SystemSIPGetContentTypeListResponse(OCIResponse):
    """
    Response to ``SystemSIPGetContentTypeListRequest()``.
    Returns a 2 column table with column headings:
    "Content Type" and "Supported Interface".
    """

    _ELEMENTS = (
        E(
            "content_type_table",
            "contentTypeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* contentTypeTable  *Tabular*
    content_type_table = Field(
        type=list,
        required=True,
    )


class SystemSMDIGetACLListResponse(OCIResponse):
    """
    Response to ``SystemSMDIGetACLListRequest()``. The table columns are:
    "Net Address" and "Description".
    """

    _ELEMENTS = (
        E(
            "acl_table",
            "aclTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* aclTable  *Tabular*
    acl_table = Field(
        type=list,
        required=True,
    )


class SystemSMDIMessageDeskGetServerListResponse(OCIResponse):
    """
    Response to ``SystemMediaServerGetListRequest()``. The SMDI Server table column
    headings are: "Device Name", "Net Address", "Port" and "Description".
    """

    _ELEMENTS = (
        E(
            "smdi_server_table",
            "smdiServerTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* smdiServerTable  *Tabular*
    smdi_server_table = Field(
        type=list,
        required=True,
    )


class SystemSMDIMessageDeskGetServerRouteListResponse(OCIResponse):
    """
    Response to ``SystemSMDIMessageDeskGetServerRouteListRequest()``.
    The SMDI Server route table column headings are: "Destination" and "SMDI Servers".
    """

    _ELEMENTS = (
        E(
            "smdi_server_route_table",
            "smdiServerRouteTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* smdiServerRouteTable  *Tabular*
    smdi_server_route_table = Field(
        type=list,
        required=True,
    )


class SystemSMDIParametersGetResponse(OCIResponse):
    """
    Response to ``SystemSMDIParametersGetListRequest()``.
    Contains a list of system SMDI parameters.
    """

    _ELEMENTS = (
        E(
            "enable_smdi",
            "enableSMDI",
            bool,
            False,
            True,
            False,
        ),
        E(
            "listening_port",
            "listeningPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_connections",
            "maxConnections",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableSMDI
    enable_smdi = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* listeningPort
    listening_port = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxConnections
    max_connections = Field(
        type=int,
        required=True,
    )


class SystemSMPPGetResponse(OCIResponse):
    """
    Response to ``SystemSMPPGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "primary_smpp_server_net_address",
            "primarySMPPServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "primary_smpp_port",
            "primarySMPPPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "secondary_smpp_server_net_address",
            "secondarySMPPServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "secondary_smpp_port",
            "secondarySMPPPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "system_id",
            "systemId",
            str,
            False,
            False,
            False,
        ),
        E(
            "password",
            "password",
            str,
            False,
            False,
            False,
        ),
        E(
            "version",
            "version",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* primarySMPPServerNetAddress
    primary_smpp_server_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Required* primarySMPPPort
    primary_smpp_port = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* secondarySMPPServerNetAddress
    secondary_smpp_server_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Required* secondarySMPPPort
    secondary_smpp_port = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* systemId
    system_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* password
    password = Field(
        type=str,
        required=False,
    )
    #: str: *Required* version
    version = Field(
        type=str,
        required=True,
    )


class SystemSMPPGetResponse14sp5(OCIResponse):
    """
    Response to ``SystemSMPPGetRequest14sp5()``.

    Replaced By ``SystemSMPPGetResponse21()``
    """

    _ELEMENTS = (
        E(
            "primary_smpp_server_net_address",
            "primarySMPPServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "primary_smpp_port",
            "primarySMPPPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "secondary_smpp_server_net_address",
            "secondarySMPPServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "secondary_smpp_port",
            "secondarySMPPPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "system_id",
            "systemId",
            str,
            False,
            False,
            False,
        ),
        E(
            "password",
            "password",
            str,
            False,
            False,
            False,
        ),
        E(
            "version",
            "version",
            str,
            False,
            True,
            False,
        ),
        E(
            "system_type",
            "systemType",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* primarySMPPServerNetAddress
    primary_smpp_server_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Required* primarySMPPPort
    primary_smpp_port = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* secondarySMPPServerNetAddress
    secondary_smpp_server_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Required* secondarySMPPPort
    secondary_smpp_port = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* systemId
    system_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* password
    password = Field(
        type=str,
        required=False,
    )
    #: str: *Required* version
    version = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* systemType
    system_type = Field(
        type=str,
        required=False,
    )


class SystemSMPPGetResponse21(OCIResponse):
    """
    Response to ``SystemSMPPGetRequest21()``.
    """

    _ELEMENTS = (
        E(
            "primary_smpp_server_net_address",
            "primarySMPPServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "primary_smpp_port",
            "primarySMPPPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "secondary_smpp_server_net_address",
            "secondarySMPPServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "secondary_smpp_port",
            "secondarySMPPPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "system_id",
            "systemId",
            str,
            False,
            False,
            False,
        ),
        E(
            "password",
            "password",
            str,
            False,
            False,
            False,
        ),
        E(
            "version",
            "version",
            str,
            False,
            True,
            False,
        ),
        E(
            "system_type",
            "systemType",
            str,
            False,
            False,
            False,
        ),
        E(
            "enable_mwi_customized_message",
            "enableMWICustomizedMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_message_payload",
            "supportMessagePayload",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_short_message_length",
            "maxShortMessageLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_gsm_mwi_ucs2_encoding",
            "useGsmMwiUcs2Encoding",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* primarySMPPServerNetAddress
    primary_smpp_server_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Required* primarySMPPPort
    primary_smpp_port = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* secondarySMPPServerNetAddress
    secondary_smpp_server_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Required* secondarySMPPPort
    secondary_smpp_port = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* systemId
    system_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* password
    password = Field(
        type=str,
        required=False,
    )
    #: str: *Required* version
    version = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* systemType
    system_type = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* enableMWICustomizedMessage
    enable_mwi_customized_message = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportMessagePayload
    support_message_payload = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxShortMessageLength
    max_short_message_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useGsmMwiUcs2Encoding
    use_gsm_mwi_ucs2_encoding = Field(
        type=bool,
        required=True,
    )


class SystemScheduleGetEventListResponse(OCIResponse):
    """
    Response to ``SystemScheduleGetEventListRequest()``.
    The response contains a list of events.
    """

    _ELEMENTS = (
        E(
            "event_name",
            "eventName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* eventName
    event_name = Field(
        type=str,
        required=False,
    )


class SystemScheduleGetListResponse(OCIResponse):
    """
    Response to ``SystemScheduleGetListRequest()``.
    The response contains a list of system schedules.
    """

    _ELEMENTS = (
        E(
            "schedule_name",
            "scheduleName",
            str,
            False,
            False,
            False,
        ),
        E(
            "schedule_type",
            "scheduleType",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* scheduleName
    schedule_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* scheduleType
    schedule_type = Field(
        type=str,
        required=False,
    )


class SystemSecurityClassificationGetClassificationResponse(OCIResponse):
    """
    Response to the ``SystemSecurityClassificationGetClassificationRequest()``.
    """

    _ELEMENTS = (
        E(
            "audio_announcement_file_description",
            "audioAnnouncementFileDescription",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_announcement_file_type",
            "audioAnnouncementFileType",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* audioAnnouncementFileDescription
    audio_announcement_file_description = Field(
        type=str,
        required=True,
    )
    #: str: *Required* audioAnnouncementFileType
    audio_announcement_file_type = Field(
        type=str,
        required=True,
    )


class SystemSecurityClassificationGetClassificationTrunkGroupUsageListResponse(
    OCIResponse,
):
    """
    Response to the ``SystemSecurityClassificationGetClassificationTrunkGroupUsageListRequest()``.
    Contains a table with column headings:
    "Trunk Group Name","Group ID","Organization ID" and "Organization Type"
    """

    _ELEMENTS = (
        E(
            "usage_table",
            "usageTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* usageTable  *Tabular*
    usage_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "usage_table",
            "usageTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* usageTable  *Tabular*
    usage_table = Field(
        type=list,
        required=True,
    )


class SystemSecurityClassificationGetResponse(OCIResponse):
    """
    Response to the ``SystemSecurityClassificationGetRequest()``.
    Contains a table with column headings:
    "Name", "Priority".
    """

    _ELEMENTS = (
        E(
            "meet_me_annc_threshold",
            "meetMeAnncThreshold",
            int,
            False,
            True,
            False,
        ),
        E(
            "security_classification_table",
            "SecurityClassificationTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: int: *Required* meetMeAnncThreshold
    meet_me_annc_threshold = Field(
        type=int,
        required=True,
    )
    #: list: *Required* SecurityClassificationTable  *Tabular*
    security_classification_table = Field(
        type=list,
        required=True,
    )


class SystemSecurityClassificationGetResponse21(OCIResponse):
    """
    Response to the ``SystemSecurityClassificationGetRequest21()``.
    Contains a table with column headings:
    "Name", "Priority".
    """

    _ELEMENTS = (
        E(
            "meet_me_annc_threshold",
            "meetMeAnncThreshold",
            int,
            False,
            True,
            False,
        ),
        E(
            "play_trunk_user_security_classification_announcement",
            "playTrunkUserSecurityClassificationAnnouncement",
            bool,
            False,
            True,
            False,
        ),
        E(
            "security_classification_table",
            "SecurityClassificationTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: int: *Required* meetMeAnncThreshold
    meet_me_annc_threshold = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* playTrunkUserSecurityClassificationAnnouncement
    play_trunk_user_security_classification_announcement = Field(
        type=bool,
        required=True,
    )
    #: list: *Required* SecurityClassificationTable  *Tabular*
    security_classification_table = Field(
        type=list,
        required=True,
    )


class SystemSelectiveServicesGetResponse(OCIResponse):
    """
    Response to ``SystemSelectiveServicesGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "schedule_combination",
            "scheduleCombination",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* scheduleCombination
    schedule_combination = Field(
        type=str,
        required=True,
    )


class SystemSelectiveServicesGetResponse18sp1(OCIResponse):
    """
    Response to ``SystemSelectiveServicesGetRequest18sp1()``.
    """

    _ELEMENTS = (
        E(
            "schedule_combination",
            "scheduleCombination",
            str,
            False,
            True,
            False,
        ),
        E(
            "screen_private_number",
            "screenPrivateNumber",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* scheduleCombination
    schedule_combination = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* screenPrivateNumber
    screen_private_number = Field(
        type=bool,
        required=True,
    )


class SystemServerAddressesGetResponse(OCIResponse):
    """
    Response to ``SystemServerAddressesGetRequest()``.
    Contains a list of system Server Addresses.
    See also:
    ``PrimaryInfoGetResponse()``
    ``PublicClusterGetFullyQualifiedDomainNameResponse()``
    ``ServingInfoGetResponse()``
    """

    _ELEMENTS = (
        E(
            "web_server_cluster_public_fqdn",
            "webServerClusterPublicFQDN",
            str,
            False,
            False,
            False,
        ),
        E(
            "application_server_cluster_primary_public_fqdn",
            "applicationServerClusterPrimaryPublicFQDN",
            str,
            False,
            False,
            False,
        ),
        E(
            "application_server_cluster_secondary_public_fqdn",
            "applicationServerClusterSecondaryPublicFQDN",
            str,
            False,
            False,
            False,
        ),
        E(
            "application_server_cluster_primary_private_fqdn",
            "applicationServerClusterPrimaryPrivateFQDN",
            str,
            False,
            False,
            False,
        ),
        E(
            "application_server_cluster_secondary_private_fqdn",
            "applicationServerClusterSecondaryPrivateFQDN",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* webServerClusterPublicFQDN
    web_server_cluster_public_fqdn = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* applicationServerClusterPrimaryPublicFQDN
    application_server_cluster_primary_public_fqdn = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* applicationServerClusterSecondaryPublicFQDN
    application_server_cluster_secondary_public_fqdn = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* applicationServerClusterPrimaryPrivateFQDN
    application_server_cluster_primary_private_fqdn = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* applicationServerClusterSecondaryPrivateFQDN
    application_server_cluster_secondary_private_fqdn = Field(
        type=str,
        required=False,
    )


class SystemServiceActivationAccessCodeGetResponse(OCIResponse):
    """
    Response to ``SystemServiceActivationAccessCodeGetRequest()``.
    Contains Service Activation Access Code system parameters.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "terminating_access_code",
            "terminatingAccessCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "redirecting_access_code",
            "redirectingAccessCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "click_to_dial_access_code",
            "clickToDialAccessCode",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* terminatingAccessCode
    terminating_access_code = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* redirectingAccessCode
    redirecting_access_code = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* clickToDialAccessCode
    click_to_dial_access_code = Field(
        type=str,
        required=False,
    )


class SystemServiceCodeGetListResponse(OCIResponse):
    """
    Response to ``SystemServiceCodeGetListRequest()``.
    Contains a table of defined service codes
    The column headings are: "Service Code", and "Description".
    """

    _ELEMENTS = (
        E(
            "service_code_table",
            "serviceCodeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* serviceCodeTable  *Tabular*
    service_code_table = Field(
        type=list,
        required=True,
    )


class SystemServiceControlParametersGetResponse(OCIResponse):
    """
    Response to ``SystemServiceControlParametersGetListRequest()``.
    Contains a list of system Service Control parameters.
    """

    _ELEMENTS = (
        E(
            "server_port",
            "serverPort",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_client_connections",
            "maxClientConnections",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* serverPort
    server_port = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxClientConnections
    max_client_connections = Field(
        type=int,
        required=True,
    )


class SystemServicePackMigrationGetResponse(OCIResponse):
    """
    Response to the ``SystemServicePackMigrationGetRequest()``.
    The response contains the Service Pack Migration system level settings.
    """

    _ELEMENTS = (
        E(
            "max_simultaneous_migration_tasks",
            "maxSimultaneousMigrationTasks",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* maxSimultaneousMigrationTasks
    max_simultaneous_migration_tasks = Field(
        type=int,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


class SystemSessionAdmissionControlGetResponse(OCIResponse):
    """
    Response to the ``SystemSessionAdmissionControlGetRequest()``.
    The response contains the session admission control settings for the system.
    """

    _ELEMENTS = (
        E(
            "count_long_connections_to_media_server",
            "countLongConnectionsToMediaServer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sac_handling_for_mo_h",
            "sacHandlingForMoH",
            str,
            False,
            True,
            False,
        ),
        E(
            "block_vm_deposit_due_to_sac_limits",
            "blockVMDepositDueToSACLimits",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* countLongConnectionsToMediaServer
    count_long_connections_to_media_server = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* sacHandlingForMoH
    sac_handling_for_mo_h = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* blockVMDepositDueToSACLimits
    block_vm_deposit_due_to_sac_limits = Field(
        type=bool,
        required=True,
    )


class SystemSessionAuditGetResponse(OCIResponse):
    """
    Response to ``SystemSessionAuditGetRequest()``.
    Replaced By ``SystemSessionAuditGetResponse14sp3()``
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "interval_seconds",
            "intervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "timeout_period_seconds",
            "timeoutPeriodSeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* intervalSeconds
    interval_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* timeoutPeriodSeconds
    timeout_period_seconds = Field(
        type=int,
        required=True,
    )


class SystemSessionAuditGetResponse14sp3(OCIResponse):
    """
    Response to ``SystemSessionAuditGetRequest14sp3()``.
    """

    _ELEMENTS = (
        E(
            "is_audit_active",
            "isAuditActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audit_interval_seconds",
            "auditIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "audit_timeout_seconds",
            "auditTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "release_call_on_audit_failure",
            "releaseCallOnAuditFailure",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_sip_refresh_allowed_on_audit",
            "isSIPRefreshAllowedOnAudit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_update_for_sip_refresh",
            "allowUpdateForSIPRefresh",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_sip_session_timer_active",
            "isSIPSessionTimerActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sip_session_expires_minimum_seconds",
            "sipSessionExpiresMinimumSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "enforce_sip_session_expires_maximum",
            "enforceSIPSessionExpiresMaximum",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sip_session_expires_maximum_seconds",
            "sipSessionExpiresMaximumSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "sip_session_expires_timer_seconds",
            "sipSessionExpiresTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "always_use_session_timer_when_supported",
            "alwaysUseSessionTimerWhenSupported",
            bool,
            False,
            True,
            False,
        ),
        E(
            "preferred_session_timer_refresher",
            "preferredSessionTimerRefresher",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isAuditActive
    is_audit_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* auditIntervalSeconds
    audit_interval_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* auditTimeoutSeconds
    audit_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* releaseCallOnAuditFailure
    release_call_on_audit_failure = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isSIPRefreshAllowedOnAudit
    is_sip_refresh_allowed_on_audit = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUpdateForSIPRefresh
    allow_update_for_sip_refresh = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isSIPSessionTimerActive
    is_sip_session_timer_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* sipSessionExpiresMinimumSeconds
    sip_session_expires_minimum_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enforceSIPSessionExpiresMaximum
    enforce_sip_session_expires_maximum = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* sipSessionExpiresMaximumSeconds
    sip_session_expires_maximum_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* sipSessionExpiresTimerSeconds
    sip_session_expires_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* alwaysUseSessionTimerWhenSupported
    always_use_session_timer_when_supported = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* preferredSessionTimerRefresher
    preferred_session_timer_refresher = Field(
        type=str,
        required=True,
    )


class SystemSessionAuditGetResponse17sp3(OCIResponse):
    """
    Response to ``SystemSessionAuditGetRequest17sp3()``.
    """

    _ELEMENTS = (
        E(
            "is_audit_active",
            "isAuditActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audit_interval_seconds",
            "auditIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "audit_timeout_seconds",
            "auditTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "release_call_on_audit_failure",
            "releaseCallOnAuditFailure",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_sip_refresh_allowed_on_audit",
            "isSIPRefreshAllowedOnAudit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_update_for_sip_refresh",
            "allowUpdateForSIPRefresh",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_sip_session_timer_active",
            "isSIPSessionTimerActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sip_session_expires_minimum_seconds",
            "sipSessionExpiresMinimumSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "enforce_sip_session_expires_maximum",
            "enforceSIPSessionExpiresMaximum",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sip_session_expires_maximum_seconds",
            "sipSessionExpiresMaximumSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "sip_session_expires_timer_seconds",
            "sipSessionExpiresTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "always_use_session_timer_when_supported",
            "alwaysUseSessionTimerWhenSupported",
            bool,
            False,
            True,
            False,
        ),
        E(
            "preferred_session_timer_refresher",
            "preferredSessionTimerRefresher",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_emergency_call_alarm_timer",
            "enableEmergencyCallAlarmTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "emergency_call_alarm_minutes",
            "emergencyCallAlarmMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_emergency_call_cleanup_timer",
            "enableEmergencyCallCleanupTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "emergency_call_cleanup_minutes",
            "emergencyCallCleanupMinutes",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isAuditActive
    is_audit_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* auditIntervalSeconds
    audit_interval_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* auditTimeoutSeconds
    audit_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* releaseCallOnAuditFailure
    release_call_on_audit_failure = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isSIPRefreshAllowedOnAudit
    is_sip_refresh_allowed_on_audit = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUpdateForSIPRefresh
    allow_update_for_sip_refresh = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isSIPSessionTimerActive
    is_sip_session_timer_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* sipSessionExpiresMinimumSeconds
    sip_session_expires_minimum_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enforceSIPSessionExpiresMaximum
    enforce_sip_session_expires_maximum = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* sipSessionExpiresMaximumSeconds
    sip_session_expires_maximum_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* sipSessionExpiresTimerSeconds
    sip_session_expires_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* alwaysUseSessionTimerWhenSupported
    always_use_session_timer_when_supported = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* preferredSessionTimerRefresher
    preferred_session_timer_refresher = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableEmergencyCallAlarmTimer
    enable_emergency_call_alarm_timer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* emergencyCallAlarmMinutes
    emergency_call_alarm_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableEmergencyCallCleanupTimer
    enable_emergency_call_cleanup_timer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* emergencyCallCleanupMinutes
    emergency_call_cleanup_minutes = Field(
        type=int,
        required=True,
    )


class SystemShInterfaceParametersGetResponse(OCIResponse):
    """
    Response to ``SystemShInterfaceParametersGetRequest()``.  Contains the Sh
    Interface system parameters.
    """

    _ELEMENTS = (
        E(
            "hss_realm",
            "hssRealm",
            str,
            False,
            False,
            False,
        ),
        E(
            "request_timeout_seconds",
            "requestTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "public_identity_refresh_delay_seconds",
            "publicIdentityRefreshDelaySeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* hssRealm
    hss_realm = Field(
        type=str,
        required=False,
    )
    #: int: *Required* requestTimeoutSeconds
    request_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* publicIdentityRefreshDelaySeconds
    public_identity_refresh_delay_seconds = Field(
        type=int,
        required=True,
    )


class SystemShInterfaceParametersGetResponse17(OCIResponse):
    """
    Response to ``SystemShInterfaceParametersGetRequest()``.  Contains the Sh
    Interface system parameters.
    """

    _ELEMENTS = (
        E(
            "hss_realm",
            "hssRealm",
            str,
            False,
            False,
            False,
        ),
        E(
            "public_identity_refresh_delay_seconds",
            "publicIdentityRefreshDelaySeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* hssRealm
    hss_realm = Field(
        type=str,
        required=False,
    )
    #: int: *Required* publicIdentityRefreshDelaySeconds
    public_identity_refresh_delay_seconds = Field(
        type=int,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "is_running",
            "isRunning",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_public_identity_refreshes_started",
            "numberPublicIdentityRefreshesStarted",
            int,
            False,
            False,
            False,
        ),
        E(
            "number_public_identities",
            "numberPublicIdentities",
            int,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isRunning
    is_running = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* numberPublicIdentityRefreshesStarted
    number_public_identity_refreshes_started = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* numberPublicIdentities
    number_public_identities = Field(
        type=int,
        required=False,
    )


class SystemSoftwareVersionGetResponse(OCIResponse):
    """
    Response to the ``SystemSoftwareVersionGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "version",
            "version",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* version
    version = Field(
        type=str,
        required=True,
    )


class SystemSpeedDial100GetResponse(OCIResponse):
    """
    Response to the ``SystemSpeedDial100GetRequest()``.
    """

    _ELEMENTS = (
        E(
            "prefix",
            "prefix",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* prefix
    prefix = Field(
        type=str,
        required=True,
    )


class SystemSpeedDial100GetResponse17sp1(OCIResponse):
    """
    Response to the ``SystemSpeedDial100GetRequest17sp1()``.
    """

    _ELEMENTS = (
        E(
            "prefix",
            "prefix",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* prefix
    prefix = Field(
        type=str,
        required=False,
    )


class SystemStateOrProvinceGetListResponse(OCIResponse):
    """
    Contains a 2 column table with column headings 'Key' and 'Display Name' and a row
    for each state or province.
    """

    _ELEMENTS = (
        E(
            "state_or_province_table",
            "stateOrProvinceTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* stateOrProvinceTable  *Tabular*
    state_or_province_table = Field(
        type=list,
        required=True,
    )


class SystemSubscriberGetCallProcessingParametersResponse(OCIResponse):
    """
    Response to the ``SystemSubscriberGetCallProcessingParametersRequest()``.
    Replaced By ``SystemSubscriberGetCallProcessingParametersResponse14sp3()``
    """

    _ELEMENTS = (
        E(
            "user_calling_line_id_selection",
            "userCallingLineIdSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_extended_calling_line_id_active",
            "isExtendedCallingLineIdActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_ring_time_out_active",
            "isRingTimeOutActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "ring_timeout_seconds",
            "ringTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* userCallingLineIdSelection
    user_calling_line_id_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isExtendedCallingLineIdActive
    is_extended_calling_line_id_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isRingTimeOutActive
    is_ring_time_out_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* ringTimeoutSeconds
    ring_timeout_seconds = Field(
        type=int,
        required=True,
    )


class SystemSubscriberGetCallProcessingParametersResponse14sp3(OCIResponse):
    """
    Response to the ``SystemSubscriberGetCallProcessingParametersRequest14sp3()``.
    """

    _ELEMENTS = (
        E(
            "user_calling_line_id_selection",
            "userCallingLineIdSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_extended_calling_line_id_active",
            "isExtendedCallingLineIdActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_ring_time_out_active",
            "isRingTimeOutActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "ring_timeout_seconds",
            "ringTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "allow_emergency_remote_office_originations",
            "allowEmergencyRemoteOfficeOriginations",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* userCallingLineIdSelection
    user_calling_line_id_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isExtendedCallingLineIdActive
    is_extended_calling_line_id_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isRingTimeOutActive
    is_ring_time_out_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* ringTimeoutSeconds
    ring_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* allowEmergencyRemoteOfficeOriginations
    allow_emergency_remote_office_originations = Field(
        type=bool,
        required=True,
    )


class SystemSubscriberGetCallProcessingParametersResponse14sp7(OCIResponse):
    """
    Response to the ``SystemSubscriberGetCallProcessingParametersRequest14sp7()``.
    """

    _ELEMENTS = (
        E(
            "is_extended_calling_line_id_active",
            "isExtendedCallingLineIdActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_ring_time_out_active",
            "isRingTimeOutActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "ring_timeout_seconds",
            "ringTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "allow_emergency_remote_office_originations",
            "allowEmergencyRemoteOfficeOriginations",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isExtendedCallingLineIdActive
    is_extended_calling_line_id_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isRingTimeOutActive
    is_ring_time_out_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* ringTimeoutSeconds
    ring_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* allowEmergencyRemoteOfficeOriginations
    allow_emergency_remote_office_originations = Field(
        type=bool,
        required=True,
    )


class SystemSubscriberGetCallProcessingParametersResponse15(OCIResponse):
    """
    Response to the ``SystemSubscriberGetCallProcessingParametersRequest15()``.
    """

    _ELEMENTS = (
        E(
            "user_calling_line_id_selection",
            "userCallingLineIdSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_extended_calling_line_id_active",
            "isExtendedCallingLineIdActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_ring_time_out_active",
            "isRingTimeOutActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "ring_timeout_seconds",
            "ringTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "allow_emergency_remote_office_originations",
            "allowEmergencyRemoteOfficeOriginations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_no_answer_number_of_rings",
            "maxNoAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* userCallingLineIdSelection
    user_calling_line_id_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isExtendedCallingLineIdActive
    is_extended_calling_line_id_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isRingTimeOutActive
    is_ring_time_out_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* ringTimeoutSeconds
    ring_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* allowEmergencyRemoteOfficeOriginations
    allow_emergency_remote_office_originations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxNoAnswerNumberOfRings
    max_no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )


class SystemSubscriberGetCallProcessingParametersResponse15sp2(OCIResponse):
    """
    Response to the ``SystemSubscriberGetCallProcessingParametersRequest15sp2()``.
    Replaced By ``SystemSubscriberGetCallProcessingParametersResponse17()``
    """

    _ELEMENTS = (
        E(
            "is_extended_calling_line_id_active",
            "isExtendedCallingLineIdActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_ring_time_out_active",
            "isRingTimeOutActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "ring_timeout_seconds",
            "ringTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "allow_emergency_remote_office_originations",
            "allowEmergencyRemoteOfficeOriginations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_no_answer_number_of_rings",
            "maxNoAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isExtendedCallingLineIdActive
    is_extended_calling_line_id_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isRingTimeOutActive
    is_ring_time_out_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* ringTimeoutSeconds
    ring_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* allowEmergencyRemoteOfficeOriginations
    allow_emergency_remote_office_originations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxNoAnswerNumberOfRings
    max_no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )


class SystemSubscriberGetCallProcessingParametersResponse17(OCIResponse):
    """
    Response to the ``SystemSubscriberGetCallProcessingParametersRequest17()``.
    """

    _ELEMENTS = (
        E(
            "is_extended_calling_line_id_active",
            "isExtendedCallingLineIdActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_ring_time_out_active",
            "isRingTimeOutActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "ring_timeout_seconds",
            "ringTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "allow_emergency_remote_office_originations",
            "allowEmergencyRemoteOfficeOriginations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_no_answer_number_of_rings",
            "maxNoAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "incoming_call_to_user_alias_mode",
            "incomingCallToUserAliasMode",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isExtendedCallingLineIdActive
    is_extended_calling_line_id_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isRingTimeOutActive
    is_ring_time_out_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* ringTimeoutSeconds
    ring_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* allowEmergencyRemoteOfficeOriginations
    allow_emergency_remote_office_originations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxNoAnswerNumberOfRings
    max_no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: str: *Required* incomingCallToUserAliasMode
    incoming_call_to_user_alias_mode = Field(
        type=str,
        required=True,
    )


class SystemSubscriberGetCallProcessingParametersResponse17sp3(OCIResponse):
    """
    Response to the ``SystemSubscriberGetCallProcessingParametersRequest17sp3()``.
    """

    _ELEMENTS = (
        E(
            "is_extended_calling_line_id_active",
            "isExtendedCallingLineIdActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_ring_time_out_active",
            "isRingTimeOutActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "ring_timeout_seconds",
            "ringTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "allow_emergency_remote_office_originations",
            "allowEmergencyRemoteOfficeOriginations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_no_answer_number_of_rings",
            "maxNoAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "incoming_call_to_user_alias_mode",
            "incomingCallToUserAliasMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "bypass_termination_loop_detection",
            "bypassTerminationLoopDetection",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isExtendedCallingLineIdActive
    is_extended_calling_line_id_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isRingTimeOutActive
    is_ring_time_out_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* ringTimeoutSeconds
    ring_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* allowEmergencyRemoteOfficeOriginations
    allow_emergency_remote_office_originations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxNoAnswerNumberOfRings
    max_no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: str: *Required* incomingCallToUserAliasMode
    incoming_call_to_user_alias_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* bypassTerminationLoopDetection
    bypass_termination_loop_detection = Field(
        type=bool,
        required=True,
    )


class SystemSubscriberGetCallProcessingParametersResponse17sp4(OCIResponse):
    """
    Response to the ``SystemSubscriberGetCallProcessingParametersRequest17sp4()``.
    """

    _ELEMENTS = (
        E(
            "is_extended_calling_line_id_active",
            "isExtendedCallingLineIdActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_ring_time_out_active",
            "isRingTimeOutActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "ring_timeout_seconds",
            "ringTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "allow_emergency_remote_office_originations",
            "allowEmergencyRemoteOfficeOriginations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_no_answer_number_of_rings",
            "maxNoAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "incoming_call_to_user_alias_mode",
            "incomingCallToUserAliasMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "bypass_termination_loop_detection",
            "bypassTerminationLoopDetection",
            bool,
            False,
            True,
            False,
        ),
        E(
            "honor_clid_blocking_for_emergency_calls",
            "honorCLIDBlockingForEmergencyCalls",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isExtendedCallingLineIdActive
    is_extended_calling_line_id_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isRingTimeOutActive
    is_ring_time_out_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* ringTimeoutSeconds
    ring_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* allowEmergencyRemoteOfficeOriginations
    allow_emergency_remote_office_originations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxNoAnswerNumberOfRings
    max_no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: str: *Required* incomingCallToUserAliasMode
    incoming_call_to_user_alias_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* bypassTerminationLoopDetection
    bypass_termination_loop_detection = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* honorCLIDBlockingForEmergencyCalls
    honor_clid_blocking_for_emergency_calls = Field(
        type=bool,
        required=True,
    )


class SystemSubscriberGetCallProcessingParametersResponse18sp1(OCIResponse):
    """
    Response to the ``SystemSubscriberGetCallProcessingParametersRequest18sp1()``.
    """

    _ELEMENTS = (
        E(
            "is_extended_calling_line_id_active",
            "isExtendedCallingLineIdActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_ring_time_out_active",
            "isRingTimeOutActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "ring_timeout_seconds",
            "ringTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "allow_emergency_remote_office_originations",
            "allowEmergencyRemoteOfficeOriginations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_no_answer_number_of_rings",
            "maxNoAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "incoming_call_to_user_alias_mode",
            "incomingCallToUserAliasMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "bypass_termination_loop_detection",
            "bypassTerminationLoopDetection",
            bool,
            False,
            True,
            False,
        ),
        E(
            "honor_clid_blocking_for_emergency_calls",
            "honorCLIDBlockingForEmergencyCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_unicode_identity_name",
            "useUnicodeIdentityName",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isExtendedCallingLineIdActive
    is_extended_calling_line_id_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isRingTimeOutActive
    is_ring_time_out_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* ringTimeoutSeconds
    ring_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* allowEmergencyRemoteOfficeOriginations
    allow_emergency_remote_office_originations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxNoAnswerNumberOfRings
    max_no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: str: *Required* incomingCallToUserAliasMode
    incoming_call_to_user_alias_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* bypassTerminationLoopDetection
    bypass_termination_loop_detection = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* honorCLIDBlockingForEmergencyCalls
    honor_clid_blocking_for_emergency_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUnicodeIdentityName
    use_unicode_identity_name = Field(
        type=bool,
        required=True,
    )


class SystemSubscriberGetLoginParametersResponse(OCIResponse):
    """
    Response to the ``SystemSubscriberGetLoginParametersRequest()``.
    """

    _ELEMENTS = (
        E(
            "max_failed_login_attempts",
            "maxFailedLoginAttempts",
            int,
            False,
            True,
            False,
        ),
        E(
            "min_login_id_length",
            "minLoginIdLength",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* maxFailedLoginAttempts
    max_failed_login_attempts = Field(
        type=int,
        required=True,
    )
    #: int: *Required* minLoginIdLength
    min_login_id_length = Field(
        type=int,
        required=True,
    )


class SystemSubscriberGetProvisioningParametersResponse(OCIResponse):
    """
    Response to the ``SystemSubscriberGetProvisioningParametersRequest()``.
    """

    _ELEMENTS = (
        E(
            "configurable_clid_normalization",
            "configurableCLIDNormalization",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* configurableCLIDNormalization
    configurable_clid_normalization = Field(
        type=bool,
        required=True,
    )


class SystemSystemServiceCallProcessingPoliciesGetResponse(OCIResponse):
    """
    Response to ``SystemSystemServiceCallProcessingPoliciesGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )


class SystemSystemServiceDnGetAvailableListResponse(OCIResponse):
    """
    Response to ``SystemSystemServiceDnGetAvailableListRequest()``.
    Contains a list of available DNs not yet assigned to any instance of system service.
    """

    _ELEMENTS = (
        E(
            "available_dn",
            "availableDn",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* availableDn
    available_dn = Field(
        type=str,
        required=False,
    )


class SystemSystemServiceDnGetSummaryListResponse(OCIResponse):
    """
    Response to ``SystemSystemServiceDnGetSummaryListRequest()``.
    The column headings are "Phone Numbers" and "Assigned".
    The possible values for "Assigned" are true, false.
    """

    _ELEMENTS = (
        E(
            "dn_summary_table",
            "dnSummaryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* dnSummaryTable  *Tabular*
    dn_summary_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "dn_utilization_table",
            "dnUtilizationTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* dnUtilizationTable  *Tabular*
    dn_utilization_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "system_voice_portals_table",
            "systemVoicePortalsTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* systemVoicePortalsTable  *Tabular*
    system_voice_portals_table = Field(
        type=list,
        required=True,
    )


class SystemSystemVoicePortalGetResponse(OCIResponse):
    """
    Response to ``SystemSystemVoicePortalGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "name",
            "name",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_name",
            "callingLineIdName",
            str,
            False,
            True,
            False,
        ),
        E(
            "language",
            "language",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone",
            "timeZone",
            str,
            False,
            True,
            False,
        ),
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "public_user_identity",
            "publicUserIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_voice_portal_number",
            "networkVoicePortalNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_identification_by_phone_number_or_voice_mail_aliases_on_login",
            "allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_voice_portal_wizard",
            "useVoicePortalWizard",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_default",
            "isDefault",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_voice_portal_default_greeting",
            "useVoicePortalDefaultGreeting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_greeting_file_description",
            "voicePortalGreetingFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "voice_portal_greeting_media_file_type",
            "voicePortalGreetingMediaFileType",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_voice_messaging_default_greeting",
            "useVoiceMessagingDefaultGreeting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_messaging_greeting_file_description",
            "voiceMessagingGreetingFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "voice_messaging_greeting_media_file_type",
            "voiceMessagingGreetingMediaFileType",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* name
    name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdName
    calling_line_id_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* language
    language = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZone
    time_zone = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* publicUserIdentity
    public_user_identity = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* networkVoicePortalNumber
    network_voice_portal_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin
    allow_identification_by_phone_number_or_voice_mail_aliases_on_login = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useVoicePortalWizard
    use_voice_portal_wizard = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isDefault
    is_default = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useVoicePortalDefaultGreeting
    use_voice_portal_default_greeting = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* voicePortalGreetingFileDescription
    voice_portal_greeting_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* voicePortalGreetingMediaFileType
    voice_portal_greeting_media_file_type = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useVoiceMessagingDefaultGreeting
    use_voice_messaging_default_greeting = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* voiceMessagingGreetingFileDescription
    voice_messaging_greeting_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* voiceMessagingGreetingMediaFileType
    voice_messaging_greeting_media_file_type = Field(
        type=str,
        required=False,
    )


class SystemThirdPartyIMPGetResponse(OCIResponse):
    """
    Response to the ``SystemThirdPartyIMPGetRequest()``.
    The response contains the system Third-Party IMP service attributes.

    Replaced by ``SystemThirdPartyIMPGetResponse()``.
    """

    _ELEMENTS = (
        E(
            "service_net_address",
            "serviceNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_port",
            "servicePort",
            int,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* serviceNetAddress
    service_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* servicePort
    service_port = Field(
        type=int,
        required=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
    """

    _ELEMENTS = (
        E(
            "service_net_address",
            "serviceNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_port",
            "servicePort",
            int,
            False,
            False,
            False,
        ),
        E(
            "bosh_url",
            "boshURL",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* serviceNetAddress
    service_net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* servicePort
    service_port = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* boshURL
    bosh_url = Field(
        type=str,
        required=False,
    )


class SystemThirdPartyVoiceMailSupportGetDnListResponse(OCIResponse):
    """
    Response to ``SystemThirdPartyVoiceMailSupportGetDnListRequest()``.
    Contains a table with a row for each ThirdPartyVoiceMailSupport User DN and
    column headings:
    "Phone Number", "Description"
    """

    _ELEMENTS = (
        E(
            "third_party_voice_mail_support_table",
            "thirdPartyVoiceMailSupportTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* thirdPartyVoiceMailSupportTable  *Tabular*
    third_party_voice_mail_support_table = Field(
        type=list,
        required=True,
    )


class SystemThirdPartyVoiceMailSupportGetResponse(OCIResponse):
    """
    Response to ``SystemThirdPartyVoiceMailSupportGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "override_alt_caller_id_for_vm_retrieval",
            "overrideAltCallerIdForVMRetrieval",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* overrideAltCallerIdForVMRetrieval
    override_alt_caller_id_for_vm_retrieval = Field(
        type=bool,
        required=True,
    )


class SystemThirdPartyVoiceMailSupportGetResponse17sp4(OCIResponse):
    """
    Response to ``SystemThirdPartyVoiceMailSupportGetRequest17sp4()``.
    """

    _ELEMENTS = (
        E(
            "override_alt_caller_id_for_vm_retrieval",
            "overrideAltCallerIdForVMRetrieval",
            bool,
            False,
            True,
            False,
        ),
        E(
            "strip_diversion_on_vm_destination_retrieval",
            "stripDiversionOnVMDestinationRetrieval",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* overrideAltCallerIdForVMRetrieval
    override_alt_caller_id_for_vm_retrieval = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* stripDiversionOnVMDestinationRetrieval
    strip_diversion_on_vm_destination_retrieval = Field(
        type=bool,
        required=True,
    )


class SystemTimeScheduleGetListResponse(OCIResponse):
    """
    Response to the ``SystemTimeScheduleGetListRequest()``.
    The response contains all the system time schedule names.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* timeSchedule
    time_schedule = Field(
        type=str,
        required=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()``
    """

    _ELEMENTS = (
        E(
            "time_zone_table",
            "timeZoneTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* timeZoneTable  *Tabular*
    time_zone_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "server_time_zone",
            "serverTimeZone",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone_table",
            "timeZoneTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Required* serverTimeZone
    server_time_zone = Field(
        type=str,
        required=True,
    )
    #: list: *Required* timeZoneTable  *Tabular*
    time_zone_table = Field(
        type=list,
        required=True,
    )


class SystemTreatmentMappingAccessSIPStatusGetListResponse(OCIResponse):
    """
    Response to a ``SystemTreatmentMappingAccessSIPStatusGetListRequest()``. Contains
    a table with one row per mapping.
    The table columns are: "SIP Status Code", "Treatment Id".
    """

    _ELEMENTS = (
        E(
            "treatment_mapping_table",
            "treatmentMappingTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* treatmentMappingTable  *Tabular*
    treatment_mapping_table = Field(
        type=list,
        required=True,
    )


class SystemTreatmentMappingCallBlockingServiceGetListResponse(OCIResponse):
    """
    Response to a ``SystemTreatmentMappingCallBlockingServiceGetListRequest()``.
    Contains a table with one row per mapping.
    The table columns are: "Service", "Treatment Id".
    """

    _ELEMENTS = (
        E(
            "treatment_mapping_table",
            "treatmentMappingTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* treatmentMappingTable  *Tabular*
    treatment_mapping_table = Field(
        type=list,
        required=True,
    )


class SystemTreatmentMappingCallBlockingServiceGetListResponse19sp1(OCIResponse):
    """
    Response to a ``SystemTreatmentMappingCallBlockingServiceGetListRequest19sp1()``.
    Contains a table with one row per mapping.
    The table columns are: "Service", "Treatment Id".
    """

    _ELEMENTS = (
        E(
            "treatment_mapping_table",
            "treatmentMappingTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* treatmentMappingTable  *Tabular*
    treatment_mapping_table = Field(
        type=list,
        required=True,
    )


class SystemTreatmentMappingInternalReleaseCauseGetListResponse(OCIResponse):
    """
    Response to a ``SystemTreatmentMappingInternalReleaseCauseGetListRequest()``.
    Contains a table with one row per mapping.
    The table columns are: "Internal Release Cause", "Treatment Id".
    """

    _ELEMENTS = (
        E(
            "treatment_mapping_table",
            "treatmentMappingTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* treatmentMappingTable  *Tabular*
    treatment_mapping_table = Field(
        type=list,
        required=True,
    )


class SystemTreatmentMappingNetworkSIPStatusGetListResponse(OCIResponse):
    """
    Response to a ``SystemTreatmentMappingNetworkSIPStatusGetListRequest()``.
    Contains a table with one row per mapping.
    The table columns are: "SIP Status Code", "Treatment Id".
    """

    _ELEMENTS = (
        E(
            "treatment_mapping_table",
            "treatmentMappingTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* treatmentMappingTable  *Tabular*
    treatment_mapping_table = Field(
        type=list,
        required=True,
    )


class SystemTreatmentMappingNetworkServerTreatmentGetListResponse(OCIResponse):
    """
    Response to a ``SystemTreatmentMappingNetworkServerTreatmentGetListRequest()``.
    Contains a table with one row per mapping.
    The table columns are: "NS Treatment", "Treatment Id".
    """

    _ELEMENTS = (
        E(
            "treatment_mapping_table",
            "treatmentMappingTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* treatmentMappingTable  *Tabular*
    treatment_mapping_table = Field(
        type=list,
        required=True,
    )


class SystemTreatmentMappingQ850CauseGetListResponse(OCIResponse):
    """
    Response to a ``SystemTreatmentMappingQ850CauseGetListRequest()``. Contains a
    table with one row per mapping.
    The table columns are: "Q850 Cause Value", "Treatment Id".
    """

    _ELEMENTS = (
        E(
            "treatment_mapping_table",
            "treatmentMappingTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* treatmentMappingTable  *Tabular*
    treatment_mapping_table = Field(
        type=list,
        required=True,
    )


class SystemTrunkGroupGetResponse(OCIResponse):
    """
    Response to ``SystemTrunkGroupGetRequest()``.

    Replaced by ``SystemTrunkGroupGetResponse19sp1()``.
    """

    _ELEMENTS = (
        E(
            "enforce_clid_service_assignment_for_pilot_user",
            "enforceCLIDServiceAssignmentForPilotUser",
            bool,
            False,
            True,
            False,
        ),
        E(
            "terminate_unreachable_trigger_detection_on_receipt_of18x",
            "terminateUnreachableTriggerDetectionOnReceiptOf18x",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_asserted_identity_policy",
            "pilotUserCallingLineAssertedIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_out_of_dialog_pbx_redirection_policies",
            "enforceOutOfDialogPBXRedirectionPolicies",
            bool,
            False,
            True,
            False,
        ),
        E(
            "unscreened_redirection_handling",
            "unscreenedRedirectionHandling",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_holdover_of_highwater_call_counts",
            "enableHoldoverOfHighwaterCallCounts",
            bool,
            False,
            True,
            False,
        ),
        E(
            "holdover_period",
            "holdoverPeriod",
            int,
            False,
            True,
            False,
        ),
        E(
            "time_zone_offset_minutes",
            "timeZoneOffsetMinutes",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enforceCLIDServiceAssignmentForPilotUser
    enforce_clid_service_assignment_for_pilot_user = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* terminateUnreachableTriggerDetectionOnReceiptOf18x
    terminate_unreachable_trigger_detection_on_receipt_of18x = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineAssertedIdentityPolicy
    pilot_user_calling_line_asserted_identity_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceOutOfDialogPBXRedirectionPolicies
    enforce_out_of_dialog_pbx_redirection_policies = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* unscreenedRedirectionHandling
    unscreened_redirection_handling = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableHoldoverOfHighwaterCallCounts
    enable_holdover_of_highwater_call_counts = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* holdoverPeriod
    holdover_period = Field(
        type=int,
        required=True,
    )
    #: int: *Required* timeZoneOffsetMinutes
    time_zone_offset_minutes = Field(
        type=int,
        required=True,
    )


class SystemTrunkGroupGetResponse19sp1(OCIResponse):
    """
    Response to ``SystemTrunkGroupGetRequest19sp1()``.
    """

    _ELEMENTS = (
        E(
            "enforce_clid_service_assignment_for_pilot_user",
            "enforceCLIDServiceAssignmentForPilotUser",
            bool,
            False,
            True,
            False,
        ),
        E(
            "terminate_unreachable_trigger_detection_on_receipt_of18x",
            "terminateUnreachableTriggerDetectionOnReceiptOf18x",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_asserted_identity_policy",
            "pilotUserCallingLineAssertedIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_out_of_dialog_pbx_redirection_policies",
            "enforceOutOfDialogPBXRedirectionPolicies",
            bool,
            False,
            True,
            False,
        ),
        E(
            "unscreened_redirection_handling",
            "unscreenedRedirectionHandling",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_holdover_of_highwater_call_counts",
            "enableHoldoverOfHighwaterCallCounts",
            bool,
            False,
            True,
            False,
        ),
        E(
            "holdover_period",
            "holdoverPeriod",
            int,
            False,
            True,
            False,
        ),
        E(
            "time_zone_offset_minutes",
            "timeZoneOffsetMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_source_for_screened_calls_policy",
            "clidSourceForScreenedCallsPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_lookup_policy",
            "userLookupPolicy",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enforceCLIDServiceAssignmentForPilotUser
    enforce_clid_service_assignment_for_pilot_user = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* terminateUnreachableTriggerDetectionOnReceiptOf18x
    terminate_unreachable_trigger_detection_on_receipt_of18x = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineAssertedIdentityPolicy
    pilot_user_calling_line_asserted_identity_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceOutOfDialogPBXRedirectionPolicies
    enforce_out_of_dialog_pbx_redirection_policies = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* unscreenedRedirectionHandling
    unscreened_redirection_handling = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableHoldoverOfHighwaterCallCounts
    enable_holdover_of_highwater_call_counts = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* holdoverPeriod
    holdover_period = Field(
        type=int,
        required=True,
    )
    #: int: *Required* timeZoneOffsetMinutes
    time_zone_offset_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidSourceForScreenedCallsPolicy
    clid_source_for_screened_calls_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userLookupPolicy
    user_lookup_policy = Field(
        type=str,
        required=True,
    )


class SystemTrunkGroupGetResponse21(OCIResponse):
    """
    Response to ``SystemTrunkGroupGetRequest21()``.
    Following attributes are only used in IMS mode:
    implicitRegistrationSetSupportPolicy
    sipIdentityForPilotAndProxyTrunkModesPolicy
    """

    _ELEMENTS = (
        E(
            "enforce_clid_service_assignment_for_pilot_user",
            "enforceCLIDServiceAssignmentForPilotUser",
            bool,
            False,
            True,
            False,
        ),
        E(
            "terminate_unreachable_trigger_detection_on_receipt_of18x",
            "terminateUnreachableTriggerDetectionOnReceiptOf18x",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_asserted_identity_policy",
            "pilotUserCallingLineAssertedIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_out_of_dialog_pbx_redirection_policies",
            "enforceOutOfDialogPBXRedirectionPolicies",
            bool,
            False,
            True,
            False,
        ),
        E(
            "unscreened_redirection_handling",
            "unscreenedRedirectionHandling",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_holdover_of_highwater_call_counts",
            "enableHoldoverOfHighwaterCallCounts",
            bool,
            False,
            True,
            False,
        ),
        E(
            "holdover_period",
            "holdoverPeriod",
            int,
            False,
            True,
            False,
        ),
        E(
            "time_zone_offset_minutes",
            "timeZoneOffsetMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_source_for_screened_calls_policy",
            "clidSourceForScreenedCallsPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_lookup_policy",
            "userLookupPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "out_of_dialog_pbx_redirection_clid_mapping",
            "outOfDialogPBXRedirectionCLIDMapping",
            str,
            False,
            True,
            False,
        ),
        E(
            "enforce_out_of_dialog_pbx_redirection_trunk_group_capacity",
            "enforceOutOfDialogPBXRedirectionTrunkGroupCapacity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "implicit_registration_set_support_policy",
            "implicitRegistrationSetSupportPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "sip_identity_for_pilot_and_proxy_trunk_modes_policy",
            "sipIdentityForPilotAndProxyTrunkModesPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "support_connected_identity_policy",
            "supportConnectedIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enforceCLIDServiceAssignmentForPilotUser
    enforce_clid_service_assignment_for_pilot_user = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* terminateUnreachableTriggerDetectionOnReceiptOf18x
    terminate_unreachable_trigger_detection_on_receipt_of18x = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineAssertedIdentityPolicy
    pilot_user_calling_line_asserted_identity_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceOutOfDialogPBXRedirectionPolicies
    enforce_out_of_dialog_pbx_redirection_policies = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* unscreenedRedirectionHandling
    unscreened_redirection_handling = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableHoldoverOfHighwaterCallCounts
    enable_holdover_of_highwater_call_counts = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* holdoverPeriod
    holdover_period = Field(
        type=int,
        required=True,
    )
    #: int: *Required* timeZoneOffsetMinutes
    time_zone_offset_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidSourceForScreenedCallsPolicy
    clid_source_for_screened_calls_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userLookupPolicy
    user_lookup_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* outOfDialogPBXRedirectionCLIDMapping
    out_of_dialog_pbx_redirection_clid_mapping = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enforceOutOfDialogPBXRedirectionTrunkGroupCapacity
    enforce_out_of_dialog_pbx_redirection_trunk_group_capacity = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* implicitRegistrationSetSupportPolicy
    implicit_registration_set_support_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sipIdentityForPilotAndProxyTrunkModesPolicy
    sip_identity_for_pilot_and_proxy_trunk_modes_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* supportConnectedIdentityPolicy
    support_connected_identity_policy = Field(
        type=str,
        required=True,
    )


class SystemTrunkGroupOptionsMessageResponseStatusCodeGetListResponse(OCIResponse):
    """
    Response to the ``SystemTrunkGroupOptionsMessageResponseStatusCodeGetListRequest()``.
    The response contains of the list of system level successful SIP OPTIONS message
    respoonse status codes.
    """

    _ELEMENTS = (
        E(
            "status_code",
            "statusCode",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* statusCode
    status_code = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "task_table",
            "taskTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* taskTable  *Tabular*
    task_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "task_table",
            "taskTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* taskTable  *Tabular*
    task_table = Field(
        type=list,
        required=True,
    )


class SystemTwoStageDialingGetDnListResponse(OCIResponse):
    """
    Response to ``SystemTwoStageDialingGetDnListRequest()``.
    The Two Stage Dialing DN List table column
    headings are: "Phone Number",  "Description".
    """

    _ELEMENTS = (
        E(
            "phone_number_table",
            "phoneNumberTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* phoneNumberTable  *Tabular*
    phone_number_table = Field(
        type=list,
        required=True,
    )


class SystemVerifyTranslationAndRoutingResponse(OCIResponse):
    """
    Represents a Verify Translation and Routing Test Call Result.
    """

    _ELEMENTS = (
        E(
            "result",
            "Result",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* Result
    result = Field(
        type=str,
        required=True,
    )


class SystemVideoServerGetListResponse(OCIResponse):
    """
    Response to ``SystemVideoServerGetListRequest()``. The Video Server table column
    headings are: "Net Address", "Port", "Transport", "Description".
    Transport types: udp, tcp, unspecified
    """

    _ELEMENTS = (
        E(
            "video_server_table",
            "videoServerTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* videoServerTable  *Tabular*
    video_server_table = Field(
        type=list,
        required=True,
    )


class SystemVideoServerParametersGetResponse(OCIResponse):
    """
    Response to ``SystemVideoServerParametersGetRequest()``.
    Contains a list of system video server parameters.
    """

    _ELEMENTS = (
        E(
            "video_server_response_timer_milliseconds",
            "videoServerResponseTimerMilliseconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "video_server_selection_route_timer_milliseconds",
            "videoServerSelectionRouteTimerMilliseconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_static_video_server_device",
            "useStaticVideoServerDevice",
            bool,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* videoServerResponseTimerMilliseconds
    video_server_response_timer_milliseconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* videoServerSelectionRouteTimerMilliseconds
    video_server_selection_route_timer_milliseconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useStaticVideoServerDevice
    use_static_video_server_device = Field(
        type=bool,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "virtual_on_net_call_type_table",
            "virtualOnNetCallTypeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* virtualOnNetCallTypeTable  *Tabular*
    virtual_on_net_call_type_table = Field(
        type=list,
        required=True,
    )


class SystemVoiceMessageSummaryUpdateGetResponse(OCIResponse):
    """
    Response to ``SystemVoiceMessageSummaryUpdateGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "send_saved_and_urgent_mwi_on_notification",
            "sendSavedAndUrgentMWIOnNotification",
            bool,
            False,
            True,
            False,
        ),
        E(
            "send_message_summary_update_on_register",
            "sendMessageSummaryUpdateOnRegister",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_time_between_mwi_on_register",
            "minTimeBetweenMWIOnRegister",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* sendSavedAndUrgentMWIOnNotification
    send_saved_and_urgent_mwi_on_notification = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* sendMessageSummaryUpdateOnRegister
    send_message_summary_update_on_register = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minTimeBetweenMWIOnRegister
    min_time_between_mwi_on_register = Field(
        type=int,
        required=True,
    )


class SystemVoiceMessagingGroupGetPasscodeRulesResponse14(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetPasscodeRulesRequest14()``.
    Contains the system voice portal passcode rules setting.
    Replaced By ``SystemPortalPasscodeRulesGetResponse()``
    """

    _ELEMENTS = (
        E(
            "disallow_repeated_digits",
            "disallowRepeatedDigits",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_user_number",
            "disallowUserNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_user_number",
            "disallowReversedUserNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_old_passcode",
            "disallowOldPasscode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disallow_reversed_old_passcode",
            "disallowReversedOldPasscode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "min_code_length",
            "minCodeLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_code_length",
            "maxCodeLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "disable_login_after_max_failed_login_attempts",
            "disableLoginAfterMaxFailedLoginAttempts",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_failed_login_attempts",
            "maxFailedLoginAttempts",
            int,
            False,
            False,
            False,
        ),
        E(
            "expire_password",
            "expirePassword",
            bool,
            False,
            True,
            False,
        ),
        E(
            "passcode_expires_days",
            "passcodeExpiresDays",
            int,
            False,
            False,
            False,
        ),
        E(
            "send_login_disabled_notify_email",
            "sendLoginDisabledNotifyEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "login_disabled_notify_email_address",
            "loginDisabledNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "default_password",
            "defaultPassword",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* disallowRepeatedDigits
    disallow_repeated_digits = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowUserNumber
    disallow_user_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedUserNumber
    disallow_reversed_user_number = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowOldPasscode
    disallow_old_passcode = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disallowReversedOldPasscode
    disallow_reversed_old_passcode = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* minCodeLength
    min_code_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxCodeLength
    max_code_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disableLoginAfterMaxFailedLoginAttempts
    disable_login_after_max_failed_login_attempts = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* maxFailedLoginAttempts
    max_failed_login_attempts = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* expirePassword
    expire_password = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* passcodeExpiresDays
    passcode_expires_days = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* sendLoginDisabledNotifyEmail
    send_login_disabled_notify_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* loginDisabledNotifyEmailAddress
    login_disabled_notify_email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* defaultPassword
    default_password = Field(
        type=str,
        required=True,
    )


class SystemVoiceMessagingGroupGetResponse14(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetRequest14()``.
    """

    _ELEMENTS = (
        E(
            "real_delete_for_imap",
            "realDeleteForImap",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_dn_in_mail_body",
            "useDnInMailBody",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_short_subject_line",
            "useShortSubjectLine",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_greeting_length_minutes",
            "maxGreetingLengthMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_message_length_minutes",
            "maxMessageLengthMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_mailbox_length_minutes",
            "maxMailboxLengthMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "does_message_age",
            "doesMessageAge",
            bool,
            False,
            True,
            False,
        ),
        E(
            "hold_period_days",
            "holdPeriodDays",
            int,
            False,
            True,
            False,
        ),
        E(
            "mail_server_net_address",
            "mailServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mail_server_protocol",
            "mailServerProtocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_delivery_from_address",
            "defaultDeliveryFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_notification_from_address",
            "defaultNotificationFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_voice_portal_lockout_from_address",
            "defaultVoicePortalLockoutFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_outgoing_mwi_on_smdi",
            "useOutgoingMWIOnSMDI",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mwi_delay_in_seconds",
            "mwiDelayInSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_scope",
            "voicePortalScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_voice_portal_licensed",
            "enterpriseVoicePortalLicensed",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_wide_messaging",
            "networkWideMessaging",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_external_routing",
            "useExternalRouting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_external_routing_address",
            "defaultExternalRoutingAddress",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* realDeleteForImap
    real_delete_for_imap = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useDnInMailBody
    use_dn_in_mail_body = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useShortSubjectLine
    use_short_subject_line = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxGreetingLengthMinutes
    max_greeting_length_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxMessageLengthMinutes
    max_message_length_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxMailboxLengthMinutes
    max_mailbox_length_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* doesMessageAge
    does_message_age = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* holdPeriodDays
    hold_period_days = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* mailServerNetAddress
    mail_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* mailServerProtocol
    mail_server_protocol = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultDeliveryFromAddress
    default_delivery_from_address = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultNotificationFromAddress
    default_notification_from_address = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultVoicePortalLockoutFromAddress
    default_voice_portal_lockout_from_address = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useOutgoingMWIOnSMDI
    use_outgoing_mwi_on_smdi = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* mwiDelayInSeconds
    mwi_delay_in_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* voicePortalScope
    voice_portal_scope = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enterpriseVoicePortalLicensed
    enterprise_voice_portal_licensed = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* networkWideMessaging
    network_wide_messaging = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useExternalRouting
    use_external_routing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* defaultExternalRoutingAddress
    default_external_routing_address = Field(
        type=str,
        required=False,
    )


class SystemVoiceMessagingGroupGetResponse16(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetRequest16()``.
    """

    _ELEMENTS = (
        E(
            "real_delete_for_imap",
            "realDeleteForImap",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_dn_in_mail_body",
            "useDnInMailBody",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_short_subject_line",
            "useShortSubjectLine",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_message_length_minutes",
            "maxMessageLengthMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_mailbox_length_minutes",
            "maxMailboxLengthMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "does_message_age",
            "doesMessageAge",
            bool,
            False,
            True,
            False,
        ),
        E(
            "hold_period_days",
            "holdPeriodDays",
            int,
            False,
            True,
            False,
        ),
        E(
            "mail_server_net_address",
            "mailServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mail_server_protocol",
            "mailServerProtocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_delivery_from_address",
            "defaultDeliveryFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_notification_from_address",
            "defaultNotificationFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_voice_portal_lockout_from_address",
            "defaultVoicePortalLockoutFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_outgoing_mwi_on_smdi",
            "useOutgoingMWIOnSMDI",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mwi_delay_in_seconds",
            "mwiDelayInSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_scope",
            "voicePortalScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_voice_portal_licensed",
            "enterpriseVoicePortalLicensed",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_wide_messaging",
            "networkWideMessaging",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_external_routing",
            "useExternalRouting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_external_routing_address",
            "defaultExternalRoutingAddress",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* realDeleteForImap
    real_delete_for_imap = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useDnInMailBody
    use_dn_in_mail_body = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useShortSubjectLine
    use_short_subject_line = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxMessageLengthMinutes
    max_message_length_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxMailboxLengthMinutes
    max_mailbox_length_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* doesMessageAge
    does_message_age = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* holdPeriodDays
    hold_period_days = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* mailServerNetAddress
    mail_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* mailServerProtocol
    mail_server_protocol = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultDeliveryFromAddress
    default_delivery_from_address = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultNotificationFromAddress
    default_notification_from_address = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultVoicePortalLockoutFromAddress
    default_voice_portal_lockout_from_address = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useOutgoingMWIOnSMDI
    use_outgoing_mwi_on_smdi = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* mwiDelayInSeconds
    mwi_delay_in_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* voicePortalScope
    voice_portal_scope = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enterpriseVoicePortalLicensed
    enterprise_voice_portal_licensed = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* networkWideMessaging
    network_wide_messaging = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useExternalRouting
    use_external_routing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* defaultExternalRoutingAddress
    default_external_routing_address = Field(
        type=str,
        required=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
    """

    _ELEMENTS = (
        E(
            "real_delete_for_imap",
            "realDeleteForImap",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_dn_in_mail_body",
            "useDnInMailBody",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_short_subject_line",
            "useShortSubjectLine",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_message_length_minutes",
            "maxMessageLengthMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_mailbox_length_minutes",
            "maxMailboxLengthMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "does_message_age",
            "doesMessageAge",
            bool,
            False,
            True,
            False,
        ),
        E(
            "hold_period_days",
            "holdPeriodDays",
            int,
            False,
            True,
            False,
        ),
        E(
            "mail_server_net_address",
            "mailServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mail_server_protocol",
            "mailServerProtocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_delivery_from_address",
            "defaultDeliveryFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_notification_from_address",
            "defaultNotificationFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_voice_portal_lockout_from_address",
            "defaultVoicePortalLockoutFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_outgoing_mwi_on_smdi",
            "useOutgoingMWIOnSMDI",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mwi_delay_in_seconds",
            "mwiDelayInSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_scope",
            "voicePortalScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_voice_portal_licensed",
            "enterpriseVoicePortalLicensed",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_wide_messaging",
            "networkWideMessaging",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_external_routing",
            "useExternalRouting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_external_routing_address",
            "defaultExternalRoutingAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "vm_only_system",
            "vmOnlySystem",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* realDeleteForImap
    real_delete_for_imap = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useDnInMailBody
    use_dn_in_mail_body = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useShortSubjectLine
    use_short_subject_line = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxMessageLengthMinutes
    max_message_length_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxMailboxLengthMinutes
    max_mailbox_length_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* doesMessageAge
    does_message_age = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* holdPeriodDays
    hold_period_days = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* mailServerNetAddress
    mail_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* mailServerProtocol
    mail_server_protocol = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultDeliveryFromAddress
    default_delivery_from_address = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultNotificationFromAddress
    default_notification_from_address = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultVoicePortalLockoutFromAddress
    default_voice_portal_lockout_from_address = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useOutgoingMWIOnSMDI
    use_outgoing_mwi_on_smdi = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* mwiDelayInSeconds
    mwi_delay_in_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* voicePortalScope
    voice_portal_scope = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enterpriseVoicePortalLicensed
    enterprise_voice_portal_licensed = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* networkWideMessaging
    network_wide_messaging = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useExternalRouting
    use_external_routing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* defaultExternalRoutingAddress
    default_external_routing_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* vmOnlySystem
    vm_only_system = Field(
        type=bool,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "real_delete_for_imap",
            "realDeleteForImap",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_dn_in_mail_body",
            "useDnInMailBody",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_short_subject_line",
            "useShortSubjectLine",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_message_length_minutes",
            "maxMessageLengthMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_mailbox_length_minutes",
            "maxMailboxLengthMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "does_message_age",
            "doesMessageAge",
            bool,
            False,
            True,
            False,
        ),
        E(
            "hold_period_days",
            "holdPeriodDays",
            int,
            False,
            True,
            False,
        ),
        E(
            "mail_server_net_address",
            "mailServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mail_server_protocol",
            "mailServerProtocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_delivery_from_address",
            "defaultDeliveryFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_notification_from_address",
            "defaultNotificationFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_voice_portal_lockout_from_address",
            "defaultVoicePortalLockoutFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_outgoing_mwi_on_smdi",
            "useOutgoingMWIOnSMDI",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mwi_delay_in_seconds",
            "mwiDelayInSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_scope",
            "voicePortalScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_voice_portal_licensed",
            "enterpriseVoicePortalLicensed",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_wide_messaging",
            "networkWideMessaging",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_external_routing",
            "useExternalRouting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_external_routing_address",
            "defaultExternalRoutingAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "vm_only_system",
            "vmOnlySystem",
            bool,
            False,
            True,
            False,
        ),
        E(
            "client_initiated_mail_server_session_timeout_minutes",
            "clientInitiatedMailServerSessionTimeoutMinutes",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* realDeleteForImap
    real_delete_for_imap = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useDnInMailBody
    use_dn_in_mail_body = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useShortSubjectLine
    use_short_subject_line = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxMessageLengthMinutes
    max_message_length_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxMailboxLengthMinutes
    max_mailbox_length_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* doesMessageAge
    does_message_age = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* holdPeriodDays
    hold_period_days = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* mailServerNetAddress
    mail_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* mailServerProtocol
    mail_server_protocol = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultDeliveryFromAddress
    default_delivery_from_address = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultNotificationFromAddress
    default_notification_from_address = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultVoicePortalLockoutFromAddress
    default_voice_portal_lockout_from_address = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useOutgoingMWIOnSMDI
    use_outgoing_mwi_on_smdi = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* mwiDelayInSeconds
    mwi_delay_in_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* voicePortalScope
    voice_portal_scope = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enterpriseVoicePortalLicensed
    enterprise_voice_portal_licensed = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* networkWideMessaging
    network_wide_messaging = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useExternalRouting
    use_external_routing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* defaultExternalRoutingAddress
    default_external_routing_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* vmOnlySystem
    vm_only_system = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* clientInitiatedMailServerSessionTimeoutMinutes
    client_initiated_mail_server_session_timeout_minutes = Field(
        type=int,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "real_delete_for_imap",
            "realDeleteForImap",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_dn_in_mail_body",
            "useDnInMailBody",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_short_subject_line",
            "useShortSubjectLine",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_message_length_minutes",
            "maxMessageLengthMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_mailbox_length_minutes",
            "maxMailboxLengthMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "does_message_age",
            "doesMessageAge",
            bool,
            False,
            True,
            False,
        ),
        E(
            "hold_period_days",
            "holdPeriodDays",
            int,
            False,
            True,
            False,
        ),
        E(
            "mail_server_net_address",
            "mailServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mail_server_protocol",
            "mailServerProtocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_delivery_from_address",
            "defaultDeliveryFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_notification_from_address",
            "defaultNotificationFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_voice_portal_lockout_from_address",
            "defaultVoicePortalLockoutFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_outgoing_mwi_on_smdi",
            "useOutgoingMWIOnSMDI",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mwi_delay_in_seconds",
            "mwiDelayInSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_scope",
            "voicePortalScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "enterprise_voice_portal_licensed",
            "enterpriseVoicePortalLicensed",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_wide_messaging",
            "networkWideMessaging",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_external_routing",
            "useExternalRouting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_external_routing_address",
            "defaultExternalRoutingAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "vm_only_system",
            "vmOnlySystem",
            bool,
            False,
            True,
            False,
        ),
        E(
            "client_initiated_mail_server_session_timeout_minutes",
            "clientInitiatedMailServerSessionTimeoutMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "recording_audio_file_format",
            "recordingAudioFileFormat",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* realDeleteForImap
    real_delete_for_imap = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useDnInMailBody
    use_dn_in_mail_body = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useShortSubjectLine
    use_short_subject_line = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxMessageLengthMinutes
    max_message_length_minutes = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxMailboxLengthMinutes
    max_mailbox_length_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* doesMessageAge
    does_message_age = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* holdPeriodDays
    hold_period_days = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* mailServerNetAddress
    mail_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* mailServerProtocol
    mail_server_protocol = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultDeliveryFromAddress
    default_delivery_from_address = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultNotificationFromAddress
    default_notification_from_address = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultVoicePortalLockoutFromAddress
    default_voice_portal_lockout_from_address = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useOutgoingMWIOnSMDI
    use_outgoing_mwi_on_smdi = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* mwiDelayInSeconds
    mwi_delay_in_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* voicePortalScope
    voice_portal_scope = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enterpriseVoicePortalLicensed
    enterprise_voice_portal_licensed = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* networkWideMessaging
    network_wide_messaging = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useExternalRouting
    use_external_routing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* defaultExternalRoutingAddress
    default_external_routing_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* vmOnlySystem
    vm_only_system = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* clientInitiatedMailServerSessionTimeoutMinutes
    client_initiated_mail_server_session_timeout_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* recordingAudioFileFormat
    recording_audio_file_format = Field(
        type=str,
        required=True,
    )


class SystemVoiceMessagingGroupGetVoicePortalMenusResponse14(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetVoicePortalMenusRequest14()``.
    """

    _ELEMENTS = (
        E(
            "use_voice_portal_customization",
            "useVoicePortalCustomization",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_main_menu_keys",
            "voicePortalMainMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_messaging_menu_keys",
            "voiceMessagingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_busy_or_no_answer_greeting_menu_keys",
            "changeBusyOrNoAnswerGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "record_new_greeting_or_personalized_name_menu_keys",
            "recordNewGreetingOrPersonalizedNameMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "delete_all_messages_menu_keys",
            "deleteAllMessagesMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "comm_pilot_express_profile_menu_keys",
            "commPilotExpressProfileMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "personalized_name_menu_keys",
            "personalizedNameMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "call_forwarding_options_menu_keys",
            "callForwardingOptionsMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_call_forwarding_destination_menu_keys",
            "changeCallForwardingDestinationMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_portal_calling_menu_keys",
            "voicePortalCallingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "hoteling_menu_keys",
            "hotelingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "passcode_menu_keys",
            "passcodeMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "play_messages_menu_keys",
            "playMessagesMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "play_message_menu_keys",
            "playMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "additional_message_options_menu_keys",
            "additionalMessageOptionsMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "forward_or_compose_message_menu_keys",
            "forwardOrComposeMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "reply_message_menu_keys",
            "replyMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_distribution_list_menu_keys",
            "sendToDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "select_distribution_list_menu_keys",
            "selectDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "review_selected_distribution_list_menu_keys",
            "reviewSelectedDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_message_to_selected_distribution_list_menu_keys",
            "sendMessageToSelectedDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_all_group_members_menu_keys",
            "sendToAllGroupMembersMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_person_menu_keys",
            "sendToPersonMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_current_introduction_or_message_or_reply_menu_keys",
            "changeCurrentIntroductionOrMessageOrReplyMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_portal_login_menu_keys",
            "voicePortalLoginMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "fax_messaging_menu_keys",
            "faxMessagingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
    )
    #: bool: *Required* useVoicePortalCustomization
    use_voice_portal_customization = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* voicePortalMainMenuKeys
    voice_portal_main_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voiceMessagingMenuKeys
    voice_messaging_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeBusyOrNoAnswerGreetingMenuKeys
    change_busy_or_no_answer_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* recordNewGreetingOrPersonalizedNameMenuKeys
    record_new_greeting_or_personalized_name_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* deleteAllMessagesMenuKeys
    delete_all_messages_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* commPilotExpressProfileMenuKeys
    comm_pilot_express_profile_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* personalizedNameMenuKeys
    personalized_name_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callForwardingOptionsMenuKeys
    call_forwarding_options_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeCallForwardingDestinationMenuKeys
    change_call_forwarding_destination_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voicePortalCallingMenuKeys
    voice_portal_calling_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* hotelingMenuKeys
    hoteling_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* passcodeMenuKeys
    passcode_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* playMessagesMenuKeys
    play_messages_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* playMessageMenuKeys
    play_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* additionalMessageOptionsMenuKeys
    additional_message_options_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* forwardOrComposeMessageMenuKeys
    forward_or_compose_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* replyMessageMenuKeys
    reply_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToDistributionListMenuKeys
    send_to_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* selectDistributionListMenuKeys
    select_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* reviewSelectedDistributionListMenuKeys
    review_selected_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendMessageToSelectedDistributionListMenuKeys
    send_message_to_selected_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToAllGroupMembersMenuKeys
    send_to_all_group_members_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToPersonMenuKeys
    send_to_person_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeCurrentIntroductionOrMessageOrReplyMenuKeys
    change_current_introduction_or_message_or_reply_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voicePortalLoginMenuKeys
    voice_portal_login_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* faxMessagingMenuKeys
    fax_messaging_menu_keys = Field(
        type=str,
        required=True,
    )


class SystemVoiceMessagingGroupGetVoicePortalMenusResponse18(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetVoicePortalMenusRequest18()``.

    Replaced by ``SystemVoiceMessagingGroupGetVoicePortalMenusResponse19()``
    """

    _ELEMENTS = (
        E(
            "use_voice_portal_customization",
            "useVoicePortalCustomization",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_main_menu_keys",
            "voicePortalMainMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_messaging_menu_keys",
            "voiceMessagingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "play_greeting_menu_keys",
            "playGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_busy_or_no_answer_greeting_menu_keys",
            "changeBusyOrNoAnswerGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "record_new_greeting_or_personalized_name_menu_keys",
            "recordNewGreetingOrPersonalizedNameMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "delete_all_messages_menu_keys",
            "deleteAllMessagesMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "comm_pilot_express_profile_menu_keys",
            "commPilotExpressProfileMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "personalized_name_menu_keys",
            "personalizedNameMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "call_forwarding_options_menu_keys",
            "callForwardingOptionsMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_call_forwarding_destination_menu_keys",
            "changeCallForwardingDestinationMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_portal_calling_menu_keys",
            "voicePortalCallingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "hoteling_menu_keys",
            "hotelingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "passcode_menu_keys",
            "passcodeMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "play_messages_menu_keys",
            "playMessagesMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "play_message_menu_keys",
            "playMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "additional_message_options_menu_keys",
            "additionalMessageOptionsMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "forward_or_compose_message_menu_keys",
            "forwardOrComposeMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "reply_message_menu_keys",
            "replyMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_distribution_list_menu_keys",
            "sendToDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "select_distribution_list_menu_keys",
            "selectDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "review_selected_distribution_list_menu_keys",
            "reviewSelectedDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_message_to_selected_distribution_list_menu_keys",
            "sendMessageToSelectedDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_all_group_members_menu_keys",
            "sendToAllGroupMembersMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_person_menu_keys",
            "sendToPersonMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_current_introduction_or_message_or_reply_menu_keys",
            "changeCurrentIntroductionOrMessageOrReplyMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_portal_login_menu_keys",
            "voicePortalLoginMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "fax_messaging_menu_keys",
            "faxMessagingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "message_deposit_menu_keys",
            "messageDepositMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "disable_message_deposit_menu_keys",
            "disableMessageDepositMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "greeting_only_forwarding_destination_menu_keys",
            "greetingOnlyForwardingDestinationMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
    )
    #: bool: *Required* useVoicePortalCustomization
    use_voice_portal_customization = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* voicePortalMainMenuKeys
    voice_portal_main_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voiceMessagingMenuKeys
    voice_messaging_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* playGreetingMenuKeys
    play_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeBusyOrNoAnswerGreetingMenuKeys
    change_busy_or_no_answer_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* recordNewGreetingOrPersonalizedNameMenuKeys
    record_new_greeting_or_personalized_name_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* deleteAllMessagesMenuKeys
    delete_all_messages_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* commPilotExpressProfileMenuKeys
    comm_pilot_express_profile_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* personalizedNameMenuKeys
    personalized_name_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callForwardingOptionsMenuKeys
    call_forwarding_options_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeCallForwardingDestinationMenuKeys
    change_call_forwarding_destination_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voicePortalCallingMenuKeys
    voice_portal_calling_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* hotelingMenuKeys
    hoteling_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* passcodeMenuKeys
    passcode_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* playMessagesMenuKeys
    play_messages_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* playMessageMenuKeys
    play_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* additionalMessageOptionsMenuKeys
    additional_message_options_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* forwardOrComposeMessageMenuKeys
    forward_or_compose_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* replyMessageMenuKeys
    reply_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToDistributionListMenuKeys
    send_to_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* selectDistributionListMenuKeys
    select_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* reviewSelectedDistributionListMenuKeys
    review_selected_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendMessageToSelectedDistributionListMenuKeys
    send_message_to_selected_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToAllGroupMembersMenuKeys
    send_to_all_group_members_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToPersonMenuKeys
    send_to_person_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeCurrentIntroductionOrMessageOrReplyMenuKeys
    change_current_introduction_or_message_or_reply_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voicePortalLoginMenuKeys
    voice_portal_login_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* faxMessagingMenuKeys
    fax_messaging_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* messageDepositMenuKeys
    message_deposit_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* disableMessageDepositMenuKeys
    disable_message_deposit_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* greetingOnlyForwardingDestinationMenuKeys
    greeting_only_forwarding_destination_menu_keys = Field(
        type=str,
        required=True,
    )


class SystemVoiceMessagingGroupGetVoicePortalMenusResponse18sp1(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetVoicePortalMenusRequest18sp1()``.

    Replaced by ``SystemVoiceMessagingGroupGetVoicePortalMenusResponse19sp1()``
    """

    _ELEMENTS = (
        E(
            "use_voice_portal_customization",
            "useVoicePortalCustomization",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_main_menu_keys",
            "voicePortalMainMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_messaging_menu_keys",
            "voiceMessagingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "play_greeting_menu_keys",
            "playGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_busy_or_no_answer_greeting_menu_keys",
            "changeBusyOrNoAnswerGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_extended_away_greeting_menu_keys",
            "changeExtendedAwayGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "record_new_greeting_or_personalized_name_menu_keys",
            "recordNewGreetingOrPersonalizedNameMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "delete_all_messages_menu_keys",
            "deleteAllMessagesMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "comm_pilot_express_profile_menu_keys",
            "commPilotExpressProfileMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "personalized_name_menu_keys",
            "personalizedNameMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "call_forwarding_options_menu_keys",
            "callForwardingOptionsMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_call_forwarding_destination_menu_keys",
            "changeCallForwardingDestinationMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_portal_calling_menu_keys",
            "voicePortalCallingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "hoteling_menu_keys",
            "hotelingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "passcode_menu_keys",
            "passcodeMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "play_messages_menu_keys",
            "playMessagesMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "play_message_menu_keys",
            "playMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "additional_message_options_menu_keys",
            "additionalMessageOptionsMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "forward_or_compose_message_menu_keys",
            "forwardOrComposeMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "reply_message_menu_keys",
            "replyMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_distribution_list_menu_keys",
            "sendToDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "select_distribution_list_menu_keys",
            "selectDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "review_selected_distribution_list_menu_keys",
            "reviewSelectedDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_message_to_selected_distribution_list_menu_keys",
            "sendMessageToSelectedDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_all_group_members_menu_keys",
            "sendToAllGroupMembersMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_person_menu_keys",
            "sendToPersonMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_current_introduction_or_message_or_reply_menu_keys",
            "changeCurrentIntroductionOrMessageOrReplyMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_portal_login_menu_keys",
            "voicePortalLoginMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "fax_messaging_menu_keys",
            "faxMessagingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "message_deposit_menu_keys",
            "messageDepositMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "disable_message_deposit_menu_keys",
            "disableMessageDepositMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "greeting_only_forwarding_destination_menu_keys",
            "greetingOnlyForwardingDestinationMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
    )
    #: bool: *Required* useVoicePortalCustomization
    use_voice_portal_customization = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* voicePortalMainMenuKeys
    voice_portal_main_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voiceMessagingMenuKeys
    voice_messaging_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* playGreetingMenuKeys
    play_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeBusyOrNoAnswerGreetingMenuKeys
    change_busy_or_no_answer_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeExtendedAwayGreetingMenuKeys
    change_extended_away_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* recordNewGreetingOrPersonalizedNameMenuKeys
    record_new_greeting_or_personalized_name_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* deleteAllMessagesMenuKeys
    delete_all_messages_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* commPilotExpressProfileMenuKeys
    comm_pilot_express_profile_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* personalizedNameMenuKeys
    personalized_name_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callForwardingOptionsMenuKeys
    call_forwarding_options_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeCallForwardingDestinationMenuKeys
    change_call_forwarding_destination_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voicePortalCallingMenuKeys
    voice_portal_calling_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* hotelingMenuKeys
    hoteling_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* passcodeMenuKeys
    passcode_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* playMessagesMenuKeys
    play_messages_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* playMessageMenuKeys
    play_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* additionalMessageOptionsMenuKeys
    additional_message_options_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* forwardOrComposeMessageMenuKeys
    forward_or_compose_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* replyMessageMenuKeys
    reply_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToDistributionListMenuKeys
    send_to_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* selectDistributionListMenuKeys
    select_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* reviewSelectedDistributionListMenuKeys
    review_selected_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendMessageToSelectedDistributionListMenuKeys
    send_message_to_selected_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToAllGroupMembersMenuKeys
    send_to_all_group_members_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToPersonMenuKeys
    send_to_person_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeCurrentIntroductionOrMessageOrReplyMenuKeys
    change_current_introduction_or_message_or_reply_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voicePortalLoginMenuKeys
    voice_portal_login_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* faxMessagingMenuKeys
    fax_messaging_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* messageDepositMenuKeys
    message_deposit_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* disableMessageDepositMenuKeys
    disable_message_deposit_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* greetingOnlyForwardingDestinationMenuKeys
    greeting_only_forwarding_destination_menu_keys = Field(
        type=str,
        required=True,
    )


class SystemVoiceMessagingGroupGetVoicePortalMenusResponse19(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetVoicePortalMenusRequest19()``.

    Replaced by ``SystemVoiceMessagingGroupGetVoicePortalMenusResponse19sp1()``
    """

    _ELEMENTS = (
        E(
            "use_voice_portal_customization",
            "useVoicePortalCustomization",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_main_menu_keys",
            "voicePortalMainMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "greetings_menu_keys",
            "greetingsMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "conference_greeting_menu_keys",
            "conferenceGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_messaging_menu_keys",
            "voiceMessagingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "play_greeting_menu_keys",
            "playGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_busy_or_no_answer_greeting_menu_keys",
            "changeBusyOrNoAnswerGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "record_new_greeting_or_personalized_name_menu_keys",
            "recordNewGreetingOrPersonalizedNameMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "delete_all_messages_menu_keys",
            "deleteAllMessagesMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "comm_pilot_express_profile_menu_keys",
            "commPilotExpressProfileMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "personalized_name_menu_keys",
            "personalizedNameMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "call_forwarding_options_menu_keys",
            "callForwardingOptionsMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_call_forwarding_destination_menu_keys",
            "changeCallForwardingDestinationMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_portal_calling_menu_keys",
            "voicePortalCallingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "hoteling_menu_keys",
            "hotelingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "passcode_menu_keys",
            "passcodeMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "play_messages_menu_keys",
            "playMessagesMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "play_message_menu_keys",
            "playMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "additional_message_options_menu_keys",
            "additionalMessageOptionsMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "forward_or_compose_message_menu_keys",
            "forwardOrComposeMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "reply_message_menu_keys",
            "replyMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_distribution_list_menu_keys",
            "sendToDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "select_distribution_list_menu_keys",
            "selectDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "review_selected_distribution_list_menu_keys",
            "reviewSelectedDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_message_to_selected_distribution_list_menu_keys",
            "sendMessageToSelectedDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_all_group_members_menu_keys",
            "sendToAllGroupMembersMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_person_menu_keys",
            "sendToPersonMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_current_introduction_or_message_or_reply_menu_keys",
            "changeCurrentIntroductionOrMessageOrReplyMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_portal_login_menu_keys",
            "voicePortalLoginMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "fax_messaging_menu_keys",
            "faxMessagingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "message_deposit_menu_keys",
            "messageDepositMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "disable_message_deposit_menu_keys",
            "disableMessageDepositMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "greeting_only_forwarding_destination_menu_keys",
            "greetingOnlyForwardingDestinationMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
    )
    #: bool: *Required* useVoicePortalCustomization
    use_voice_portal_customization = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* voicePortalMainMenuKeys
    voice_portal_main_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* greetingsMenuKeys
    greetings_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* conferenceGreetingMenuKeys
    conference_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voiceMessagingMenuKeys
    voice_messaging_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* playGreetingMenuKeys
    play_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeBusyOrNoAnswerGreetingMenuKeys
    change_busy_or_no_answer_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* recordNewGreetingOrPersonalizedNameMenuKeys
    record_new_greeting_or_personalized_name_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* deleteAllMessagesMenuKeys
    delete_all_messages_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* commPilotExpressProfileMenuKeys
    comm_pilot_express_profile_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* personalizedNameMenuKeys
    personalized_name_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callForwardingOptionsMenuKeys
    call_forwarding_options_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeCallForwardingDestinationMenuKeys
    change_call_forwarding_destination_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voicePortalCallingMenuKeys
    voice_portal_calling_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* hotelingMenuKeys
    hoteling_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* passcodeMenuKeys
    passcode_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* playMessagesMenuKeys
    play_messages_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* playMessageMenuKeys
    play_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* additionalMessageOptionsMenuKeys
    additional_message_options_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* forwardOrComposeMessageMenuKeys
    forward_or_compose_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* replyMessageMenuKeys
    reply_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToDistributionListMenuKeys
    send_to_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* selectDistributionListMenuKeys
    select_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* reviewSelectedDistributionListMenuKeys
    review_selected_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendMessageToSelectedDistributionListMenuKeys
    send_message_to_selected_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToAllGroupMembersMenuKeys
    send_to_all_group_members_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToPersonMenuKeys
    send_to_person_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeCurrentIntroductionOrMessageOrReplyMenuKeys
    change_current_introduction_or_message_or_reply_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voicePortalLoginMenuKeys
    voice_portal_login_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* faxMessagingMenuKeys
    fax_messaging_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* messageDepositMenuKeys
    message_deposit_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* disableMessageDepositMenuKeys
    disable_message_deposit_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* greetingOnlyForwardingDestinationMenuKeys
    greeting_only_forwarding_destination_menu_keys = Field(
        type=str,
        required=True,
    )


class SystemVoiceMessagingGroupGetVoicePortalMenusResponse19sp1(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetVoicePortalMenusRequest19sp1()``.

    Replaced by ``SystemVoiceMessagingGroupGetVoicePortalMenusResponse20()``
    """

    _ELEMENTS = (
        E(
            "use_voice_portal_customization",
            "useVoicePortalCustomization",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_main_menu_keys",
            "voicePortalMainMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "greetings_menu_keys",
            "greetingsMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "conference_greeting_menu_keys",
            "conferenceGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_messaging_menu_keys",
            "voiceMessagingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "play_greeting_menu_keys",
            "playGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_busy_or_no_answer_greeting_menu_keys",
            "changeBusyOrNoAnswerGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_extended_away_greeting_menu_keys",
            "changeExtendedAwayGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "record_new_greeting_or_personalized_name_menu_keys",
            "recordNewGreetingOrPersonalizedNameMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "delete_all_messages_menu_keys",
            "deleteAllMessagesMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "comm_pilot_express_profile_menu_keys",
            "commPilotExpressProfileMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "personalized_name_menu_keys",
            "personalizedNameMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "call_forwarding_options_menu_keys",
            "callForwardingOptionsMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_call_forwarding_destination_menu_keys",
            "changeCallForwardingDestinationMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_portal_calling_menu_keys",
            "voicePortalCallingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "hoteling_menu_keys",
            "hotelingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "passcode_menu_keys",
            "passcodeMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "play_messages_menu_keys",
            "playMessagesMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "play_message_menu_keys",
            "playMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "additional_message_options_menu_keys",
            "additionalMessageOptionsMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "forward_or_compose_message_menu_keys",
            "forwardOrComposeMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "reply_message_menu_keys",
            "replyMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_distribution_list_menu_keys",
            "sendToDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "select_distribution_list_menu_keys",
            "selectDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "review_selected_distribution_list_menu_keys",
            "reviewSelectedDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_message_to_selected_distribution_list_menu_keys",
            "sendMessageToSelectedDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_all_group_members_menu_keys",
            "sendToAllGroupMembersMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_person_menu_keys",
            "sendToPersonMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_current_introduction_or_message_or_reply_menu_keys",
            "changeCurrentIntroductionOrMessageOrReplyMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_portal_login_menu_keys",
            "voicePortalLoginMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "fax_messaging_menu_keys",
            "faxMessagingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "message_deposit_menu_keys",
            "messageDepositMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "disable_message_deposit_menu_keys",
            "disableMessageDepositMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "greeting_only_forwarding_destination_menu_keys",
            "greetingOnlyForwardingDestinationMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
    )
    #: bool: *Required* useVoicePortalCustomization
    use_voice_portal_customization = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* voicePortalMainMenuKeys
    voice_portal_main_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* greetingsMenuKeys
    greetings_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* conferenceGreetingMenuKeys
    conference_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voiceMessagingMenuKeys
    voice_messaging_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* playGreetingMenuKeys
    play_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeBusyOrNoAnswerGreetingMenuKeys
    change_busy_or_no_answer_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeExtendedAwayGreetingMenuKeys
    change_extended_away_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* recordNewGreetingOrPersonalizedNameMenuKeys
    record_new_greeting_or_personalized_name_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* deleteAllMessagesMenuKeys
    delete_all_messages_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* commPilotExpressProfileMenuKeys
    comm_pilot_express_profile_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* personalizedNameMenuKeys
    personalized_name_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callForwardingOptionsMenuKeys
    call_forwarding_options_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeCallForwardingDestinationMenuKeys
    change_call_forwarding_destination_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voicePortalCallingMenuKeys
    voice_portal_calling_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* hotelingMenuKeys
    hoteling_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* passcodeMenuKeys
    passcode_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* playMessagesMenuKeys
    play_messages_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* playMessageMenuKeys
    play_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* additionalMessageOptionsMenuKeys
    additional_message_options_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* forwardOrComposeMessageMenuKeys
    forward_or_compose_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* replyMessageMenuKeys
    reply_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToDistributionListMenuKeys
    send_to_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* selectDistributionListMenuKeys
    select_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* reviewSelectedDistributionListMenuKeys
    review_selected_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendMessageToSelectedDistributionListMenuKeys
    send_message_to_selected_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToAllGroupMembersMenuKeys
    send_to_all_group_members_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToPersonMenuKeys
    send_to_person_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeCurrentIntroductionOrMessageOrReplyMenuKeys
    change_current_introduction_or_message_or_reply_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voicePortalLoginMenuKeys
    voice_portal_login_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* faxMessagingMenuKeys
    fax_messaging_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* messageDepositMenuKeys
    message_deposit_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* disableMessageDepositMenuKeys
    disable_message_deposit_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* greetingOnlyForwardingDestinationMenuKeys
    greeting_only_forwarding_destination_menu_keys = Field(
        type=str,
        required=True,
    )


class SystemVoiceMessagingGroupGetVoicePortalMenusResponse20(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetVoicePortalMenusRequest20()``.
    """

    _ELEMENTS = (
        E(
            "use_voice_portal_customization",
            "useVoicePortalCustomization",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_main_menu_keys",
            "voicePortalMainMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "announcement_menu_keys",
            "announcementMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "announcement_recording_menu_keys",
            "announcementRecordingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "greetings_menu_keys",
            "greetingsMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "conference_greeting_menu_keys",
            "conferenceGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_messaging_menu_keys",
            "voiceMessagingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "play_greeting_menu_keys",
            "playGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_busy_or_no_answer_greeting_menu_keys",
            "changeBusyOrNoAnswerGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_extended_away_greeting_menu_keys",
            "changeExtendedAwayGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "record_new_greeting_or_personalized_name_menu_keys",
            "recordNewGreetingOrPersonalizedNameMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "delete_all_messages_menu_keys",
            "deleteAllMessagesMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "comm_pilot_express_profile_menu_keys",
            "commPilotExpressProfileMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "personalized_name_menu_keys",
            "personalizedNameMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "call_forwarding_options_menu_keys",
            "callForwardingOptionsMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_call_forwarding_destination_menu_keys",
            "changeCallForwardingDestinationMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_portal_calling_menu_keys",
            "voicePortalCallingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "hoteling_menu_keys",
            "hotelingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "passcode_menu_keys",
            "passcodeMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "play_messages_menu_keys",
            "playMessagesMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "play_message_menu_keys",
            "playMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "additional_message_options_menu_keys",
            "additionalMessageOptionsMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "forward_or_compose_message_menu_keys",
            "forwardOrComposeMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "reply_message_menu_keys",
            "replyMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_distribution_list_menu_keys",
            "sendToDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "select_distribution_list_menu_keys",
            "selectDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "review_selected_distribution_list_menu_keys",
            "reviewSelectedDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_message_to_selected_distribution_list_menu_keys",
            "sendMessageToSelectedDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_all_group_members_menu_keys",
            "sendToAllGroupMembersMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_person_menu_keys",
            "sendToPersonMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_current_introduction_or_message_or_reply_menu_keys",
            "changeCurrentIntroductionOrMessageOrReplyMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_portal_login_menu_keys",
            "voicePortalLoginMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "fax_messaging_menu_keys",
            "faxMessagingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "message_deposit_menu_keys",
            "messageDepositMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "disable_message_deposit_menu_keys",
            "disableMessageDepositMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "greeting_only_forwarding_destination_menu_keys",
            "greetingOnlyForwardingDestinationMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
    )
    #: bool: *Required* useVoicePortalCustomization
    use_voice_portal_customization = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* voicePortalMainMenuKeys
    voice_portal_main_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* announcementMenuKeys
    announcement_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* announcementRecordingMenuKeys
    announcement_recording_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* greetingsMenuKeys
    greetings_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* conferenceGreetingMenuKeys
    conference_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voiceMessagingMenuKeys
    voice_messaging_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* playGreetingMenuKeys
    play_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeBusyOrNoAnswerGreetingMenuKeys
    change_busy_or_no_answer_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeExtendedAwayGreetingMenuKeys
    change_extended_away_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* recordNewGreetingOrPersonalizedNameMenuKeys
    record_new_greeting_or_personalized_name_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* deleteAllMessagesMenuKeys
    delete_all_messages_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* commPilotExpressProfileMenuKeys
    comm_pilot_express_profile_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* personalizedNameMenuKeys
    personalized_name_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callForwardingOptionsMenuKeys
    call_forwarding_options_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeCallForwardingDestinationMenuKeys
    change_call_forwarding_destination_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voicePortalCallingMenuKeys
    voice_portal_calling_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* hotelingMenuKeys
    hoteling_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* passcodeMenuKeys
    passcode_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* playMessagesMenuKeys
    play_messages_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* playMessageMenuKeys
    play_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* additionalMessageOptionsMenuKeys
    additional_message_options_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* forwardOrComposeMessageMenuKeys
    forward_or_compose_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* replyMessageMenuKeys
    reply_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToDistributionListMenuKeys
    send_to_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* selectDistributionListMenuKeys
    select_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* reviewSelectedDistributionListMenuKeys
    review_selected_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendMessageToSelectedDistributionListMenuKeys
    send_message_to_selected_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToAllGroupMembersMenuKeys
    send_to_all_group_members_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToPersonMenuKeys
    send_to_person_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeCurrentIntroductionOrMessageOrReplyMenuKeys
    change_current_introduction_or_message_or_reply_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voicePortalLoginMenuKeys
    voice_portal_login_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* faxMessagingMenuKeys
    fax_messaging_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* messageDepositMenuKeys
    message_deposit_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* disableMessageDepositMenuKeys
    disable_message_deposit_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* greetingOnlyForwardingDestinationMenuKeys
    greeting_only_forwarding_destination_menu_keys = Field(
        type=str,
        required=True,
    )


class SystemVoiceMessagingGroupGetVoicePortalMenusResponse21(OCIResponse):
    """
    Response to ``SystemVoiceMessagingGroupGetVoicePortalMenusRequest21()``.
    """

    _ELEMENTS = (
        E(
            "use_voice_portal_customization",
            "useVoicePortalCustomization",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_main_menu_keys",
            "voicePortalMainMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "announcement_menu_keys",
            "announcementMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "announcement_recording_menu_keys",
            "announcementRecordingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "greetings_menu_keys",
            "greetingsMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "conference_greeting_menu_keys",
            "conferenceGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_messaging_menu_keys",
            "voiceMessagingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "play_greeting_menu_keys",
            "playGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_busy_or_no_answer_greeting_menu_keys",
            "changeBusyOrNoAnswerGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_extended_away_greeting_menu_keys",
            "changeExtendedAwayGreetingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "record_new_greeting_or_personalized_name_menu_keys",
            "recordNewGreetingOrPersonalizedNameMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "delete_all_messages_menu_keys",
            "deleteAllMessagesMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "comm_pilot_express_profile_menu_keys",
            "commPilotExpressProfileMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "personalized_name_menu_keys",
            "personalizedNameMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "call_forwarding_options_menu_keys",
            "callForwardingOptionsMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_call_forwarding_destination_menu_keys",
            "changeCallForwardingDestinationMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_portal_calling_menu_keys",
            "voicePortalCallingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "hoteling_menu_keys",
            "hotelingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "passcode_menu_keys",
            "passcodeMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "play_messages_menu_keys",
            "playMessagesMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "play_message_menu_keys",
            "playMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "additional_message_options_menu_keys",
            "additionalMessageOptionsMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "forward_or_compose_message_menu_keys",
            "forwardOrComposeMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "reply_message_menu_keys",
            "replyMessageMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_distribution_list_menu_keys",
            "sendToDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "select_distribution_list_menu_keys",
            "selectDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "review_selected_distribution_list_menu_keys",
            "reviewSelectedDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_message_to_selected_distribution_list_menu_keys",
            "sendMessageToSelectedDistributionListMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_all_group_members_menu_keys",
            "sendToAllGroupMembersMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "send_to_person_menu_keys",
            "sendToPersonMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "change_current_introduction_or_message_or_reply_menu_keys",
            "changeCurrentIntroductionOrMessageOrReplyMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "voice_portal_login_menu_keys",
            "voicePortalLoginMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "fax_messaging_menu_keys",
            "faxMessagingMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "message_deposit_menu_keys",
            "messageDepositMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "disable_message_deposit_menu_keys",
            "disableMessageDepositMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "greeting_only_forwarding_destination_menu_keys",
            "greetingOnlyForwardingDestinationMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "personal_assistant_menu_keys",
            "personalAssistantMenuKeys",
            str,
            True,
            True,
            False,
        ),  # unknown
    )
    #: bool: *Required* useVoicePortalCustomization
    use_voice_portal_customization = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* voicePortalMainMenuKeys
    voice_portal_main_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* announcementMenuKeys
    announcement_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* announcementRecordingMenuKeys
    announcement_recording_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* greetingsMenuKeys
    greetings_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* conferenceGreetingMenuKeys
    conference_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voiceMessagingMenuKeys
    voice_messaging_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* playGreetingMenuKeys
    play_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeBusyOrNoAnswerGreetingMenuKeys
    change_busy_or_no_answer_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeExtendedAwayGreetingMenuKeys
    change_extended_away_greeting_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* recordNewGreetingOrPersonalizedNameMenuKeys
    record_new_greeting_or_personalized_name_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* deleteAllMessagesMenuKeys
    delete_all_messages_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* commPilotExpressProfileMenuKeys
    comm_pilot_express_profile_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* personalizedNameMenuKeys
    personalized_name_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callForwardingOptionsMenuKeys
    call_forwarding_options_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeCallForwardingDestinationMenuKeys
    change_call_forwarding_destination_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voicePortalCallingMenuKeys
    voice_portal_calling_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* hotelingMenuKeys
    hoteling_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* passcodeMenuKeys
    passcode_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* playMessagesMenuKeys
    play_messages_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* playMessageMenuKeys
    play_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* additionalMessageOptionsMenuKeys
    additional_message_options_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* forwardOrComposeMessageMenuKeys
    forward_or_compose_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* replyMessageMenuKeys
    reply_message_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToDistributionListMenuKeys
    send_to_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* selectDistributionListMenuKeys
    select_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* reviewSelectedDistributionListMenuKeys
    review_selected_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendMessageToSelectedDistributionListMenuKeys
    send_message_to_selected_distribution_list_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToAllGroupMembersMenuKeys
    send_to_all_group_members_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* sendToPersonMenuKeys
    send_to_person_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* changeCurrentIntroductionOrMessageOrReplyMenuKeys
    change_current_introduction_or_message_or_reply_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* voicePortalLoginMenuKeys
    voice_portal_login_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* faxMessagingMenuKeys
    fax_messaging_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* messageDepositMenuKeys
    message_deposit_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* disableMessageDepositMenuKeys
    disable_message_deposit_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* greetingOnlyForwardingDestinationMenuKeys
    greeting_only_forwarding_destination_menu_keys = Field(
        type=str,
        required=True,
    )
    #: str: *Required* personalAssistantMenuKeys
    personal_assistant_menu_keys = Field(
        type=str,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "zone_table",
            "zoneTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* zoneTable  *Tabular*
    zone_table = Field(
        type=list,
        required=True,
    )


class SystemZoneCallingZonePhysicalLocationGetResponse(OCIResponse):
    """
    Response to ``SystemZoneCallingZonePhysicalLocationGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "physical_location",
            "physicalLocation",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* physicalLocation
    physical_location = Field(
        type=str,
        required=False,
    )


class SystemZoneGetListResponse(OCIResponse):
    """
    Response to the ``SystemZoneGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "zone_name",
            "zoneName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* zoneName
    zone_name = Field(
        type=str,
        required=False,
    )


class SystemZoneLocationBasedPhysicalLocationGetListResponse(OCIResponse):
    """
    Response to ``SystemZoneLocationBasedPhysicalLocationGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "physical_location",
            "physicalLocation",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* physicalLocation
    physical_location = Field(
        type=str,
        required=False,
    )


class TutorialFlagGetResponse(OCIResponse):
    """
    Response to the ``TutorialFlagGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "enable_tutorial",
            "enableTutorial",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableTutorial
    enable_tutorial = Field(
        type=bool,
        required=True,
    )


class UserAccessDeviceFileGetListResponse(OCIResponse):
    """
    Response to ``UserAccessDeviceFileGetListRequest()``.
    Contains a table of user modifiable Device Management files.
    The column headings are: "File Format", "Template URL".
    """

    _ELEMENTS = (
        E(
            "device_files_table",
            "deviceFilesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceFilesTable  *Tabular*
    device_files_table = Field(
        type=list,
        required=True,
    )


class UserAccessDeviceFileGetResponse(OCIResponse):
    """
    Response to ``UserAccessDeviceFileGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "template_url",
            "templateUrl",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* templateUrl
    template_url = Field(
        type=str,
        required=False,
    )


class UserAccessDeviceTagsGetResponse(OCIResponse):
    """
    Response to ``UserAccessDeviceTagsGetRequest()``.
    The response contains a table with columns: "Tag Name", and "Tag Value".
    """

    _ELEMENTS = (
        E(
            "device_tags_table",
            "deviceTagsTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceTagsTable  *Tabular*
    device_tags_table = Field(
        type=list,
        required=True,
    )


class UserAdviceOfChargeGetResponse(OCIResponse):
    """
    Response to ``UserAdviceOfChargeGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "aoc_type",
            "aocType",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* aocType
    aoc_type = Field(
        type=str,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "announcement_table",
            "announcementTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* announcementTable  *Tabular*
    announcement_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "announcement_table",
            "announcementTable",
            list,
            True,
            False,
            True,
        ),
        E(
            "total_file_size",
            "totalFileSize",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_file_size",
            "maxFileSize",
            int,
            False,
            True,
            False,
        ),
    )
    #: list: *Optional* announcementTable  *Tabular*
    announcement_table = Field(
        type=list,
        required=False,
    )
    #: int: *Required* totalFileSize
    total_file_size = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxFileSize
    max_file_size = Field(
        type=int,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            True,
            False,
        ),
        E(
            "filesize",
            "filesize",
            int,
            False,
            True,
            False,
        ),
        E(
            "last_uploaded",
            "lastUploaded",
            str,
            False,
            True,
            False,
        ),
        E(
            "usage_table",
            "usageTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Required* description
    description = Field(
        type=str,
        required=True,
    )
    #: int: *Required* filesize
    filesize = Field(
        type=int,
        required=True,
    )
    #: str: *Required* lastUploaded
    last_uploaded = Field(
        type=str,
        required=True,
    )
    #: list: *Required* usageTable  *Tabular*
    usage_table = Field(
        type=list,
        required=True,
    )


class UserAnonymousCallRejectionGetResponse(OCIResponse):
    """
    Response to ``UserAnonymousCallRejectionGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


class UserAttendantConsoleGetResponse(OCIResponse):
    """
    Response to ``UserAttendantConsoleGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "launch_on_login",
            "launchOnLogin",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_user_config_call_details",
            "allowUserConfigCallDetails",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_user_view_call_details",
            "allowUserViewCallDetails",
            bool,
            False,
            True,
            False,
        ),
        E(
            "display_column",
            "displayColumn",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* launchOnLogin
    launch_on_login = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUserConfigCallDetails
    allow_user_config_call_details = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUserViewCallDetails
    allow_user_view_call_details = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* displayColumn
    display_column = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "launch_on_login",
            "launchOnLogin",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_user_config_call_details",
            "allowUserConfigCallDetails",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_user_view_call_details",
            "allowUserViewCallDetails",
            bool,
            False,
            True,
            False,
        ),
        E(
            "display_column",
            "displayColumn",
            str,
            False,
            False,
            False,
        ),
        E(
            "monitored_user_table",
            "monitoredUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* launchOnLogin
    launch_on_login = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUserConfigCallDetails
    allow_user_config_call_details = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUserViewCallDetails
    allow_user_view_call_details = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* displayColumn
    display_column = Field(
        type=str,
        required=False,
    )
    #: list: *Required* monitoredUserTable  *Tabular*
    monitored_user_table = Field(
        type=list,
        required=True,
    )


class UserAuthenticationGetResponse(OCIResponse):
    """
    Response to the ``UserAuthenticationGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "user_name",
            "userName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* userName
    user_name = Field(
        type=str,
        required=False,
    )


class UserAutomaticCallbackGetResponse(OCIResponse):
    """
    Response to ``UserAutomaticCallbackGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )


class UserAutomaticHoldRetrieveGetResponse(OCIResponse):
    """
    Response to ``UserAutomaticHoldRetrieveGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "recall_timer_seconds",
            "recallTimerSeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* recallTimerSeconds
    recall_timer_seconds = Field(
        type=int,
        required=True,
    )


class UserBargeInExemptGetResponse(OCIResponse):
    """
    Response to ``UserBargeInExemptGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )


class UserBroadWorksAnywhereGetAvailablePortalListResponse(OCIResponse):
    """
    Response to the ``UserBroadWorksAnywhereGetAvailablePortalListRequest()``.
    Contains a table with column headings: "Portal Name", "Phone Number",
    "Extension", "Language".
    """

    _ELEMENTS = (
        E(
            "portal_table",
            "portalTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* portalTable  *Tabular*
    portal_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "outbound_alternate_number",
            "outboundAlternateNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "broadworks_call_control",
            "broadworksCallControl",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_diversion_inhibitor",
            "useDiversionInhibitor",
            bool,
            False,
            True,
            False,
        ),
        E(
            "answer_confirmation_required",
            "answerConfirmationRequired",
            bool,
            False,
            True,
            False,
        ),
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* outboundAlternateNumber
    outbound_alternate_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* broadworksCallControl
    broadworks_call_control = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useDiversionInhibitor
    use_diversion_inhibitor = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* answerConfirmationRequired
    answer_confirmation_required = Field(
        type=bool,
        required=True,
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


class UserBroadWorksAnywhereGetResponse(OCIResponse):
    """
    Response to the ``UserBroadWorksAnywhereGetRequest()``.
    The phoneNumberTable contains columns: "Phone Number", "Description"
    Replaced By ``UserBroadWorksAnywhereGetResponse16sp2()``
    """

    _ELEMENTS = (
        E(
            "alert_all_locations_for_click_to_dial_calls",
            "alertAllLocationsForClickToDialCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "phone_number_table",
            "phoneNumberTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* alertAllLocationsForClickToDialCalls
    alert_all_locations_for_click_to_dial_calls = Field(
        type=bool,
        required=True,
    )
    #: list: *Required* phoneNumberTable  *Tabular*
    phone_number_table = Field(
        type=list,
        required=True,
    )


class UserBroadWorksAnywhereGetResponse16sp2(OCIResponse):
    """
    Response to the ``UserBroadWorksAnywhereGetRequest16sp2()``.
    The phoneNumberTable contains columns: "Phone Number", "Description"
    """

    _ELEMENTS = (
        E(
            "alert_all_locations_for_click_to_dial_calls",
            "alertAllLocationsForClickToDialCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "alert_all_locations_for_group_paging_calls",
            "alertAllLocationsForGroupPagingCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "phone_number_table",
            "phoneNumberTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* alertAllLocationsForClickToDialCalls
    alert_all_locations_for_click_to_dial_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* alertAllLocationsForGroupPagingCalls
    alert_all_locations_for_group_paging_calls = Field(
        type=bool,
        required=True,
    )
    #: list: *Required* phoneNumberTable  *Tabular*
    phone_number_table = Field(
        type=list,
        required=True,
    )


class UserBroadWorksCommunicatorGetResponse(OCIResponse):
    """
    Response to ``UserBroadWorksCommunicatorGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "configuration_server_url",
            "configurationServerURL",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* configurationServerURL
    configuration_server_url = Field(
        type=str,
        required=False,
    )


class UserBroadWorksMobilityGetResponse(OCIResponse):
    """
    Response to a ``UserBroadWorksMobilityGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "phones_to_ring",
            "phonesToRing",
            str,
            False,
            True,
            False,
        ),
        E(
            "mobile_phone_number",
            "mobilePhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "alert_click_to_dial_calls",
            "alertClickToDialCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "alert_group_paging_calls",
            "alertGroupPagingCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_diversion_inhibitor",
            "enableDiversionInhibitor",
            bool,
            False,
            True,
            False,
        ),
        E(
            "require_answer_confirmation",
            "requireAnswerConfirmation",
            bool,
            False,
            True,
            False,
        ),
        E(
            "broadworks_call_control",
            "broadworksCallControl",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "deny_call_originations",
            "denyCallOriginations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "deny_call_terminations",
            "denyCallTerminations",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* phonesToRing
    phones_to_ring = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* mobilePhoneNumber
    mobile_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* alertClickToDialCalls
    alert_click_to_dial_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* alertGroupPagingCalls
    alert_group_paging_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDiversionInhibitor
    enable_diversion_inhibitor = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requireAnswerConfirmation
    require_answer_confirmation = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* broadworksCallControl
    broadworks_call_control = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* denyCallOriginations
    deny_call_originations = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* denyCallTerminations
    deny_call_terminations = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "monitored_user_table",
            "monitoredUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* monitoredUserTable  *Tabular*
    monitored_user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "monitored_user_table",
            "monitoredUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* monitoredUserTable  *Tabular*
    monitored_user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "monitored_user_table",
            "monitoredUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* monitoredUserTable  *Tabular*
    monitored_user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "list_uri",
            "listURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "monitored_user_table",
            "monitoredUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Optional* listURI
    list_uri = Field(
        type=str,
        required=False,
    )
    #: list: *Required* monitoredUserTable  *Tabular*
    monitored_user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "list_uri",
            "listURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "enable_call_park_notification",
            "enableCallParkNotification",
            bool,
            False,
            True,
            False,
        ),
        E(
            "monitored_user_table",
            "monitoredUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Optional* listURI
    list_uri = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* enableCallParkNotification
    enable_call_park_notification = Field(
        type=bool,
        required=True,
    )
    #: list: *Required* monitoredUserTable  *Tabular*
    monitored_user_table = Field(
        type=list,
        required=True,
    )


class UserCallCenterAgentDetailsGetResponse(OCIResponse):
    """
    Response to the ``UserCallCenterAgentDetailsGetRequest()``.
    Contains the detail information for a Call Center Agent.
    """

    _ELEMENTS = (
        E(
            "is_call_center_basic_assigned",
            "isCallCenterBasicAssigned",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_call_center_standard_assigned",
            "isCallCenterStandardAssigned",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_call_center_premium_assigned",
            "isCallCenterPremiumAssigned",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isCallCenterBasicAssigned
    is_call_center_basic_assigned = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isCallCenterStandardAssigned
    is_call_center_standard_assigned = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isCallCenterPremiumAssigned
    is_call_center_premium_assigned = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "call_center_table",
            "callCenterTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* callCenterTable  *Tabular*
    call_center_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "disposition_codes_table",
            "dispositionCodesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* dispositionCodesTable  *Tabular*
    disposition_codes_table = Field(
        type=list,
        required=True,
    )


class UserCallCenterEnhancedReportingReportTemplateParamInfoGetResponse(OCIResponse):
    """
    Response to ``UserCallCenterEnhancedReportingReportTemplateParamInfoGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_realtime_report",
            "isRealtimeReport",
            bool,
            False,
            True,
            False,
        ),
        E(
            "require_agent_param",
            "requireAgentParam",
            bool,
            False,
            True,
            False,
        ),
        E(
            "require_call_center_param",
            "requireCallCenterParam",
            bool,
            False,
            True,
            False,
        ),
        E(
            "require_call_center_dnis_param",
            "requireCallCenterDnisParam",
            bool,
            False,
            True,
            False,
        ),
        E(
            "require_sampling_period_param",
            "requireSamplingPeriodParam",
            bool,
            False,
            True,
            False,
        ),
        E(
            "call_completion_threshold_param",
            "callCompletionThresholdParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "short_duration_threshold_param",
            "shortDurationThresholdParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_level_threshold_param",
            "serviceLevelThresholdParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_level_inclusions_param",
            "serviceLevelInclusionsParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_level_objective_threshold_param",
            "serviceLevelObjectiveThresholdParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "abandoned_call_threshold_param",
            "abandonedCallThresholdParam",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_level_threshold_param_number",
            "serviceLevelThresholdParamNumber",
            int,
            False,
            False,
            False,
        ),
        E(
            "abandoned_call_threshold_param_number",
            "abandonedCallThresholdParamNumber",
            int,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isRealtimeReport
    is_realtime_report = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requireAgentParam
    require_agent_param = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requireCallCenterParam
    require_call_center_param = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requireCallCenterDnisParam
    require_call_center_dnis_param = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requireSamplingPeriodParam
    require_sampling_period_param = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* callCompletionThresholdParam
    call_completion_threshold_param = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* shortDurationThresholdParam
    short_duration_threshold_param = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serviceLevelThresholdParam
    service_level_threshold_param = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serviceLevelInclusionsParam
    service_level_inclusions_param = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serviceLevelObjectiveThresholdParam
    service_level_objective_threshold_param = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* abandonedCallThresholdParam
    abandoned_call_threshold_param = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* serviceLevelThresholdParamNumber
    service_level_threshold_param_number = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* abandonedCallThresholdParamNumber
    abandoned_call_threshold_param_number = Field(
        type=int,
        required=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".
    """

    _ELEMENTS = (
        E(
            "supervisor_table",
            "supervisorTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* supervisorTable  *Tabular*
    supervisor_table = Field(
        type=list,
        required=True,
    )


class UserCallCenterGetAvailableCallCenterListResponse(OCIResponse):
    """
    Response to the ``UserCallCenterGetAvailableCallCenterListRequest()``.
    Contains a table with column heading: "Service User Id".
    """

    _ELEMENTS = (
        E(
            "call_center_table",
            "callCenterTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* callCenterTable  *Tabular*
    call_center_table = Field(
        type=list,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "agent_acd_state",
            "agentACDState",
            str,
            False,
            False,
            False,
        ),
        E(
            "user_table",
            "userTable",
            list,
            True,
            False,
            True,
        ),
    )
    #: str: *Optional* agentACDState
    agent_acd_state = Field(
        type=str,
        required=False,
    )
    #: list: *Optional* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=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".
    """

    _ELEMENTS = (
        E(
            "agent_acd_state",
            "agentACDState",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_default_guard_timer",
            "useDefaultGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_guard_timer",
            "enableGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "guard_timer_seconds",
            "guardTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_system_default_unavailable_settings",
            "useSystemDefaultUnavailableSettings",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_unavailable_on_personal_calls",
            "forceUnavailableOnPersonalCalls",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit",
            bool,
            False,
            False,
            False,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable",
            int,
            False,
            False,
            False,
        ),
        E(
            "call_center_table",
            "callCenterTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Optional* agentACDState
    agent_acd_state = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useDefaultGuardTimer
    use_default_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableGuardTimer
    enable_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* guardTimerSeconds
    guard_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Optional* useSystemDefaultUnavailableSettings
    use_system_default_unavailable_settings = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnDNDActivation
    force_agent_unavailable_on_dnd_activation = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceUnavailableOnPersonalCalls
    force_unavailable_on_personal_calls = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnBouncedCallLimit
    force_agent_unavailable_on_bounced_call_limit = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* numberConsecutiveBouncedCallsToForceAgentUnavailable
    number_consecutive_bounced_calls_to_force_agent_unavailable = Field(
        type=int,
        required=False,
    )
    #: list: *Required* callCenterTable  *Tabular*
    call_center_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "agent_user_table",
            "agentUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* agentUserTable  *Tabular*
    agent_user_table = Field(
        type=list,
        required=True,
    )


class UserCallCenterGetSupervisorCallCenterListResponse(OCIResponse):
    """
    Response to the ``UserCallCenterGetSupervisorCallCenterListRequest()``.
    Contains a table with column headings: "Service User Id", "Phone Number",
    "Extension", "Type" and "Priority".
    """

    _ELEMENTS = (
        E(
            "call_center_table",
            "callCenterTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* callCenterTable  *Tabular*
    call_center_table = Field(
        type=list,
        required=True,
    )


class UserCallCenterMonitoringGetResponse(OCIResponse):
    """
    Response to ``UserCallCenterMonitoringGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "play_tone_to_agent_for_silent_monitoring",
            "playToneToAgentForSilentMonitoring",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* playToneToAgentForSilentMonitoring
    play_tone_to_agent_for_silent_monitoring = Field(
        type=bool,
        required=True,
    )


class UserCallForwardingAlwaysGetResponse(OCIResponse):
    """
    Response to ``UserCallForwardingAlwaysGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_ring_splash_active",
            "isRingSplashActive",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isRingSplashActive
    is_ring_splash_active = Field(
        type=bool,
        required=True,
    )


class UserCallForwardingBusyGetResponse(OCIResponse):
    """
    Response to ``UserCallForwardingBusyGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )


class UserCallForwardingNoAnswerGetResponse13mp16(OCIResponse):
    """
    Response to ``UserCallForwardingNoAnswerGetRequest13mp16()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "number_of_rings",
            "numberOfRings",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: int: *Required* numberOfRings
    number_of_rings = Field(
        type=int,
        required=True,
    )


class UserCallForwardingNotReachableGetResponse(OCIResponse):
    """
    Response to ``UserCallForwardingNotReachableGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "default_forward_to_phone_number",
            "defaultForwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_ring_reminder",
            "playRingReminder",
            bool,
            False,
            True,
            False,
        ),
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Optional* defaultForwardToPhoneNumber
    default_forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playRingReminder
    play_ring_reminder = Field(
        type=bool,
        required=True,
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_forward_to_phone_number",
            "defaultForwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_ring_reminder",
            "playRingReminder",
            bool,
            False,
            True,
            False,
        ),
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* defaultForwardToPhoneNumber
    default_forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playRingReminder
    play_ring_reminder = Field(
        type=bool,
        required=True,
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "answer_confirmation",
            "answerConfirmation",
            str,
            False,
            True,
            False,
        ),
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* answerConfirmation
    answer_confirmation = Field(
        type=str,
        required=True,
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "call_notify_email_address",
            "callNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Optional* callNotifyEmailAddress
    call_notify_email_address = Field(
        type=str,
        required=False,
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "name",
            "name",
            str,
            False,
            False,
            False,
        ),
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Optional* name
    name = Field(
        type=str,
        required=False,
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "name",
            "name",
            str,
            False,
            False,
            False,
        ),
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Optional* name
    name = Field(
        type=str,
        required=False,
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


class UserCallPoliciesGetResponse(OCIResponse):
    """
    Response to ``UserCallPoliciesGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "redirected_calls_colp_privacy",
            "redirectedCallsCOLPPrivacy",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* redirectedCallsCOLPPrivacy
    redirected_calls_colp_privacy = Field(
        type=str,
        required=True,
    )


class UserCallPoliciesGetResponse17(OCIResponse):
    """
    Response to ``UserCallPoliciesGetRequest17()``.

    Replaced By ``UserCallPoliciesGetResponse19sp1()``
    """

    _ELEMENTS = (
        E(
            "redirected_calls_colp_privacy",
            "redirectedCallsCOLPPrivacy",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_being_forwarded_response_call_type",
            "callBeingForwardedResponseCallType",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* redirectedCallsCOLPPrivacy
    redirected_calls_colp_privacy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callBeingForwardedResponseCallType
    call_being_forwarded_response_call_type = Field(
        type=str,
        required=True,
    )


class UserCallPoliciesGetResponse19sp1(OCIResponse):
    """
    Response to ``UserCallPoliciesGetRequest19sp1()``.
    """

    _ELEMENTS = (
        E(
            "redirected_calls_colp_privacy",
            "redirectedCallsCOLPPrivacy",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_being_forwarded_response_call_type",
            "callBeingForwardedResponseCallType",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_identity_for_redirected_calls",
            "callingLineIdentityForRedirectedCalls",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* redirectedCallsCOLPPrivacy
    redirected_calls_colp_privacy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callBeingForwardedResponseCallType
    call_being_forwarded_response_call_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdentityForRedirectedCalls
    calling_line_identity_for_redirected_calls = Field(
        type=str,
        required=True,
    )


class UserCallProcessingGetPolicyResponse14(OCIResponse):
    """
    Response to ``UserCallProcessingGetPolicyRequest14()``.
    """

    _ELEMENTS = (
        E(
            "use_user_setting",
            "useUserSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* useUserSetting
    use_user_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )


class UserCallProcessingGetPolicyResponse14sp1(OCIResponse):
    """
    Response to ``UserCallProcessingGetPolicyRequest14sp1()``.
    Replaced By ``UserCallProcessingGetPolicyResponse14sp7()``
    """

    _ELEMENTS = (
        E(
            "use_user_setting",
            "useUserSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useUserSetting
    use_user_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )


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)
    """

    _ELEMENTS = (
        E(
            "use_user_clid_setting",
            "useUserCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_media_setting",
            "useUserMediaSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_call_limits_setting",
            "useUserCallLimitsSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useUserCLIDSetting
    use_user_clid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserMediaSetting
    use_user_media_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserCallLimitsSetting
    use_user_call_limits_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )


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)
    """

    _ELEMENTS = (
        E(
            "use_user_clid_setting",
            "useUserCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_media_setting",
            "useUserMediaSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_call_limits_setting",
            "useUserCallLimitsSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useUserCLIDSetting
    use_user_clid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserMediaSetting
    use_user_media_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserCallLimitsSetting
    use_user_call_limits_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "use_user_clid_setting",
            "useUserCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_media_setting",
            "useUserMediaSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_call_limits_setting",
            "useUserCallLimitsSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_dclid_setting",
            "useUserDCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useUserCLIDSetting
    use_user_clid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserMediaSetting
    use_user_media_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserCallLimitsSetting
    use_user_call_limits_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserDCLIDSetting
    use_user_dclid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )


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)
    """

    _ELEMENTS = (
        E(
            "use_user_clid_setting",
            "useUserCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_media_setting",
            "useUserMediaSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_call_limits_setting",
            "useUserCallLimitsSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useUserCLIDSetting
    use_user_clid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserMediaSetting
    use_user_media_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserCallLimitsSetting
    use_user_call_limits_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "use_user_clid_setting",
            "useUserCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_media_setting",
            "useUserMediaSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_call_limits_setting",
            "useUserCallLimitsSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_dclid_setting",
            "useUserDCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useUserCLIDSetting
    use_user_clid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserMediaSetting
    use_user_media_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserCallLimitsSetting
    use_user_call_limits_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserDCLIDSetting
    use_user_dclid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "use_user_clid_setting",
            "useUserCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_media_setting",
            "useUserMediaSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_call_limits_setting",
            "useUserCallLimitsSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_dclid_setting",
            "useUserDCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useUserCLIDSetting
    use_user_clid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserMediaSetting
    use_user_media_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserCallLimitsSetting
    use_user_call_limits_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserDCLIDSetting
    use_user_dclid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "use_user_clid_setting",
            "useUserCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_media_setting",
            "useUserMediaSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_call_limits_setting",
            "useUserCallLimitsSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_dclid_setting",
            "useUserDCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_department_clid_name_override",
            "allowDepartmentCLIDNameOverride",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useUserCLIDSetting
    use_user_clid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserMediaSetting
    use_user_media_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserCallLimitsSetting
    use_user_call_limits_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserDCLIDSetting
    use_user_dclid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowDepartmentCLIDNameOverride
    allow_department_clid_name_override = Field(
        type=bool,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "use_user_clid_setting",
            "useUserCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_media_setting",
            "useUserMediaSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_call_limits_setting",
            "useUserCallLimitsSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_user_dclid_setting",
            "useUserDCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_calls",
            "useMaxSimultaneousCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_calls",
            "maxSimultaneousCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_simultaneous_video_calls",
            "useMaxSimultaneousVideoCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_simultaneous_video_calls",
            "maxSimultaneousVideoCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_answered_calls",
            "useMaxCallTimeForAnsweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_answered_calls_minutes",
            "maxCallTimeForAnsweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_call_time_for_unanswered_calls",
            "useMaxCallTimeForUnansweredCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_call_time_for_unanswered_calls_minutes",
            "maxCallTimeForUnansweredCallsMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "media_policy_selection",
            "mediaPolicySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "supported_media_set_name",
            "supportedMediaSetName",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_max_concurrent_redirected_calls",
            "useMaxConcurrentRedirectedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_redirected_calls",
            "maxConcurrentRedirectedCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_find_me_follow_me_depth",
            "useMaxFindMeFollowMeDepth",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_find_me_follow_me_depth",
            "maxFindMeFollowMeDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_redirection_depth",
            "maxRedirectionDepth",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_max_concurrent_find_me_follow_me_invocations",
            "useMaxConcurrentFindMeFollowMeInvocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_concurrent_find_me_follow_me_invocations",
            "maxConcurrentFindMeFollowMeInvocations",
            int,
            False,
            True,
            False,
        ),
        E(
            "clid_policy",
            "clidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "emergency_clid_policy",
            "emergencyClidPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "allow_alternate_numbers_for_redirecting_identity",
            "allowAlternateNumbersForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_group_name",
            "useGroupName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "block_calling_name_for_external_calls",
            "blockCallingNameForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dialable_caller_id",
            "enableDialableCallerID",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_configurable_clid_for_redirecting_identity",
            "allowConfigurableCLIDForRedirectingIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_department_clid_name_override",
            "allowDepartmentCLIDNameOverride",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useUserCLIDSetting
    use_user_clid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserMediaSetting
    use_user_media_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserCallLimitsSetting
    use_user_call_limits_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useUserDCLIDSetting
    use_user_dclid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousCalls
    use_max_simultaneous_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousCalls
    max_simultaneous_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxSimultaneousVideoCalls
    use_max_simultaneous_video_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxSimultaneousVideoCalls
    max_simultaneous_video_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForAnsweredCalls
    use_max_call_time_for_answered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForAnsweredCallsMinutes
    max_call_time_for_answered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxCallTimeForUnansweredCalls
    use_max_call_time_for_unanswered_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCallTimeForUnansweredCallsMinutes
    max_call_time_for_unanswered_calls_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Required* mediaPolicySelection
    media_policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* supportedMediaSetName
    supported_media_set_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useMaxConcurrentRedirectedCalls
    use_max_concurrent_redirected_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentRedirectedCalls
    max_concurrent_redirected_calls = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxFindMeFollowMeDepth
    use_max_find_me_follow_me_depth = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxFindMeFollowMeDepth
    max_find_me_follow_me_depth = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxRedirectionDepth
    max_redirection_depth = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useMaxConcurrentFindMeFollowMeInvocations
    use_max_concurrent_find_me_follow_me_invocations = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxConcurrentFindMeFollowMeInvocations
    max_concurrent_find_me_follow_me_invocations = Field(
        type=int,
        required=True,
    )
    #: str: *Required* clidPolicy
    clid_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* emergencyClidPolicy
    emergency_clid_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allowAlternateNumbersForRedirectingIdentity
    allow_alternate_numbers_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useGroupName
    use_group_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* blockCallingNameForExternalCalls
    block_calling_name_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDialableCallerID
    enable_dialable_caller_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowConfigurableCLIDForRedirectingIdentity
    allow_configurable_clid_for_redirecting_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowDepartmentCLIDNameOverride
    allow_department_clid_name_override = Field(
        type=bool,
        required=True,
    )


class UserCallRecordingGetResponse(OCIResponse):
    """
    Response to the ``UserCallRecordingGetRequest()``.
    The response contains the user's Call Recording option information.
    """

    _ELEMENTS = (
        E(
            "recording_option",
            "recordingOption",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* recordingOption
    recording_option = Field(
        type=str,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "recording_option",
            "recordingOption",
            str,
            False,
            True,
            False,
        ),
        E(
            "pause_resume_notification",
            "pauseResumeNotification",
            str,
            False,
            False,
            False,
        ),
        E(
            "enable_call_recording_announcement",
            "enableCallRecordingAnnouncement",
            bool,
            False,
            False,
            False,
        ),
        E(
            "enable_record_call_repeat_warning_tone",
            "enableRecordCallRepeatWarningTone",
            bool,
            False,
            False,
            False,
        ),
        E(
            "record_call_repeat_warning_tone_timer_seconds",
            "recordCallRepeatWarningToneTimerSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_voice_mail_recording",
            "enableVoiceMailRecording",
            bool,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* recordingOption
    recording_option = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* pauseResumeNotification
    pause_resume_notification = Field(
        type=str,
        required=False,
    )
    #: bool: *Optional* enableCallRecordingAnnouncement
    enable_call_recording_announcement = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* enableRecordCallRepeatWarningTone
    enable_record_call_repeat_warning_tone = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* recordCallRepeatWarningToneTimerSeconds
    record_call_repeat_warning_tone_timer_seconds = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* enableVoiceMailRecording
    enable_voice_mail_recording = Field(
        type=bool,
        required=False,
    )


class UserCallTransferGetResponse(OCIResponse):
    """
    Response to ``UserCallTransferGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_recall_active",
            "isRecallActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "recall_number_of_rings",
            "recallNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_diversion_inhibitor_for_blind_transfer",
            "useDiversionInhibitorForBlindTransfer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_diversion_inhibitor_for_consultative_calls",
            "useDiversionInhibitorForConsultativeCalls",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isRecallActive
    is_recall_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* recallNumberOfRings
    recall_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useDiversionInhibitorForBlindTransfer
    use_diversion_inhibitor_for_blind_transfer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useDiversionInhibitorForConsultativeCalls
    use_diversion_inhibitor_for_consultative_calls = Field(
        type=bool,
        required=True,
    )


class UserCallTransferGetResponse14sp4(OCIResponse):
    """
    Response to ``UserCallTransferGetRequest14sp4()``.
    """

    _ELEMENTS = (
        E(
            "is_recall_active",
            "isRecallActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "recall_number_of_rings",
            "recallNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_diversion_inhibitor_for_blind_transfer",
            "useDiversionInhibitorForBlindTransfer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_diversion_inhibitor_for_consultative_calls",
            "useDiversionInhibitorForConsultativeCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_busy_camp_on",
            "enableBusyCampOn",
            bool,
            False,
            True,
            False,
        ),
        E(
            "busy_camp_on_seconds",
            "busyCampOnSeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isRecallActive
    is_recall_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* recallNumberOfRings
    recall_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* useDiversionInhibitorForBlindTransfer
    use_diversion_inhibitor_for_blind_transfer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useDiversionInhibitorForConsultativeCalls
    use_diversion_inhibitor_for_consultative_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableBusyCampOn
    enable_busy_camp_on = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* busyCampOnSeconds
    busy_camp_on_seconds = Field(
        type=int,
        required=True,
    )


class UserCallWaitingGetResponse(OCIResponse):
    """
    Response to ``UserCallWaitingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )


class UserCallWaitingGetResponse17sp4(OCIResponse):
    """
    Response to ``UserCallWaitingGetRequest17sp4()``.

    The following elements are only used in AS data mode:
    disableCallingLineIdDelivery
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disable_calling_line_id_delivery",
            "disableCallingLineIdDelivery",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* disableCallingLineIdDelivery
    disable_calling_line_id_delivery = Field(
        type=bool,
        required=True,
    )


class UserCallingLineIDBlockingOverrideGetResponse(OCIResponse):
    """
    Response to ``UserCallingLineIDBlockingOverrideGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )


class UserCallingLineIDDeliveryBlockingGetResponse(OCIResponse):
    """
    Response to ``UserCallingLineIDDeliveryBlockingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )


class UserCallingNameDeliveryGetResponse(OCIResponse):
    """
    Response to ``UserCallingNameDeliveryGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active_for_external_calls",
            "isActiveForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_active_for_internal_calls",
            "isActiveForInternalCalls",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActiveForExternalCalls
    is_active_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isActiveForInternalCalls
    is_active_for_internal_calls = Field(
        type=bool,
        required=True,
    )


class UserCallingNameRetrievalGetResponse(OCIResponse):
    """
    Response to ``UserCallingNameRetrievalGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )


class UserCallingNumberDeliveryGetResponse(OCIResponse):
    """
    Response to ``UserCallingNumberDeliveryGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active_for_external_calls",
            "isActiveForExternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_active_for_internal_calls",
            "isActiveForInternalCalls",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActiveForExternalCalls
    is_active_for_external_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isActiveForInternalCalls
    is_active_for_internal_calls = Field(
        type=bool,
        required=True,
    )


class UserCallingPartyCategoryGetResponse(OCIResponse):
    """
    Response to ``UserCallingPartyCategoryGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "category",
            "category",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* category
    category = Field(
        type=str,
        required=True,
    )


class UserCallingPartyCategoryGetResponse16(OCIResponse):
    """
    Response to ``UserCallingPartyCategoryGetRequest16()``.
    """

    _ELEMENTS = (
        E(
            "category",
            "category",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* category
    category = Field(
        type=str,
        required=True,
    )


class UserChargeNumberGetResponse(OCIResponse):
    """
    Response to ``UserChargeNumberGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )


class UserChargeNumberGetResponse14sp9(OCIResponse):
    """
    Response to ``UserChargeNumberGetRequest14sp9()``.
    """

    _ELEMENTS = (
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_charge_number_for_enhanced_translations",
            "useChargeNumberForEnhancedTranslations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "send_charge_number_to_network",
            "sendChargeNumberToNetwork",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useChargeNumberForEnhancedTranslations
    use_charge_number_for_enhanced_translations = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* sendChargeNumberToNetwork
    send_charge_number_to_network = Field(
        type=bool,
        required=True,
    )


class UserClassmarkGetResponse(OCIResponse):
    """
    Response to ``UserClassmarkGetRequest()``.
    Contains the Class Mark data
    """

    _ELEMENTS = (
        E(
            "classmark",
            "classmark",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* classmark
    classmark = Field(
        type=str,
        required=False,
    )


class UserCollaborateInstantRoomAddResponse(OCIResponse):
    """
    Response to ``UserCollaborateInstantRoomAddRequest()``.
    """

    _ELEMENTS = (
        E(
            "room_id",
            "roomId",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* roomId
    room_id = Field(
        type=str,
        required=True,
    )


class UserCollaborateInstantRoomGetResponse(OCIResponse):
    """
    Response to ``UserCollaborateInstantRoomGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "room_name",
            "roomName",
            str,
            False,
            False,
            False,
        ),
        E(
            "instant_room_start_time",
            "instantRoomStartTime",
            str,
            False,
            True,
            False,
        ),
        E(
            "instant_room_end_time",
            "instantRoomEndTime",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* roomName
    room_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* instantRoomStartTime
    instant_room_start_time = Field(
        type=str,
        required=True,
    )
    #: str: *Required* instantRoomEndTime
    instant_room_end_time = Field(
        type=str,
        required=True,
    )


class UserCollaborateInstantRoomParametersGetResponse(OCIResponse):
    """
    Response to ``UserCollaborateInstantRoomParametersGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "attendee_notification",
            "attendeeNotification",
            str,
            False,
            True,
            False,
        ),
        E(
            "end_collaborate_room_session_on_owner_exit",
            "endCollaborateRoomSessionOnOwnerExit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "owner_required",
            "ownerRequired",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* attendeeNotification
    attendee_notification = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* endCollaborateRoomSessionOnOwnerExit
    end_collaborate_room_session_on_owner_exit = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* ownerRequired
    owner_required = Field(
        type=bool,
        required=True,
    )


class UserCollaborateMyRoomGetResponse(OCIResponse):
    """
    Response to ``UserCollaborateMyRoomGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "room_id",
            "roomId",
            str,
            False,
            True,
            False,
        ),
        E(
            "room_name",
            "roomName",
            str,
            False,
            True,
            False,
        ),
        E(
            "attendee_notification",
            "attendeeNotification",
            str,
            False,
            True,
            False,
        ),
        E(
            "end_collaborate_room_session_on_owner_exit",
            "endCollaborateRoomSessionOnOwnerExit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "owner_required",
            "ownerRequired",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* roomId
    room_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* roomName
    room_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* attendeeNotification
    attendee_notification = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* endCollaborateRoomSessionOnOwnerExit
    end_collaborate_room_session_on_owner_exit = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* ownerRequired
    owner_required = Field(
        type=bool,
        required=True,
    )


class UserCollaborateProjectRoomAddResponse(OCIResponse):
    """
    Response to ``UserCollaborateProjectRoomAddRequest()``.
    """

    _ELEMENTS = (
        E(
            "room_id",
            "roomId",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* roomId
    room_id = Field(
        type=str,
        required=True,
    )


class UserCollaborateRoomIDRegenerateResponse(OCIResponse):
    """
    Response to ``UserCollaborateRoomIDRegenerateRequest()``.
    """

    _ELEMENTS = (
        E(
            "room_id",
            "roomId",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* roomId
    room_id = Field(
        type=str,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "room_instance_table",
            "roomInstanceTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* roomInstanceTable  *Tabular*
    room_instance_table = Field(
        type=list,
        required=True,
    )


class UserCommPilotCallManagerGetResponse(OCIResponse):
    """
    Response to ``UserCommPilotCallManagerGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "launch_on_login",
            "launchOnLogin",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* launchOnLogin
    launch_on_login = Field(
        type=bool,
        required=True,
    )


class UserCommunicationBarringGetResponse(OCIResponse):
    """
    Response to ``UserCommunicationBarringGetRequest()``.
    This command only applies to users in an Enterprise.
    """

    _ELEMENTS = (
        E(
            "use_group_setting",
            "useGroupSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "profile_name",
            "profileName",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* useGroupSetting
    use_group_setting = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* profileName
    profile_name = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "lockout_status",
            "lockoutStatus",
            bool,
            False,
            True,
            False,
        ),
        E(
            "profile_table",
            "profileTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* lockoutStatus
    lockout_status = Field(
        type=bool,
        required=True,
    )
    #: list: *Required* profileTable  *Tabular*
    profile_table = Field(
        type=list,
        required=True,
    )


class UserConnectedLineIdentificationRestrictionGetResponse(OCIResponse):
    """
    Response to ``UserConnectedLineIdentificationRestrictionGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


class UserDevicePoliciesGetResponse(OCIResponse):
    """
    Response to ``UserDevicePoliciesGetRequest()``.
    enableDeviceFeatureSynchronization is ignored by the application server in
    Multiple User Shared mode.
    """

    _ELEMENTS = (
        E(
            "line_mode",
            "lineMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_device_feature_synchronization",
            "enableDeviceFeatureSynchronization",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* lineMode
    line_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableDeviceFeatureSynchronization
    enable_device_feature_synchronization = Field(
        type=bool,
        required=True,
    )


class UserDevicePoliciesGetResponse19sp1(OCIResponse):
    """
    Response to ``UserDevicePoliciesGetRequest19sp1()``.
    enableDeviceFeatureSynchronization is ignored by the application server in
    Multiple User Shared mode.
    """

    _ELEMENTS = (
        E(
            "line_mode",
            "lineMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_device_feature_synchronization",
            "enableDeviceFeatureSynchronization",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dnd",
            "enableDnd",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_call_forwarding_always",
            "enableCallForwardingAlways",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_call_forwarding_busy",
            "enableCallForwardingBusy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_call_forwarding_no_answer",
            "enableCallForwardingNoAnswer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_acd",
            "enableAcd",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_executive",
            "enableExecutive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_executive_assistant",
            "enableExecutiveAssistant",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* lineMode
    line_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableDeviceFeatureSynchronization
    enable_device_feature_synchronization = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDnd
    enable_dnd = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableCallForwardingAlways
    enable_call_forwarding_always = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableCallForwardingBusy
    enable_call_forwarding_busy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableCallForwardingNoAnswer
    enable_call_forwarding_no_answer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableAcd
    enable_acd = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableExecutive
    enable_executive = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableExecutiveAssistant
    enable_executive_assistant = Field(
        type=bool,
        required=True,
    )


class UserDevicePoliciesGetResponse20(OCIResponse):
    """
    Response to ``UserDevicePoliciesGetRequest201()``.
    enableDeviceFeatureSynchronization is ignored by the application server in
    Multiple User Shared mode.
    """

    _ELEMENTS = (
        E(
            "line_mode",
            "lineMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_device_feature_synchronization",
            "enableDeviceFeatureSynchronization",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dnd",
            "enableDnd",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_call_forwarding_always",
            "enableCallForwardingAlways",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_call_forwarding_busy",
            "enableCallForwardingBusy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_call_forwarding_no_answer",
            "enableCallForwardingNoAnswer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_acd",
            "enableAcd",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_executive",
            "enableExecutive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_executive_assistant",
            "enableExecutiveAssistant",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_security_classification",
            "enableSecurityClassification",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_call_recording",
            "enableCallRecording",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* lineMode
    line_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableDeviceFeatureSynchronization
    enable_device_feature_synchronization = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDnd
    enable_dnd = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableCallForwardingAlways
    enable_call_forwarding_always = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableCallForwardingBusy
    enable_call_forwarding_busy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableCallForwardingNoAnswer
    enable_call_forwarding_no_answer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableAcd
    enable_acd = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableExecutive
    enable_executive = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableExecutiveAssistant
    enable_executive_assistant = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableSecurityClassification
    enable_security_classification = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableCallRecording
    enable_call_recording = Field(
        type=bool,
        required=True,
    )


class UserDevicePoliciesGetResponse21(OCIResponse):
    """
    Response to ``UserDevicePoliciesGetRequest21()``.
    enableDeviceFeatureSynchronization is ignored by the application server in
    Multiple User Shared mode.
    """

    _ELEMENTS = (
        E(
            "line_mode",
            "lineMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_device_feature_synchronization",
            "enableDeviceFeatureSynchronization",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_dnd",
            "enableDnd",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_call_forwarding_always",
            "enableCallForwardingAlways",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_call_forwarding_busy",
            "enableCallForwardingBusy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_call_forwarding_no_answer",
            "enableCallForwardingNoAnswer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_acd",
            "enableAcd",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_executive",
            "enableExecutive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_executive_assistant",
            "enableExecutiveAssistant",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_security_classification",
            "enableSecurityClassification",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_call_recording",
            "enableCallRecording",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_call_decline",
            "enableCallDecline",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* lineMode
    line_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableDeviceFeatureSynchronization
    enable_device_feature_synchronization = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDnd
    enable_dnd = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableCallForwardingAlways
    enable_call_forwarding_always = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableCallForwardingBusy
    enable_call_forwarding_busy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableCallForwardingNoAnswer
    enable_call_forwarding_no_answer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableAcd
    enable_acd = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableExecutive
    enable_executive = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableExecutiveAssistant
    enable_executive_assistant = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableSecurityClassification
    enable_security_classification = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableCallRecording
    enable_call_recording = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableCallDecline
    enable_call_decline = Field(
        type=bool,
        required=True,
    )


class UserDirectedCallPickupWithBargeInGetResponse(OCIResponse):
    """
    Response to ``UserDirectedCallPickupWithBargeInGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "enable_barge_in_warning_tone",
            "enableBargeInWarningTone",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableBargeInWarningTone
    enable_barge_in_warning_tone = Field(
        type=bool,
        required=True,
    )


class UserDirectedCallPickupWithBargeInGetResponse14sp7(OCIResponse):
    """
    Response to ``UserDirectedCallPickupWithBargeInGetRequest14sp7()``.
    """

    _ELEMENTS = (
        E(
            "enable_barge_in_warning_tone",
            "enableBargeInWarningTone",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_automatic_target_selection",
            "enableAutomaticTargetSelection",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableBargeInWarningTone
    enable_barge_in_warning_tone = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableAutomaticTargetSelection
    enable_automatic_target_selection = Field(
        type=bool,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "dn_table",
            "dnTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* dnTable  *Tabular*
    dn_table = Field(
        type=list,
        required=True,
    )


class UserDoNotDisturbGetResponse(OCIResponse):
    """
    Response to ``UserDoNotDisturbGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "ring_splash",
            "ringSplash",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* ringSplash
    ring_splash = Field(
        type=bool,
        required=True,
    )


class UserDualModeVCCGetResponse(OCIResponse):
    """
    Response to ``UserDualModeVCCGetRequest()``
    """

    _ELEMENTS = (
        E(
            "subscriber_user_name",
            "subscriberUserName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* subscriberUserName
    subscriber_user_name = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "total_number_of_rows",
            "totalNumberOfRows",
            int,
            False,
            True,
            False,
        ),
        E(
            "legacy_entry",
            "legacyEntry",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "extended_entry",
            "extendedEntry",
            str,
            True,
            True,
            False,
        ),  # unknown
    )
    #: int: *Required* totalNumberOfRows
    total_number_of_rows = Field(
        type=int,
        required=True,
    )
    #: str: *Required* legacyEntry
    legacy_entry = Field(
        type=str,
        required=True,
    )
    #: str: *Required* extendedEntry
    extended_entry = Field(
        type=str,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "total_number_of_rows",
            "totalNumberOfRows",
            int,
            False,
            True,
            False,
        ),
        E(
            "legacy_entry",
            "legacyEntry",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "extended_entry",
            "extendedEntry",
            str,
            True,
            True,
            False,
        ),  # unknown
    )
    #: int: *Required* totalNumberOfRows
    total_number_of_rows = Field(
        type=int,
        required=True,
    )
    #: str: *Required* legacyEntry
    legacy_entry = Field(
        type=str,
        required=True,
    )
    #: str: *Required* extendedEntry
    extended_entry = Field(
        type=str,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "total_number_of_rows",
            "totalNumberOfRows",
            int,
            False,
            True,
            False,
        ),
        E(
            "legacy_entry",
            "legacyEntry",
            str,
            True,
            True,
            False,
        ),  # unknown
        E(
            "extended_entry",
            "extendedEntry",
            str,
            True,
            True,
            False,
        ),  # unknown
    )
    #: int: *Required* totalNumberOfRows
    total_number_of_rows = Field(
        type=int,
        required=True,
    )
    #: str: *Required* legacyEntry
    legacy_entry = Field(
        type=str,
        required=True,
    )
    #: str: *Required* extendedEntry
    extended_entry = Field(
        type=str,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "total_number_of_rows",
            "totalNumberOfRows",
            int,
            False,
            True,
            False,
        ),
        E(
            "enterprise_common_phone_list_table",
            "enterpriseCommonPhoneListTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: int: *Required* totalNumberOfRows
    total_number_of_rows = Field(
        type=int,
        required=True,
    )
    #: list: *Required* enterpriseCommonPhoneListTable  *Tabular*
    enterprise_common_phone_list_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "enable_divert",
            "enableDivert",
            bool,
            False,
            True,
            False,
        ),
        E(
            "divert_to_phone_number",
            "divertToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "executive_table",
            "executiveTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* enableDivert
    enable_divert = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* divertToPhoneNumber
    divert_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: list: *Required* executiveTable  *Tabular*
    executive_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "allow_opt_in_out",
            "allowOptInOut",
            bool,
            False,
            True,
            False,
        ),
        E(
            "assistant_user_table",
            "assistantUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* allowOptInOut
    allow_opt_in_out = Field(
        type=bool,
        required=True,
    )
    #: list: *Required* assistantUserTable  *Tabular*
    assistant_user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "enable_filtering",
            "enableFiltering",
            bool,
            False,
            True,
            False,
        ),
        E(
            "filtering_mode",
            "filteringMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "simple_filter_type",
            "simpleFilterType",
            str,
            False,
            True,
            False,
        ),
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* enableFiltering
    enable_filtering = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* filteringMode
    filtering_mode = Field(
        type=str,
        required=True,
    )
    #: str: *Required* simpleFilterType
    simple_filter_type = Field(
        type=str,
        required=True,
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


class UserExecutiveGetScreeningAlertingResponse(OCIResponse):
    """
    Response to the ``UserExecutiveGetScreeningAlertingRequest()``.
    Contains the screening and alerting settings for an executive.
    """

    _ELEMENTS = (
        E(
            "enable_screening",
            "enableScreening",
            bool,
            False,
            True,
            False,
        ),
        E(
            "screening_alert_type",
            "screeningAlertType",
            str,
            False,
            True,
            False,
        ),
        E(
            "alert_broad_works_mobility_location",
            "alertBroadWorksMobilityLocation",
            bool,
            False,
            True,
            False,
        ),
        E(
            "alert_broad_works_anywhere_locations",
            "alertBroadWorksAnywhereLocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "alert_shared_call_appearance_locations",
            "alertSharedCallAppearanceLocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "alerting_mode",
            "alertingMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "alerting_calling_line_id_name_mode",
            "alertingCallingLineIdNameMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "alerting_custom_calling_line_id_name",
            "alertingCustomCallingLineIdName",
            str,
            False,
            False,
            False,
        ),
        E(
            "unicode_alerting_custom_calling_line_id_name",
            "unicodeAlertingCustomCallingLineIdName",
            str,
            False,
            False,
            False,
        ),
        E(
            "alerting_calling_line_id_phone_number_mode",
            "alertingCallingLineIdPhoneNumberMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "alerting_custom_calling_line_id_phone_number",
            "alertingCustomCallingLineIdPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_push_recall_number_of_rings",
            "callPushRecallNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "next_assistant_number_of_rings",
            "nextAssistantNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_rollover",
            "enableRollover",
            bool,
            False,
            True,
            False,
        ),
        E(
            "rollover_wait_time_seconds",
            "rolloverWaitTimeSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "rollover_action",
            "rolloverAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "rollover_forward_to_phone_number",
            "rolloverForwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* enableScreening
    enable_screening = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* screeningAlertType
    screening_alert_type = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* alertBroadWorksMobilityLocation
    alert_broad_works_mobility_location = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* alertBroadWorksAnywhereLocations
    alert_broad_works_anywhere_locations = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* alertSharedCallAppearanceLocations
    alert_shared_call_appearance_locations = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* alertingMode
    alerting_mode = Field(
        type=str,
        required=True,
    )
    #: str: *Required* alertingCallingLineIdNameMode
    alerting_calling_line_id_name_mode = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* alertingCustomCallingLineIdName
    alerting_custom_calling_line_id_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* unicodeAlertingCustomCallingLineIdName
    unicode_alerting_custom_calling_line_id_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* alertingCallingLineIdPhoneNumberMode
    alerting_calling_line_id_phone_number_mode = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* alertingCustomCallingLineIdPhoneNumber
    alerting_custom_calling_line_id_phone_number = Field(
        type=str,
        required=False,
    )
    #: int: *Required* callPushRecallNumberOfRings
    call_push_recall_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: int: *Required* nextAssistantNumberOfRings
    next_assistant_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableRollover
    enable_rollover = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* rolloverWaitTimeSeconds
    rollover_wait_time_seconds = Field(
        type=int,
        required=False,
    )
    #: str: *Required* rolloverAction
    rollover_action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* rolloverForwardToPhoneNumber
    rollover_forward_to_phone_number = Field(
        type=str,
        required=False,
    )


class UserExternalCallingLineIDDeliveryGetResponse(OCIResponse):
    """
    Response to ``UserExternalCallingLineIDDeliveryGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )


class UserExternalCustomRingbackGetResponse(OCIResponse):
    """
    Response to ``UserExternalCustomRingbackGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "sip_request_uri",
            "sipRequestURI",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* sipRequestURI
    sip_request_uri = Field(
        type=str,
        required=False,
    )


class UserFaxMessagingGetResponse(OCIResponse):
    """
    Response to ``UserFaxMessagingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "extension",
            "extension",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* extension
    extension = Field(
        type=str,
        required=False,
    )


class UserFaxMessagingGetResponse17(OCIResponse):
    """
    Response to ``UserFaxMessagingGetRequest17()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "extension",
            "extension",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* extension
    extension = Field(
        type=str,
        required=False,
    )


class UserFaxMessagingGetResponse17sp1(OCIResponse):
    """
    Response to ``UserFaxMessagingGetRequest17sp1()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "extension",
            "extension",
            str,
            False,
            False,
            False,
        ),
        E(
            "alias",
            "alias",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* extension
    extension = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* alias
    alias = Field(
        type=str,
        required=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",
    """

    _ELEMENTS = (
        E(
            "host_user_table",
            "hostUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* hostUserTable  *Tabular*
    host_user_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "login_type",
            "loginType",
            str,
            False,
            True,
            False,
        ),
        E(
            "locale",
            "locale",
            str,
            False,
            True,
            False,
        ),
        E(
            "encoding",
            "encoding",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_id",
            "groupId",
            str,
            False,
            False,
            False,
        ),
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_enterprise",
            "isEnterprise",
            bool,
            False,
            True,
            False,
        ),
        E(
            "password_expires_days",
            "passwordExpiresDays",
            int,
            False,
            False,
            False,
        ),
        E(
            "last_name",
            "lastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "first_name",
            "firstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "user_id",
            "userId",
            str,
            False,
            True,
            False,
        ),
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* loginType
    login_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* locale
    locale = Field(
        type=str,
        required=True,
    )
    #: str: *Required* encoding
    encoding = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* groupId
    group_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isEnterprise
    is_enterprise = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* passwordExpiresDays
    password_expires_days = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* lastName
    last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* firstName
    first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* userId
    user_id = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "registration_table",
            "registrationTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* registrationTable  *Tabular*
    registration_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "service_instance_table",
            "serviceInstanceTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* serviceInstanceTable  *Tabular*
    service_instance_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "service_instance_table",
            "serviceInstanceTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* serviceInstanceTable  *Tabular*
    service_instance_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "total_number_of_rows",
            "totalNumberOfRows",
            int,
            False,
            True,
            False,
        ),
        E(
            "group_common_phone_list_table",
            "groupCommonPhoneListTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: int: *Required* totalNumberOfRows
    total_number_of_rows = Field(
        type=int,
        required=True,
    )
    #: list: *Required* groupCommonPhoneListTable  *Tabular*
    group_common_phone_list_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "total_number_of_rows",
            "totalNumberOfRows",
            int,
            False,
            True,
            False,
        ),
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: int: *Required* totalNumberOfRows
    total_number_of_rows = Field(
        type=int,
        required=True,
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "paging_group_table",
            "pagingGroupTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* pagingGroupTable  *Tabular*
    paging_group_table = Field(
        type=list,
        required=True,
    )


class UserHolidayScheduleGetListResponse(OCIResponse):
    """
    Response to the ``UserHolidayScheduleGetListRequest()``.
    The response contains all the user's personal and user's group holiday schedule names.
    """

    _ELEMENTS = (
        E(
            "holiday_schedule_table",
            "holidayScheduleTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* holidayScheduleTable  *Tabular*
    holiday_schedule_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "host_user_table",
            "hostUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* hostUserTable  *Tabular*
    host_user_table = Field(
        type=list,
        required=True,
    )


class UserHotelingGuestGetResponse14(OCIResponse):
    """
    Response to ``UserHotelingGuestGetRequest14()``.
    Replaced By ``UserSharedCallAppearanceAddEndpointRequest14sp2()``
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "association_limit_hours",
            "associationLimitHours",
            int,
            False,
            True,
            False,
        ),
        E(
            "host_user_id",
            "hostUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "host_last_name",
            "hostLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "host_first_name",
            "hostFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "host_association_date_time",
            "hostAssociationDateTime",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* associationLimitHours
    association_limit_hours = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* hostUserId
    host_user_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hostLastName
    host_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hostFirstName
    host_first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hostAssociationDateTime
    host_association_date_time = Field(
        type=str,
        required=False,
    )


class UserHotelingGuestGetResponse14sp2(OCIResponse):
    """
    Response to ``UserHotelingGuestGetRequest14()``.
    Replaced By ``UserHotelingGuestGetResponse14sp4()``
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "association_limit_hours",
            "associationLimitHours",
            int,
            False,
            True,
            False,
        ),
        E(
            "host_user_id",
            "hostUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "host_last_name",
            "hostLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "host_first_name",
            "hostFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "host_association_date_time",
            "hostAssociationDateTime",
            str,
            False,
            False,
            False,
        ),
        E(
            "host_association_limit_hours",
            "hostAssociationLimitHours",
            int,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* associationLimitHours
    association_limit_hours = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* hostUserId
    host_user_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hostLastName
    host_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hostFirstName
    host_first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hostAssociationDateTime
    host_association_date_time = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* hostAssociationLimitHours
    host_association_limit_hours = Field(
        type=int,
        required=False,
    )


class UserHotelingGuestGetResponse14sp4(OCIResponse):
    """
    Response to ``UserHotelingGuestGetRequest14sp4()``
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_association_limit",
            "enableAssociationLimit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "association_limit_hours",
            "associationLimitHours",
            int,
            False,
            True,
            False,
        ),
        E(
            "host_user_id",
            "hostUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "host_last_name",
            "hostLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "host_first_name",
            "hostFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "host_association_date_time",
            "hostAssociationDateTime",
            str,
            False,
            False,
            False,
        ),
        E(
            "host_enforces_association_limit",
            "hostEnforcesAssociationLimit",
            bool,
            False,
            False,
            False,
        ),
        E(
            "host_association_limit_hours",
            "hostAssociationLimitHours",
            int,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableAssociationLimit
    enable_association_limit = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* associationLimitHours
    association_limit_hours = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* hostUserId
    host_user_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hostLastName
    host_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hostFirstName
    host_first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hostAssociationDateTime
    host_association_date_time = Field(
        type=str,
        required=False,
    )
    #: bool: *Optional* hostEnforcesAssociationLimit
    host_enforces_association_limit = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* hostAssociationLimitHours
    host_association_limit_hours = Field(
        type=int,
        required=False,
    )


class UserHotelingHostGetResponse14(OCIResponse):
    """
    Response to ``UserHotelingHostGetRequest14()``.
    Replaced By ``UserHotelingHostGetResponse14sp4()``
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "association_limit_hours",
            "associationLimitHours",
            int,
            False,
            True,
            False,
        ),
        E(
            "access_level",
            "accessLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "guest_last_name",
            "guestLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "guest_first_name",
            "guestFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "guest_phone_number",
            "guestPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "guest_extension",
            "guestExtension",
            str,
            False,
            False,
            False,
        ),
        E(
            "guest_location_dialing_code",
            "guestLocationDialingCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "guest_association_date_time",
            "guestAssociationDateTime",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* associationLimitHours
    association_limit_hours = Field(
        type=int,
        required=True,
    )
    #: str: *Required* accessLevel
    access_level = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* guestLastName
    guest_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* guestFirstName
    guest_first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* guestPhoneNumber
    guest_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* guestExtension
    guest_extension = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* guestLocationDialingCode
    guest_location_dialing_code = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* guestAssociationDateTime
    guest_association_date_time = Field(
        type=str,
        required=False,
    )


class UserHotelingHostGetResponse14sp4(OCIResponse):
    """
    Response to ``UserHotelingHostGetRequest14sp4()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_association_limit",
            "enforceAssociationLimit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "association_limit_hours",
            "associationLimitHours",
            int,
            False,
            True,
            False,
        ),
        E(
            "access_level",
            "accessLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "guest_last_name",
            "guestLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "guest_first_name",
            "guestFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "guest_phone_number",
            "guestPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "guest_extension",
            "guestExtension",
            str,
            False,
            False,
            False,
        ),
        E(
            "guest_location_dialing_code",
            "guestLocationDialingCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "guest_association_date_time",
            "guestAssociationDateTime",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceAssociationLimit
    enforce_association_limit = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* associationLimitHours
    association_limit_hours = Field(
        type=int,
        required=True,
    )
    #: str: *Required* accessLevel
    access_level = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* guestLastName
    guest_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* guestFirstName
    guest_first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* guestPhoneNumber
    guest_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* guestExtension
    guest_extension = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* guestLocationDialingCode
    guest_location_dialing_code = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* guestAssociationDateTime
    guest_association_date_time = Field(
        type=str,
        required=False,
    )


class UserHotelingHostGetResponse17(OCIResponse):
    """
    Response to ``UserHotelingHostGetRequest17()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enforce_association_limit",
            "enforceAssociationLimit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "association_limit_hours",
            "associationLimitHours",
            int,
            False,
            True,
            False,
        ),
        E(
            "access_level",
            "accessLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "guest_last_name",
            "guestLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "guest_first_name",
            "guestFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "guest_phone_number",
            "guestPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "guest_extension",
            "guestExtension",
            str,
            False,
            False,
            False,
        ),
        E(
            "guest_location_dialing_code",
            "guestLocationDialingCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "guest_association_date_time",
            "guestAssociationDateTime",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enforceAssociationLimit
    enforce_association_limit = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* associationLimitHours
    association_limit_hours = Field(
        type=int,
        required=True,
    )
    #: str: *Required* accessLevel
    access_level = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* guestLastName
    guest_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* guestFirstName
    guest_first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* guestPhoneNumber
    guest_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* guestExtension
    guest_extension = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* guestLocationDialingCode
    guest_location_dialing_code = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* guestAssociationDateTime
    guest_association_date_time = Field(
        type=str,
        required=False,
    )


class UserINIntegrationGetResponse(OCIResponse):
    """
    Response to ``UserINIntegrationGetRequest()``
    """

    _ELEMENTS = (
        E(
            "originating_service_key",
            "originatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "terminating_service_key",
            "terminatingServiceKey",
            int,
            False,
            False,
            False,
        ),
    )
    #: int: *Optional* originatingServiceKey
    originating_service_key = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* terminatingServiceKey
    terminating_service_key = Field(
        type=int,
        required=False,
    )


class UserInCallServiceActivationGetResponse(OCIResponse):
    """
    Response to ``UserInCallServiceActivationGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )


class UserIntegratedIMPGetResponse(OCIResponse):
    """
    Response to the ``UserIntegratedIMPGetRequest()``.
    The response contains the Integrated IMP specific service attributes for the user.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )


class UserIntelligentNetworkServiceControlGetResponse(OCIResponse):
    """
    Response to ``UserIntelligentNetworkServiceControlGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "pre_answer_actions_enabled",
            "preAnswerActionsEnabled",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* preAnswerActionsEnabled
    pre_answer_actions_enabled = Field(
        type=bool,
        required=True,
    )


class UserInterceptUserGetResponse(OCIResponse):
    """
    Response to the ``UserInterceptUserGetRequest()``.
    Replaced By ``UserInterceptUserGetResponse16()``
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "announcement_selection",
            "announcementSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_new_phone_number",
            "playNewPhoneNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "new_phone_number",
            "newPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "transfer_on_zero_to_phone_number",
            "transferOnZeroToPhoneNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* announcementSelection
    announcement_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playNewPhoneNumber
    play_new_phone_number = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* newPhoneNumber
    new_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* transferOnZeroToPhoneNumber
    transfer_on_zero_to_phone_number = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )


class UserInterceptUserGetResponse16(OCIResponse):
    """
    Response to the ``UserInterceptUserGetRequest16()``.
    Replaced By ``UserInterceptUserGetResponse16sp1()``
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "announcement_selection",
            "announcementSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_media_type",
            "audioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_media_type",
            "videoMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_new_phone_number",
            "playNewPhoneNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "new_phone_number",
            "newPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "transfer_on_zero_to_phone_number",
            "transferOnZeroToPhoneNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* announcementSelection
    announcement_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioMediaType
    audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoMediaType
    video_media_type = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playNewPhoneNumber
    play_new_phone_number = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* newPhoneNumber
    new_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* transferOnZeroToPhoneNumber
    transfer_on_zero_to_phone_number = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )


class UserInterceptUserGetResponse16sp1(OCIResponse):
    """
    Response to the ``UserInterceptUserGetRequest16sp1()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "announcement_selection",
            "announcementSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_media_type",
            "audioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_media_type",
            "videoMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_new_phone_number",
            "playNewPhoneNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "new_phone_number",
            "newPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "transfer_on_zero_to_phone_number",
            "transferOnZeroToPhoneNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "reroute_outbound_calls",
            "rerouteOutboundCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "outbound_reroute_phone_number",
            "outboundReroutePhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_outbound_local_calls",
            "allowOutboundLocalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "inbound_call_mode",
            "inboundCallMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "alternate_blocking_announcement",
            "alternateBlockingAnnouncement",
            bool,
            False,
            True,
            False,
        ),
        E(
            "route_to_voice_mail",
            "routeToVoiceMail",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* announcementSelection
    announcement_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioMediaType
    audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoMediaType
    video_media_type = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playNewPhoneNumber
    play_new_phone_number = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* newPhoneNumber
    new_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* transferOnZeroToPhoneNumber
    transfer_on_zero_to_phone_number = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* rerouteOutboundCalls
    reroute_outbound_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* outboundReroutePhoneNumber
    outbound_reroute_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowOutboundLocalCalls
    allow_outbound_local_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* inboundCallMode
    inbound_call_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* alternateBlockingAnnouncement
    alternate_blocking_announcement = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* routeToVoiceMail
    route_to_voice_mail = Field(
        type=bool,
        required=True,
    )


class UserInternalCallingLineIDDeliveryGetResponse(OCIResponse):
    """
    Response to ``UserInternalCallingLineIDDeliveryGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )


class UserLDAPIntegrationGetDirectoryListResponse(OCIResponse):
    """
    Response to ``UserLDAPIntegrationGetDirectoryListRequest()``. The table is a 4
    column table.
    The column headings are defined by the group's LDAP settings.
    """

    _ELEMENTS = (
        E(
            "ldap_entry_table",
            "ldapEntryTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "search_label",
            "searchLabel",
            str,
            False,
            True,
            False,
        ),
        E(
            "has_more_entries",
            "hasMoreEntries",
            bool,
            False,
            True,
            False,
        ),
        E(
            "last_page_number",
            "lastPageNumber",
            int,
            False,
            False,
            False,
        ),
    )
    #: list: *Required* ldapEntryTable  *Tabular*
    ldap_entry_table = Field(
        type=list,
        required=True,
    )
    #: str: *Required* searchLabel
    search_label = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* hasMoreEntries
    has_more_entries = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* lastPageNumber
    last_page_number = Field(
        type=int,
        required=False,
    )


class UserLegacyAutomaticCallbackGetResponse(OCIResponse):
    """
    Response to ``UserLegacyAutomaticCallbackGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "line_port_table",
            "linePortTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* linePortTable  *Tabular*
    line_port_table = Field(
        type=list,
        required=True,
    )


class UserMWIDeliveryToMobileEndpointGetResponse(OCIResponse):
    """
    Response to ``UserMWIDeliveryToMobileEndpointGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mobile_phone_number",
            "mobilePhoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* mobilePhoneNumber
    mobile_phone_number = Field(
        type=str,
        required=False,
    )


class UserMeetMeConferencingAddConferenceResponse(OCIResponse):
    """
    Response to ``UserMeetMeConferencingAddConferenceRequest()``.
    """

    _ELEMENTS = (
        E(
            "conference_id",
            "conferenceId",
            str,
            False,
            True,
            False,
        ),
        E(
            "moderator_pin",
            "moderatorPin",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* conferenceId
    conference_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* moderatorPin
    moderator_pin = Field(
        type=str,
        required=True,
    )


class UserMeetMeConferencingAddConferenceResponse19(OCIResponse):
    """
    Response to ``UserMeetMeConferencingAddConferenceRequest19()``.
    Contains the information of a conference.
    """

    _ELEMENTS = (
        E(
            "conference_id",
            "conferenceId",
            str,
            False,
            True,
            False,
        ),
        E(
            "moderator_pin",
            "moderatorPin",
            str,
            False,
            True,
            False,
        ),
        E(
            "security_pin",
            "securityPin",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* conferenceId
    conference_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* moderatorPin
    moderator_pin = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* securityPin
    security_pin = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "conference_delegate_user_table",
            "conferenceDelegateUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* conferenceDelegateUserTable  *Tabular*
    conference_delegate_user_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "conference_bridge_table",
            "conferenceBridgeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* conferenceBridgeTable  *Tabular*
    conference_bridge_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "conference_delegate_user_table",
            "conferenceDelegateUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* conferenceDelegateUserTable  *Tabular*
    conference_delegate_user_table = Field(
        type=list,
        required=True,
    )


class UserMeetMeConferencingGetConferenceGreetingResponse(OCIResponse):
    """
    Response to ``UserMeetMeConferencingGetConferenceGreetingRequest()``.
    Contains the information of a conference custom greeting.
    """

    _ELEMENTS = (
        E(
            "play_entrance_greeting",
            "playEntranceGreeting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "entrance_greeting_audio_file",
            "entranceGreetingAudioFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "entrance_greeting_media_type",
            "entranceGreetingMediaType",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* playEntranceGreeting
    play_entrance_greeting = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* entranceGreetingAudioFile
    entrance_greeting_audio_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* entranceGreetingMediaType
    entrance_greeting_media_type = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "conference_table",
            "conferenceTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* conferenceTable  *Tabular*
    conference_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "conference_recording_table",
            "conferenceRecordingTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* conferenceRecordingTable  *Tabular*
    conference_recording_table = Field(
        type=list,
        required=True,
    )


class UserMusicOnHoldGetResponse(OCIResponse):
    """
    Response to ``UserMusicOnHoldGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )


class UserNetworkConferencingGetResponse(OCIResponse):
    """
    Response to ``UserNetworkConferencingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "conference_uri",
            "conferenceURI",
            str,
            False,
            False,
            False,
        ),
        E(
            "max_conference_parties",
            "maxConferenceParties",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* conferenceURI
    conference_uri = Field(
        type=str,
        required=False,
    )
    #: int: *Required* maxConferenceParties
    max_conference_parties = Field(
        type=int,
        required=True,
    )


class UserNumberPortabilityAnnouncementGetResponse(OCIResponse):
    """
    Response to the ``UserNumberPortabilityAnnouncementGetRequest()``.
    The response contains the user Number Portability attributes.
    """

    _ELEMENTS = (
        E(
            "enable",
            "enable",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enable
    enable = Field(
        type=bool,
        required=True,
    )


class UserOCICallControlApplicationGetListResponse(OCIResponse):
    """
    Response to ``UserOCICallControlApplicationGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "application_id",
            "applicationId",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* applicationId
    application_id = Field(
        type=str,
        required=False,
    )


class UserOutgoingCallingPlanAuthorizationCodeGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanAuthorizationCodeGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_custom_settings",
            "useCustomSettings",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* useCustomSettings
    use_custom_settings = Field(
        type=bool,
        required=True,
    )


class UserOutgoingCallingPlanSustainedAuthorizationCodeGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanAuthorizationCodeGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "code",
            "code",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* code
    code = Field(
        type=str,
        required=False,
    )


class UserOutlookIntegrationGetResponse(OCIResponse):
    """
    Response to ``UserOutlookIntegrationGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "contact_retrieval_selection",
            "contactRetrievalSelection",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* contactRetrievalSelection
    contact_retrieval_selection = Field(
        type=str,
        required=True,
    )


class UserPasswordInfoGetResponse(OCIResponse):
    """
    Response to ``UserPasswordInfoGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_login_disabled",
            "isLoginDisabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "expiration_days",
            "expirationDays",
            int,
            False,
            True,
            False,
        ),
        E(
            "does_not_expire",
            "doesNotExpire",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isLoginDisabled
    is_login_disabled = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* expirationDays
    expiration_days = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* doesNotExpire
    does_not_expire = Field(
        type=bool,
        required=True,
    )


class UserPersonalAssistantExclusionNumberGetListResponse(OCIResponse):
    """
    Response to the ``UserPersonalAssistantExclusionNumberGetListRequest()``.
    Contains a table with column headings:
    "Number", "Description".
    """

    _ELEMENTS = (
        E(
            "exclusion_number_table",
            "exclusionNumberTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* exclusionNumberTable  *Tabular*
    exclusion_number_table = Field(
        type=list,
        required=True,
    )


class UserPersonalAssistantExclusionNumberGetResponse(OCIResponse):
    """
    Response to the ``UserPersonalAssistantExclusionNumberGetRequest()``
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )


class UserPersonalAssistantGetResponse(OCIResponse):
    """
    Response to the ``UserPersonalAssistantGetRequest()``.
    The response contains the user Personal Assistant information".
    """

    _ELEMENTS = (
        E(
            "presence",
            "presence",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_transfer_to_attendant",
            "enableTransferToAttendant",
            bool,
            False,
            True,
            False,
        ),
        E(
            "attendant_number",
            "attendantNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "enable_ring_splash",
            "enableRingSplash",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_expiration_time",
            "enableExpirationTime",
            bool,
            False,
            True,
            False,
        ),
        E(
            "expiration_time",
            "expirationTime",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* presence
    presence = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableTransferToAttendant
    enable_transfer_to_attendant = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* attendantNumber
    attendant_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* enableRingSplash
    enable_ring_splash = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableExpirationTime
    enable_expiration_time = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* expirationTime
    expiration_time = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "total_number_of_rows",
            "totalNumberOfRows",
            int,
            False,
            True,
            False,
        ),
        E(
            "personal_phone_list_table",
            "personalPhoneListTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: int: *Required* totalNumberOfRows
    total_number_of_rows = Field(
        type=int,
        required=True,
    )
    #: list: *Required* personalPhoneListTable  *Tabular*
    personal_phone_list_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "directory_table",
            "directoryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* directoryTable  *Tabular*
    directory_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "total_number_of_rows",
            "totalNumberOfRows",
            int,
            False,
            True,
            False,
        ),
        E(
            "directory_table",
            "directoryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: int: *Required* totalNumberOfRows
    total_number_of_rows = Field(
        type=int,
        required=True,
    )
    #: list: *Required* directoryTable  *Tabular*
    directory_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "total_number_of_rows",
            "totalNumberOfRows",
            int,
            False,
            True,
            False,
        ),
        E(
            "directory_table",
            "directoryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: int: *Required* totalNumberOfRows
    total_number_of_rows = Field(
        type=int,
        required=True,
    )
    #: list: *Required* directoryTable  *Tabular*
    directory_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "directory_table",
            "directoryTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* directoryTable  *Tabular*
    directory_table = Field(
        type=list,
        required=True,
    )


class UserPhysicalLocationGetResponse(OCIResponse):
    """
    Response to ``UserPhysicalLocationGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "device_user_table",
            "deviceUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* deviceUserTable  *Tabular*
    device_user_table = Field(
        type=list,
        required=True,
    )


class UserPolycomPhoneServicesGetResponse(OCIResponse):
    """
    Response to ``UserPolycomPhoneServicesGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "integrate_phone_directory_with_broad_works",
            "integratePhoneDirectoryWithBroadWorks",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_user_personal_phone_list_in_directory",
            "includeUserPersonalPhoneListInDirectory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_group_custom_contact_directory_in_directory",
            "includeGroupCustomContactDirectoryInDirectory",
            bool,
            False,
            True,
            False,
        ),
        E(
            "group_custom_contact_directory",
            "groupCustomContactDirectory",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* integratePhoneDirectoryWithBroadWorks
    integrate_phone_directory_with_broad_works = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeUserPersonalPhoneListInDirectory
    include_user_personal_phone_list_in_directory = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeGroupCustomContactDirectoryInDirectory
    include_group_custom_contact_directory_in_directory = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* groupCustomContactDirectory
    group_custom_contact_directory = Field(
        type=str,
        required=False,
    )


class UserPortalPasscodeGetInfoResponse(OCIResponse):
    """
    Response to ``UserPortalPasscodeGetInfoRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_login_disabled",
            "isLoginDisabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "expiration_days",
            "expirationDays",
            int,
            False,
            True,
            False,
        ),
        E(
            "does_not_expire",
            "doesNotExpire",
            bool,
            False,
            True,
            False,
        ),
        E(
            "passcode",
            "passcode",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isLoginDisabled
    is_login_disabled = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* expirationDays
    expiration_days = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* doesNotExpire
    does_not_expire = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* passcode
    passcode = Field(
        type=str,
        required=True,
    )


class UserPreAlertingAnnouncementGetResponse(OCIResponse):
    """
    Response to a ``UserPreAlertingAnnouncementGetRequest()``.
    The criteria table's column headings are: "Is Active", "Criteria Name",
    "Blacklisted", and "Calls From".
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_selection",
            "audioSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_media_type",
            "audioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_file_url",
            "audioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_selection",
            "videoSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_media_type",
            "videoMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_url",
            "videoFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioSelection
    audio_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioMediaType
    audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioFileUrl
    audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Required* videoSelection
    video_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoMediaType
    video_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileUrl
    video_file_url = Field(
        type=str,
        required=False,
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


class UserPrepaidGetResponse(OCIResponse):
    """
    Response to ``UserPrepaidGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )


class UserPrimaryEndpointAdvancedSettingGetResponse(OCIResponse):
    """
    Response to the ``UserPrimaryEndpointAdvancedSettingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "allow_origination",
            "allowOrigination",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_termination",
            "allowTermination",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* allowOrigination
    allow_origination = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowTermination
    allow_termination = Field(
        type=bool,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "available_monitors_table",
            "availableMonitorsTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* availableMonitorsTable  *Tabular*
    available_monitors_table = Field(
        type=list,
        required=True,
    )


class UserPrivacyGetResponse(OCIResponse):
    """
    Response to ``UserPrivacyGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "enable_directory_privacy",
            "enableDirectoryPrivacy",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* enableDirectoryPrivacy
    enable_directory_privacy = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "enable_directory_privacy",
            "enableDirectoryPrivacy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_auto_attendant_extension_dialing_privacy",
            "enableAutoAttendantExtensionDialingPrivacy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_auto_attendant_name_dialing_privacy",
            "enableAutoAttendantNameDialingPrivacy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_phone_status_privacy",
            "enablePhoneStatusPrivacy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "permitted_monitor_user_id_table",
            "permittedMonitorUserIdTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* enableDirectoryPrivacy
    enable_directory_privacy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableAutoAttendantExtensionDialingPrivacy
    enable_auto_attendant_extension_dialing_privacy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableAutoAttendantNameDialingPrivacy
    enable_auto_attendant_name_dialing_privacy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enablePhoneStatusPrivacy
    enable_phone_status_privacy = Field(
        type=bool,
        required=True,
    )
    #: list: *Required* permittedMonitorUserIdTable  *Tabular*
    permitted_monitor_user_id_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "allow_auto_answer",
            "allowAutoAnswer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "outgoing_connection_selection",
            "outgoingConnectionSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_list_selection",
            "accessListSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "selected_user_table",
            "selectedUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* allowAutoAnswer
    allow_auto_answer = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* outgoingConnectionSelection
    outgoing_connection_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Required* accessListSelection
    access_list_selection = Field(
        type=str,
        required=True,
    )
    #: list: *Required* selectedUserTable  *Tabular*
    selected_user_table = Field(
        type=list,
        required=True,
    )


class UserRemoteOfficeGetResponse(OCIResponse):
    """
    Response to ``UserRemoteOfficeGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "remote_office_phone_number",
            "remoteOfficePhoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* remoteOfficePhoneNumber
    remote_office_phone_number = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "treat_originations_and_pbx_redirections_as_screened",
            "treatOriginationsAndPBXRedirectionsAsScreened",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_route_list_identity_for_non_emergency_calls",
            "useRouteListIdentityForNonEmergencyCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_route_list_identity_for_emergency_calls",
            "useRouteListIdentityForEmergencyCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "assigned_number_range_table",
            "assignedNumberRangeTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* treatOriginationsAndPBXRedirectionsAsScreened
    treat_originations_and_pbx_redirections_as_screened = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useRouteListIdentityForNonEmergencyCalls
    use_route_list_identity_for_non_emergency_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useRouteListIdentityForEmergencyCalls
    use_route_list_identity_for_emergency_calls = Field(
        type=bool,
        required=True,
    )
    #: list: *Required* assignedNumberRangeTable  *Tabular*
    assigned_number_range_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "disposition_codes_table",
            "dispositionCodesTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* dispositionCodesTable  *Tabular*
    disposition_codes_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "supervisor_table",
            "supervisorTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* supervisorTable  *Tabular*
    supervisor_table = Field(
        type=list,
        required=True,
    )


class UserSMDIMessageDeskGetResponse(OCIResponse):
    """
    Response to the ``UserSMDIMessageDeskGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "message_desk_number",
            "messageDeskNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* messageDeskNumber
    message_desk_number = Field(
        type=str,
        required=False,
    )


class UserSMDIMessageDeskGetServerListResponse(OCIResponse):
    """
    Response to the ``UserSMDIMessageDeskGetServerListRequest()``.
    The SMDI Server table column headings are: "Device Name", "Net Address", "Port".
    """

    _ELEMENTS = (
        E(
            "smdi_server_table",
            "smdiServerTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* smdiServerTable  *Tabular*
    smdi_server_table = Field(
        type=list,
        required=True,
    )


class UserScheduleGetEventListResponse(OCIResponse):
    """
    Response to ``UserScheduleGetEventListRequest()``.
    The response contains a list of events.
    """

    _ELEMENTS = (
        E(
            "event_name",
            "eventName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* eventName
    event_name = Field(
        type=str,
        required=False,
    )


class UserScheduleGetListResponse(OCIResponse):
    """
    Response to ``UserScheduleGetListRequest()``.
    The response contains a list of system schedules.
    """

    _ELEMENTS = (
        E(
            "schedule_name",
            "scheduleName",
            str,
            False,
            False,
            False,
        ),
        E(
            "schedule_type",
            "scheduleType",
            str,
            False,
            False,
            False,
        ),
        E(
            "schedule_level",
            "scheduleLevel",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* scheduleName
    schedule_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* scheduleType
    schedule_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* scheduleLevel
    schedule_level = Field(
        type=str,
        required=False,
    )


class UserSecurityClassificationGetResponse(OCIResponse):
    """
    Response to the ``UserSecurityClassificationGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "security_classification",
            "securityClassification",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* securityClassification
    security_classification = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "name",
            "name",
            str,
            False,
            False,
            False,
        ),
        E(
            "user_table",
            "userTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Optional* name
    name = Field(
        type=str,
        required=False,
    )
    #: list: *Required* userTable  *Tabular*
    user_table = Field(
        type=list,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "service_packs_assignment_table",
            "servicePacksAssignmentTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "user_services_assignment_table",
            "userServicesAssignmentTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* servicePacksAssignmentTable  *Tabular*
    service_packs_assignment_table = Field(
        type=list,
        required=True,
    )
    #: list: *Required* userServicesAssignmentTable  *Tabular*
    user_services_assignment_table = Field(
        type=list,
        required=True,
    )


class UserServiceIsAssignedResponse(OCIResponse):
    """
    Returns true if the UserService or service pack is assigned, otherwise false.
    """

    _ELEMENTS = (
        E(
            "is_assigned",
            "isAssigned",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isAssigned
    is_assigned = Field(
        type=bool,
        required=True,
    )


class UserServiceScriptsUserGetLogResponse(OCIResponse):
    """
    Response to ``UserServiceScriptsUserGetLogRequest()``.
    """

    _ELEMENTS = (
        E(
            "log_content",
            "logContent",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* logContent
    log_content = Field(
        type=str,
        required=False,
    )


class UserServiceScriptsUserGetResponse(OCIResponse):
    """
    Response to ``UserServiceScriptsUserGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "script_name",
            "scriptName",
            str,
            False,
            False,
            False,
        ),
        E(
            "script_content",
            "scriptContent",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* scriptName
    script_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* scriptContent
    script_content = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "user_id",
            "userId",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_type",
            "userType",
            str,
            False,
            True,
            False,
        ),
        E(
            "endpoint_type",
            "endpointType",
            str,
            False,
            True,
            False,
        ),
        E(
            "scscf_name",
            "SCSCFName",
            str,
            False,
            False,
            False,
        ),
        E(
            "ims_user_state",
            "IMSUserState",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* userId
    user_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* userType
    user_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* endpointType
    endpoint_type = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* SCSCFName
    scscf_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* IMSUserState
    ims_user_state = Field(
        type=str,
        required=True,
    )


class UserSharedCallAppearanceGetEndpointResponse(OCIResponse):
    """
    Response to the ``UserSharedCallAppearanceGetEndpointRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_origination",
            "allowOrigination",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_termination",
            "allowTermination",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowOrigination
    allow_origination = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowTermination
    allow_termination = Field(
        type=bool,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "alert_all_appearances_for_click_to_dial_calls",
            "alertAllAppearancesForClickToDialCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_appearances",
            "maxAppearances",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_multiple_call_arrangement",
            "enableMultipleCallArrangement",
            bool,
            False,
            True,
            False,
        ),
        E(
            "multiple_call_arrangement_is_active",
            "multipleCallArrangementIsActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "endpoint_table",
            "endpointTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "allow_bridging_between_locations",
            "allowBridgingBetweenLocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bridge_warning_tone",
            "bridgeWarningTone",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* alertAllAppearancesForClickToDialCalls
    alert_all_appearances_for_click_to_dial_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxAppearances
    max_appearances = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableMultipleCallArrangement
    enable_multiple_call_arrangement = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* multipleCallArrangementIsActive
    multiple_call_arrangement_is_active = Field(
        type=bool,
        required=True,
    )
    #: list: *Required* endpointTable  *Tabular*
    endpoint_table = Field(
        type=list,
        required=True,
    )
    #: bool: *Required* allowBridgingBetweenLocations
    allow_bridging_between_locations = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* bridgeWarningTone
    bridge_warning_tone = Field(
        type=str,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "alert_all_appearances_for_click_to_dial_calls",
            "alertAllAppearancesForClickToDialCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_appearances",
            "maxAppearances",
            int,
            False,
            True,
            False,
        ),
        E(
            "allow_sca_call_retrieve",
            "allowSCACallRetrieve",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_multiple_call_arrangement",
            "enableMultipleCallArrangement",
            bool,
            False,
            True,
            False,
        ),
        E(
            "multiple_call_arrangement_is_active",
            "multipleCallArrangementIsActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "endpoint_table",
            "endpointTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "allow_bridging_between_locations",
            "allowBridgingBetweenLocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bridge_warning_tone",
            "bridgeWarningTone",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* alertAllAppearancesForClickToDialCalls
    alert_all_appearances_for_click_to_dial_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxAppearances
    max_appearances = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* allowSCACallRetrieve
    allow_sca_call_retrieve = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableMultipleCallArrangement
    enable_multiple_call_arrangement = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* multipleCallArrangementIsActive
    multiple_call_arrangement_is_active = Field(
        type=bool,
        required=True,
    )
    #: list: *Required* endpointTable  *Tabular*
    endpoint_table = Field(
        type=list,
        required=True,
    )
    #: bool: *Required* allowBridgingBetweenLocations
    allow_bridging_between_locations = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* bridgeWarningTone
    bridge_warning_tone = Field(
        type=str,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "alert_all_appearances_for_click_to_dial_calls",
            "alertAllAppearancesForClickToDialCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "alert_all_appearances_for_group_paging_calls",
            "alertAllAppearancesForGroupPagingCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_appearances",
            "maxAppearances",
            int,
            False,
            True,
            False,
        ),
        E(
            "allow_sca_call_retrieve",
            "allowSCACallRetrieve",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_multiple_call_arrangement",
            "enableMultipleCallArrangement",
            bool,
            False,
            True,
            False,
        ),
        E(
            "multiple_call_arrangement_is_active",
            "multipleCallArrangementIsActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "endpoint_table",
            "endpointTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "allow_bridging_between_locations",
            "allowBridgingBetweenLocations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bridge_warning_tone",
            "bridgeWarningTone",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_call_park_notification",
            "enableCallParkNotification",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* alertAllAppearancesForClickToDialCalls
    alert_all_appearances_for_click_to_dial_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* alertAllAppearancesForGroupPagingCalls
    alert_all_appearances_for_group_paging_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxAppearances
    max_appearances = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* allowSCACallRetrieve
    allow_sca_call_retrieve = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableMultipleCallArrangement
    enable_multiple_call_arrangement = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* multipleCallArrangementIsActive
    multiple_call_arrangement_is_active = Field(
        type=bool,
        required=True,
    )
    #: list: *Required* endpointTable  *Tabular*
    endpoint_table = Field(
        type=list,
        required=True,
    )
    #: bool: *Required* allowBridgingBetweenLocations
    allow_bridging_between_locations = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* bridgeWarningTone
    bridge_warning_tone = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableCallParkNotification
    enable_call_park_notification = Field(
        type=bool,
        required=True,
    )


class UserSimultaneousRingFamilyGetPhoneNumberResponse(OCIResponse):
    """
    Response to the ``UserSimultaneousRingFamilyGetPhoneNumberRequest()``.
    """

    _ELEMENTS = (
        E(
            "answer_confirmation_required",
            "answerConfirmationRequired",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* answerConfirmationRequired
    answer_confirmation_required = Field(
        type=bool,
        required=True,
    )


class UserSimultaneousRingFamilyGetResponse(OCIResponse):
    """
    Response to the ``UserSimultaneousRingFamilyGetRequest()``.
    Replaced By ``UserSimultaneousRingFamilyGetResponse14sp4()``
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "incoming_calls",
            "incomingCalls",
            str,
            False,
            True,
            False,
        ),
        E(
            "sim_ring_phone_number",
            "simRingPhoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* incomingCalls
    incoming_calls = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* simRingPhoneNumber
    sim_ring_phone_number = Field(
        type=str,
        required=False,
    )


class UserSimultaneousRingFamilyGetResponse14sp4(OCIResponse):
    """
    Response to the ``UserSimultaneousRingFamilyGetRequest14sp4()``.
    Contains a table with column headings: "Phone Number", "Answer Confirmation Required".
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "incoming_calls",
            "incomingCalls",
            str,
            False,
            True,
            False,
        ),
        E(
            "phone_number_table",
            "phoneNumberTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* incomingCalls
    incoming_calls = Field(
        type=str,
        required=True,
    )
    #: list: *Required* phoneNumberTable  *Tabular*
    phone_number_table = Field(
        type=list,
        required=True,
    )


class UserSimultaneousRingPersonalGetPhoneNumberResponse(OCIResponse):
    """
    Response to the ``UserSimultaneousRingPersonalGetPhoneNumberRequest()``.
    """

    _ELEMENTS = (
        E(
            "answer_confirmation_required",
            "answerConfirmationRequired",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* answerConfirmationRequired
    answer_confirmation_required = Field(
        type=bool,
        required=True,
    )


class UserSimultaneousRingPersonalGetResponse(OCIResponse):
    """
    Response to the ``UserSimultaneousRingPersonalGetRequest()``.
    Replaced By ``UserSimultaneousRingPersonalGetResponse14sp4()``
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "incoming_calls",
            "incomingCalls",
            str,
            False,
            True,
            False,
        ),
        E(
            "sim_ring_phone_number",
            "simRingPhoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* incomingCalls
    incoming_calls = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* simRingPhoneNumber
    sim_ring_phone_number = Field(
        type=str,
        required=False,
    )


class UserSimultaneousRingPersonalGetResponse14sp4(OCIResponse):
    """
    Response to the ``UserSimultaneousRingPersonalGetRequest14sp4()``.
    Contains a table with column headings: "Phone Number", "Answer Confirmation Required".
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "incoming_calls",
            "incomingCalls",
            str,
            False,
            True,
            False,
        ),
        E(
            "phone_number_table",
            "phoneNumberTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* incomingCalls
    incoming_calls = Field(
        type=str,
        required=True,
    )
    #: list: *Required* phoneNumberTable  *Tabular*
    phone_number_table = Field(
        type=list,
        required=True,
    )


class UserSingleSignOnCreateDeviceTokenResponse(OCIResponse):
    """
    Response to ``UserSingleSignOnCreateDeviceTokenRequest()``.
    """

    _ELEMENTS = (
        E(
            "device_token",
            "deviceToken",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* deviceToken
    device_token = Field(
        type=str,
        required=True,
    )


class UserSpeedDial100GetResponse(OCIResponse):
    """
    Response to the ``UserSpeedDial100GetRequest()``.
    """

    _ELEMENTS = (
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            True,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* phoneNumber
    phone_number = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )


class UserThirdPartyVoiceMailSupportGetResponse13mp16(OCIResponse):
    """
    Response to ``UserThirdPartyVoiceMailSupportGetRequest13mp16()``.
    Replaced By ``UserThirdPartyVoiceMailSupportGetResponse17()``
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "busy_redirect_to_voice_mail",
            "busyRedirectToVoiceMail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "no_answer_redirect_to_voice_mail",
            "noAnswerRedirectToVoiceMail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "server_selection",
            "serverSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_server",
            "userServer",
            str,
            False,
            False,
            False,
        ),
        E(
            "mailbox_id_type",
            "mailboxIdType",
            str,
            False,
            True,
            False,
        ),
        E(
            "mailbox_url",
            "mailboxURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "no_answer_number_of_rings",
            "noAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "always_redirect_to_voice_mail",
            "alwaysRedirectToVoiceMail",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* busyRedirectToVoiceMail
    busy_redirect_to_voice_mail = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* noAnswerRedirectToVoiceMail
    no_answer_redirect_to_voice_mail = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* serverSelection
    server_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* userServer
    user_server = Field(
        type=str,
        required=False,
    )
    #: str: *Required* mailboxIdType
    mailbox_id_type = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* mailboxURL
    mailbox_url = Field(
        type=str,
        required=False,
    )
    #: int: *Required* noAnswerNumberOfRings
    no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* alwaysRedirectToVoiceMail
    always_redirect_to_voice_mail = Field(
        type=bool,
        required=True,
    )


class UserThirdPartyVoiceMailSupportGetResponse17(OCIResponse):
    """
    Response to ``UserThirdPartyVoiceMailSupportGetRequest17()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "busy_redirect_to_voice_mail",
            "busyRedirectToVoiceMail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "no_answer_redirect_to_voice_mail",
            "noAnswerRedirectToVoiceMail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "server_selection",
            "serverSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_server",
            "userServer",
            str,
            False,
            False,
            False,
        ),
        E(
            "mailbox_id_type",
            "mailboxIdType",
            str,
            False,
            True,
            False,
        ),
        E(
            "mailbox_url",
            "mailboxURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "no_answer_number_of_rings",
            "noAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "always_redirect_to_voice_mail",
            "alwaysRedirectToVoiceMail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "out_of_primary_zone_redirect_to_voice_mail",
            "outOfPrimaryZoneRedirectToVoiceMail",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* busyRedirectToVoiceMail
    busy_redirect_to_voice_mail = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* noAnswerRedirectToVoiceMail
    no_answer_redirect_to_voice_mail = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* serverSelection
    server_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* userServer
    user_server = Field(
        type=str,
        required=False,
    )
    #: str: *Required* mailboxIdType
    mailbox_id_type = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* mailboxURL
    mailbox_url = Field(
        type=str,
        required=False,
    )
    #: int: *Required* noAnswerNumberOfRings
    no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* alwaysRedirectToVoiceMail
    always_redirect_to_voice_mail = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* outOfPrimaryZoneRedirectToVoiceMail
    out_of_primary_zone_redirect_to_voice_mail = Field(
        type=bool,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "time_schedule_table",
            "timeScheduleTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: list: *Required* timeScheduleTable  *Tabular*
    time_schedule_table = Field(
        type=list,
        required=True,
    )


class UserVoiceMessagingUserGetAdvancedVoiceManagementResponse(OCIResponse):
    """
    Response to the ``UserVoiceMessagingUserGetAdvancedVoiceManagementRequest()``.
    Replaced By ``UserVoiceMessagingUserGetAdvancedVoiceManagementResponse14sp3()``
    """

    _ELEMENTS = (
        E(
            "mail_server_selection",
            "mailServerSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_mail_server_email_address",
            "groupMailServerEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "group_mail_server_user_id",
            "groupMailServerUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "group_mail_server_password",
            "groupMailServerPassword",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_group_default_mail_server_full_mailbox_limit",
            "useGroupDefaultMailServerFullMailboxLimit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "group_mail_server_full_mailbox_limit",
            "groupMailServerFullMailboxLimit",
            int,
            False,
            True,
            False,
        ),
        E(
            "personal_mail_server_net_address",
            "personalMailServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "personal_mail_server_protocol",
            "personalMailServerProtocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "personal_mail_server_real_delete_for_imap",
            "personalMailServerRealDeleteForImap",
            bool,
            False,
            True,
            False,
        ),
        E(
            "personal_mail_server_email_address",
            "personalMailServerEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "personal_mail_server_user_id",
            "personalMailServerUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "personal_mail_server_password",
            "personalMailServerPassword",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* mailServerSelection
    mail_server_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* groupMailServerEmailAddress
    group_mail_server_email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* groupMailServerUserId
    group_mail_server_user_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* groupMailServerPassword
    group_mail_server_password = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useGroupDefaultMailServerFullMailboxLimit
    use_group_default_mail_server_full_mailbox_limit = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* groupMailServerFullMailboxLimit
    group_mail_server_full_mailbox_limit = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* personalMailServerNetAddress
    personal_mail_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* personalMailServerProtocol
    personal_mail_server_protocol = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* personalMailServerRealDeleteForImap
    personal_mail_server_real_delete_for_imap = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* personalMailServerEmailAddress
    personal_mail_server_email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* personalMailServerUserId
    personal_mail_server_user_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* personalMailServerPassword
    personal_mail_server_password = Field(
        type=str,
        required=False,
    )


class UserVoiceMessagingUserGetAdvancedVoiceManagementResponse14sp3(OCIResponse):
    """
    Response to the ``UserVoiceMessagingUserGetAdvancedVoiceManagementRequest14sp3()``.
    """

    _ELEMENTS = (
        E(
            "mail_server_selection",
            "mailServerSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_mail_server_email_address",
            "groupMailServerEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "group_mail_server_user_id",
            "groupMailServerUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_group_default_mail_server_full_mailbox_limit",
            "useGroupDefaultMailServerFullMailboxLimit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "group_mail_server_full_mailbox_limit",
            "groupMailServerFullMailboxLimit",
            int,
            False,
            True,
            False,
        ),
        E(
            "personal_mail_server_net_address",
            "personalMailServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "personal_mail_server_protocol",
            "personalMailServerProtocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "personal_mail_server_real_delete_for_imap",
            "personalMailServerRealDeleteForImap",
            bool,
            False,
            True,
            False,
        ),
        E(
            "personal_mail_server_email_address",
            "personalMailServerEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "personal_mail_server_user_id",
            "personalMailServerUserId",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* mailServerSelection
    mail_server_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* groupMailServerEmailAddress
    group_mail_server_email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* groupMailServerUserId
    group_mail_server_user_id = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useGroupDefaultMailServerFullMailboxLimit
    use_group_default_mail_server_full_mailbox_limit = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* groupMailServerFullMailboxLimit
    group_mail_server_full_mailbox_limit = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* personalMailServerNetAddress
    personal_mail_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Required* personalMailServerProtocol
    personal_mail_server_protocol = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* personalMailServerRealDeleteForImap
    personal_mail_server_real_delete_for_imap = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* personalMailServerEmailAddress
    personal_mail_server_email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* personalMailServerUserId
    personal_mail_server_user_id = Field(
        type=str,
        required=False,
    )


class UserVoiceMessagingUserGetAliasListResponse(OCIResponse):
    """
    Response to ``UserVoiceMessagingUserGetAliasListRequest()``.
    """

    _ELEMENTS = (
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )


class UserVoiceMessagingUserGetDistributionListResponse(OCIResponse):
    """
    Response to ``UserVoiceMessagingUserGetDistributionListRequest()``.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )


class UserVoiceMessagingUserGetOutgoingSMDIMWIResponse(OCIResponse):
    """
    Response to the ``UserVoiceMessagingUserGetOutgoingSMDIMWIRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "outgoing_smdimwi_phone_number",
            "outgoingSMDIMWIPhoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* outgoingSMDIMWIPhoneNumber
    outgoing_smdimwi_phone_number = Field(
        type=str,
        required=False,
    )


class UserVoiceMessagingUserGetVoiceManagementResponse13mp8(OCIResponse):
    """
    Response to the ``UserVoiceMessagingUserGetVoiceManagementRequest13mp8()``.
    Replaced By ``UserVoiceMessagingUserGetVoiceManagementResponse17()``
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "processing",
            "processing",
            str,
            False,
            True,
            False,
        ),
        E(
            "voice_message_delivery_email_address",
            "voiceMessageDeliveryEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_phone_message_waiting_indicator",
            "usePhoneMessageWaitingIndicator",
            bool,
            False,
            True,
            False,
        ),
        E(
            "send_voice_message_notify_email",
            "sendVoiceMessageNotifyEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_message_notify_email_address",
            "voiceMessageNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "send_carbon_copy_voice_message",
            "sendCarbonCopyVoiceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_message_carbon_copy_email_address",
            "voiceMessageCarbonCopyEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "transfer_on_zero_to_phone_number",
            "transferOnZeroToPhoneNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "always_redirect_to_voice_mail",
            "alwaysRedirectToVoiceMail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "busy_redirect_to_voice_mail",
            "busyRedirectToVoiceMail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "no_answer_redirect_to_voice_mail",
            "noAnswerRedirectToVoiceMail",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* processing
    processing = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* voiceMessageDeliveryEmailAddress
    voice_message_delivery_email_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* usePhoneMessageWaitingIndicator
    use_phone_message_waiting_indicator = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* sendVoiceMessageNotifyEmail
    send_voice_message_notify_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* voiceMessageNotifyEmailAddress
    voice_message_notify_email_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* sendCarbonCopyVoiceMessage
    send_carbon_copy_voice_message = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* voiceMessageCarbonCopyEmailAddress
    voice_message_carbon_copy_email_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* transferOnZeroToPhoneNumber
    transfer_on_zero_to_phone_number = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* alwaysRedirectToVoiceMail
    always_redirect_to_voice_mail = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* busyRedirectToVoiceMail
    busy_redirect_to_voice_mail = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* noAnswerRedirectToVoiceMail
    no_answer_redirect_to_voice_mail = Field(
        type=bool,
        required=True,
    )


class UserVoiceMessagingUserGetVoiceManagementResponse17(OCIResponse):
    """
    Response to the ``UserVoiceMessagingUserGetVoiceManagementRequest17()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "processing",
            "processing",
            str,
            False,
            True,
            False,
        ),
        E(
            "voice_message_delivery_email_address",
            "voiceMessageDeliveryEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_phone_message_waiting_indicator",
            "usePhoneMessageWaitingIndicator",
            bool,
            False,
            True,
            False,
        ),
        E(
            "send_voice_message_notify_email",
            "sendVoiceMessageNotifyEmail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_message_notify_email_address",
            "voiceMessageNotifyEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "send_carbon_copy_voice_message",
            "sendCarbonCopyVoiceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_message_carbon_copy_email_address",
            "voiceMessageCarbonCopyEmailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "transfer_on_zero_to_phone_number",
            "transferOnZeroToPhoneNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "always_redirect_to_voice_mail",
            "alwaysRedirectToVoiceMail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "busy_redirect_to_voice_mail",
            "busyRedirectToVoiceMail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "no_answer_redirect_to_voice_mail",
            "noAnswerRedirectToVoiceMail",
            bool,
            False,
            True,
            False,
        ),
        E(
            "out_of_primary_zone_redirect_to_voice_mail",
            "outOfPrimaryZoneRedirectToVoiceMail",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* processing
    processing = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* voiceMessageDeliveryEmailAddress
    voice_message_delivery_email_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* usePhoneMessageWaitingIndicator
    use_phone_message_waiting_indicator = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* sendVoiceMessageNotifyEmail
    send_voice_message_notify_email = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* voiceMessageNotifyEmailAddress
    voice_message_notify_email_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* sendCarbonCopyVoiceMessage
    send_carbon_copy_voice_message = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* voiceMessageCarbonCopyEmailAddress
    voice_message_carbon_copy_email_address = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* transferOnZeroToPhoneNumber
    transfer_on_zero_to_phone_number = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* alwaysRedirectToVoiceMail
    always_redirect_to_voice_mail = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* busyRedirectToVoiceMail
    busy_redirect_to_voice_mail = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* noAnswerRedirectToVoiceMail
    no_answer_redirect_to_voice_mail = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* outOfPrimaryZoneRedirectToVoiceMail
    out_of_primary_zone_redirect_to_voice_mail = Field(
        type=bool,
        required=True,
    )


class UserVoiceMessagingUserGetVoicePortalPasswordInfoResponse(OCIResponse):
    """
    Response to ``UserVoiceMessagingUserGetVoicePortalPasswordInfoRequest()``.
    Replaced By ``UserPortalPasscodeGetInfoResponse()``
    """

    _ELEMENTS = (
        E(
            "is_login_disabled",
            "isLoginDisabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "expiration_days",
            "expirationDays",
            int,
            False,
            True,
            False,
        ),
        E(
            "does_not_expire",
            "doesNotExpire",
            bool,
            False,
            True,
            False,
        ),
        E(
            "password",
            "password",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isLoginDisabled
    is_login_disabled = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* expirationDays
    expiration_days = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* doesNotExpire
    does_not_expire = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* password
    password = Field(
        type=str,
        required=True,
    )


class UserVoiceMessagingUserGetVoicePortalResponse(OCIResponse):
    """
    Response to ``UserVoiceMessagingUserGetVoicePortalRequest()``.
    Replaced By ``UserVoiceMessagingUserGetVoicePortalResponse16()``
    """

    _ELEMENTS = (
        E(
            "use_personalized_name",
            "usePersonalizedName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_auto_login",
            "voicePortalAutoLogin",
            bool,
            False,
            True,
            False,
        ),
        E(
            "personalized_name_audio_file_description",
            "personalizedNameAudioFileDescription",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* usePersonalizedName
    use_personalized_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* voicePortalAutoLogin
    voice_portal_auto_login = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* personalizedNameAudioFileDescription
    personalized_name_audio_file_description = Field(
        type=str,
        required=False,
    )


class UserVoiceMessagingUserGetVoicePortalResponse16(OCIResponse):
    """
    Response to ``UserVoiceMessagingUserGetVoicePortalRequest16()``.
    """

    _ELEMENTS = (
        E(
            "use_personalized_name",
            "usePersonalizedName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_auto_login",
            "voicePortalAutoLogin",
            bool,
            False,
            True,
            False,
        ),
        E(
            "personalized_name_audio_file_description",
            "personalizedNameAudioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "personalized_name_media_type",
            "personalizedNameMediaType",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* usePersonalizedName
    use_personalized_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* voicePortalAutoLogin
    voice_portal_auto_login = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* personalizedNameAudioFileDescription
    personalized_name_audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* personalizedNameMediaType
    personalized_name_media_type = Field(
        type=str,
        required=False,
    )


class UserVoicePortalCallingGetResponse(OCIResponse):
    """
    Response to ``UserVoicePortalCallingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )


class UserZoneCallingRestrictionsGetResponse(OCIResponse):
    """
    Gets the home zone for a user
    Response to a ``UserZoneCallingRestrictionsGetRequest()``
    """

    _ELEMENTS = (
        E(
            "home_zone_name",
            "homeZoneName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* homeZoneName
    home_zone_name = Field(
        type=str,
        required=False,
    )


class EnterpriseCommonPhoneListGetListResponse(OCIResponse):
    """
    Response to the ``EnterpriseCommonPhoneListGetListRequest()``.
    The response contains the enterprise's common phone list.
    """

    _ELEMENTS = (
        E(
            "entry",
            "entry",
            OCI.PhoneListEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.PhoneListEntry: *Optional* entry
    entry = Field(
        type=OCI.PhoneListEntry,
        required=False,
    )


class EnterpriseDepartmentGetAvailableParentListResponse(OCIResponse):
    """
    Response to ``EnterpriseDepartmentGetAvailableParentListRequest()``.
    The response includes two parallel arrays of department keys and department display names.
    """

    _ELEMENTS = (
        E(
            "department_key",
            "departmentKey",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "full_path_name",
            "fullPathName",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.DepartmentKey: *Optional* departmentKey
    department_key = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: str: *Optional* fullPathName
    full_path_name = Field(
        type=str,
        required=False,
    )


class EnterpriseDepartmentGetListResponse(OCIResponse):
    """
    Response to ``EnterpriseDepartmentGetListRequest()``.
    The response includes two parallel arrays of department keys and department display names.
    """

    _ELEMENTS = (
        E(
            "department_key",
            "departmentKey",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "full_path_name",
            "fullPathName",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.DepartmentKey: *Optional* departmentKey
    department_key = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: str: *Optional* fullPathName
    full_path_name = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "total_number_of_rows",
            "totalNumberOfRows",
            int,
            False,
            True,
            False,
        ),
        E(
            "extended_call_log",
            "extendedCallLog",
            OCI.ExtendedMixedCallLogsEntry,
            True,
            False,
            False,
        ),
    )
    #: int: *Required* totalNumberOfRows
    total_number_of_rows = Field(
        type=int,
        required=True,
    )
    #: OCI.ExtendedMixedCallLogsEntry: *Optional* extendedCallLog
    extended_call_log = Field(
        type=OCI.ExtendedMixedCallLogsEntry,
        required=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.
    """

    _ELEMENTS = (
        E(
            "total_number_of_rows",
            "totalNumberOfRows",
            int,
            False,
            True,
            False,
        ),
        E(
            "extended_call_log",
            "extendedCallLog",
            OCI.ExtendedMixedCallLogsEntry17sp4,
            True,
            False,
            False,
        ),
    )
    #: int: *Required* totalNumberOfRows
    total_number_of_rows = Field(
        type=int,
        required=True,
    )
    #: OCI.ExtendedMixedCallLogsEntry17sp4: *Optional* extendedCallLog
    extended_call_log = Field(
        type=OCI.ExtendedMixedCallLogsEntry17sp4,
        required=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.
    """

    _ELEMENTS = (
        E(
            "total_number_of_rows",
            "totalNumberOfRows",
            int,
            False,
            True,
            False,
        ),
        E(
            "extended_call_log",
            "extendedCallLog",
            OCI.ExtendedMixedCallLogsEntry20,
            True,
            False,
            False,
        ),
    )
    #: int: *Required* totalNumberOfRows
    total_number_of_rows = Field(
        type=int,
        required=True,
    )
    #: OCI.ExtendedMixedCallLogsEntry20: *Optional* extendedCallLog
    extended_call_log = Field(
        type=OCI.ExtendedMixedCallLogsEntry20,
        required=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.
    """

    _ELEMENTS = (
        E(
            "total_number_of_rows",
            "totalNumberOfRows",
            int,
            False,
            True,
            False,
        ),
        E(
            "extended_call_log",
            "extendedCallLog",
            OCI.ExtendedMixedCallLogsEntry21,
            True,
            False,
            False,
        ),
    )
    #: int: *Required* totalNumberOfRows
    total_number_of_rows = Field(
        type=int,
        required=True,
    )
    #: OCI.ExtendedMixedCallLogsEntry21: *Optional* extendedCallLog
    extended_call_log = Field(
        type=OCI.ExtendedMixedCallLogsEntry21,
        required=False,
    )


class EnterpriseEnterpriseTrunkGetAvailableTrunkGroupListResponse(OCIResponse):
    """
    Response to ``EnterpriseEnterpriseTrunkGetAvailableTrunkGroupListRequest()``.
    """

    _ELEMENTS = (
        E(
            "trunk_group",
            "trunkGroup",
            OCI.EnterpriseTrunkTrunkGroupKey,
            True,
            False,
            False,
        ),
    )
    #: OCI.EnterpriseTrunkTrunkGroupKey: *Optional* trunkGroup
    trunk_group = Field(
        type=OCI.EnterpriseTrunkTrunkGroupKey,
        required=False,
    )


class EnterpriseVoiceVPNGetDefaultResponse(OCIResponse):
    """
    Response to ``EnterpriseVoiceVPNGetDefaultResponse()``.
    """

    _ELEMENTS = (
        E(
            "policy_selection",
            "policySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "digit_manipulation_operation",
            "digitManipulationOperation",
            str,
            False,
            True,
            False,
        ),
        E(
            "route_group_id",
            "routeGroupId",
            str,
            False,
            False,
            False,
        ),
        E(
            "treatment",
            "treatment",
            OCI.EnterpriseVoiceVPNTreatmentEntry,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* policySelection
    policy_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Required* digitManipulationOperation
    digit_manipulation_operation = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* routeGroupId
    route_group_id = Field(
        type=str,
        required=False,
    )
    #: OCI.EnterpriseVoiceVPNTreatmentEntry: *Optional* treatment
    treatment = Field(
        type=OCI.EnterpriseVoiceVPNTreatmentEntry,
        required=False,
    )


class EnterpriseVoiceVPNGetPolicyResponse(OCIResponse):
    """
    Response to ``EnterpriseVoiceVPNGetPolicyRequest()``.
    """

    _ELEMENTS = (
        E(
            "min_extension_length",
            "minExtensionLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_extension_length",
            "maxExtensionLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "route_group_id",
            "routeGroupId",
            str,
            False,
            False,
            False,
        ),
        E(
            "policy_selection",
            "policySelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "digit_manipulation",
            "digitManipulation",
            OCI.EnterpriseVoiceVPNDigitManipulation,
            True,
            False,
            False,
        ),
        E(
            "treatment_id",
            "treatmentId",
            str,
            False,
            False,
            False,
        ),
    )
    #: int: *Required* minExtensionLength
    min_extension_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* maxExtensionLength
    max_extension_length = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* routeGroupId
    route_group_id = Field(
        type=str,
        required=False,
    )
    #: str: *Required* policySelection
    policy_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.EnterpriseVoiceVPNDigitManipulation: *Optional* digitManipulation
    digit_manipulation = Field(
        type=OCI.EnterpriseVoiceVPNDigitManipulation,
        required=False,
    )
    #: str: *Optional* treatmentId
    treatment_id = Field(
        type=str,
        required=False,
    )


class GroupAccessDeviceGetResponse14(OCIResponse):
    """
    Response to ``GroupAccessDeviceGetRequest14()``.
    Replaced By ``GroupAccessDeviceGetResponse14sp3()``
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            True,
            False,
        ),
        E(
            "protocol",
            "protocol",
            str,
            False,
            False,
            False,
        ),
        E(
            "net_address",
            "netAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "port",
            "port",
            int,
            False,
            False,
            False,
        ),
        E(
            "outbound_proxy_server_net_address",
            "outboundProxyServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "stun_server_net_address",
            "stunServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mac_address",
            "macAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "serial_number",
            "serialNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "number_of_assigned_ports",
            "numberOfAssignedPorts",
            int,
            False,
            True,
            False,
        ),
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_mode",
            "configurationMode",
            str,
            False,
            False,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
        E(
            "physical_location",
            "physicalLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "transport_protocol",
            "transportProtocol",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* deviceType
    device_type = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* protocol
    protocol = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* netAddress
    net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* port
    port = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* outboundProxyServerNetAddress
    outbound_proxy_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* stunServerNetAddress
    stun_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* macAddress
    mac_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serialNumber
    serial_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: int: *Required* numberOfAssignedPorts
    number_of_assigned_ports = Field(
        type=int,
        required=True,
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationMode
    configuration_mode = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* physicalLocation
    physical_location = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* transportProtocol
    transport_protocol = Field(
        type=str,
        required=False,
    )


class GroupAccessDeviceGetResponse14sp3(OCIResponse):
    """
    Response to ``GroupAccessDeviceGetRequest14sp3()``.
    Replaced By ``GroupAccessDeviceGetResponse14sp6()``
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            True,
            False,
        ),
        E(
            "protocol",
            "protocol",
            str,
            False,
            False,
            False,
        ),
        E(
            "net_address",
            "netAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "port",
            "port",
            int,
            False,
            False,
            False,
        ),
        E(
            "outbound_proxy_server_net_address",
            "outboundProxyServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "stun_server_net_address",
            "stunServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mac_address",
            "macAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "serial_number",
            "serialNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "number_of_assigned_ports",
            "numberOfAssignedPorts",
            int,
            False,
            True,
            False,
        ),
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_mode",
            "configurationMode",
            str,
            False,
            False,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
        E(
            "physical_location",
            "physicalLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "transport_protocol",
            "transportProtocol",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_url",
            "mobilityManagerProvisioningURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey",
            int,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* deviceType
    device_type = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* protocol
    protocol = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* netAddress
    net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* port
    port = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* outboundProxyServerNetAddress
    outbound_proxy_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* stunServerNetAddress
    stun_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* macAddress
    mac_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serialNumber
    serial_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: int: *Required* numberOfAssignedPorts
    number_of_assigned_ports = Field(
        type=int,
        required=True,
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationMode
    configuration_mode = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* physicalLocation
    physical_location = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* transportProtocol
    transport_protocol = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningURL
    mobility_manager_provisioning_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningUserName
    mobility_manager_provisioning_user_name = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultOriginatingServiceKey
    mobility_manager_default_originating_service_key = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultTerminatingServiceKey
    mobility_manager_default_terminating_service_key = Field(
        type=int,
        required=False,
    )


class GroupAccessDeviceGetResponse14sp6(OCIResponse):
    """
    Response to: ``GroupAccessDeviceGetRequest14sp6()``
    Replaced By ``GroupAccessDeviceGetResponse16()``
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            True,
            False,
        ),
        E(
            "protocol",
            "protocol",
            str,
            False,
            False,
            False,
        ),
        E(
            "net_address",
            "netAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "port",
            "port",
            int,
            False,
            False,
            False,
        ),
        E(
            "outbound_proxy_server_net_address",
            "outboundProxyServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "stun_server_net_address",
            "stunServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mac_address",
            "macAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "serial_number",
            "serialNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "number_of_assigned_ports",
            "numberOfAssignedPorts",
            int,
            False,
            True,
            False,
        ),
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_mode",
            "configurationMode",
            str,
            False,
            False,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
        E(
            "physical_location",
            "physicalLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "transport_protocol",
            "transportProtocol",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_url",
            "mobilityManagerProvisioningURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "use_custom_user_name_password",
            "useCustomUserNamePassword",
            bool,
            False,
            False,
            False,
        ),
        E(
            "user_name",
            "userName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* deviceType
    device_type = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* protocol
    protocol = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* netAddress
    net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* port
    port = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* outboundProxyServerNetAddress
    outbound_proxy_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* stunServerNetAddress
    stun_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* macAddress
    mac_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serialNumber
    serial_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: int: *Required* numberOfAssignedPorts
    number_of_assigned_ports = Field(
        type=int,
        required=True,
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationMode
    configuration_mode = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* physicalLocation
    physical_location = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* transportProtocol
    transport_protocol = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningURL
    mobility_manager_provisioning_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningUserName
    mobility_manager_provisioning_user_name = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultOriginatingServiceKey
    mobility_manager_default_originating_service_key = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultTerminatingServiceKey
    mobility_manager_default_terminating_service_key = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* useCustomUserNamePassword
    use_custom_user_name_password = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* userName
    user_name = Field(
        type=str,
        required=False,
    )


class GroupAccessDeviceGetResponse16(OCIResponse):
    """
    Response to ``GroupAccessDeviceGetRequest16()``.
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            True,
            False,
        ),
        E(
            "protocol",
            "protocol",
            str,
            False,
            False,
            False,
        ),
        E(
            "net_address",
            "netAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "port",
            "port",
            int,
            False,
            False,
            False,
        ),
        E(
            "outbound_proxy_server_net_address",
            "outboundProxyServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "stun_server_net_address",
            "stunServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mac_address",
            "macAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "serial_number",
            "serialNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "number_of_assigned_ports",
            "numberOfAssignedPorts",
            int,
            False,
            True,
            False,
        ),
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_mode",
            "configurationMode",
            str,
            False,
            False,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
        E(
            "physical_location",
            "physicalLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "transport_protocol",
            "transportProtocol",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_url",
            "mobilityManagerProvisioningURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "use_custom_user_name_password",
            "useCustomUserNamePassword",
            bool,
            False,
            False,
            False,
        ),
        E(
            "user_name",
            "userName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* deviceType
    device_type = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* protocol
    protocol = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* netAddress
    net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* port
    port = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* outboundProxyServerNetAddress
    outbound_proxy_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* stunServerNetAddress
    stun_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* macAddress
    mac_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serialNumber
    serial_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: int: *Required* numberOfAssignedPorts
    number_of_assigned_ports = Field(
        type=int,
        required=True,
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationMode
    configuration_mode = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* physicalLocation
    physical_location = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* transportProtocol
    transport_protocol = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningURL
    mobility_manager_provisioning_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningUserName
    mobility_manager_provisioning_user_name = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultOriginatingServiceKey
    mobility_manager_default_originating_service_key = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultTerminatingServiceKey
    mobility_manager_default_terminating_service_key = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* useCustomUserNamePassword
    use_custom_user_name_password = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* userName
    user_name = Field(
        type=str,
        required=False,
    )


class GroupAccessDeviceGetResponse18sp1(OCIResponse):
    """
    Response to ``GroupAccessDeviceGetRequest18sp1()``.
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            True,
            False,
        ),
        E(
            "protocol",
            "protocol",
            str,
            False,
            False,
            False,
        ),
        E(
            "net_address",
            "netAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "port",
            "port",
            int,
            False,
            False,
            False,
        ),
        E(
            "outbound_proxy_server_net_address",
            "outboundProxyServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "stun_server_net_address",
            "stunServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mac_address",
            "macAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "serial_number",
            "serialNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "number_of_assigned_ports",
            "numberOfAssignedPorts",
            int,
            False,
            True,
            False,
        ),
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
        E(
            "configuration_mode",
            "configurationMode",
            str,
            False,
            False,
            False,
        ),
        E(
            "configuration_file_name",
            "configurationFileName",
            str,
            False,
            False,
            False,
        ),
        E(
            "physical_location",
            "physicalLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "transport_protocol",
            "transportProtocol",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_url",
            "mobilityManagerProvisioningURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "use_custom_user_name_password",
            "useCustomUserNamePassword",
            bool,
            False,
            False,
            False,
        ),
        E(
            "user_name",
            "userName",
            str,
            False,
            False,
            False,
        ),
        E(
            "version",
            "version",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* deviceType
    device_type = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* protocol
    protocol = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* netAddress
    net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* port
    port = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* outboundProxyServerNetAddress
    outbound_proxy_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* stunServerNetAddress
    stun_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* macAddress
    mac_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serialNumber
    serial_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: int: *Required* numberOfAssignedPorts
    number_of_assigned_ports = Field(
        type=int,
        required=True,
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* configurationMode
    configuration_mode = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* configurationFileName
    configuration_file_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* physicalLocation
    physical_location = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* transportProtocol
    transport_protocol = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningURL
    mobility_manager_provisioning_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningUserName
    mobility_manager_provisioning_user_name = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultOriginatingServiceKey
    mobility_manager_default_originating_service_key = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultTerminatingServiceKey
    mobility_manager_default_terminating_service_key = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* useCustomUserNamePassword
    use_custom_user_name_password = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* userName
    user_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* version
    version = Field(
        type=str,
        required=False,
    )


class GroupAccountAuthorizationCodesGetListResponse(OCIResponse):
    """
    Response to ``GroupAccountAuthorizationCodesGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "code_entry",
            "codeEntry",
            OCI.AccountAuthorizationCodeEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.AccountAuthorizationCodeEntry: *Optional* codeEntry
    code_entry = Field(
        type=OCI.AccountAuthorizationCodeEntry,
        required=False,
    )


class GroupCallCenterComfortMessageBypassGetResponse17(OCIResponse):
    """
    Response to the ``GroupCallCenterComfortMessageBypassGetRequest17()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "call_waiting_age_threshold_seconds",
            "callWaitingAgeThresholdSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "play_announcement_after_ringing",
            "playAnnouncementAfterRinging",
            bool,
            False,
            True,
            False,
        ),
        E(
            "ring_time_before_playing_announcement_seconds",
            "ringTimeBeforePlayingAnnouncementSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "audio_media_type_list",
            "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "video_media_type_list",
            "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* callWaitingAgeThresholdSeconds
    call_waiting_age_threshold_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* playAnnouncementAfterRinging
    play_announcement_after_ringing = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* ringTimeBeforePlayingAnnouncementSeconds
    ring_time_before_playing_announcement_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* audioMediaTypeList
    audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* videoMediaTypeList
    video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )


class GroupCallCenterForcedForwardingGetResponse17(OCIResponse):
    """
    Response to the ``GroupCallCenterForcedForwardingGetRequest17()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_enable_via_fac",
            "allowEnableViaFAC",
            bool,
            False,
            True,
            False,
        ),
        E(
            "play_announcement_before_forwarding",
            "playAnnouncementBeforeForwarding",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "audio_media_type_list",
            "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "video_media_type_list",
            "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowEnableViaFAC
    allow_enable_via_fac = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* playAnnouncementBeforeForwarding
    play_announcement_before_forwarding = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* audioMediaTypeList
    audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* videoMediaTypeList
    video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )


class GroupCallCenterGetAnnouncementResponse14sp6(OCIResponse):
    """
    Response to the ``GroupCallCenterGetAnnouncementRequest14sp6()``.
    """

    _ELEMENTS = (
        E(
            "entrance_message_selection",
            "entranceMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "entrance_message_audio_file_description",
            "entranceMessageAudioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "entrance_message_video_file_description",
            "entranceMessageVideoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_selection",
            "periodicComfortMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "periodic_comfort_message_audio_file_description",
            "periodicComfortMessageAudioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_file_description",
            "periodicComfortMessageVideoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "on_hold_source",
            "onHoldSource",
            OCI.CallCenterMusicOnHoldSourceRead,
            True,
            True,
            False,
        ),
        E(
            "on_hold_use_alternate_source_for_internal_calls",
            "onHoldUseAlternateSourceForInternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "on_hold_internal_source",
            "onHoldInternalSource",
            OCI.CallCenterMusicOnHoldSourceRead,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* entranceMessageSelection
    entrance_message_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* entranceMessageAudioFileDescription
    entrance_message_audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* entranceMessageVideoFileDescription
    entrance_message_video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Required* periodicComfortMessageSelection
    periodic_comfort_message_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* periodicComfortMessageAudioFileDescription
    periodic_comfort_message_audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* periodicComfortMessageVideoFileDescription
    periodic_comfort_message_video_file_description = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterMusicOnHoldSourceRead: *Required* onHoldSource
    on_hold_source = Field(
        type=OCI.CallCenterMusicOnHoldSourceRead,
        required=True,
    )
    #: bool: *Required* onHoldUseAlternateSourceForInternalCalls
    on_hold_use_alternate_source_for_internal_calls = Field(
        type=bool,
        required=True,
    )
    #: OCI.CallCenterMusicOnHoldSourceRead: *Optional* onHoldInternalSource
    on_hold_internal_source = Field(
        type=OCI.CallCenterMusicOnHoldSourceRead,
        required=False,
    )


class GroupCallCenterHolidayServiceGetResponse17(OCIResponse):
    """
    Response to the ``GroupCallCenterHolidayServiceGetRequest17()``.
    """

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            str,
            False,
            False,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_announcement_before_action",
            "playAnnouncementBeforeAction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "audio_media_type_list",
            "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "video_media_type_list",
            "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playAnnouncementBeforeAction
    play_announcement_before_action = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* audioMediaTypeList
    audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* videoMediaTypeList
    video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )


class GroupCallCenterHolidayServiceGetResponse17sp1(OCIResponse):
    """
    Response to the ``GroupCallCenterHolidayServiceGetRequest17sp1()``.
    """

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_announcement_before_action",
            "playAnnouncementBeforeAction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "audio_media_type_list",
            "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "video_media_type_list",
            "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playAnnouncementBeforeAction
    play_announcement_before_action = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* audioMediaTypeList
    audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* videoMediaTypeList
    video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )


class GroupCallCenterNightServiceGetResponse17(OCIResponse):
    """
    Response to the ``GroupCallCenterNightServiceGetRequest17()``.
    """

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "business_hours",
            "businessHours",
            str,
            False,
            False,
            False,
        ),
        E(
            "force_night_service",
            "forceNightService",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_manual_override_via_fac",
            "allowManualOverrideViaFAC",
            bool,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_announcement_before_action",
            "playAnnouncementBeforeAction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "audio_media_type_list",
            "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "video_media_type_list",
            "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "manual_announcement_mode",
            "manualAnnouncementMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "manual_audio_message_selection",
            "manualAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "manual_audio_url_list",
            "manualAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "manual_audio_file_list",
            "manualAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "manual_audio_media_type_list",
            "manualAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "manual_video_message_selection",
            "manualVideoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "manual_video_url_list",
            "manualVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "manual_video_file_list",
            "manualVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "manual_video_media_type_list",
            "manualVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* businessHours
    business_hours = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* forceNightService
    force_night_service = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowManualOverrideViaFAC
    allow_manual_override_via_fac = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playAnnouncementBeforeAction
    play_announcement_before_action = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* audioMediaTypeList
    audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* videoMediaTypeList
    video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Required* manualAnnouncementMode
    manual_announcement_mode = Field(
        type=str,
        required=True,
    )
    #: str: *Required* manualAudioMessageSelection
    manual_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* manualAudioUrlList
    manual_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* manualAudioFileList
    manual_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* manualAudioMediaTypeList
    manual_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Required* manualVideoMessageSelection
    manual_video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* manualVideoUrlList
    manual_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* manualVideoFileList
    manual_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* manualVideoMediaTypeList
    manual_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )


class GroupCallCenterNightServiceGetResponse17sp1(OCIResponse):
    """
    Response to the ``GroupCallCenterNightServiceGetRequest17sp1()``.
    """

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "business_hours",
            "businessHours",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "force_night_service",
            "forceNightService",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_manual_override_via_fac",
            "allowManualOverrideViaFAC",
            bool,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_announcement_before_action",
            "playAnnouncementBeforeAction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "audio_media_type_list",
            "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "video_media_type_list",
            "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "manual_announcement_mode",
            "manualAnnouncementMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "manual_audio_message_selection",
            "manualAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "manual_audio_url_list",
            "manualAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "manual_audio_file_list",
            "manualAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "manual_audio_media_type_list",
            "manualAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "manual_video_message_selection",
            "manualVideoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "manual_video_url_list",
            "manualVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "manual_video_file_list",
            "manualVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "manual_video_media_type_list",
            "manualVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: OCI.TimeSchedule: *Optional* businessHours
    business_hours = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: bool: *Required* forceNightService
    force_night_service = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowManualOverrideViaFAC
    allow_manual_override_via_fac = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playAnnouncementBeforeAction
    play_announcement_before_action = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* audioMediaTypeList
    audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* videoMediaTypeList
    video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Required* manualAnnouncementMode
    manual_announcement_mode = Field(
        type=str,
        required=True,
    )
    #: str: *Required* manualAudioMessageSelection
    manual_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* manualAudioUrlList
    manual_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* manualAudioFileList
    manual_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* manualAudioMediaTypeList
    manual_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Required* manualVideoMessageSelection
    manual_video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* manualVideoUrlList
    manual_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* manualVideoFileList
    manual_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* manualVideoMediaTypeList
    manual_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )


class GroupCallCenterOverflowGetResponse17(OCIResponse):
    """
    Response to the ``GroupCallCenterOverflowGetRequest17()`` .
    """

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "overflow_after_timeout",
            "overflowAfterTimeout",
            bool,
            False,
            True,
            False,
        ),
        E(
            "timeout_seconds",
            "timeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "play_announcement_before_overflow_processing",
            "playAnnouncementBeforeOverflowProcessing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "audio_media_type_list",
            "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "video_media_type_list",
            "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* overflowAfterTimeout
    overflow_after_timeout = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* timeoutSeconds
    timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* playAnnouncementBeforeOverflowProcessing
    play_announcement_before_overflow_processing = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* audioMediaTypeList
    audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* videoMediaTypeList
    video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )


class GroupCallCenterQueueCallDispositionCodeSettingsGetResponse(OCIResponse):
    """
    Response to ``GroupCallCenterQueueCallDispositionCodeSettingsGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "enable_call_disposition_codes",
            "enableCallDispositionCodes",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_organization_codes",
            "includeOrganizationCodes",
            bool,
            False,
            True,
            False,
        ),
        E(
            "force_use_of_call_disposition_codes",
            "forceUseOfCallDispositionCodes",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_call_disposition_code",
            "defaultCallDispositionCode",
            OCI.CallDispositionCodeWithLevel,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* enableCallDispositionCodes
    enable_call_disposition_codes = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeOrganizationCodes
    include_organization_codes = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forceUseOfCallDispositionCodes
    force_use_of_call_disposition_codes = Field(
        type=bool,
        required=True,
    )
    #: OCI.CallDispositionCodeWithLevel: *Optional* defaultCallDispositionCode
    default_call_disposition_code = Field(
        type=OCI.CallDispositionCodeWithLevel,
        required=False,
    )


class GroupCallCenterStrandedCallGetResponse17(OCIResponse):
    """
    Response to the ``GroupCallCenterStrandedCallGetRequest17()``.
    """

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "audio_media_type_list",
            "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "video_media_type_list",
            "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* audioMediaTypeList
    audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* videoMediaTypeList
    video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )


class GroupCallCenterStrandedCallUnavailableGetResponse(OCIResponse):
    """
    Response to the ``GroupCallCenterStrandedCallUnavailableGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "condition_policy_on_number_of_agents_with_specified_unavailable_code",
            "conditionPolicyOnNumberOfAgentsWithSpecifiedUnavailableCode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_agents_with_specified_unavailable_code",
            "numberOfAgentsWithSpecifiedUnavailableCode",
            int,
            False,
            False,
            False,
        ),
        E(
            "agents_unavailable_code",
            "agentsUnavailableCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "audio_media_type_list",
            "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "video_media_type_list",
            "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* conditionPolicyOnNumberOfAgentsWithSpecifiedUnavailableCode
    condition_policy_on_number_of_agents_with_specified_unavailable_code = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* numberOfAgentsWithSpecifiedUnavailableCode
    number_of_agents_with_specified_unavailable_code = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* agentsUnavailableCode
    agents_unavailable_code = Field(
        type=str,
        required=False,
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* audioMediaTypeList
    audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* videoMediaTypeList
    video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )


class GroupCommonPhoneListGetListResponse(OCIResponse):
    """
    Response to the ``GroupCommonPhoneListGetListRequest()``.
    The response contains the group's common phone list.
    """

    _ELEMENTS = (
        E(
            "entry",
            "entry",
            OCI.PhoneListEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.PhoneListEntry: *Optional* entry
    entry = Field(
        type=OCI.PhoneListEntry,
        required=False,
    )


class GroupCommunicationBarringAuthorizationCodeGetListResponse(OCIResponse):
    """
    Response to ``GroupCommunicationBarringAuthorizationCodeGetListRequest()``.
    Contains a list of Communication Barring Authorization Codes
    assigned to the group.
    """

    _ELEMENTS = (
        E(
            "code",
            "code",
            OCI.CommunicationBarringAuthorizationCodeEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.CommunicationBarringAuthorizationCodeEntry: *Optional* code
    code = Field(
        type=OCI.CommunicationBarringAuthorizationCodeEntry,
        required=False,
    )


class GroupCustomRingbackGroupGetResponse20(OCIResponse):
    """
    Response to the ``GroupCustomRingbackGroupGetRequest20()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_selection",
            "audioSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file",
            "audioFile",
            OCI.AnnouncementFileKey,
            True,
            False,
            False,
        ),
        E(
            "audio_file_url",
            "audioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_selection",
            "videoSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_file",
            "videoFile",
            OCI.AnnouncementFileKey,
            True,
            False,
            False,
        ),
        E(
            "video_file_url",
            "videoFileUrl",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioSelection
    audio_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.AnnouncementFileKey: *Optional* audioFile
    audio_file = Field(
        type=OCI.AnnouncementFileKey,
        required=False,
    )
    #: str: *Optional* audioFileUrl
    audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Required* videoSelection
    video_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.AnnouncementFileKey: *Optional* videoFile
    video_file = Field(
        type=OCI.AnnouncementFileKey,
        required=False,
    )
    #: str: *Optional* videoFileUrl
    video_file_url = Field(
        type=str,
        required=False,
    )


class GroupDepartmentAdminGetResponse(OCIResponse):
    """
    Response to the ``GroupDepartmentAdminGetRequest()``.
    The response contains the group department administrators profile information.
    """

    _ELEMENTS = (
        E(
            "department_key",
            "departmentKey",
            OCI.GroupDepartmentKey,
            True,
            True,
            False,
        ),
        E(
            "department_full_path",
            "departmentFullPath",
            str,
            False,
            True,
            False,
        ),
        E(
            "first_name",
            "firstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "last_name",
            "lastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "language",
            "language",
            str,
            False,
            True,
            False,
        ),
    )
    #: OCI.GroupDepartmentKey: *Required* departmentKey
    department_key = Field(
        type=OCI.GroupDepartmentKey,
        required=True,
    )
    #: str: *Required* departmentFullPath
    department_full_path = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* firstName
    first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* lastName
    last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* language
    language = Field(
        type=str,
        required=True,
    )


class GroupDepartmentGetAvailableParentListResponse(OCIResponse):
    """
    Response to ``GroupDepartmentGetAvailableParentListRequest()``.
    The response includes two parallel arrays of department keys and department display names.
    """

    _ELEMENTS = (
        E(
            "department_key",
            "departmentKey",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "full_path_name",
            "fullPathName",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.DepartmentKey: *Optional* departmentKey
    department_key = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: str: *Optional* fullPathName
    full_path_name = Field(
        type=str,
        required=False,
    )


class GroupDepartmentGetListResponse(OCIResponse):
    """
    Response to ``GroupDepartmentGetListRequest()``.
    The response includes two parallel arrays of department keys and department display names.

    Replaced By ``GroupDepartmentGetListResponse18()``
    """

    _ELEMENTS = (
        E(
            "department_key",
            "departmentKey",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "full_path_name",
            "fullPathName",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.DepartmentKey: *Optional* departmentKey
    department_key = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: str: *Optional* fullPathName
    full_path_name = Field(
        type=str,
        required=False,
    )


class GroupDepartmentGetResponse(OCIResponse):
    """
    Response to ``GroupDepartmentGetRequest()``.
    The following elements are only used in AS data mode:
    callingLineIdName
    caliingLineIdPhoneNumber
    """

    _ELEMENTS = (
        E(
            "parent_department_key",
            "parentDepartmentKey",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "calling_line_id_name",
            "callingLineIdName",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_phone_number",
            "callingLineIdPhoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.DepartmentKey: *Optional* parentDepartmentKey
    parent_department_key = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: str: *Optional* callingLineIdName
    calling_line_id_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdPhoneNumber
    calling_line_id_phone_number = Field(
        type=str,
        required=False,
    )


class GroupEmergencyZonesGetHomeZoneListResponse(OCIResponse):
    """
    Response to ``GroupEmergencyZonesGetHomeZoneListRequest()``.
    """

    _ELEMENTS = (
        E(
            "home_zone_ip_address",
            "homeZoneIpAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "home_zone_ip_address_range",
            "homeZoneIpAddressRange",
            OCI.IPAddressRange,
            True,
            False,
            False,
        ),
    )
    #: str: *Optional* homeZoneIpAddress
    home_zone_ip_address = Field(
        type=str,
        required=False,
    )
    #: OCI.IPAddressRange: *Optional* homeZoneIpAddressRange
    home_zone_ip_address_range = Field(
        type=OCI.IPAddressRange,
        required=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.
    """

    _ELEMENTS = (
        E(
            "total_number_of_rows",
            "totalNumberOfRows",
            int,
            False,
            True,
            False,
        ),
        E(
            "extended_call_log",
            "extendedCallLog",
            OCI.ExtendedMixedCallLogsEntry,
            True,
            False,
            False,
        ),
    )
    #: int: *Required* totalNumberOfRows
    total_number_of_rows = Field(
        type=int,
        required=True,
    )
    #: OCI.ExtendedMixedCallLogsEntry: *Optional* extendedCallLog
    extended_call_log = Field(
        type=OCI.ExtendedMixedCallLogsEntry,
        required=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.
    """

    _ELEMENTS = (
        E(
            "total_number_of_rows",
            "totalNumberOfRows",
            int,
            False,
            True,
            False,
        ),
        E(
            "extended_call_log",
            "extendedCallLog",
            OCI.ExtendedMixedCallLogsEntry17sp4,
            True,
            False,
            False,
        ),
    )
    #: int: *Required* totalNumberOfRows
    total_number_of_rows = Field(
        type=int,
        required=True,
    )
    #: OCI.ExtendedMixedCallLogsEntry17sp4: *Optional* extendedCallLog
    extended_call_log = Field(
        type=OCI.ExtendedMixedCallLogsEntry17sp4,
        required=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.
    """

    _ELEMENTS = (
        E(
            "total_number_of_rows",
            "totalNumberOfRows",
            int,
            False,
            True,
            False,
        ),
        E(
            "extended_call_log",
            "extendedCallLog",
            OCI.ExtendedMixedCallLogsEntry20,
            True,
            False,
            False,
        ),
    )
    #: int: *Required* totalNumberOfRows
    total_number_of_rows = Field(
        type=int,
        required=True,
    )
    #: OCI.ExtendedMixedCallLogsEntry20: *Optional* extendedCallLog
    extended_call_log = Field(
        type=OCI.ExtendedMixedCallLogsEntry20,
        required=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.
    """

    _ELEMENTS = (
        E(
            "total_number_of_rows",
            "totalNumberOfRows",
            int,
            False,
            True,
            False,
        ),
        E(
            "extended_call_log",
            "extendedCallLog",
            OCI.ExtendedMixedCallLogsEntry21,
            True,
            False,
            False,
        ),
    )
    #: int: *Required* totalNumberOfRows
    total_number_of_rows = Field(
        type=int,
        required=True,
    )
    #: OCI.ExtendedMixedCallLogsEntry21: *Optional* extendedCallLog
    extended_call_log = Field(
        type=OCI.ExtendedMixedCallLogsEntry21,
        required=False,
    )


class GroupFeatureAccessCodeGetListResponse(OCIResponse):
    """
    Response to the ``GroupFeatureAccessCodeGetListRequest()``.
    Replaced By ``GroupFeatureAccessCodeGetResponse()``
    """

    _ELEMENTS = (
        E(
            "feature_access_code",
            "featureAccessCode",
            OCI.FeatureAccessCodeEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.FeatureAccessCodeEntry: *Optional* featureAccessCode
    feature_access_code = Field(
        type=OCI.FeatureAccessCodeEntry,
        required=False,
    )


class GroupFeatureAccessCodeGetResponse(OCIResponse):
    """
    Response to the ``GroupFeatureAccessCodeGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_feature_access_code_level",
            "useFeatureAccessCodeLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "feature_access_code",
            "featureAccessCode",
            OCI.FeatureAccessCodeEntry,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* useFeatureAccessCodeLevel
    use_feature_access_code_level = Field(
        type=str,
        required=True,
    )
    #: OCI.FeatureAccessCodeEntry: *Optional* featureAccessCode
    feature_access_code = Field(
        type=OCI.FeatureAccessCodeEntry,
        required=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()``
    """

    _ELEMENTS = (
        E(
            "use_feature_access_code_level",
            "useFeatureAccessCodeLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "feature_access_code",
            "featureAccessCode",
            OCI.FeatureAccessCodeEntry,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* useFeatureAccessCodeLevel
    use_feature_access_code_level = Field(
        type=str,
        required=True,
    )
    #: OCI.FeatureAccessCodeEntry: *Optional* featureAccessCode
    feature_access_code = Field(
        type=OCI.FeatureAccessCodeEntry,
        required=False,
    )


class GroupFeatureAccessCodeGetResponse21(OCIResponse):
    """
    Response to the ``GroupFeatureAccessCodeGetRequest21()``.

    In release 20 the "Call Recording" FAC name is changed to
    "Call Recording - Start".
    """

    _ELEMENTS = (
        E(
            "use_feature_access_code_level",
            "useFeatureAccessCodeLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "feature_access_code",
            "featureAccessCode",
            OCI.FeatureAccessCodeReadEntry,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* useFeatureAccessCodeLevel
    use_feature_access_code_level = Field(
        type=str,
        required=True,
    )
    #: OCI.FeatureAccessCodeReadEntry: *Optional* featureAccessCode
    feature_access_code = Field(
        type=OCI.FeatureAccessCodeReadEntry,
        required=False,
    )


class GroupFindMeFollowMeGetAlertingGroupSelectiveCriteriaResponse(OCIResponse):
    """
    Response to ``GroupFindMeFollowMeGetAlertingGroupSelectiveCriteriaRequest()``.
    Contains the alerting group selective criteria information.

    Replaced By ``GroupFindMeFollowMeGetAlertingGroupSelectiveCriteriaResponse21()``
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )


class GroupFindMeFollowMeGetAlertingGroupSelectiveCriteriaResponse21(OCIResponse):
    """
    Response to ``GroupFindMeFollowMeGetAlertingGroupSelectiveCriteriaRequest21()``.
    Contains the alerting group selective criteria information.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
        E(
            "call_to_number",
            "callToNumber",
            OCI.CallToNumber,
            True,
            False,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )
    #: OCI.CallToNumber: *Optional* callToNumber
    call_to_number = Field(
        type=OCI.CallToNumber,
        required=False,
    )


class GroupGetResponse(OCIResponse):
    """
    Response to the ``GroupGetRequest()``.
    The response contains the group's profile information.
    Replaced By ``GroupGetResponse14sp7()``
    """

    _ELEMENTS = (
        E(
            "default_domain",
            "defaultDomain",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_limit",
            "userLimit",
            int,
            False,
            True,
            False,
        ),
        E(
            "user_count",
            "userCount",
            int,
            False,
            True,
            False,
        ),
        E(
            "group_name",
            "groupName",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_name",
            "callingLineIdName",
            str,
            False,
            False,
            False,
        ),
        E(
            "time_zone",
            "timeZone",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone_display_name",
            "timeZoneDisplayName",
            str,
            False,
            True,
            False,
        ),
        E(
            "location_dialing_code",
            "locationDialingCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "contact",
            "contact",
            OCI.Contact,
            True,
            False,
            False,
        ),
        E(
            "address",
            "address",
            OCI.StreetAddress,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* defaultDomain
    default_domain = Field(
        type=str,
        required=True,
    )
    #: int: *Required* userLimit
    user_limit = Field(
        type=int,
        required=True,
    )
    #: int: *Required* userCount
    user_count = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* groupName
    group_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdName
    calling_line_id_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* timeZone
    time_zone = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZoneDisplayName
    time_zone_display_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* locationDialingCode
    location_dialing_code = Field(
        type=str,
        required=False,
    )
    #: OCI.Contact: *Optional* contact
    contact = Field(
        type=OCI.Contact,
        required=False,
    )
    #: OCI.StreetAddress: *Optional* address
    address = Field(
        type=OCI.StreetAddress,
        required=False,
    )


class GroupGetResponse14sp7(OCIResponse):
    """
    Response to the ``GroupGetRequest14sp7()``.
    The response contains the group's profile information.
    """

    _ELEMENTS = (
        E(
            "default_domain",
            "defaultDomain",
            str,
            False,
            True,
            False,
        ),
        E(
            "user_limit",
            "userLimit",
            int,
            False,
            True,
            False,
        ),
        E(
            "user_count",
            "userCount",
            int,
            False,
            True,
            False,
        ),
        E(
            "group_name",
            "groupName",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_name",
            "callingLineIdName",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_phone_number",
            "callingLineIdPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_display_phone_number",
            "callingLineIdDisplayPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "time_zone",
            "timeZone",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone_display_name",
            "timeZoneDisplayName",
            str,
            False,
            True,
            False,
        ),
        E(
            "location_dialing_code",
            "locationDialingCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "contact",
            "contact",
            OCI.Contact,
            True,
            False,
            False,
        ),
        E(
            "address",
            "address",
            OCI.StreetAddress,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* defaultDomain
    default_domain = Field(
        type=str,
        required=True,
    )
    #: int: *Required* userLimit
    user_limit = Field(
        type=int,
        required=True,
    )
    #: int: *Required* userCount
    user_count = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* groupName
    group_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdName
    calling_line_id_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdPhoneNumber
    calling_line_id_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdDisplayPhoneNumber
    calling_line_id_display_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Required* timeZone
    time_zone = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZoneDisplayName
    time_zone_display_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* locationDialingCode
    location_dialing_code = Field(
        type=str,
        required=False,
    )
    #: OCI.Contact: *Optional* contact
    contact = Field(
        type=OCI.Contact,
        required=False,
    )
    #: OCI.StreetAddress: *Optional* address
    address = Field(
        type=OCI.StreetAddress,
        required=False,
    )


class GroupGroupNightForwardingGetResponse(OCIResponse):
    """
    Response to ``GroupGroupNightForwardingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "night_forwarding",
            "nightForwarding",
            str,
            False,
            True,
            False,
        ),
        E(
            "business_hours",
            "businessHours",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* nightForwarding
    night_forwarding = Field(
        type=str,
        required=True,
    )
    #: OCI.TimeSchedule: *Optional* businessHours
    business_hours = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )


class GroupHolidayScheduleGetResponse(OCIResponse):
    """
    Response to the ``GroupHolidayScheduleGetRequest()``.
    The response contains the group's holiday schedule information.
    """

    _ELEMENTS = (
        E(
            "holiday_schedule_name",
            "holidayScheduleName",
            str,
            False,
            True,
            False,
        ),
        E(
            "holiday01",
            "holiday01",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday02",
            "holiday02",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday03",
            "holiday03",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday04",
            "holiday04",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday05",
            "holiday05",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday06",
            "holiday06",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday07",
            "holiday07",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday08",
            "holiday08",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday09",
            "holiday09",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday10",
            "holiday10",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday11",
            "holiday11",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday12",
            "holiday12",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday13",
            "holiday13",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday14",
            "holiday14",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday15",
            "holiday15",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday16",
            "holiday16",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday17",
            "holiday17",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday18",
            "holiday18",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday19",
            "holiday19",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday20",
            "holiday20",
            OCI.Holiday,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* holidayScheduleName
    holiday_schedule_name = Field(
        type=str,
        required=True,
    )
    #: OCI.Holiday: *Optional* holiday01
    holiday01 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday02
    holiday02 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday03
    holiday03 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday04
    holiday04 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday05
    holiday05 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday06
    holiday06 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday07
    holiday07 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday08
    holiday08 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday09
    holiday09 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday10
    holiday10 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday11
    holiday11 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday12
    holiday12 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday13
    holiday13 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday14
    holiday14 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday15
    holiday15 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday16
    holiday16 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday17
    holiday17 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday18
    holiday18 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday19
    holiday19 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday20
    holiday20 = Field(
        type=OCI.Holiday,
        required=False,
    )


class GroupMeetMeConferencingGetResponse(OCIResponse):
    """
    Response to ``GroupMeetMeConferencingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "available_ports",
            "availablePorts",
            OCI.MeetMeConferencingConferencePorts,
            True,
            True,
            False,
        ),
        E(
            "allocated_ports",
            "allocatedPorts",
            OCI.MeetMeConferencingConferencePorts,
            True,
            True,
            False,
        ),
    )
    #: OCI.MeetMeConferencingConferencePorts: *Required* availablePorts
    available_ports = Field(
        type=OCI.MeetMeConferencingConferencePorts,
        required=True,
    )
    #: OCI.MeetMeConferencingConferencePorts: *Required* allocatedPorts
    allocated_ports = Field(
        type=OCI.MeetMeConferencingConferencePorts,
        required=True,
    )


class GroupMusicOnHoldGetDepartmentListResponse(OCIResponse):
    """
    Response to the ``GroupMusicOnHoldGetDepartmentListRequest()``.
    """

    _ELEMENTS = (
        E(
            "has_department",
            "hasDepartment",
            bool,
            False,
            True,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "department_full_path",
            "departmentFullPath",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* hasDepartment
    has_department = Field(
        type=bool,
        required=True,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: str: *Optional* departmentFullPath
    department_full_path = Field(
        type=str,
        required=False,
    )


class GroupMusicOnHoldGetInstanceResponse14sp6(OCIResponse):
    """
    Response to the ``GroupMusicOnHoldGetInstanceRequest14sp6()``.
    Replaced By ``GroupMusicOnHoldGetInstanceResponse16()``
    """

    _ELEMENTS = (
        E(
            "service_user_id",
            "serviceUserId",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_active_during_call_hold",
            "isActiveDuringCallHold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_active_during_call_park",
            "isActiveDuringCallPark",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_active_during_busy_camp_on",
            "isActiveDuringBusyCampOn",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "source",
            "source",
            OCI.MusicOnHoldSourceRead,
            True,
            True,
            False,
        ),
        E(
            "use_alternate_source_for_internal_calls",
            "useAlternateSourceForInternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "internal_source",
            "internalSource",
            OCI.MusicOnHoldSourceRead,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* serviceUserId
    service_user_id = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isActiveDuringCallHold
    is_active_during_call_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isActiveDuringCallPark
    is_active_during_call_park = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isActiveDuringBusyCampOn
    is_active_during_busy_camp_on = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: OCI.MusicOnHoldSourceRead: *Required* source
    source = Field(
        type=OCI.MusicOnHoldSourceRead,
        required=True,
    )
    #: bool: *Required* useAlternateSourceForInternalCalls
    use_alternate_source_for_internal_calls = Field(
        type=bool,
        required=True,
    )
    #: OCI.MusicOnHoldSourceRead: *Optional* internalSource
    internal_source = Field(
        type=OCI.MusicOnHoldSourceRead,
        required=False,
    )


class GroupMusicOnHoldGetInstanceResponse16(OCIResponse):
    """
    Response to the ``GroupMusicOnHoldGetInstanceRequest16()``.
    """

    _ELEMENTS = (
        E(
            "service_user_id",
            "serviceUserId",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_active_during_call_hold",
            "isActiveDuringCallHold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_active_during_call_park",
            "isActiveDuringCallPark",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_active_during_busy_camp_on",
            "isActiveDuringBusyCampOn",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "source",
            "source",
            OCI.MusicOnHoldSourceRead16,
            True,
            True,
            False,
        ),
        E(
            "use_alternate_source_for_internal_calls",
            "useAlternateSourceForInternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "internal_source",
            "internalSource",
            OCI.MusicOnHoldSourceRead16,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* serviceUserId
    service_user_id = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isActiveDuringCallHold
    is_active_during_call_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isActiveDuringCallPark
    is_active_during_call_park = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isActiveDuringBusyCampOn
    is_active_during_busy_camp_on = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: OCI.MusicOnHoldSourceRead16: *Required* source
    source = Field(
        type=OCI.MusicOnHoldSourceRead16,
        required=True,
    )
    #: bool: *Required* useAlternateSourceForInternalCalls
    use_alternate_source_for_internal_calls = Field(
        type=bool,
        required=True,
    )
    #: OCI.MusicOnHoldSourceRead16: *Optional* internalSource
    internal_source = Field(
        type=OCI.MusicOnHoldSourceRead16,
        required=False,
    )


class GroupMusicOnHoldGetInstanceResponse19(OCIResponse):
    """
    Response to the ``GroupMusicOnHoldGetInstanceRequest19()``.
    """

    _ELEMENTS = (
        E(
            "service_user_id",
            "serviceUserId",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_active_during_call_hold",
            "isActiveDuringCallHold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_active_during_call_park",
            "isActiveDuringCallPark",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_active_during_busy_camp_on",
            "isActiveDuringBusyCampOn",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "source",
            "source",
            OCI.MusicOnHoldSourceRead19,
            True,
            True,
            False,
        ),
        E(
            "use_alternate_source_for_internal_calls",
            "useAlternateSourceForInternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "internal_source",
            "internalSource",
            OCI.MusicOnHoldSourceRead19,
            True,
            True,
            False,
        ),
    )
    #: str: *Required* serviceUserId
    service_user_id = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isActiveDuringCallHold
    is_active_during_call_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isActiveDuringCallPark
    is_active_during_call_park = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isActiveDuringBusyCampOn
    is_active_during_busy_camp_on = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: OCI.MusicOnHoldSourceRead19: *Required* source
    source = Field(
        type=OCI.MusicOnHoldSourceRead19,
        required=True,
    )
    #: bool: *Required* useAlternateSourceForInternalCalls
    use_alternate_source_for_internal_calls = Field(
        type=bool,
        required=True,
    )
    #: OCI.MusicOnHoldSourceRead19: *Required* internalSource
    internal_source = Field(
        type=OCI.MusicOnHoldSourceRead19,
        required=True,
    )


class GroupMusicOnHoldGetInstanceResponse20(OCIResponse):
    """
    Response to the ``GroupMusicOnHoldGetInstanceRequest20()``.
    """

    _ELEMENTS = (
        E(
            "service_user_id",
            "serviceUserId",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_active_during_call_hold",
            "isActiveDuringCallHold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_active_during_call_park",
            "isActiveDuringCallPark",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_active_during_busy_camp_on",
            "isActiveDuringBusyCampOn",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "source",
            "source",
            OCI.MusicOnHoldSourceRead20,
            True,
            True,
            False,
        ),
        E(
            "use_alternate_source_for_internal_calls",
            "useAlternateSourceForInternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "internal_source",
            "internalSource",
            OCI.MusicOnHoldSourceRead20,
            True,
            True,
            False,
        ),
    )
    #: str: *Required* serviceUserId
    service_user_id = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isActiveDuringCallHold
    is_active_during_call_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isActiveDuringCallPark
    is_active_during_call_park = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isActiveDuringBusyCampOn
    is_active_during_busy_camp_on = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: OCI.MusicOnHoldSourceRead20: *Required* source
    source = Field(
        type=OCI.MusicOnHoldSourceRead20,
        required=True,
    )
    #: bool: *Required* useAlternateSourceForInternalCalls
    use_alternate_source_for_internal_calls = Field(
        type=bool,
        required=True,
    )
    #: OCI.MusicOnHoldSourceRead20: *Required* internalSource
    internal_source = Field(
        type=OCI.MusicOnHoldSourceRead20,
        required=True,
    )


class GroupMusicOnHoldGetInstanceResponse21(OCIResponse):
    """
    Response to the ``GroupMusicOnHoldGetInstanceRequest21()``.
    """

    _ELEMENTS = (
        E(
            "service_user_id",
            "serviceUserId",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_active_during_call_hold",
            "isActiveDuringCallHold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_active_during_call_park",
            "isActiveDuringCallPark",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_active_during_busy_camp_on",
            "isActiveDuringBusyCampOn",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "source",
            "source",
            OCI.MusicOnHoldSourceRead21,
            True,
            True,
            False,
        ),
        E(
            "use_alternate_source_for_internal_calls",
            "useAlternateSourceForInternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "internal_source",
            "internalSource",
            OCI.MusicOnHoldSourceRead21,
            True,
            True,
            False,
        ),
    )
    #: str: *Required* serviceUserId
    service_user_id = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isActiveDuringCallHold
    is_active_during_call_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isActiveDuringCallPark
    is_active_during_call_park = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isActiveDuringBusyCampOn
    is_active_during_busy_camp_on = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: OCI.MusicOnHoldSourceRead21: *Required* source
    source = Field(
        type=OCI.MusicOnHoldSourceRead21,
        required=True,
    )
    #: bool: *Required* useAlternateSourceForInternalCalls
    use_alternate_source_for_internal_calls = Field(
        type=bool,
        required=True,
    )
    #: OCI.MusicOnHoldSourceRead21: *Required* internalSource
    internal_source = Field(
        type=OCI.MusicOnHoldSourceRead21,
        required=True,
    )


class GroupOutgoingCallingPlanDepartmentAuthorizationCodeGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanDepartmentAuthorizationCodeGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "code_entry",
            "codeEntry",
            OCI.OutgoingCallingPlanAuthorizationCodeEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.OutgoingCallingPlanAuthorizationCodeEntry: *Optional* codeEntry
    code_entry = Field(
        type=OCI.OutgoingCallingPlanAuthorizationCodeEntry,
        required=False,
    )


class GroupPreAlertingAnnouncementGetResponse20(OCIResponse):
    """
    Response to a ``GroupPreAlertingAnnouncementGetResponse20()``.
    """

    _ELEMENTS = (
        E(
            "announcement_interruption",
            "announcementInterruption",
            str,
            False,
            True,
            False,
        ),
        E(
            "interruption_digit_sequence",
            "interruptionDigitSequence",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_selection",
            "audioSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file",
            "audioFile",
            OCI.AnnouncementFileKey,
            True,
            False,
            False,
        ),
        E(
            "audio_file_url",
            "audioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_selection",
            "videoSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_file",
            "videoFile",
            OCI.AnnouncementFileKey,
            True,
            False,
            False,
        ),
        E(
            "video_file_url",
            "videoFileUrl",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* announcementInterruption
    announcement_interruption = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* interruptionDigitSequence
    interruption_digit_sequence = Field(
        type=str,
        required=False,
    )
    #: str: *Required* audioSelection
    audio_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.AnnouncementFileKey: *Optional* audioFile
    audio_file = Field(
        type=OCI.AnnouncementFileKey,
        required=False,
    )
    #: str: *Optional* audioFileUrl
    audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Required* videoSelection
    video_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.AnnouncementFileKey: *Optional* videoFile
    video_file = Field(
        type=OCI.AnnouncementFileKey,
        required=False,
    )
    #: str: *Optional* videoFileUrl
    video_file_url = Field(
        type=str,
        required=False,
    )


class GroupPreferredCarrierGroupGetResponse(OCIResponse):
    """
    Response to a ``GroupPreferredCarrierGroupGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "intra_lata_carrier",
            "intraLataCarrier",
            OCI.GroupPreferredCarrierName,
            True,
            True,
            False,
        ),
        E(
            "inter_lata_carrier",
            "interLataCarrier",
            OCI.GroupPreferredCarrierName,
            True,
            True,
            False,
        ),
        E(
            "international_carrier",
            "internationalCarrier",
            OCI.GroupPreferredCarrierName,
            True,
            True,
            False,
        ),
    )
    #: OCI.GroupPreferredCarrierName: *Required* intraLataCarrier
    intra_lata_carrier = Field(
        type=OCI.GroupPreferredCarrierName,
        required=True,
    )
    #: OCI.GroupPreferredCarrierName: *Required* interLataCarrier
    inter_lata_carrier = Field(
        type=OCI.GroupPreferredCarrierName,
        required=True,
    )
    #: OCI.GroupPreferredCarrierName: *Required* internationalCarrier
    international_carrier = Field(
        type=OCI.GroupPreferredCarrierName,
        required=True,
    )


class GroupRoutePointForcedForwardingGetResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointForcedForwardingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_announcement_before_forwarding",
            "playAnnouncementBeforeForwarding",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "audio_media_type_list",
            "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "video_media_type_list",
            "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playAnnouncementBeforeForwarding
    play_announcement_before_forwarding = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* audioMediaTypeList
    audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* videoMediaTypeList
    video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )


class GroupRoutePointHolidayServiceGetResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointHolidayServiceGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            str,
            False,
            False,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_announcement_before_action",
            "playAnnouncementBeforeAction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "audio_media_type_list",
            "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "video_media_type_list",
            "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playAnnouncementBeforeAction
    play_announcement_before_action = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* audioMediaTypeList
    audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* videoMediaTypeList
    video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )


class GroupRoutePointHolidayServiceGetResponse17sp1(OCIResponse):
    """
    Response to the ``GroupRoutePointHolidayServiceGetRequest17sp1()``.
    """

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_announcement_before_action",
            "playAnnouncementBeforeAction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "audio_media_type_list",
            "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "video_media_type_list",
            "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playAnnouncementBeforeAction
    play_announcement_before_action = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* audioMediaTypeList
    audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* videoMediaTypeList
    video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )


class GroupRoutePointNightServiceGetResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointNightServiceGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "business_hours",
            "businessHours",
            str,
            False,
            False,
            False,
        ),
        E(
            "force_night_service",
            "forceNightService",
            bool,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_announcement_before_action",
            "playAnnouncementBeforeAction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "audio_media_type_list",
            "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "video_media_type_list",
            "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "manual_announcement_mode",
            "manualAnnouncementMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "manual_audio_message_selection",
            "manualAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "manual_audio_url_list",
            "manualAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "manual_audio_file_list",
            "manualAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "manual_audio_media_type_list",
            "manualAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "manual_video_message_selection",
            "manualVideoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "manual_video_url_list",
            "manualVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "manual_video_file_list",
            "manualVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "manual_video_media_type_list",
            "manualVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* businessHours
    business_hours = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* forceNightService
    force_night_service = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playAnnouncementBeforeAction
    play_announcement_before_action = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* audioMediaTypeList
    audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* videoMediaTypeList
    video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Required* manualAnnouncementMode
    manual_announcement_mode = Field(
        type=str,
        required=True,
    )
    #: str: *Required* manualAudioMessageSelection
    manual_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* manualAudioUrlList
    manual_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* manualAudioFileList
    manual_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* manualAudioMediaTypeList
    manual_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Required* manualVideoMessageSelection
    manual_video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* manualVideoUrlList
    manual_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* manualVideoFileList
    manual_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* manualVideoMediaTypeList
    manual_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )


class GroupRoutePointNightServiceGetResponse17sp1(OCIResponse):
    """
    Response to the ``GroupRoutePointNightServiceGetRequest17sp1()``.
    """

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "business_hours",
            "businessHours",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "force_night_service",
            "forceNightService",
            bool,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_announcement_before_action",
            "playAnnouncementBeforeAction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "audio_media_type_list",
            "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "video_media_type_list",
            "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "manual_announcement_mode",
            "manualAnnouncementMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "manual_audio_message_selection",
            "manualAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "manual_audio_url_list",
            "manualAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "manual_audio_file_list",
            "manualAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "manual_audio_media_type_list",
            "manualAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "manual_video_message_selection",
            "manualVideoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "manual_video_url_list",
            "manualVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "manual_video_file_list",
            "manualVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "manual_video_media_type_list",
            "manualVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: OCI.TimeSchedule: *Optional* businessHours
    business_hours = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: bool: *Required* forceNightService
    force_night_service = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playAnnouncementBeforeAction
    play_announcement_before_action = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* audioMediaTypeList
    audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* videoMediaTypeList
    video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Required* manualAnnouncementMode
    manual_announcement_mode = Field(
        type=str,
        required=True,
    )
    #: str: *Required* manualAudioMessageSelection
    manual_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* manualAudioUrlList
    manual_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* manualAudioFileList
    manual_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* manualAudioMediaTypeList
    manual_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Required* manualVideoMessageSelection
    manual_video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* manualVideoUrlList
    manual_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* manualVideoFileList
    manual_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* manualVideoMediaTypeList
    manual_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )


class GroupRoutePointOverflowGetResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointOverflowGetRequest()`` .
    """

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "overflow_after_timeout",
            "overflowAfterTimeout",
            bool,
            False,
            True,
            False,
        ),
        E(
            "timeout_seconds",
            "timeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "play_announcement_before_overflow_processing",
            "playAnnouncementBeforeOverflowProcessing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "audio_media_type_list",
            "audioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "video_media_type_list",
            "videoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* overflowAfterTimeout
    overflow_after_timeout = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* timeoutSeconds
    timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* playAnnouncementBeforeOverflowProcessing
    play_announcement_before_overflow_processing = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* audioMediaTypeList
    audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional* videoMediaTypeList
    video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )


class GroupRoutePointQueueCallDispositionCodeSettingsGetResponse(OCIResponse):
    """
    Response to ``GroupRoutePointQueueCallDispositionCodeSettingsGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "enable_call_disposition_codes",
            "enableCallDispositionCodes",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_organization_codes",
            "includeOrganizationCodes",
            bool,
            False,
            True,
            False,
        ),
        E(
            "force_use_of_call_disposition_codes",
            "forceUseOfCallDispositionCodes",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_call_disposition_code",
            "defaultCallDispositionCode",
            OCI.CallDispositionCodeWithLevel,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* enableCallDispositionCodes
    enable_call_disposition_codes = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeOrganizationCodes
    include_organization_codes = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forceUseOfCallDispositionCodes
    force_use_of_call_disposition_codes = Field(
        type=bool,
        required=True,
    )
    #: OCI.CallDispositionCodeWithLevel: *Optional* defaultCallDispositionCode
    default_call_disposition_code = Field(
        type=OCI.CallDispositionCodeWithLevel,
        required=False,
    )


class GroupScheduleGetEventResponse(OCIResponse):
    """
    Response to ``GroupScheduleGetEventRequest()``.
    The response contains the event of the group schedule.
    """

    _ELEMENTS = (
        E(
            "start_date",
            "startDate",
            str,
            False,
            True,
            False,
        ),
        E(
            "all_day_event",
            "allDayEvent",
            bool,
            False,
            True,
            False,
        ),
        E(
            "start_time",
            "startTime",
            OCI.HourMinute,
            True,
            True,
            False,
        ),
        E(
            "end_time",
            "endTime",
            OCI.HourMinute,
            True,
            True,
            False,
        ),
        E(
            "end_date",
            "endDate",
            str,
            False,
            True,
            False,
        ),
        E(
            "recurrence",
            "recurrence",
            OCI.Recurrence,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* startDate
    start_date = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allDayEvent
    all_day_event = Field(
        type=bool,
        required=True,
    )
    #: OCI.HourMinute: *Required* startTime
    start_time = Field(
        type=OCI.HourMinute,
        required=True,
    )
    #: OCI.HourMinute: *Required* endTime
    end_time = Field(
        type=OCI.HourMinute,
        required=True,
    )
    #: str: *Required* endDate
    end_date = Field(
        type=str,
        required=True,
    )
    #: OCI.Recurrence: *Optional* recurrence
    recurrence = Field(
        type=OCI.Recurrence,
        required=False,
    )


class GroupSessionAdmissionControlGetAvailableDeviceListResponse(OCIResponse):
    """
    Response to ``GroupSessionAdmissionControlGetAvailableDeviceListRequest()``.
    Contains a table of devices can be assigned to session admission control group in
    the group.
    """

    _ELEMENTS = (
        E(
            "access_device",
            "accessDevice",
            OCI.AccessDevice,
            True,
            False,
            False,
        ),
    )
    #: OCI.AccessDevice: *Optional* accessDevice
    access_device = Field(
        type=OCI.AccessDevice,
        required=False,
    )


class GroupSessionAdmissionControlGroupGetResponse(OCIResponse):
    """
    Response to ``GroupSessionAdmissionControlGroupGetRequest()``.
    Returns the profile information for the session admission control group.
    """

    _ELEMENTS = (
        E(
            "max_session",
            "maxSession",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_user_originating_sessions",
            "maxUserOriginatingSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_user_terminating_sessions",
            "maxUserTerminatingSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "reserved_session",
            "reservedSession",
            int,
            False,
            True,
            False,
        ),
        E(
            "reserved_user_originating_sessions",
            "reservedUserOriginatingSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "reserved_user_terminating_sessions",
            "reservedUserTerminatingSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "default_group",
            "defaultGroup",
            bool,
            False,
            True,
            False,
        ),
        E(
            "count_intra_sac_group_sessions",
            "countIntraSACGroupSessions",
            bool,
            False,
            True,
            False,
        ),
        E(
            "devices",
            "devices",
            OCI.AccessDevice,
            True,
            False,
            False,
        ),
    )
    #: int: *Required* maxSession
    max_session = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* maxUserOriginatingSessions
    max_user_originating_sessions = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxUserTerminatingSessions
    max_user_terminating_sessions = Field(
        type=int,
        required=False,
    )
    #: int: *Required* reservedSession
    reserved_session = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* reservedUserOriginatingSessions
    reserved_user_originating_sessions = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* reservedUserTerminatingSessions
    reserved_user_terminating_sessions = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* defaultGroup
    default_group = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* countIntraSACGroupSessions
    count_intra_sac_group_sessions = Field(
        type=bool,
        required=True,
    )
    #: OCI.AccessDevice: *Optional* devices
    devices = Field(
        type=OCI.AccessDevice,
        required=False,
    )


class GroupSessionAdmissionControlGroupGetResponse19sp1(OCIResponse):
    """
    Response to ``GroupSessionAdmissionControlGroupGetRequest19sp1()``.
    Returns the profile information for the session admission control group.
    """

    _ELEMENTS = (
        E(
            "max_session",
            "maxSession",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_user_originating_sessions",
            "maxUserOriginatingSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_user_terminating_sessions",
            "maxUserTerminatingSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "reserved_session",
            "reservedSession",
            int,
            False,
            True,
            False,
        ),
        E(
            "reserved_user_originating_sessions",
            "reservedUserOriginatingSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "reserved_user_terminating_sessions",
            "reservedUserTerminatingSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "default_group",
            "defaultGroup",
            bool,
            False,
            True,
            False,
        ),
        E(
            "count_intra_sac_group_sessions",
            "countIntraSACGroupSessions",
            bool,
            False,
            True,
            False,
        ),
        E(
            "devices",
            "devices",
            OCI.AccessDevice,
            True,
            False,
            False,
        ),
        E(
            "block_emergency_and_repair_calls_due_to_sac_limits",
            "blockEmergencyAndRepairCallsDueToSACLimits",
            bool,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* maxSession
    max_session = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* maxUserOriginatingSessions
    max_user_originating_sessions = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxUserTerminatingSessions
    max_user_terminating_sessions = Field(
        type=int,
        required=False,
    )
    #: int: *Required* reservedSession
    reserved_session = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* reservedUserOriginatingSessions
    reserved_user_originating_sessions = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* reservedUserTerminatingSessions
    reserved_user_terminating_sessions = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* defaultGroup
    default_group = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* countIntraSACGroupSessions
    count_intra_sac_group_sessions = Field(
        type=bool,
        required=True,
    )
    #: OCI.AccessDevice: *Optional* devices
    devices = Field(
        type=OCI.AccessDevice,
        required=False,
    )
    #: bool: *Required* blockEmergencyAndRepairCallsDueToSACLimits
    block_emergency_and_repair_calls_due_to_sac_limits = Field(
        type=bool,
        required=True,
    )


class GroupTimeScheduleGetResponse(OCIResponse):
    """
    Response to the ``GroupTimeScheduleGetRequest()``.
    The response contains the group's time schedule information.
    """

    _ELEMENTS = (
        E(
            "time_schedule_name",
            "timeScheduleName",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_interval01",
            "timeInterval01",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval02",
            "timeInterval02",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval03",
            "timeInterval03",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval04",
            "timeInterval04",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval05",
            "timeInterval05",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval06",
            "timeInterval06",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval07",
            "timeInterval07",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval08",
            "timeInterval08",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval09",
            "timeInterval09",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval10",
            "timeInterval10",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval11",
            "timeInterval11",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval12",
            "timeInterval12",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval13",
            "timeInterval13",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval14",
            "timeInterval14",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval15",
            "timeInterval15",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval16",
            "timeInterval16",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval17",
            "timeInterval17",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval18",
            "timeInterval18",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval19",
            "timeInterval19",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval20",
            "timeInterval20",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* timeScheduleName
    time_schedule_name = Field(
        type=str,
        required=True,
    )
    #: OCI.TimeInterval: *Optional* timeInterval01
    time_interval01 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval02
    time_interval02 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval03
    time_interval03 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval04
    time_interval04 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval05
    time_interval05 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval06
    time_interval06 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval07
    time_interval07 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval08
    time_interval08 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval09
    time_interval09 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval10
    time_interval10 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval11
    time_interval11 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval12
    time_interval12 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval13
    time_interval13 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval14
    time_interval14 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval15
    time_interval15 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval16
    time_interval16 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval17
    time_interval17 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval18
    time_interval18 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval19
    time_interval19 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval20
    time_interval20 = Field(
        type=OCI.TimeInterval,
        required=False,
    )


class GroupTrunkGroupGetInstanceResponse14sp4(OCIResponse):
    """
    Response to ``GroupTrunkGroupGetInstanceRequest14sp4()``.
    Returns the profile information for the Trunk Group.
    """

    _ELEMENTS = (
        E(
            "pilot_user_id",
            "pilotUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "access_device",
            "accessDevice",
            OCI.AccessDevice,
            True,
            False,
            False,
        ),
        E(
            "max_active_calls",
            "maxActiveCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_incoming_calls",
            "maxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_outgoing_calls",
            "maxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_bursting",
            "enableBursting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bursting_max_active_calls",
            "burstingMaxActiveCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_incoming_calls",
            "burstingMaxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_outgoing_calls",
            "burstingMaxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_action",
            "capacityExceededAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_forward_address",
            "capacityExceededForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "capacity_exceeded_trap_initial_calls",
            "capacityExceededTrapInitialCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "capacity_exceeded_trap_offset_calls",
            "capacityExceededTrapOffsetCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "unreachable_destination_action",
            "unreachableDestinationAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "unreachable_destination_trap_initial_calls",
            "unreachableDestinationTrapInitialCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "unreachable_destination_trap_offset_calls",
            "unreachableDestinationTrapOffsetCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "invitation_timeout",
            "invitationTimeout",
            int,
            False,
            True,
            False,
        ),
        E(
            "require_authentication",
            "requireAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sip_authentication_user_name",
            "sipAuthenticationUserName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* pilotUserId
    pilot_user_id = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: OCI.AccessDevice: *Optional* accessDevice
    access_device = Field(
        type=OCI.AccessDevice,
        required=False,
    )
    #: int: *Required* maxActiveCalls
    max_active_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* maxIncomingCalls
    max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxOutgoingCalls
    max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableBursting
    enable_bursting = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* burstingMaxActiveCalls
    bursting_max_active_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxIncomingCalls
    bursting_max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxOutgoingCalls
    bursting_max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* capacityExceededAction
    capacity_exceeded_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* capacityExceededForwardAddress
    capacity_exceeded_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* capacityExceededRerouteTrunkGroupKey
    capacity_exceeded_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* capacityExceededTrapInitialCalls
    capacity_exceeded_trap_initial_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* capacityExceededTrapOffsetCalls
    capacity_exceeded_trap_offset_calls = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* unreachableDestinationAction
    unreachable_destination_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* unreachableDestinationForwardAddress
    unreachable_destination_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* unreachableDestinationRerouteTrunkGroupKey
    unreachable_destination_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* unreachableDestinationTrapInitialCalls
    unreachable_destination_trap_initial_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* unreachableDestinationTrapOffsetCalls
    unreachable_destination_trap_offset_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* invitationTimeout
    invitation_timeout = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* requireAuthentication
    require_authentication = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* sipAuthenticationUserName
    sip_authentication_user_name = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "pilot_user_id",
            "pilotUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "access_device",
            "accessDevice",
            OCI.AccessDevice,
            True,
            False,
            False,
        ),
        E(
            "max_active_calls",
            "maxActiveCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_incoming_calls",
            "maxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_outgoing_calls",
            "maxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_bursting",
            "enableBursting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bursting_max_active_calls",
            "burstingMaxActiveCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_incoming_calls",
            "burstingMaxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_outgoing_calls",
            "burstingMaxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_action",
            "capacityExceededAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_forward_address",
            "capacityExceededForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "capacity_exceeded_trap_initial_calls",
            "capacityExceededTrapInitialCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "capacity_exceeded_trap_offset_calls",
            "capacityExceededTrapOffsetCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "unreachable_destination_action",
            "unreachableDestinationAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "unreachable_destination_trap_initial_calls",
            "unreachableDestinationTrapInitialCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "unreachable_destination_trap_offset_calls",
            "unreachableDestinationTrapOffsetCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "invitation_timeout",
            "invitationTimeout",
            int,
            False,
            True,
            False,
        ),
        E(
            "require_authentication",
            "requireAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sip_authentication_user_name",
            "sipAuthenticationUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hosted_user_table",
            "hostedUserTable",
            list,
            True,
            False,
            True,
        ),
    )
    #: str: *Optional* pilotUserId
    pilot_user_id = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: OCI.AccessDevice: *Optional* accessDevice
    access_device = Field(
        type=OCI.AccessDevice,
        required=False,
    )
    #: int: *Required* maxActiveCalls
    max_active_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* maxIncomingCalls
    max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxOutgoingCalls
    max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableBursting
    enable_bursting = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* burstingMaxActiveCalls
    bursting_max_active_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxIncomingCalls
    bursting_max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxOutgoingCalls
    bursting_max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* capacityExceededAction
    capacity_exceeded_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* capacityExceededForwardAddress
    capacity_exceeded_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* capacityExceededRerouteTrunkGroupKey
    capacity_exceeded_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* capacityExceededTrapInitialCalls
    capacity_exceeded_trap_initial_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* capacityExceededTrapOffsetCalls
    capacity_exceeded_trap_offset_calls = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* unreachableDestinationAction
    unreachable_destination_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* unreachableDestinationForwardAddress
    unreachable_destination_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* unreachableDestinationRerouteTrunkGroupKey
    unreachable_destination_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* unreachableDestinationTrapInitialCalls
    unreachable_destination_trap_initial_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* unreachableDestinationTrapOffsetCalls
    unreachable_destination_trap_offset_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* invitationTimeout
    invitation_timeout = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* requireAuthentication
    require_authentication = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* sipAuthenticationUserName
    sip_authentication_user_name = Field(
        type=str,
        required=False,
    )
    #: list: *Optional* hostedUserTable  *Tabular*
    hosted_user_table = Field(
        type=list,
        required=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".
    """

    _ELEMENTS = (
        E(
            "pilot_user_id",
            "pilotUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "access_device",
            "accessDevice",
            OCI.AccessDevice,
            True,
            False,
            False,
        ),
        E(
            "max_active_calls",
            "maxActiveCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_incoming_calls",
            "maxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_outgoing_calls",
            "maxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_bursting",
            "enableBursting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bursting_max_active_calls",
            "burstingMaxActiveCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_incoming_calls",
            "burstingMaxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_outgoing_calls",
            "burstingMaxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_action",
            "capacityExceededAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_forward_address",
            "capacityExceededForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "capacity_exceeded_trap_initial_calls",
            "capacityExceededTrapInitialCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "capacity_exceeded_trap_offset_calls",
            "capacityExceededTrapOffsetCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "unreachable_destination_action",
            "unreachableDestinationAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "unreachable_destination_trap_initial_calls",
            "unreachableDestinationTrapInitialCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "unreachable_destination_trap_offset_calls",
            "unreachableDestinationTrapOffsetCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "invitation_timeout",
            "invitationTimeout",
            int,
            False,
            True,
            False,
        ),
        E(
            "require_authentication",
            "requireAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sip_authentication_user_name",
            "sipAuthenticationUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hosted_user_table",
            "hostedUserTable",
            list,
            True,
            False,
            True,
        ),
        E(
            "trunk_group_identity",
            "trunkGroupIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "otg_dtg_identity",
            "otgDtgIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "include_trunk_group_identity",
            "includeTrunkGroupIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_dtg_identity",
            "includeDtgIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_network_address_identity",
            "enableNetworkAddressIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_unscreened_calls",
            "allowUnscreenedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_unscreened_emergency_calls",
            "allowUnscreenedEmergencyCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_pilot_user_calling_line_identity",
            "usePilotUserCallingLineIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_pilot_user_charge_number",
            "usePilotUserChargeNumber",
            bool,
            False,
            True,
            False,
        ),
        E(
            "call_forwarding_always_action",
            "callForwardingAlwaysAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_forwarding_always_forward_address",
            "callForwardingAlwaysForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_forwarding_always_reroute_trunk_group_key",
            "callForwardingAlwaysRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
    )
    #: str: *Optional* pilotUserId
    pilot_user_id = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: OCI.AccessDevice: *Optional* accessDevice
    access_device = Field(
        type=OCI.AccessDevice,
        required=False,
    )
    #: int: *Required* maxActiveCalls
    max_active_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* maxIncomingCalls
    max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxOutgoingCalls
    max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableBursting
    enable_bursting = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* burstingMaxActiveCalls
    bursting_max_active_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxIncomingCalls
    bursting_max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxOutgoingCalls
    bursting_max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* capacityExceededAction
    capacity_exceeded_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* capacityExceededForwardAddress
    capacity_exceeded_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* capacityExceededRerouteTrunkGroupKey
    capacity_exceeded_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* capacityExceededTrapInitialCalls
    capacity_exceeded_trap_initial_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* capacityExceededTrapOffsetCalls
    capacity_exceeded_trap_offset_calls = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* unreachableDestinationAction
    unreachable_destination_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* unreachableDestinationForwardAddress
    unreachable_destination_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* unreachableDestinationRerouteTrunkGroupKey
    unreachable_destination_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* unreachableDestinationTrapInitialCalls
    unreachable_destination_trap_initial_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* unreachableDestinationTrapOffsetCalls
    unreachable_destination_trap_offset_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* invitationTimeout
    invitation_timeout = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* requireAuthentication
    require_authentication = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* sipAuthenticationUserName
    sip_authentication_user_name = Field(
        type=str,
        required=False,
    )
    #: list: *Optional* hostedUserTable  *Tabular*
    hosted_user_table = Field(
        type=list,
        required=False,
    )
    #: str: *Optional* trunkGroupIdentity
    trunk_group_identity = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* otgDtgIdentity
    otg_dtg_identity = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* includeTrunkGroupIdentity
    include_trunk_group_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeDtgIdentity
    include_dtg_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableNetworkAddressIdentity
    enable_network_address_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUnscreenedCalls
    allow_unscreened_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUnscreenedEmergencyCalls
    allow_unscreened_emergency_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* usePilotUserCallingLineIdentity
    use_pilot_user_calling_line_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* usePilotUserChargeNumber
    use_pilot_user_charge_number = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* callForwardingAlwaysAction
    call_forwarding_always_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callForwardingAlwaysForwardAddress
    call_forwarding_always_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* callForwardingAlwaysRerouteTrunkGroupKey
    call_forwarding_always_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=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".
    """

    _ELEMENTS = (
        E(
            "pilot_user_id",
            "pilotUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "access_device",
            "accessDevice",
            OCI.AccessDevice,
            True,
            False,
            False,
        ),
        E(
            "max_active_calls",
            "maxActiveCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_incoming_calls",
            "maxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_outgoing_calls",
            "maxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_bursting",
            "enableBursting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bursting_max_active_calls",
            "burstingMaxActiveCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_incoming_calls",
            "burstingMaxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_outgoing_calls",
            "burstingMaxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_action",
            "capacityExceededAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_forward_address",
            "capacityExceededForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "capacity_exceeded_trap_initial_calls",
            "capacityExceededTrapInitialCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "capacity_exceeded_trap_offset_calls",
            "capacityExceededTrapOffsetCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "unreachable_destination_action",
            "unreachableDestinationAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "invitation_timeout",
            "invitationTimeout",
            int,
            False,
            True,
            False,
        ),
        E(
            "require_authentication",
            "requireAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sip_authentication_user_name",
            "sipAuthenticationUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hosted_user_table",
            "hostedUserTable",
            list,
            True,
            False,
            True,
        ),
    )
    #: str: *Optional* pilotUserId
    pilot_user_id = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: OCI.AccessDevice: *Optional* accessDevice
    access_device = Field(
        type=OCI.AccessDevice,
        required=False,
    )
    #: int: *Required* maxActiveCalls
    max_active_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* maxIncomingCalls
    max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxOutgoingCalls
    max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableBursting
    enable_bursting = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* burstingMaxActiveCalls
    bursting_max_active_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxIncomingCalls
    bursting_max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxOutgoingCalls
    bursting_max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* capacityExceededAction
    capacity_exceeded_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* capacityExceededForwardAddress
    capacity_exceeded_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* capacityExceededRerouteTrunkGroupKey
    capacity_exceeded_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* capacityExceededTrapInitialCalls
    capacity_exceeded_trap_initial_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* capacityExceededTrapOffsetCalls
    capacity_exceeded_trap_offset_calls = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* unreachableDestinationAction
    unreachable_destination_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* unreachableDestinationForwardAddress
    unreachable_destination_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* unreachableDestinationRerouteTrunkGroupKey
    unreachable_destination_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* invitationTimeout
    invitation_timeout = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* requireAuthentication
    require_authentication = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* sipAuthenticationUserName
    sip_authentication_user_name = Field(
        type=str,
        required=False,
    )
    #: list: *Optional* hostedUserTable  *Tabular*
    hosted_user_table = Field(
        type=list,
        required=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".
    """

    _ELEMENTS = (
        E(
            "pilot_user_id",
            "pilotUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "access_device",
            "accessDevice",
            OCI.AccessDevice,
            True,
            False,
            False,
        ),
        E(
            "max_active_calls",
            "maxActiveCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_incoming_calls",
            "maxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_outgoing_calls",
            "maxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_bursting",
            "enableBursting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bursting_max_active_calls",
            "burstingMaxActiveCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_incoming_calls",
            "burstingMaxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_outgoing_calls",
            "burstingMaxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_action",
            "capacityExceededAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_forward_address",
            "capacityExceededForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "capacity_exceeded_trap_initial_calls",
            "capacityExceededTrapInitialCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "capacity_exceeded_trap_offset_calls",
            "capacityExceededTrapOffsetCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "unreachable_destination_action",
            "unreachableDestinationAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "invitation_timeout",
            "invitationTimeout",
            int,
            False,
            True,
            False,
        ),
        E(
            "require_authentication",
            "requireAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sip_authentication_user_name",
            "sipAuthenticationUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hosted_user_table",
            "hostedUserTable",
            list,
            True,
            False,
            True,
        ),
        E(
            "trunk_group_identity",
            "trunkGroupIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "otg_dtg_identity",
            "otgDtgIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "include_trunk_group_identity",
            "includeTrunkGroupIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_dtg_identity",
            "includeDtgIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_network_address_identity",
            "enableNetworkAddressIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_unscreened_calls",
            "allowUnscreenedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_unscreened_emergency_calls",
            "allowUnscreenedEmergencyCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_identity_policy",
            "pilotUserCallingLineIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_charge_number_policy",
            "pilotUserChargeNumberPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_forwarding_always_action",
            "callForwardingAlwaysAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_forwarding_always_forward_address",
            "callForwardingAlwaysForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_forwarding_always_reroute_trunk_group_key",
            "callForwardingAlwaysRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
    )
    #: str: *Optional* pilotUserId
    pilot_user_id = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: OCI.AccessDevice: *Optional* accessDevice
    access_device = Field(
        type=OCI.AccessDevice,
        required=False,
    )
    #: int: *Required* maxActiveCalls
    max_active_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* maxIncomingCalls
    max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxOutgoingCalls
    max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableBursting
    enable_bursting = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* burstingMaxActiveCalls
    bursting_max_active_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxIncomingCalls
    bursting_max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxOutgoingCalls
    bursting_max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* capacityExceededAction
    capacity_exceeded_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* capacityExceededForwardAddress
    capacity_exceeded_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* capacityExceededRerouteTrunkGroupKey
    capacity_exceeded_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* capacityExceededTrapInitialCalls
    capacity_exceeded_trap_initial_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* capacityExceededTrapOffsetCalls
    capacity_exceeded_trap_offset_calls = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* unreachableDestinationAction
    unreachable_destination_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* unreachableDestinationForwardAddress
    unreachable_destination_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* unreachableDestinationRerouteTrunkGroupKey
    unreachable_destination_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* invitationTimeout
    invitation_timeout = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* requireAuthentication
    require_authentication = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* sipAuthenticationUserName
    sip_authentication_user_name = Field(
        type=str,
        required=False,
    )
    #: list: *Optional* hostedUserTable  *Tabular*
    hosted_user_table = Field(
        type=list,
        required=False,
    )
    #: str: *Optional* trunkGroupIdentity
    trunk_group_identity = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* otgDtgIdentity
    otg_dtg_identity = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* includeTrunkGroupIdentity
    include_trunk_group_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeDtgIdentity
    include_dtg_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableNetworkAddressIdentity
    enable_network_address_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUnscreenedCalls
    allow_unscreened_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUnscreenedEmergencyCalls
    allow_unscreened_emergency_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineIdentityPolicy
    pilot_user_calling_line_identity_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* pilotUserChargeNumberPolicy
    pilot_user_charge_number_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* callForwardingAlwaysAction
    call_forwarding_always_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callForwardingAlwaysForwardAddress
    call_forwarding_always_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* callForwardingAlwaysRerouteTrunkGroupKey
    call_forwarding_always_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=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".
    """

    _ELEMENTS = (
        E(
            "pilot_user_id",
            "pilotUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "access_device",
            "accessDevice",
            OCI.AccessDevice,
            True,
            False,
            False,
        ),
        E(
            "max_active_calls",
            "maxActiveCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_incoming_calls",
            "maxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_outgoing_calls",
            "maxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_bursting",
            "enableBursting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bursting_max_active_calls",
            "burstingMaxActiveCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_incoming_calls",
            "burstingMaxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_outgoing_calls",
            "burstingMaxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_action",
            "capacityExceededAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_forward_address",
            "capacityExceededForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "capacity_exceeded_trap_initial_calls",
            "capacityExceededTrapInitialCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "capacity_exceeded_trap_offset_calls",
            "capacityExceededTrapOffsetCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "unreachable_destination_action",
            "unreachableDestinationAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "invitation_timeout",
            "invitationTimeout",
            int,
            False,
            True,
            False,
        ),
        E(
            "require_authentication",
            "requireAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sip_authentication_user_name",
            "sipAuthenticationUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hosted_user_table",
            "hostedUserTable",
            list,
            True,
            False,
            True,
        ),
        E(
            "trunk_group_identity",
            "trunkGroupIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "otg_dtg_identity",
            "otgDtgIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "include_trunk_group_identity",
            "includeTrunkGroupIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_dtg_identity",
            "includeDtgIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_network_address_identity",
            "enableNetworkAddressIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_unscreened_calls",
            "allowUnscreenedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_unscreened_emergency_calls",
            "allowUnscreenedEmergencyCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_identity_policy",
            "pilotUserCallingLineIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_charge_number_policy",
            "pilotUserChargeNumberPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_forwarding_always_action",
            "callForwardingAlwaysAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_forwarding_always_forward_address",
            "callForwardingAlwaysForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_forwarding_always_reroute_trunk_group_key",
            "callForwardingAlwaysRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "peering_domain",
            "peeringDomain",
            str,
            False,
            False,
            False,
        ),
        E(
            "route_to_peering_domain",
            "routeToPeeringDomain",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* pilotUserId
    pilot_user_id = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: OCI.AccessDevice: *Optional* accessDevice
    access_device = Field(
        type=OCI.AccessDevice,
        required=False,
    )
    #: int: *Required* maxActiveCalls
    max_active_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* maxIncomingCalls
    max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxOutgoingCalls
    max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableBursting
    enable_bursting = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* burstingMaxActiveCalls
    bursting_max_active_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxIncomingCalls
    bursting_max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxOutgoingCalls
    bursting_max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* capacityExceededAction
    capacity_exceeded_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* capacityExceededForwardAddress
    capacity_exceeded_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* capacityExceededRerouteTrunkGroupKey
    capacity_exceeded_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* capacityExceededTrapInitialCalls
    capacity_exceeded_trap_initial_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* capacityExceededTrapOffsetCalls
    capacity_exceeded_trap_offset_calls = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* unreachableDestinationAction
    unreachable_destination_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* unreachableDestinationForwardAddress
    unreachable_destination_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* unreachableDestinationRerouteTrunkGroupKey
    unreachable_destination_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* invitationTimeout
    invitation_timeout = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* requireAuthentication
    require_authentication = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* sipAuthenticationUserName
    sip_authentication_user_name = Field(
        type=str,
        required=False,
    )
    #: list: *Optional* hostedUserTable  *Tabular*
    hosted_user_table = Field(
        type=list,
        required=False,
    )
    #: str: *Optional* trunkGroupIdentity
    trunk_group_identity = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* otgDtgIdentity
    otg_dtg_identity = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* includeTrunkGroupIdentity
    include_trunk_group_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeDtgIdentity
    include_dtg_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableNetworkAddressIdentity
    enable_network_address_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUnscreenedCalls
    allow_unscreened_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUnscreenedEmergencyCalls
    allow_unscreened_emergency_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineIdentityPolicy
    pilot_user_calling_line_identity_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* pilotUserChargeNumberPolicy
    pilot_user_charge_number_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* callForwardingAlwaysAction
    call_forwarding_always_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callForwardingAlwaysForwardAddress
    call_forwarding_always_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* callForwardingAlwaysRerouteTrunkGroupKey
    call_forwarding_always_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: str: *Optional* peeringDomain
    peering_domain = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* routeToPeeringDomain
    route_to_peering_domain = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "pilot_user_id",
            "pilotUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "access_device",
            "accessDevice",
            OCI.AccessDevice,
            True,
            False,
            False,
        ),
        E(
            "max_active_calls",
            "maxActiveCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_incoming_calls",
            "maxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_outgoing_calls",
            "maxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_bursting",
            "enableBursting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bursting_max_active_calls",
            "burstingMaxActiveCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_incoming_calls",
            "burstingMaxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_outgoing_calls",
            "burstingMaxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_action",
            "capacityExceededAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_forward_address",
            "capacityExceededForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "capacity_exceeded_trap_initial_calls",
            "capacityExceededTrapInitialCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "capacity_exceeded_trap_offset_calls",
            "capacityExceededTrapOffsetCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "unreachable_destination_action",
            "unreachableDestinationAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "invitation_timeout",
            "invitationTimeout",
            int,
            False,
            True,
            False,
        ),
        E(
            "require_authentication",
            "requireAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sip_authentication_user_name",
            "sipAuthenticationUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hosted_user_table",
            "hostedUserTable",
            list,
            True,
            False,
            True,
        ),
        E(
            "trunk_group_identity",
            "trunkGroupIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "otg_dtg_identity",
            "otgDtgIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "include_trunk_group_identity",
            "includeTrunkGroupIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_dtg_identity",
            "includeDtgIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_network_address_identity",
            "enableNetworkAddressIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_unscreened_calls",
            "allowUnscreenedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_unscreened_emergency_calls",
            "allowUnscreenedEmergencyCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_identity_policy",
            "pilotUserCallingLineIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_charge_number_policy",
            "pilotUserChargeNumberPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_forwarding_always_action",
            "callForwardingAlwaysAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_forwarding_always_forward_address",
            "callForwardingAlwaysForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_forwarding_always_reroute_trunk_group_key",
            "callForwardingAlwaysRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "peering_domain",
            "peeringDomain",
            str,
            False,
            False,
            False,
        ),
        E(
            "route_to_peering_domain",
            "routeToPeeringDomain",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prefix_enabled",
            "prefixEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prefix",
            "prefix",
            str,
            False,
            False,
            False,
        ),
        E(
            "stateful_rerouting_enabled",
            "statefulReroutingEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "send_continuous_options_message",
            "sendContinuousOptionsMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "continuous_options_sending_interval_seconds",
            "continuousOptionsSendingIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "failure_options_sending_interval_seconds",
            "failureOptionsSendingIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "failure_threshold_counter",
            "failureThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "success_threshold_counter",
            "successThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "invite_failure_threshold_counter",
            "inviteFailureThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "invite_failure_threshold_window_seconds",
            "inviteFailureThresholdWindowSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_state",
            "trunkGroupState",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* pilotUserId
    pilot_user_id = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: OCI.AccessDevice: *Optional* accessDevice
    access_device = Field(
        type=OCI.AccessDevice,
        required=False,
    )
    #: int: *Required* maxActiveCalls
    max_active_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* maxIncomingCalls
    max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxOutgoingCalls
    max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableBursting
    enable_bursting = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* burstingMaxActiveCalls
    bursting_max_active_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxIncomingCalls
    bursting_max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxOutgoingCalls
    bursting_max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* capacityExceededAction
    capacity_exceeded_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* capacityExceededForwardAddress
    capacity_exceeded_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* capacityExceededRerouteTrunkGroupKey
    capacity_exceeded_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* capacityExceededTrapInitialCalls
    capacity_exceeded_trap_initial_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* capacityExceededTrapOffsetCalls
    capacity_exceeded_trap_offset_calls = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* unreachableDestinationAction
    unreachable_destination_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* unreachableDestinationForwardAddress
    unreachable_destination_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* unreachableDestinationRerouteTrunkGroupKey
    unreachable_destination_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* invitationTimeout
    invitation_timeout = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* requireAuthentication
    require_authentication = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* sipAuthenticationUserName
    sip_authentication_user_name = Field(
        type=str,
        required=False,
    )
    #: list: *Optional* hostedUserTable  *Tabular*
    hosted_user_table = Field(
        type=list,
        required=False,
    )
    #: str: *Optional* trunkGroupIdentity
    trunk_group_identity = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* otgDtgIdentity
    otg_dtg_identity = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* includeTrunkGroupIdentity
    include_trunk_group_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeDtgIdentity
    include_dtg_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableNetworkAddressIdentity
    enable_network_address_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUnscreenedCalls
    allow_unscreened_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUnscreenedEmergencyCalls
    allow_unscreened_emergency_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineIdentityPolicy
    pilot_user_calling_line_identity_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* pilotUserChargeNumberPolicy
    pilot_user_charge_number_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* callForwardingAlwaysAction
    call_forwarding_always_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callForwardingAlwaysForwardAddress
    call_forwarding_always_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* callForwardingAlwaysRerouteTrunkGroupKey
    call_forwarding_always_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: str: *Optional* peeringDomain
    peering_domain = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* routeToPeeringDomain
    route_to_peering_domain = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* prefixEnabled
    prefix_enabled = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* prefix
    prefix = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* statefulReroutingEnabled
    stateful_rerouting_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* sendContinuousOptionsMessage
    send_continuous_options_message = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* continuousOptionsSendingIntervalSeconds
    continuous_options_sending_interval_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* failureOptionsSendingIntervalSeconds
    failure_options_sending_interval_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* failureThresholdCounter
    failure_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* successThresholdCounter
    success_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* inviteFailureThresholdCounter
    invite_failure_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* inviteFailureThresholdWindowSeconds
    invite_failure_threshold_window_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* trunkGroupState
    trunk_group_state = Field(
        type=str,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "pilot_user_id",
            "pilotUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "access_device",
            "accessDevice",
            OCI.AccessDevice,
            True,
            False,
            False,
        ),
        E(
            "max_active_calls",
            "maxActiveCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_incoming_calls",
            "maxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_outgoing_calls",
            "maxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_bursting",
            "enableBursting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bursting_max_active_calls",
            "burstingMaxActiveCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_incoming_calls",
            "burstingMaxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_outgoing_calls",
            "burstingMaxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_action",
            "capacityExceededAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_forward_address",
            "capacityExceededForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "capacity_exceeded_trap_initial_calls",
            "capacityExceededTrapInitialCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "capacity_exceeded_trap_offset_calls",
            "capacityExceededTrapOffsetCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "unreachable_destination_action",
            "unreachableDestinationAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "invitation_timeout",
            "invitationTimeout",
            int,
            False,
            True,
            False,
        ),
        E(
            "require_authentication",
            "requireAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sip_authentication_user_name",
            "sipAuthenticationUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hosted_user_table",
            "hostedUserTable",
            list,
            True,
            False,
            True,
        ),
        E(
            "trunk_group_identity",
            "trunkGroupIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "otg_dtg_identity",
            "otgDtgIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_termination_to_trunk_group_identity",
            "allowTerminationToTrunkGroupIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_termination_to_dtg_identity",
            "allowTerminationToDtgIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_trunk_group_identity",
            "includeTrunkGroupIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_dtg_identity",
            "includeDtgIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_trunk_group_identity_for_network_calls",
            "includeTrunkGroupIdentityForNetworkCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_otg_identity_for_network_calls",
            "includeOtgIdentityForNetworkCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_network_address_identity",
            "enableNetworkAddressIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_unscreened_calls",
            "allowUnscreenedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_unscreened_emergency_calls",
            "allowUnscreenedEmergencyCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_identity_policy",
            "pilotUserCallingLineIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_charge_number_policy",
            "pilotUserChargeNumberPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_forwarding_always_action",
            "callForwardingAlwaysAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_forwarding_always_forward_address",
            "callForwardingAlwaysForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_forwarding_always_reroute_trunk_group_key",
            "callForwardingAlwaysRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "peering_domain",
            "peeringDomain",
            str,
            False,
            False,
            False,
        ),
        E(
            "route_to_peering_domain",
            "routeToPeeringDomain",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prefix_enabled",
            "prefixEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prefix",
            "prefix",
            str,
            False,
            False,
            False,
        ),
        E(
            "stateful_rerouting_enabled",
            "statefulReroutingEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "send_continuous_options_message",
            "sendContinuousOptionsMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "continuous_options_sending_interval_seconds",
            "continuousOptionsSendingIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "failure_options_sending_interval_seconds",
            "failureOptionsSendingIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "failure_threshold_counter",
            "failureThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "success_threshold_counter",
            "successThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "invite_failure_threshold_counter",
            "inviteFailureThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "invite_failure_threshold_window_seconds",
            "inviteFailureThresholdWindowSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_state",
            "trunkGroupState",
            str,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_asserted_identity_policy",
            "pilotUserCallingLineAssertedIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_system_calling_line_asserted_identity_policy",
            "useSystemCallingLineAssertedIdentityPolicy",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* pilotUserId
    pilot_user_id = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: OCI.AccessDevice: *Optional* accessDevice
    access_device = Field(
        type=OCI.AccessDevice,
        required=False,
    )
    #: int: *Required* maxActiveCalls
    max_active_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* maxIncomingCalls
    max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxOutgoingCalls
    max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableBursting
    enable_bursting = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* burstingMaxActiveCalls
    bursting_max_active_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxIncomingCalls
    bursting_max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxOutgoingCalls
    bursting_max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* capacityExceededAction
    capacity_exceeded_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* capacityExceededForwardAddress
    capacity_exceeded_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* capacityExceededRerouteTrunkGroupKey
    capacity_exceeded_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* capacityExceededTrapInitialCalls
    capacity_exceeded_trap_initial_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* capacityExceededTrapOffsetCalls
    capacity_exceeded_trap_offset_calls = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* unreachableDestinationAction
    unreachable_destination_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* unreachableDestinationForwardAddress
    unreachable_destination_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* unreachableDestinationRerouteTrunkGroupKey
    unreachable_destination_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* invitationTimeout
    invitation_timeout = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* requireAuthentication
    require_authentication = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* sipAuthenticationUserName
    sip_authentication_user_name = Field(
        type=str,
        required=False,
    )
    #: list: *Optional* hostedUserTable  *Tabular*
    hosted_user_table = Field(
        type=list,
        required=False,
    )
    #: str: *Optional* trunkGroupIdentity
    trunk_group_identity = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* otgDtgIdentity
    otg_dtg_identity = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowTerminationToTrunkGroupIdentity
    allow_termination_to_trunk_group_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowTerminationToDtgIdentity
    allow_termination_to_dtg_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeTrunkGroupIdentity
    include_trunk_group_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeDtgIdentity
    include_dtg_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeTrunkGroupIdentityForNetworkCalls
    include_trunk_group_identity_for_network_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeOtgIdentityForNetworkCalls
    include_otg_identity_for_network_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableNetworkAddressIdentity
    enable_network_address_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUnscreenedCalls
    allow_unscreened_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUnscreenedEmergencyCalls
    allow_unscreened_emergency_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineIdentityPolicy
    pilot_user_calling_line_identity_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* pilotUserChargeNumberPolicy
    pilot_user_charge_number_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* callForwardingAlwaysAction
    call_forwarding_always_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callForwardingAlwaysForwardAddress
    call_forwarding_always_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* callForwardingAlwaysRerouteTrunkGroupKey
    call_forwarding_always_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: str: *Optional* peeringDomain
    peering_domain = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* routeToPeeringDomain
    route_to_peering_domain = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* prefixEnabled
    prefix_enabled = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* prefix
    prefix = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* statefulReroutingEnabled
    stateful_rerouting_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* sendContinuousOptionsMessage
    send_continuous_options_message = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* continuousOptionsSendingIntervalSeconds
    continuous_options_sending_interval_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* failureOptionsSendingIntervalSeconds
    failure_options_sending_interval_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* failureThresholdCounter
    failure_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* successThresholdCounter
    success_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* inviteFailureThresholdCounter
    invite_failure_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* inviteFailureThresholdWindowSeconds
    invite_failure_threshold_window_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* trunkGroupState
    trunk_group_state = Field(
        type=str,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineAssertedIdentityPolicy
    pilot_user_calling_line_asserted_identity_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useSystemCallingLineAssertedIdentityPolicy
    use_system_calling_line_asserted_identity_policy = Field(
        type=bool,
        required=True,
    )


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()``.
    """

    _ELEMENTS = (
        E(
            "pilot_user_id",
            "pilotUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "access_device",
            "accessDevice",
            OCI.AccessDevice,
            True,
            False,
            False,
        ),
        E(
            "max_active_calls",
            "maxActiveCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_incoming_calls",
            "maxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_outgoing_calls",
            "maxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_bursting",
            "enableBursting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bursting_max_active_calls",
            "burstingMaxActiveCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_incoming_calls",
            "burstingMaxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_outgoing_calls",
            "burstingMaxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_action",
            "capacityExceededAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_forward_address",
            "capacityExceededForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "capacity_exceeded_trap_initial_calls",
            "capacityExceededTrapInitialCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "capacity_exceeded_trap_offset_calls",
            "capacityExceededTrapOffsetCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "unreachable_destination_action",
            "unreachableDestinationAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "invitation_timeout",
            "invitationTimeout",
            int,
            False,
            True,
            False,
        ),
        E(
            "require_authentication",
            "requireAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sip_authentication_user_name",
            "sipAuthenticationUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hosted_user_table",
            "hostedUserTable",
            list,
            True,
            False,
            True,
        ),
        E(
            "trunk_group_identity",
            "trunkGroupIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "otg_dtg_identity",
            "otgDtgIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_termination_to_trunk_group_identity",
            "allowTerminationToTrunkGroupIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_termination_to_dtg_identity",
            "allowTerminationToDtgIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_trunk_group_identity",
            "includeTrunkGroupIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_dtg_identity",
            "includeDtgIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_trunk_group_identity_for_network_calls",
            "includeTrunkGroupIdentityForNetworkCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_otg_identity_for_network_calls",
            "includeOtgIdentityForNetworkCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_network_address_identity",
            "enableNetworkAddressIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_unscreened_calls",
            "allowUnscreenedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_unscreened_emergency_calls",
            "allowUnscreenedEmergencyCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_identity_policy",
            "pilotUserCallingLineIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_charge_number_policy",
            "pilotUserChargeNumberPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_forwarding_always_action",
            "callForwardingAlwaysAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_forwarding_always_forward_address",
            "callForwardingAlwaysForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_forwarding_always_reroute_trunk_group_key",
            "callForwardingAlwaysRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "peering_domain",
            "peeringDomain",
            str,
            False,
            False,
            False,
        ),
        E(
            "route_to_peering_domain",
            "routeToPeeringDomain",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prefix_enabled",
            "prefixEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prefix",
            "prefix",
            str,
            False,
            False,
            False,
        ),
        E(
            "stateful_rerouting_enabled",
            "statefulReroutingEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "send_continuous_options_message",
            "sendContinuousOptionsMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "continuous_options_sending_interval_seconds",
            "continuousOptionsSendingIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "failure_options_sending_interval_seconds",
            "failureOptionsSendingIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "failure_threshold_counter",
            "failureThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "success_threshold_counter",
            "successThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "invite_failure_threshold_counter",
            "inviteFailureThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "invite_failure_threshold_window_seconds",
            "inviteFailureThresholdWindowSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_state",
            "trunkGroupState",
            str,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_asserted_identity_policy",
            "pilotUserCallingLineAssertedIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_system_calling_line_asserted_identity_policy",
            "useSystemCallingLineAssertedIdentityPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "total_active_incoming_calls",
            "totalActiveIncomingCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "total_active_outgoing_calls",
            "totalActiveOutgoingCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_call_optimization_policy",
            "pilotUserCallOptimizationPolicy",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* pilotUserId
    pilot_user_id = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: OCI.AccessDevice: *Optional* accessDevice
    access_device = Field(
        type=OCI.AccessDevice,
        required=False,
    )
    #: int: *Required* maxActiveCalls
    max_active_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* maxIncomingCalls
    max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxOutgoingCalls
    max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableBursting
    enable_bursting = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* burstingMaxActiveCalls
    bursting_max_active_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxIncomingCalls
    bursting_max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxOutgoingCalls
    bursting_max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* capacityExceededAction
    capacity_exceeded_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* capacityExceededForwardAddress
    capacity_exceeded_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* capacityExceededRerouteTrunkGroupKey
    capacity_exceeded_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* capacityExceededTrapInitialCalls
    capacity_exceeded_trap_initial_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* capacityExceededTrapOffsetCalls
    capacity_exceeded_trap_offset_calls = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* unreachableDestinationAction
    unreachable_destination_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* unreachableDestinationForwardAddress
    unreachable_destination_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* unreachableDestinationRerouteTrunkGroupKey
    unreachable_destination_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* invitationTimeout
    invitation_timeout = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* requireAuthentication
    require_authentication = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* sipAuthenticationUserName
    sip_authentication_user_name = Field(
        type=str,
        required=False,
    )
    #: list: *Optional* hostedUserTable  *Tabular*
    hosted_user_table = Field(
        type=list,
        required=False,
    )
    #: str: *Optional* trunkGroupIdentity
    trunk_group_identity = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* otgDtgIdentity
    otg_dtg_identity = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowTerminationToTrunkGroupIdentity
    allow_termination_to_trunk_group_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowTerminationToDtgIdentity
    allow_termination_to_dtg_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeTrunkGroupIdentity
    include_trunk_group_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeDtgIdentity
    include_dtg_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeTrunkGroupIdentityForNetworkCalls
    include_trunk_group_identity_for_network_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeOtgIdentityForNetworkCalls
    include_otg_identity_for_network_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableNetworkAddressIdentity
    enable_network_address_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUnscreenedCalls
    allow_unscreened_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUnscreenedEmergencyCalls
    allow_unscreened_emergency_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineIdentityPolicy
    pilot_user_calling_line_identity_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* pilotUserChargeNumberPolicy
    pilot_user_charge_number_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* callForwardingAlwaysAction
    call_forwarding_always_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callForwardingAlwaysForwardAddress
    call_forwarding_always_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* callForwardingAlwaysRerouteTrunkGroupKey
    call_forwarding_always_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: str: *Optional* peeringDomain
    peering_domain = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* routeToPeeringDomain
    route_to_peering_domain = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* prefixEnabled
    prefix_enabled = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* prefix
    prefix = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* statefulReroutingEnabled
    stateful_rerouting_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* sendContinuousOptionsMessage
    send_continuous_options_message = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* continuousOptionsSendingIntervalSeconds
    continuous_options_sending_interval_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* failureOptionsSendingIntervalSeconds
    failure_options_sending_interval_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* failureThresholdCounter
    failure_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* successThresholdCounter
    success_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* inviteFailureThresholdCounter
    invite_failure_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* inviteFailureThresholdWindowSeconds
    invite_failure_threshold_window_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* trunkGroupState
    trunk_group_state = Field(
        type=str,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineAssertedIdentityPolicy
    pilot_user_calling_line_asserted_identity_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useSystemCallingLineAssertedIdentityPolicy
    use_system_calling_line_asserted_identity_policy = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* totalActiveIncomingCalls
    total_active_incoming_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* totalActiveOutgoingCalls
    total_active_outgoing_calls = Field(
        type=int,
        required=True,
    )
    #: str: *Required* pilotUserCallOptimizationPolicy
    pilot_user_call_optimization_policy = Field(
        type=str,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "pilot_user_id",
            "pilotUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "access_device",
            "accessDevice",
            OCI.AccessDevice,
            True,
            False,
            False,
        ),
        E(
            "max_active_calls",
            "maxActiveCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_incoming_calls",
            "maxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_outgoing_calls",
            "maxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_bursting",
            "enableBursting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bursting_max_active_calls",
            "burstingMaxActiveCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_incoming_calls",
            "burstingMaxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_outgoing_calls",
            "burstingMaxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_action",
            "capacityExceededAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_forward_address",
            "capacityExceededForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "capacity_exceeded_trap_initial_calls",
            "capacityExceededTrapInitialCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "capacity_exceeded_trap_offset_calls",
            "capacityExceededTrapOffsetCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "unreachable_destination_action",
            "unreachableDestinationAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "invitation_timeout",
            "invitationTimeout",
            int,
            False,
            True,
            False,
        ),
        E(
            "require_authentication",
            "requireAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sip_authentication_user_name",
            "sipAuthenticationUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hosted_user_table",
            "hostedUserTable",
            list,
            True,
            False,
            True,
        ),
        E(
            "trunk_group_identity",
            "trunkGroupIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "otg_dtg_identity",
            "otgDtgIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_termination_to_trunk_group_identity",
            "allowTerminationToTrunkGroupIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_termination_to_dtg_identity",
            "allowTerminationToDtgIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_trunk_group_identity",
            "includeTrunkGroupIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_dtg_identity",
            "includeDtgIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_trunk_group_identity_for_network_calls",
            "includeTrunkGroupIdentityForNetworkCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_otg_identity_for_network_calls",
            "includeOtgIdentityForNetworkCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_network_address_identity",
            "enableNetworkAddressIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_unscreened_calls",
            "allowUnscreenedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_unscreened_emergency_calls",
            "allowUnscreenedEmergencyCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_identity_policy",
            "pilotUserCallingLineIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_charge_number_policy",
            "pilotUserChargeNumberPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_forwarding_always_action",
            "callForwardingAlwaysAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_forwarding_always_forward_address",
            "callForwardingAlwaysForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_forwarding_always_reroute_trunk_group_key",
            "callForwardingAlwaysRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "peering_domain",
            "peeringDomain",
            str,
            False,
            False,
            False,
        ),
        E(
            "route_to_peering_domain",
            "routeToPeeringDomain",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prefix_enabled",
            "prefixEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prefix",
            "prefix",
            str,
            False,
            False,
            False,
        ),
        E(
            "stateful_rerouting_enabled",
            "statefulReroutingEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "send_continuous_options_message",
            "sendContinuousOptionsMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "continuous_options_sending_interval_seconds",
            "continuousOptionsSendingIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "failure_options_sending_interval_seconds",
            "failureOptionsSendingIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "failure_threshold_counter",
            "failureThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "success_threshold_counter",
            "successThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "invite_failure_threshold_counter",
            "inviteFailureThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "invite_failure_threshold_window_seconds",
            "inviteFailureThresholdWindowSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_state",
            "trunkGroupState",
            str,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_asserted_identity_policy",
            "pilotUserCallingLineAssertedIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_system_calling_line_asserted_identity_policy",
            "useSystemCallingLineAssertedIdentityPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "total_active_incoming_calls",
            "totalActiveIncomingCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "total_active_outgoing_calls",
            "totalActiveOutgoingCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_call_optimization_policy",
            "pilotUserCallOptimizationPolicy",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* pilotUserId
    pilot_user_id = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: OCI.AccessDevice: *Optional* accessDevice
    access_device = Field(
        type=OCI.AccessDevice,
        required=False,
    )
    #: int: *Required* maxActiveCalls
    max_active_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* maxIncomingCalls
    max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxOutgoingCalls
    max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableBursting
    enable_bursting = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* burstingMaxActiveCalls
    bursting_max_active_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxIncomingCalls
    bursting_max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxOutgoingCalls
    bursting_max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* capacityExceededAction
    capacity_exceeded_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* capacityExceededForwardAddress
    capacity_exceeded_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* capacityExceededRerouteTrunkGroupKey
    capacity_exceeded_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* capacityExceededTrapInitialCalls
    capacity_exceeded_trap_initial_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* capacityExceededTrapOffsetCalls
    capacity_exceeded_trap_offset_calls = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* unreachableDestinationAction
    unreachable_destination_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* unreachableDestinationForwardAddress
    unreachable_destination_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* unreachableDestinationRerouteTrunkGroupKey
    unreachable_destination_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* invitationTimeout
    invitation_timeout = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* requireAuthentication
    require_authentication = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* sipAuthenticationUserName
    sip_authentication_user_name = Field(
        type=str,
        required=False,
    )
    #: list: *Optional* hostedUserTable  *Tabular*
    hosted_user_table = Field(
        type=list,
        required=False,
    )
    #: str: *Optional* trunkGroupIdentity
    trunk_group_identity = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* otgDtgIdentity
    otg_dtg_identity = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowTerminationToTrunkGroupIdentity
    allow_termination_to_trunk_group_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowTerminationToDtgIdentity
    allow_termination_to_dtg_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeTrunkGroupIdentity
    include_trunk_group_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeDtgIdentity
    include_dtg_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeTrunkGroupIdentityForNetworkCalls
    include_trunk_group_identity_for_network_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeOtgIdentityForNetworkCalls
    include_otg_identity_for_network_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableNetworkAddressIdentity
    enable_network_address_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUnscreenedCalls
    allow_unscreened_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUnscreenedEmergencyCalls
    allow_unscreened_emergency_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineIdentityPolicy
    pilot_user_calling_line_identity_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* pilotUserChargeNumberPolicy
    pilot_user_charge_number_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* callForwardingAlwaysAction
    call_forwarding_always_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callForwardingAlwaysForwardAddress
    call_forwarding_always_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* callForwardingAlwaysRerouteTrunkGroupKey
    call_forwarding_always_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: str: *Optional* peeringDomain
    peering_domain = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* routeToPeeringDomain
    route_to_peering_domain = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* prefixEnabled
    prefix_enabled = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* prefix
    prefix = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* statefulReroutingEnabled
    stateful_rerouting_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* sendContinuousOptionsMessage
    send_continuous_options_message = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* continuousOptionsSendingIntervalSeconds
    continuous_options_sending_interval_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* failureOptionsSendingIntervalSeconds
    failure_options_sending_interval_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* failureThresholdCounter
    failure_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* successThresholdCounter
    success_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* inviteFailureThresholdCounter
    invite_failure_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* inviteFailureThresholdWindowSeconds
    invite_failure_threshold_window_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* trunkGroupState
    trunk_group_state = Field(
        type=str,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineAssertedIdentityPolicy
    pilot_user_calling_line_asserted_identity_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useSystemCallingLineAssertedIdentityPolicy
    use_system_calling_line_asserted_identity_policy = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* totalActiveIncomingCalls
    total_active_incoming_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* totalActiveOutgoingCalls
    total_active_outgoing_calls = Field(
        type=int,
        required=True,
    )
    #: str: *Required* pilotUserCallOptimizationPolicy
    pilot_user_call_optimization_policy = Field(
        type=str,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "pilot_user_id",
            "pilotUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "access_device",
            "accessDevice",
            OCI.AccessDevice,
            True,
            False,
            False,
        ),
        E(
            "max_active_calls",
            "maxActiveCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_incoming_calls",
            "maxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_outgoing_calls",
            "maxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_bursting",
            "enableBursting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bursting_max_active_calls",
            "burstingMaxActiveCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_incoming_calls",
            "burstingMaxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_outgoing_calls",
            "burstingMaxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_action",
            "capacityExceededAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_forward_address",
            "capacityExceededForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "capacity_exceeded_trap_initial_calls",
            "capacityExceededTrapInitialCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "capacity_exceeded_trap_offset_calls",
            "capacityExceededTrapOffsetCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "unreachable_destination_action",
            "unreachableDestinationAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "invitation_timeout",
            "invitationTimeout",
            int,
            False,
            True,
            False,
        ),
        E(
            "require_authentication",
            "requireAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sip_authentication_user_name",
            "sipAuthenticationUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hosted_user_table",
            "hostedUserTable",
            list,
            True,
            False,
            True,
        ),
        E(
            "trunk_group_identity",
            "trunkGroupIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "otg_dtg_identity",
            "otgDtgIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_termination_to_trunk_group_identity",
            "allowTerminationToTrunkGroupIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_termination_to_dtg_identity",
            "allowTerminationToDtgIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_trunk_group_identity",
            "includeTrunkGroupIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_dtg_identity",
            "includeDtgIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_trunk_group_identity_for_network_calls",
            "includeTrunkGroupIdentityForNetworkCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_otg_identity_for_network_calls",
            "includeOtgIdentityForNetworkCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_network_address_identity",
            "enableNetworkAddressIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_unscreened_calls",
            "allowUnscreenedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_unscreened_emergency_calls",
            "allowUnscreenedEmergencyCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_identity_for_external_calls_policy",
            "pilotUserCallingLineIdentityForExternalCallsPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_charge_number_policy",
            "pilotUserChargeNumberPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_forwarding_always_action",
            "callForwardingAlwaysAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_forwarding_always_forward_address",
            "callForwardingAlwaysForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_forwarding_always_reroute_trunk_group_key",
            "callForwardingAlwaysRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "peering_domain",
            "peeringDomain",
            str,
            False,
            False,
            False,
        ),
        E(
            "route_to_peering_domain",
            "routeToPeeringDomain",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prefix_enabled",
            "prefixEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prefix",
            "prefix",
            str,
            False,
            False,
            False,
        ),
        E(
            "stateful_rerouting_enabled",
            "statefulReroutingEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "send_continuous_options_message",
            "sendContinuousOptionsMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "continuous_options_sending_interval_seconds",
            "continuousOptionsSendingIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "failure_options_sending_interval_seconds",
            "failureOptionsSendingIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "failure_threshold_counter",
            "failureThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "success_threshold_counter",
            "successThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "invite_failure_threshold_counter",
            "inviteFailureThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "invite_failure_threshold_window_seconds",
            "inviteFailureThresholdWindowSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_state",
            "trunkGroupState",
            str,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_asserted_identity_policy",
            "pilotUserCallingLineAssertedIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_system_calling_line_asserted_identity_policy",
            "useSystemCallingLineAssertedIdentityPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "total_active_incoming_calls",
            "totalActiveIncomingCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "total_active_outgoing_calls",
            "totalActiveOutgoingCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_call_optimization_policy",
            "pilotUserCallOptimizationPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "clid_source_for_screened_calls_policy",
            "clidSourceForScreenedCallsPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_system_clid_source_for_screened_calls_policy",
            "useSystemCLIDSourceForScreenedCallsPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_lookup_policy",
            "userLookupPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_system_user_lookup_policy",
            "useSystemUserLookupPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_identity_for_emergency_calls_policy",
            "pilotUserCallingLineIdentityForEmergencyCallsPolicy",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* pilotUserId
    pilot_user_id = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: OCI.AccessDevice: *Optional* accessDevice
    access_device = Field(
        type=OCI.AccessDevice,
        required=False,
    )
    #: int: *Required* maxActiveCalls
    max_active_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* maxIncomingCalls
    max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxOutgoingCalls
    max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableBursting
    enable_bursting = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* burstingMaxActiveCalls
    bursting_max_active_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxIncomingCalls
    bursting_max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxOutgoingCalls
    bursting_max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* capacityExceededAction
    capacity_exceeded_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* capacityExceededForwardAddress
    capacity_exceeded_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* capacityExceededRerouteTrunkGroupKey
    capacity_exceeded_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* capacityExceededTrapInitialCalls
    capacity_exceeded_trap_initial_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* capacityExceededTrapOffsetCalls
    capacity_exceeded_trap_offset_calls = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* unreachableDestinationAction
    unreachable_destination_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* unreachableDestinationForwardAddress
    unreachable_destination_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* unreachableDestinationRerouteTrunkGroupKey
    unreachable_destination_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* invitationTimeout
    invitation_timeout = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* requireAuthentication
    require_authentication = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* sipAuthenticationUserName
    sip_authentication_user_name = Field(
        type=str,
        required=False,
    )
    #: list: *Optional* hostedUserTable  *Tabular*
    hosted_user_table = Field(
        type=list,
        required=False,
    )
    #: str: *Optional* trunkGroupIdentity
    trunk_group_identity = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* otgDtgIdentity
    otg_dtg_identity = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowTerminationToTrunkGroupIdentity
    allow_termination_to_trunk_group_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowTerminationToDtgIdentity
    allow_termination_to_dtg_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeTrunkGroupIdentity
    include_trunk_group_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeDtgIdentity
    include_dtg_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeTrunkGroupIdentityForNetworkCalls
    include_trunk_group_identity_for_network_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeOtgIdentityForNetworkCalls
    include_otg_identity_for_network_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableNetworkAddressIdentity
    enable_network_address_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUnscreenedCalls
    allow_unscreened_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUnscreenedEmergencyCalls
    allow_unscreened_emergency_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineIdentityForExternalCallsPolicy
    pilot_user_calling_line_identity_for_external_calls_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* pilotUserChargeNumberPolicy
    pilot_user_charge_number_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* callForwardingAlwaysAction
    call_forwarding_always_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callForwardingAlwaysForwardAddress
    call_forwarding_always_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* callForwardingAlwaysRerouteTrunkGroupKey
    call_forwarding_always_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: str: *Optional* peeringDomain
    peering_domain = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* routeToPeeringDomain
    route_to_peering_domain = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* prefixEnabled
    prefix_enabled = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* prefix
    prefix = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* statefulReroutingEnabled
    stateful_rerouting_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* sendContinuousOptionsMessage
    send_continuous_options_message = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* continuousOptionsSendingIntervalSeconds
    continuous_options_sending_interval_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* failureOptionsSendingIntervalSeconds
    failure_options_sending_interval_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* failureThresholdCounter
    failure_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* successThresholdCounter
    success_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* inviteFailureThresholdCounter
    invite_failure_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* inviteFailureThresholdWindowSeconds
    invite_failure_threshold_window_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* trunkGroupState
    trunk_group_state = Field(
        type=str,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineAssertedIdentityPolicy
    pilot_user_calling_line_asserted_identity_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useSystemCallingLineAssertedIdentityPolicy
    use_system_calling_line_asserted_identity_policy = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* totalActiveIncomingCalls
    total_active_incoming_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* totalActiveOutgoingCalls
    total_active_outgoing_calls = Field(
        type=int,
        required=True,
    )
    #: str: *Required* pilotUserCallOptimizationPolicy
    pilot_user_call_optimization_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* clidSourceForScreenedCallsPolicy
    clid_source_for_screened_calls_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useSystemCLIDSourceForScreenedCallsPolicy
    use_system_clid_source_for_screened_calls_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* userLookupPolicy
    user_lookup_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useSystemUserLookupPolicy
    use_system_user_lookup_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineIdentityForEmergencyCallsPolicy
    pilot_user_calling_line_identity_for_emergency_calls_policy = Field(
        type=str,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "pilot_user_id",
            "pilotUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "access_device",
            "accessDevice",
            OCI.AccessDevice,
            True,
            False,
            False,
        ),
        E(
            "max_active_calls",
            "maxActiveCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_incoming_calls",
            "maxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_outgoing_calls",
            "maxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_bursting",
            "enableBursting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bursting_max_active_calls",
            "burstingMaxActiveCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_incoming_calls",
            "burstingMaxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_outgoing_calls",
            "burstingMaxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_action",
            "capacityExceededAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_forward_address",
            "capacityExceededForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "capacity_exceeded_trap_initial_calls",
            "capacityExceededTrapInitialCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "capacity_exceeded_trap_offset_calls",
            "capacityExceededTrapOffsetCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "unreachable_destination_action",
            "unreachableDestinationAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "invitation_timeout",
            "invitationTimeout",
            int,
            False,
            True,
            False,
        ),
        E(
            "require_authentication",
            "requireAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sip_authentication_user_name",
            "sipAuthenticationUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hosted_user_table",
            "hostedUserTable",
            list,
            True,
            False,
            True,
        ),
        E(
            "trunk_group_identity",
            "trunkGroupIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "otg_dtg_identity",
            "otgDtgIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_termination_to_trunk_group_identity",
            "allowTerminationToTrunkGroupIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_termination_to_dtg_identity",
            "allowTerminationToDtgIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_trunk_group_identity",
            "includeTrunkGroupIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_dtg_identity",
            "includeDtgIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_trunk_group_identity_for_network_calls",
            "includeTrunkGroupIdentityForNetworkCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_otg_identity_for_network_calls",
            "includeOtgIdentityForNetworkCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_network_address_identity",
            "enableNetworkAddressIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_unscreened_calls",
            "allowUnscreenedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_unscreened_emergency_calls",
            "allowUnscreenedEmergencyCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_identity_for_external_calls_policy",
            "pilotUserCallingLineIdentityForExternalCallsPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_charge_number_policy",
            "pilotUserChargeNumberPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_forwarding_always_action",
            "callForwardingAlwaysAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_forwarding_always_forward_address",
            "callForwardingAlwaysForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_forwarding_always_reroute_trunk_group_key",
            "callForwardingAlwaysRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "peering_domain",
            "peeringDomain",
            str,
            False,
            False,
            False,
        ),
        E(
            "route_to_peering_domain",
            "routeToPeeringDomain",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prefix_enabled",
            "prefixEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prefix",
            "prefix",
            str,
            False,
            False,
            False,
        ),
        E(
            "stateful_rerouting_enabled",
            "statefulReroutingEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "send_continuous_options_message",
            "sendContinuousOptionsMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "continuous_options_sending_interval_seconds",
            "continuousOptionsSendingIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "failure_options_sending_interval_seconds",
            "failureOptionsSendingIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "failure_threshold_counter",
            "failureThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "success_threshold_counter",
            "successThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "invite_failure_threshold_counter",
            "inviteFailureThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "invite_failure_threshold_window_seconds",
            "inviteFailureThresholdWindowSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_state",
            "trunkGroupState",
            str,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_asserted_identity_policy",
            "pilotUserCallingLineAssertedIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_system_calling_line_asserted_identity_policy",
            "useSystemCallingLineAssertedIdentityPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "total_active_incoming_calls",
            "totalActiveIncomingCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "total_active_outgoing_calls",
            "totalActiveOutgoingCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_call_optimization_policy",
            "pilotUserCallOptimizationPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "clid_source_for_screened_calls_policy",
            "clidSourceForScreenedCallsPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_system_clid_source_for_screened_calls_policy",
            "useSystemCLIDSourceForScreenedCallsPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_lookup_policy",
            "userLookupPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_system_user_lookup_policy",
            "useSystemUserLookupPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_identity_for_emergency_calls_policy",
            "pilotUserCallingLineIdentityForEmergencyCallsPolicy",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* pilotUserId
    pilot_user_id = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: OCI.AccessDevice: *Optional* accessDevice
    access_device = Field(
        type=OCI.AccessDevice,
        required=False,
    )
    #: int: *Required* maxActiveCalls
    max_active_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* maxIncomingCalls
    max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxOutgoingCalls
    max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableBursting
    enable_bursting = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* burstingMaxActiveCalls
    bursting_max_active_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxIncomingCalls
    bursting_max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxOutgoingCalls
    bursting_max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* capacityExceededAction
    capacity_exceeded_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* capacityExceededForwardAddress
    capacity_exceeded_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* capacityExceededRerouteTrunkGroupKey
    capacity_exceeded_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* capacityExceededTrapInitialCalls
    capacity_exceeded_trap_initial_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* capacityExceededTrapOffsetCalls
    capacity_exceeded_trap_offset_calls = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* unreachableDestinationAction
    unreachable_destination_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* unreachableDestinationForwardAddress
    unreachable_destination_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* unreachableDestinationRerouteTrunkGroupKey
    unreachable_destination_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* invitationTimeout
    invitation_timeout = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* requireAuthentication
    require_authentication = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* sipAuthenticationUserName
    sip_authentication_user_name = Field(
        type=str,
        required=False,
    )
    #: list: *Optional* hostedUserTable  *Tabular*
    hosted_user_table = Field(
        type=list,
        required=False,
    )
    #: str: *Optional* trunkGroupIdentity
    trunk_group_identity = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* otgDtgIdentity
    otg_dtg_identity = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowTerminationToTrunkGroupIdentity
    allow_termination_to_trunk_group_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowTerminationToDtgIdentity
    allow_termination_to_dtg_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeTrunkGroupIdentity
    include_trunk_group_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeDtgIdentity
    include_dtg_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeTrunkGroupIdentityForNetworkCalls
    include_trunk_group_identity_for_network_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeOtgIdentityForNetworkCalls
    include_otg_identity_for_network_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableNetworkAddressIdentity
    enable_network_address_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUnscreenedCalls
    allow_unscreened_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUnscreenedEmergencyCalls
    allow_unscreened_emergency_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineIdentityForExternalCallsPolicy
    pilot_user_calling_line_identity_for_external_calls_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* pilotUserChargeNumberPolicy
    pilot_user_charge_number_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* callForwardingAlwaysAction
    call_forwarding_always_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callForwardingAlwaysForwardAddress
    call_forwarding_always_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* callForwardingAlwaysRerouteTrunkGroupKey
    call_forwarding_always_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: str: *Optional* peeringDomain
    peering_domain = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* routeToPeeringDomain
    route_to_peering_domain = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* prefixEnabled
    prefix_enabled = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* prefix
    prefix = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* statefulReroutingEnabled
    stateful_rerouting_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* sendContinuousOptionsMessage
    send_continuous_options_message = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* continuousOptionsSendingIntervalSeconds
    continuous_options_sending_interval_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* failureOptionsSendingIntervalSeconds
    failure_options_sending_interval_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* failureThresholdCounter
    failure_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* successThresholdCounter
    success_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* inviteFailureThresholdCounter
    invite_failure_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* inviteFailureThresholdWindowSeconds
    invite_failure_threshold_window_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* trunkGroupState
    trunk_group_state = Field(
        type=str,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineAssertedIdentityPolicy
    pilot_user_calling_line_asserted_identity_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useSystemCallingLineAssertedIdentityPolicy
    use_system_calling_line_asserted_identity_policy = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* totalActiveIncomingCalls
    total_active_incoming_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* totalActiveOutgoingCalls
    total_active_outgoing_calls = Field(
        type=int,
        required=True,
    )
    #: str: *Required* pilotUserCallOptimizationPolicy
    pilot_user_call_optimization_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* clidSourceForScreenedCallsPolicy
    clid_source_for_screened_calls_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useSystemCLIDSourceForScreenedCallsPolicy
    use_system_clid_source_for_screened_calls_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* userLookupPolicy
    user_lookup_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useSystemUserLookupPolicy
    use_system_user_lookup_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineIdentityForEmergencyCallsPolicy
    pilot_user_calling_line_identity_for_emergency_calls_policy = Field(
        type=str,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "pilot_user_id",
            "pilotUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "access_device",
            "accessDevice",
            OCI.AccessDevice,
            True,
            False,
            False,
        ),
        E(
            "max_active_calls",
            "maxActiveCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_incoming_calls",
            "maxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_outgoing_calls",
            "maxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_bursting",
            "enableBursting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bursting_max_active_calls",
            "burstingMaxActiveCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_incoming_calls",
            "burstingMaxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_outgoing_calls",
            "burstingMaxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_action",
            "capacityExceededAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_forward_address",
            "capacityExceededForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_reroute_trunk_group_key",
            "capacityExceededRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "capacity_exceeded_trap_initial_calls",
            "capacityExceededTrapInitialCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "capacity_exceeded_trap_offset_calls",
            "capacityExceededTrapOffsetCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "unreachable_destination_action",
            "unreachableDestinationAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_key",
            "unreachableDestinationRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "invitation_timeout",
            "invitationTimeout",
            int,
            False,
            True,
            False,
        ),
        E(
            "require_authentication",
            "requireAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sip_authentication_user_name",
            "sipAuthenticationUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hosted_user_table",
            "hostedUserTable",
            list,
            True,
            False,
            True,
        ),
        E(
            "trunk_group_identity",
            "trunkGroupIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "otg_dtg_identity",
            "otgDtgIdentity",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_termination_to_trunk_group_identity",
            "allowTerminationToTrunkGroupIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_termination_to_dtg_identity",
            "allowTerminationToDtgIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_trunk_group_identity",
            "includeTrunkGroupIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_dtg_identity",
            "includeDtgIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_trunk_group_identity_for_network_calls",
            "includeTrunkGroupIdentityForNetworkCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_otg_identity_for_network_calls",
            "includeOtgIdentityForNetworkCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_network_address_identity",
            "enableNetworkAddressIdentity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_unscreened_calls",
            "allowUnscreenedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_unscreened_emergency_calls",
            "allowUnscreenedEmergencyCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_identity_for_external_calls_policy",
            "pilotUserCallingLineIdentityForExternalCallsPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_charge_number_policy",
            "pilotUserChargeNumberPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_forwarding_always_action",
            "callForwardingAlwaysAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_forwarding_always_forward_address",
            "callForwardingAlwaysForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_forwarding_always_reroute_trunk_group_key",
            "callForwardingAlwaysRerouteTrunkGroupKey",
            OCI.TrunkGroupKey,
            True,
            False,
            False,
        ),
        E(
            "peering_domain",
            "peeringDomain",
            str,
            False,
            False,
            False,
        ),
        E(
            "route_to_peering_domain",
            "routeToPeeringDomain",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prefix_enabled",
            "prefixEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prefix",
            "prefix",
            str,
            False,
            False,
            False,
        ),
        E(
            "stateful_rerouting_enabled",
            "statefulReroutingEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "send_continuous_options_message",
            "sendContinuousOptionsMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "continuous_options_sending_interval_seconds",
            "continuousOptionsSendingIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "failure_options_sending_interval_seconds",
            "failureOptionsSendingIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "failure_threshold_counter",
            "failureThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "success_threshold_counter",
            "successThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "invite_failure_threshold_counter",
            "inviteFailureThresholdCounter",
            int,
            False,
            True,
            False,
        ),
        E(
            "invite_failure_threshold_window_seconds",
            "inviteFailureThresholdWindowSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "trunk_group_state",
            "trunkGroupState",
            str,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_asserted_identity_policy",
            "pilotUserCallingLineAssertedIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_system_calling_line_asserted_identity_policy",
            "useSystemCallingLineAssertedIdentityPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "total_active_incoming_calls",
            "totalActiveIncomingCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "total_active_outgoing_calls",
            "totalActiveOutgoingCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_call_optimization_policy",
            "pilotUserCallOptimizationPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "clid_source_for_screened_calls_policy",
            "clidSourceForScreenedCallsPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_system_clid_source_for_screened_calls_policy",
            "useSystemCLIDSourceForScreenedCallsPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_lookup_policy",
            "userLookupPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_system_user_lookup_policy",
            "useSystemUserLookupPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pilot_user_calling_line_identity_for_emergency_calls_policy",
            "pilotUserCallingLineIdentityForEmergencyCallsPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "implicit_registration_set_support_policy",
            "implicitRegistrationSetSupportPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_system_implicit_registration_set_support_policy",
            "useSystemImplicitRegistrationSetSupportPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sip_identity_for_pilot_and_proxy_trunk_modes_policy",
            "sipIdentityForPilotAndProxyTrunkModesPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_system_sip_identity_for_pilot_and_proxy_trunk_modes_policy",
            "useSystemSIPIdentityForPilotAndProxyTrunkModesPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_system_support_connected_identity_policy",
            "useSystemSupportConnectedIdentityPolicy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_connected_identity_policy",
            "supportConnectedIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_system_options_message_response_status_codes",
            "useSystemOptionsMessageResponseStatusCodes",
            bool,
            False,
            True,
            False,
        ),
        E(
            "options_message_response_status_code",
            "optionsMessageResponseStatusCode",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* pilotUserId
    pilot_user_id = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: OCI.AccessDevice: *Optional* accessDevice
    access_device = Field(
        type=OCI.AccessDevice,
        required=False,
    )
    #: int: *Required* maxActiveCalls
    max_active_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* maxIncomingCalls
    max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxOutgoingCalls
    max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableBursting
    enable_bursting = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* burstingMaxActiveCalls
    bursting_max_active_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxIncomingCalls
    bursting_max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxOutgoingCalls
    bursting_max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* capacityExceededAction
    capacity_exceeded_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* capacityExceededForwardAddress
    capacity_exceeded_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* capacityExceededRerouteTrunkGroupKey
    capacity_exceeded_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* capacityExceededTrapInitialCalls
    capacity_exceeded_trap_initial_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* capacityExceededTrapOffsetCalls
    capacity_exceeded_trap_offset_calls = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* unreachableDestinationAction
    unreachable_destination_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* unreachableDestinationForwardAddress
    unreachable_destination_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* unreachableDestinationRerouteTrunkGroupKey
    unreachable_destination_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: int: *Required* invitationTimeout
    invitation_timeout = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* requireAuthentication
    require_authentication = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* sipAuthenticationUserName
    sip_authentication_user_name = Field(
        type=str,
        required=False,
    )
    #: list: *Optional* hostedUserTable  *Tabular*
    hosted_user_table = Field(
        type=list,
        required=False,
    )
    #: str: *Optional* trunkGroupIdentity
    trunk_group_identity = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* otgDtgIdentity
    otg_dtg_identity = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowTerminationToTrunkGroupIdentity
    allow_termination_to_trunk_group_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowTerminationToDtgIdentity
    allow_termination_to_dtg_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeTrunkGroupIdentity
    include_trunk_group_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeDtgIdentity
    include_dtg_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeTrunkGroupIdentityForNetworkCalls
    include_trunk_group_identity_for_network_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeOtgIdentityForNetworkCalls
    include_otg_identity_for_network_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableNetworkAddressIdentity
    enable_network_address_identity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUnscreenedCalls
    allow_unscreened_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowUnscreenedEmergencyCalls
    allow_unscreened_emergency_calls = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineIdentityForExternalCallsPolicy
    pilot_user_calling_line_identity_for_external_calls_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* pilotUserChargeNumberPolicy
    pilot_user_charge_number_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* callForwardingAlwaysAction
    call_forwarding_always_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callForwardingAlwaysForwardAddress
    call_forwarding_always_forward_address = Field(
        type=str,
        required=False,
    )
    #: OCI.TrunkGroupKey: *Optional* callForwardingAlwaysRerouteTrunkGroupKey
    call_forwarding_always_reroute_trunk_group_key = Field(
        type=OCI.TrunkGroupKey,
        required=False,
    )
    #: str: *Optional* peeringDomain
    peering_domain = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* routeToPeeringDomain
    route_to_peering_domain = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* prefixEnabled
    prefix_enabled = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* prefix
    prefix = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* statefulReroutingEnabled
    stateful_rerouting_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* sendContinuousOptionsMessage
    send_continuous_options_message = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* continuousOptionsSendingIntervalSeconds
    continuous_options_sending_interval_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* failureOptionsSendingIntervalSeconds
    failure_options_sending_interval_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* failureThresholdCounter
    failure_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* successThresholdCounter
    success_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* inviteFailureThresholdCounter
    invite_failure_threshold_counter = Field(
        type=int,
        required=True,
    )
    #: int: *Required* inviteFailureThresholdWindowSeconds
    invite_failure_threshold_window_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* trunkGroupState
    trunk_group_state = Field(
        type=str,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineAssertedIdentityPolicy
    pilot_user_calling_line_asserted_identity_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useSystemCallingLineAssertedIdentityPolicy
    use_system_calling_line_asserted_identity_policy = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* totalActiveIncomingCalls
    total_active_incoming_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* totalActiveOutgoingCalls
    total_active_outgoing_calls = Field(
        type=int,
        required=True,
    )
    #: str: *Required* pilotUserCallOptimizationPolicy
    pilot_user_call_optimization_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* clidSourceForScreenedCallsPolicy
    clid_source_for_screened_calls_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useSystemCLIDSourceForScreenedCallsPolicy
    use_system_clid_source_for_screened_calls_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* userLookupPolicy
    user_lookup_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useSystemUserLookupPolicy
    use_system_user_lookup_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* pilotUserCallingLineIdentityForEmergencyCallsPolicy
    pilot_user_calling_line_identity_for_emergency_calls_policy = Field(
        type=str,
        required=True,
    )
    #: str: *Required* implicitRegistrationSetSupportPolicy
    implicit_registration_set_support_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useSystemImplicitRegistrationSetSupportPolicy
    use_system_implicit_registration_set_support_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* sipIdentityForPilotAndProxyTrunkModesPolicy
    sip_identity_for_pilot_and_proxy_trunk_modes_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useSystemSIPIdentityForPilotAndProxyTrunkModesPolicy
    use_system_sip_identity_for_pilot_and_proxy_trunk_modes_policy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useSystemSupportConnectedIdentityPolicy
    use_system_support_connected_identity_policy = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* supportConnectedIdentityPolicy
    support_connected_identity_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useSystemOptionsMessageResponseStatusCodes
    use_system_options_message_response_status_codes = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* optionsMessageResponseStatusCode
    options_message_response_status_code = Field(
        type=str,
        required=False,
    )


class GroupTrunkGroupGetResponse(OCIResponse):
    """
    Response to the ``GroupTrunkGroupGetRequest()``.
    The response contains the maximum permissible active trunk group calls for the group.
    """

    _ELEMENTS = (
        E(
            "max_active_calls",
            "maxActiveCalls",
            OCI.UnboundedNonNegativeInt,
            True,
            True,
            False,
        ),
        E(
            "max_available_active_calls",
            "maxAvailableActiveCalls",
            OCI.UnboundedNonNegativeInt,
            True,
            True,
            False,
        ),
    )
    #: OCI.UnboundedNonNegativeInt: *Required* maxActiveCalls
    max_active_calls = Field(
        type=OCI.UnboundedNonNegativeInt,
        required=True,
    )
    #: OCI.UnboundedNonNegativeInt: *Required* maxAvailableActiveCalls
    max_available_active_calls = Field(
        type=OCI.UnboundedNonNegativeInt,
        required=True,
    )


class GroupTrunkGroupGetResponse14sp1(OCIResponse):
    """
    Response to the ``GroupTrunkGroupGetRequest14sp1()``.
    The response contains the maximum and bursting maximum permissible active trunk
    group calls for the group.
    """

    _ELEMENTS = (
        E(
            "max_active_calls",
            "maxActiveCalls",
            OCI.UnboundedNonNegativeInt,
            True,
            True,
            False,
        ),
        E(
            "max_available_active_calls",
            "maxAvailableActiveCalls",
            OCI.UnboundedNonNegativeInt,
            True,
            True,
            False,
        ),
        E(
            "bursting_max_active_calls",
            "burstingMaxActiveCalls",
            OCI.UnboundedNonNegativeInt,
            True,
            True,
            False,
        ),
        E(
            "bursting_max_available_active_calls",
            "burstingMaxAvailableActiveCalls",
            OCI.UnboundedNonNegativeInt,
            True,
            True,
            False,
        ),
    )
    #: OCI.UnboundedNonNegativeInt: *Required* maxActiveCalls
    max_active_calls = Field(
        type=OCI.UnboundedNonNegativeInt,
        required=True,
    )
    #: OCI.UnboundedNonNegativeInt: *Required* maxAvailableActiveCalls
    max_available_active_calls = Field(
        type=OCI.UnboundedNonNegativeInt,
        required=True,
    )
    #: OCI.UnboundedNonNegativeInt: *Required* burstingMaxActiveCalls
    bursting_max_active_calls = Field(
        type=OCI.UnboundedNonNegativeInt,
        required=True,
    )
    #: OCI.UnboundedNonNegativeInt: *Required* burstingMaxAvailableActiveCalls
    bursting_max_available_active_calls = Field(
        type=OCI.UnboundedNonNegativeInt,
        required=True,
    )


class GroupTrunkGroupGetResponse14sp9(OCIResponse):
    """
    Response to the ``GroupTrunkGroupGetRequest14sp9()``.
    The response contains the maximum and bursting maximum permissible active trunk
    group calls for the group.
    """

    _ELEMENTS = (
        E(
            "max_active_calls",
            "maxActiveCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_available_active_calls",
            "maxAvailableActiveCalls",
            OCI.UnboundedNonNegativeInt,
            True,
            True,
            False,
        ),
        E(
            "bursting_max_active_calls",
            "burstingMaxActiveCalls",
            OCI.UnboundedNonNegativeInt,
            True,
            True,
            False,
        ),
        E(
            "bursting_max_available_active_calls",
            "burstingMaxAvailableActiveCalls",
            OCI.UnboundedNonNegativeInt,
            True,
            True,
            False,
        ),
    )
    #: int: *Required* maxActiveCalls
    max_active_calls = Field(
        type=int,
        required=True,
    )
    #: OCI.UnboundedNonNegativeInt: *Required* maxAvailableActiveCalls
    max_available_active_calls = Field(
        type=OCI.UnboundedNonNegativeInt,
        required=True,
    )
    #: OCI.UnboundedNonNegativeInt: *Required* burstingMaxActiveCalls
    bursting_max_active_calls = Field(
        type=OCI.UnboundedNonNegativeInt,
        required=True,
    )
    #: OCI.UnboundedNonNegativeInt: *Required* burstingMaxAvailableActiveCalls
    bursting_max_available_active_calls = Field(
        type=OCI.UnboundedNonNegativeInt,
        required=True,
    )


class GroupVoiceMessagingGroupGetVoicePortalBrandingResponse20(OCIResponse):
    """
    Response to the ``GroupVoiceMessagingGroupGetVoicePortalBrandingRequest20()``.
    """

    _ELEMENTS = (
        E(
            "voice_portal_greeting_selection",
            "voicePortalGreetingSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_greeting_file",
            "voicePortalGreetingFile",
            OCI.AnnouncementFileKey,
            True,
            False,
            False,
        ),
        E(
            "voice_messaging_greeting_selection",
            "voiceMessagingGreetingSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "voice_messaging_greeting_file",
            "voiceMessagingGreetingFile",
            OCI.AnnouncementFileKey,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* voicePortalGreetingSelection
    voice_portal_greeting_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.AnnouncementFileKey: *Optional* voicePortalGreetingFile
    voice_portal_greeting_file = Field(
        type=OCI.AnnouncementFileKey,
        required=False,
    )
    #: str: *Required* voiceMessagingGreetingSelection
    voice_messaging_greeting_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.AnnouncementFileKey: *Optional* voiceMessagingGreetingFile
    voice_messaging_greeting_file = Field(
        type=OCI.AnnouncementFileKey,
        required=False,
    )


class ServiceProviderAccessDeviceGetResponse14(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceGetRequest14()``.
    Replaced By ``ServiceProviderAccessDeviceGetResponse14sp3()``
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            True,
            False,
        ),
        E(
            "protocol",
            "protocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "net_address",
            "netAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "port",
            "port",
            int,
            False,
            False,
            False,
        ),
        E(
            "outbound_proxy_server_net_address",
            "outboundProxyServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "stun_server_net_address",
            "stunServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mac_address",
            "macAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "serial_number",
            "serialNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "number_of_assigned_ports",
            "numberOfAssignedPorts",
            int,
            False,
            True,
            False,
        ),
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
        E(
            "physical_location",
            "physicalLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "transport_protocol",
            "transportProtocol",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* deviceType
    device_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* protocol
    protocol = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* netAddress
    net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* port
    port = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* outboundProxyServerNetAddress
    outbound_proxy_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* stunServerNetAddress
    stun_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* macAddress
    mac_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serialNumber
    serial_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: int: *Required* numberOfAssignedPorts
    number_of_assigned_ports = Field(
        type=int,
        required=True,
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* physicalLocation
    physical_location = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* transportProtocol
    transport_protocol = Field(
        type=str,
        required=False,
    )


class ServiceProviderAccessDeviceGetResponse14sp3(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceGetRequest14sp3()``.
    Replaced By ``ServiceProviderAccessDeviceGetRequest14sp6()``
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            True,
            False,
        ),
        E(
            "protocol",
            "protocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "net_address",
            "netAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "port",
            "port",
            int,
            False,
            False,
            False,
        ),
        E(
            "outbound_proxy_server_net_address",
            "outboundProxyServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "stun_server_net_address",
            "stunServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mac_address",
            "macAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "serial_number",
            "serialNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "number_of_assigned_ports",
            "numberOfAssignedPorts",
            int,
            False,
            True,
            False,
        ),
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
        E(
            "physical_location",
            "physicalLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "transport_protocol",
            "transportProtocol",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_url",
            "mobilityManagerProvisioningURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey",
            int,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* deviceType
    device_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* protocol
    protocol = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* netAddress
    net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* port
    port = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* outboundProxyServerNetAddress
    outbound_proxy_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* stunServerNetAddress
    stun_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* macAddress
    mac_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serialNumber
    serial_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: int: *Required* numberOfAssignedPorts
    number_of_assigned_ports = Field(
        type=int,
        required=True,
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* physicalLocation
    physical_location = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* transportProtocol
    transport_protocol = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningURL
    mobility_manager_provisioning_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningUserName
    mobility_manager_provisioning_user_name = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultOriginatingServiceKey
    mobility_manager_default_originating_service_key = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultTerminatingServiceKey
    mobility_manager_default_terminating_service_key = Field(
        type=int,
        required=False,
    )


class ServiceProviderAccessDeviceGetResponse14sp6(OCIResponse):
    """
    Response to: ``ServiceProviderAccessDeviceGetRequest14sp6()``
    Replaced By ``ServiceProviderAccessDeviceGetRequest16()``
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            True,
            False,
        ),
        E(
            "protocol",
            "protocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "net_address",
            "netAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "port",
            "port",
            int,
            False,
            False,
            False,
        ),
        E(
            "outbound_proxy_server_net_address",
            "outboundProxyServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "stun_server_net_address",
            "stunServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mac_address",
            "macAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "serial_number",
            "serialNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "number_of_assigned_ports",
            "numberOfAssignedPorts",
            int,
            False,
            True,
            False,
        ),
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
        E(
            "physical_location",
            "physicalLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "transport_protocol",
            "transportProtocol",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_url",
            "mobilityManagerProvisioningURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "use_custom_user_name_password",
            "useCustomUserNamePassword",
            bool,
            False,
            False,
            False,
        ),
        E(
            "user_name",
            "userName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* deviceType
    device_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* protocol
    protocol = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* netAddress
    net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* port
    port = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* outboundProxyServerNetAddress
    outbound_proxy_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* stunServerNetAddress
    stun_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* macAddress
    mac_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serialNumber
    serial_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: int: *Required* numberOfAssignedPorts
    number_of_assigned_ports = Field(
        type=int,
        required=True,
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* physicalLocation
    physical_location = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* transportProtocol
    transport_protocol = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningURL
    mobility_manager_provisioning_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningUserName
    mobility_manager_provisioning_user_name = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultOriginatingServiceKey
    mobility_manager_default_originating_service_key = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultTerminatingServiceKey
    mobility_manager_default_terminating_service_key = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* useCustomUserNamePassword
    use_custom_user_name_password = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* userName
    user_name = Field(
        type=str,
        required=False,
    )


class ServiceProviderAccessDeviceGetResponse16(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceGetRequest16()``.
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            True,
            False,
        ),
        E(
            "protocol",
            "protocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "net_address",
            "netAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "port",
            "port",
            int,
            False,
            False,
            False,
        ),
        E(
            "outbound_proxy_server_net_address",
            "outboundProxyServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "stun_server_net_address",
            "stunServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mac_address",
            "macAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "serial_number",
            "serialNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "number_of_assigned_ports",
            "numberOfAssignedPorts",
            int,
            False,
            True,
            False,
        ),
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
        E(
            "physical_location",
            "physicalLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "transport_protocol",
            "transportProtocol",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_url",
            "mobilityManagerProvisioningURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "use_custom_user_name_password",
            "useCustomUserNamePassword",
            bool,
            False,
            False,
            False,
        ),
        E(
            "user_name",
            "userName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* deviceType
    device_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* protocol
    protocol = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* netAddress
    net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* port
    port = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* outboundProxyServerNetAddress
    outbound_proxy_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* stunServerNetAddress
    stun_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* macAddress
    mac_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serialNumber
    serial_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: int: *Required* numberOfAssignedPorts
    number_of_assigned_ports = Field(
        type=int,
        required=True,
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* physicalLocation
    physical_location = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* transportProtocol
    transport_protocol = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningURL
    mobility_manager_provisioning_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningUserName
    mobility_manager_provisioning_user_name = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultOriginatingServiceKey
    mobility_manager_default_originating_service_key = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultTerminatingServiceKey
    mobility_manager_default_terminating_service_key = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* useCustomUserNamePassword
    use_custom_user_name_password = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* userName
    user_name = Field(
        type=str,
        required=False,
    )


class ServiceProviderAccessDeviceGetResponse18sp1(OCIResponse):
    """
    Response to ``ServiceProviderAccessDeviceGetRequest18sp1()``.
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            True,
            False,
        ),
        E(
            "protocol",
            "protocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "net_address",
            "netAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "port",
            "port",
            int,
            False,
            False,
            False,
        ),
        E(
            "outbound_proxy_server_net_address",
            "outboundProxyServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "stun_server_net_address",
            "stunServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mac_address",
            "macAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "serial_number",
            "serialNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "number_of_assigned_ports",
            "numberOfAssignedPorts",
            int,
            False,
            True,
            False,
        ),
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
        E(
            "physical_location",
            "physicalLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "transport_protocol",
            "transportProtocol",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_url",
            "mobilityManagerProvisioningURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "use_custom_user_name_password",
            "useCustomUserNamePassword",
            bool,
            False,
            False,
            False,
        ),
        E(
            "user_name",
            "userName",
            str,
            False,
            False,
            False,
        ),
        E(
            "version",
            "version",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* deviceType
    device_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* protocol
    protocol = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* netAddress
    net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* port
    port = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* outboundProxyServerNetAddress
    outbound_proxy_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* stunServerNetAddress
    stun_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* macAddress
    mac_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serialNumber
    serial_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: int: *Required* numberOfAssignedPorts
    number_of_assigned_ports = Field(
        type=int,
        required=True,
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* physicalLocation
    physical_location = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* transportProtocol
    transport_protocol = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningURL
    mobility_manager_provisioning_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningUserName
    mobility_manager_provisioning_user_name = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultOriginatingServiceKey
    mobility_manager_default_originating_service_key = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultTerminatingServiceKey
    mobility_manager_default_terminating_service_key = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* useCustomUserNamePassword
    use_custom_user_name_password = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* userName
    user_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* version
    version = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_action",
            "originatingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "originating_default_treatment_id",
            "originatingDefaultTreatmentId",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_transfer_number",
            "originatingDefaultTransferNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_call_timeout",
            "originatingDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "originating_rule",
            "originatingRule",
            OCI.ServiceProviderCommunicationBarringHierarchicalOriginatingRule,
            True,
            False,
            False,
        ),
        E(
            "redirecting_default_action",
            "redirectingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "redirecting_default_call_timeout",
            "redirectingDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "redirecting_rule",
            "redirectingRule",
            OCI.ServiceProviderCommunicationBarringHierarchicalRedirectingRule,
            True,
            False,
            False,
        ),
        E(
            "incoming_default_action",
            "incomingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "incoming_default_call_timeout",
            "incomingDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "incoming_rule",
            "incomingRule",
            OCI.CommunicationBarringIncomingRule,
            True,
            False,
            False,
        ),
        E(
            "is_default",
            "isDefault",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Required* originatingDefaultAction
    originating_default_action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* originatingDefaultTreatmentId
    originating_default_treatment_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* originatingDefaultTransferNumber
    originating_default_transfer_number = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* originatingDefaultCallTimeout
    originating_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.ServiceProviderCommunicationBarringHierarchicalOriginatingRule: *Optional*
    #: originatingRule
    originating_rule = Field(
        type=OCI.ServiceProviderCommunicationBarringHierarchicalOriginatingRule,
        required=False,
    )
    #: str: *Required* redirectingDefaultAction
    redirecting_default_action = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* redirectingDefaultCallTimeout
    redirecting_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.ServiceProviderCommunicationBarringHierarchicalRedirectingRule: *Optional*
    #: redirectingRule
    redirecting_rule = Field(
        type=OCI.ServiceProviderCommunicationBarringHierarchicalRedirectingRule,
        required=False,
    )
    #: str: *Required* incomingDefaultAction
    incoming_default_action = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* incomingDefaultCallTimeout
    incoming_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.CommunicationBarringIncomingRule: *Optional* incomingRule
    incoming_rule = Field(
        type=OCI.CommunicationBarringIncomingRule,
        required=False,
    )
    #: bool: *Required* isDefault
    is_default = Field(
        type=bool,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_action",
            "originatingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "originating_default_treatment_id",
            "originatingDefaultTreatmentId",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_transfer_number",
            "originatingDefaultTransferNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_call_timeout",
            "originatingDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "originating_rule",
            "originatingRule",
            OCI.ServiceProviderCommunicationBarringHierarchicalOriginatingRule,
            True,
            False,
            False,
        ),
        E(
            "redirecting_default_action",
            "redirectingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "redirecting_default_call_timeout",
            "redirectingDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "redirecting_rule",
            "redirectingRule",
            OCI.ServiceProviderCommunicationBarringHierarchicalRedirectingRule,
            True,
            False,
            False,
        ),
        E(
            "call_me_now_default_action",
            "callMeNowDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_me_now_default_call_timeout",
            "callMeNowDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "call_me_now_rule",
            "callMeNowRule",
            OCI.ServiceProviderCommunicationBarringHierarchicalCallMeNowRule,
            True,
            False,
            False,
        ),
        E(
            "incoming_default_action",
            "incomingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "incoming_default_call_timeout",
            "incomingDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "incoming_rule",
            "incomingRule",
            OCI.CommunicationBarringIncomingRule,
            True,
            False,
            False,
        ),
        E(
            "is_default",
            "isDefault",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Required* originatingDefaultAction
    originating_default_action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* originatingDefaultTreatmentId
    originating_default_treatment_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* originatingDefaultTransferNumber
    originating_default_transfer_number = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* originatingDefaultCallTimeout
    originating_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.ServiceProviderCommunicationBarringHierarchicalOriginatingRule: *Optional*
    #: originatingRule
    originating_rule = Field(
        type=OCI.ServiceProviderCommunicationBarringHierarchicalOriginatingRule,
        required=False,
    )
    #: str: *Required* redirectingDefaultAction
    redirecting_default_action = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* redirectingDefaultCallTimeout
    redirecting_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.ServiceProviderCommunicationBarringHierarchicalRedirectingRule: *Optional*
    #: redirectingRule
    redirecting_rule = Field(
        type=OCI.ServiceProviderCommunicationBarringHierarchicalRedirectingRule,
        required=False,
    )
    #: str: *Required* callMeNowDefaultAction
    call_me_now_default_action = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* callMeNowDefaultCallTimeout
    call_me_now_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.ServiceProviderCommunicationBarringHierarchicalCallMeNowRule: *Optional*
    #: callMeNowRule
    call_me_now_rule = Field(
        type=OCI.ServiceProviderCommunicationBarringHierarchicalCallMeNowRule,
        required=False,
    )
    #: str: *Required* incomingDefaultAction
    incoming_default_action = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* incomingDefaultCallTimeout
    incoming_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.CommunicationBarringIncomingRule: *Optional* incomingRule
    incoming_rule = Field(
        type=OCI.CommunicationBarringIncomingRule,
        required=False,
    )
    #: bool: *Required* isDefault
    is_default = Field(
        type=bool,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_action",
            "originatingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "originating_default_treatment_id",
            "originatingDefaultTreatmentId",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_transfer_number",
            "originatingDefaultTransferNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_call_timeout",
            "originatingDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "originating_rule",
            "originatingRule",
            OCI.ServiceProviderCommunicationBarringHierarchicalOriginatingRule,
            True,
            False,
            False,
        ),
        E(
            "redirecting_default_action",
            "redirectingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "redirecting_default_call_timeout",
            "redirectingDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "redirecting_rule",
            "redirectingRule",
            OCI.ServiceProviderCommunicationBarringHierarchicalRedirectingRule,
            True,
            False,
            False,
        ),
        E(
            "call_me_now_default_action",
            "callMeNowDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_me_now_default_call_timeout",
            "callMeNowDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "call_me_now_rule",
            "callMeNowRule",
            OCI.ServiceProviderCommunicationBarringHierarchicalCallMeNowRule,
            True,
            False,
            False,
        ),
        E(
            "incoming_default_action",
            "incomingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "incoming_default_call_timeout",
            "incomingDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "incoming_rule",
            "incomingRule",
            OCI.CommunicationBarringIncomingRule,
            True,
            False,
            False,
        ),
        E(
            "is_default",
            "isDefault",
            bool,
            False,
            True,
            False,
        ),
        E(
            "apply_to_attended_call_transfers",
            "applyToAttendedCallTransfers",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Required* originatingDefaultAction
    originating_default_action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* originatingDefaultTreatmentId
    originating_default_treatment_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* originatingDefaultTransferNumber
    originating_default_transfer_number = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* originatingDefaultCallTimeout
    originating_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.ServiceProviderCommunicationBarringHierarchicalOriginatingRule: *Optional*
    #: originatingRule
    originating_rule = Field(
        type=OCI.ServiceProviderCommunicationBarringHierarchicalOriginatingRule,
        required=False,
    )
    #: str: *Required* redirectingDefaultAction
    redirecting_default_action = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* redirectingDefaultCallTimeout
    redirecting_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.ServiceProviderCommunicationBarringHierarchicalRedirectingRule: *Optional*
    #: redirectingRule
    redirecting_rule = Field(
        type=OCI.ServiceProviderCommunicationBarringHierarchicalRedirectingRule,
        required=False,
    )
    #: str: *Required* callMeNowDefaultAction
    call_me_now_default_action = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* callMeNowDefaultCallTimeout
    call_me_now_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.ServiceProviderCommunicationBarringHierarchicalCallMeNowRule: *Optional*
    #: callMeNowRule
    call_me_now_rule = Field(
        type=OCI.ServiceProviderCommunicationBarringHierarchicalCallMeNowRule,
        required=False,
    )
    #: str: *Required* incomingDefaultAction
    incoming_default_action = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* incomingDefaultCallTimeout
    incoming_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.CommunicationBarringIncomingRule: *Optional* incomingRule
    incoming_rule = Field(
        type=OCI.CommunicationBarringIncomingRule,
        required=False,
    )
    #: bool: *Required* isDefault
    is_default = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* applyToAttendedCallTransfers
    apply_to_attended_call_transfers = Field(
        type=bool,
        required=True,
    )


class ServiceProviderFeatureAccessCodeGetListResponse(OCIResponse):
    """
    Response to the ``ServiceProviderFeatureAccessCodeGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "feature_access_code",
            "featureAccessCode",
            OCI.FeatureAccessCodeEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.FeatureAccessCodeEntry: *Optional* featureAccessCode
    feature_access_code = Field(
        type=OCI.FeatureAccessCodeEntry,
        required=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()``
    """

    _ELEMENTS = (
        E(
            "feature_access_code",
            "featureAccessCode",
            OCI.FeatureAccessCodeEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.FeatureAccessCodeEntry: *Optional* featureAccessCode
    feature_access_code = Field(
        type=OCI.FeatureAccessCodeEntry,
        required=False,
    )


class ServiceProviderFeatureAccessCodeGetListResponse21(OCIResponse):
    """
    Response to the ``ServiceProviderFeatureAccessCodeGetListRequest20()``.

    In release 20 the "Call Recording" FAC name is changed to
    "Call Recording - Start".
    """

    _ELEMENTS = (
        E(
            "feature_access_code",
            "featureAccessCode",
            OCI.FeatureAccessCodeReadEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.FeatureAccessCodeReadEntry: *Optional* featureAccessCode
    feature_access_code = Field(
        type=OCI.FeatureAccessCodeReadEntry,
        required=False,
    )


class ServiceProviderGetResponse13mp2(OCIResponse):
    """
    Response to the ``ServiceProviderGetRequest13mp2()``.
    The response contains the service provider or enterprise's profile information.

    Replaced By ``ServiceProviderGetResponse17sp1()``
    """

    _ELEMENTS = (
        E(
            "is_enterprise",
            "isEnterprise",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_custom_routing_profile",
            "useCustomRoutingProfile",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_domain",
            "defaultDomain",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_name",
            "serviceProviderName",
            str,
            False,
            False,
            False,
        ),
        E(
            "support_email",
            "supportEmail",
            str,
            False,
            False,
            False,
        ),
        E(
            "contact",
            "contact",
            OCI.Contact,
            True,
            False,
            False,
        ),
        E(
            "address",
            "address",
            OCI.StreetAddress,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* isEnterprise
    is_enterprise = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useCustomRoutingProfile
    use_custom_routing_profile = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* defaultDomain
    default_domain = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* serviceProviderName
    service_provider_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* supportEmail
    support_email = Field(
        type=str,
        required=False,
    )
    #: OCI.Contact: *Optional* contact
    contact = Field(
        type=OCI.Contact,
        required=False,
    )
    #: OCI.StreetAddress: *Optional* address
    address = Field(
        type=OCI.StreetAddress,
        required=False,
    )


class ServiceProviderGetResponse17sp1(OCIResponse):
    """
    Response to the ``ServiceProviderGetRequest17sp1()``.
    The response contains the service provider or enterprise's profile information.
    """

    _ELEMENTS = (
        E(
            "is_enterprise",
            "isEnterprise",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_custom_routing_profile",
            "useCustomRoutingProfile",
            bool,
            False,
            True,
            False,
        ),
        E(
            "default_domain",
            "defaultDomain",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_provider_name",
            "serviceProviderName",
            str,
            False,
            False,
            False,
        ),
        E(
            "support_email",
            "supportEmail",
            str,
            False,
            False,
            False,
        ),
        E(
            "contact",
            "contact",
            OCI.Contact,
            True,
            False,
            False,
        ),
        E(
            "address",
            "address",
            OCI.StreetAddress,
            True,
            False,
            False,
        ),
        E(
            "use_service_provider_languages",
            "useServiceProviderLanguages",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isEnterprise
    is_enterprise = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useCustomRoutingProfile
    use_custom_routing_profile = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* defaultDomain
    default_domain = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* serviceProviderName
    service_provider_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* supportEmail
    support_email = Field(
        type=str,
        required=False,
    )
    #: OCI.Contact: *Optional* contact
    contact = Field(
        type=OCI.Contact,
        required=False,
    )
    #: OCI.StreetAddress: *Optional* address
    address = Field(
        type=OCI.StreetAddress,
        required=False,
    )
    #: bool: *Required* useServiceProviderLanguages
    use_service_provider_languages = Field(
        type=bool,
        required=True,
    )


class ServiceProviderMeetMeConferencingGetResponse(OCIResponse):
    """
    Response to ``ServiceProviderMeetMeConferencingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "allocated_ports",
            "allocatedPorts",
            OCI.MeetMeConferencingConferencePorts,
            True,
            True,
            False,
        ),
    )
    #: OCI.MeetMeConferencingConferencePorts: *Required* allocatedPorts
    allocated_ports = Field(
        type=OCI.MeetMeConferencingConferencePorts,
        required=True,
    )


class ServiceProviderScheduleGetEventResponse(OCIResponse):
    """
    Response to ``ServiceProviderScheduleGetEventRequest()``.
    The response contains the event of the service provider schedule.
    """

    _ELEMENTS = (
        E(
            "start_date",
            "startDate",
            str,
            False,
            True,
            False,
        ),
        E(
            "all_day_event",
            "allDayEvent",
            bool,
            False,
            True,
            False,
        ),
        E(
            "start_time",
            "startTime",
            OCI.HourMinute,
            True,
            True,
            False,
        ),
        E(
            "end_time",
            "endTime",
            OCI.HourMinute,
            True,
            True,
            False,
        ),
        E(
            "end_date",
            "endDate",
            str,
            False,
            True,
            False,
        ),
        E(
            "recurrence",
            "recurrence",
            OCI.Recurrence,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* startDate
    start_date = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allDayEvent
    all_day_event = Field(
        type=bool,
        required=True,
    )
    #: OCI.HourMinute: *Required* startTime
    start_time = Field(
        type=OCI.HourMinute,
        required=True,
    )
    #: OCI.HourMinute: *Required* endTime
    end_time = Field(
        type=OCI.HourMinute,
        required=True,
    )
    #: str: *Required* endDate
    end_date = Field(
        type=str,
        required=True,
    )
    #: OCI.Recurrence: *Optional* recurrence
    recurrence = Field(
        type=OCI.Recurrence,
        required=False,
    )


class ServiceProviderScheduleGetListResponse(OCIResponse):
    """
    Response to ``ServiceProviderScheduleGetListRequest()``.
    The response contains a list of service provider schedules.
    """

    _ELEMENTS = (
        E(
            "schedule_key",
            "scheduleKey",
            OCI.ScheduleKey,
            True,
            False,
            False,
        ),
    )
    #: OCI.ScheduleKey: *Optional* scheduleKey
    schedule_key = Field(
        type=OCI.ScheduleKey,
        required=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".
    """

    _ELEMENTS = (
        E(
            "service_pack_name",
            "servicePackName",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_pack_description",
            "servicePackDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_available_for_use",
            "isAvailableForUse",
            bool,
            False,
            True,
            False,
        ),
        E(
            "service_pack_quantity",
            "servicePackQuantity",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "assigned_quantity",
            "assignedQuantity",
            OCI.UnboundedNonNegativeInt,
            True,
            True,
            False,
        ),
        E(
            "allowed_quantity",
            "allowedQuantity",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "user_service_table",
            "userServiceTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Required* servicePackName
    service_pack_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* servicePackDescription
    service_pack_description = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isAvailableForUse
    is_available_for_use = Field(
        type=bool,
        required=True,
    )
    #: OCI.UnboundedPositiveInt: *Required* servicePackQuantity
    service_pack_quantity = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: OCI.UnboundedNonNegativeInt: *Required* assignedQuantity
    assigned_quantity = Field(
        type=OCI.UnboundedNonNegativeInt,
        required=True,
    )
    #: OCI.UnboundedPositiveInt: *Required* allowedQuantity
    allowed_quantity = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: list: *Required* userServiceTable  *Tabular*
    user_service_table = Field(
        type=list,
        required=True,
    )


class ServiceProviderTrunkGroupGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderTrunkGroupGetRequest()``.
    The response contains the maximum permissible active trunk group calls for the
    service provider.
    """

    _ELEMENTS = (
        E(
            "max_active_calls",
            "maxActiveCalls",
            OCI.UnboundedNonNegativeInt,
            True,
            True,
            False,
        ),
    )
    #: OCI.UnboundedNonNegativeInt: *Required* maxActiveCalls
    max_active_calls = Field(
        type=OCI.UnboundedNonNegativeInt,
        required=True,
    )


class ServiceProviderTrunkGroupGetResponse14sp1(OCIResponse):
    """
    Response to the ``ServiceProviderTrunkGroupGetRequest14sp1()``.
    The response contains the maximum and bursting maximum permissible active trunk
    group calls for the service provider.
    """

    _ELEMENTS = (
        E(
            "max_active_calls",
            "maxActiveCalls",
            OCI.UnboundedNonNegativeInt,
            True,
            True,
            False,
        ),
        E(
            "bursting_max_active_calls",
            "burstingMaxActiveCalls",
            OCI.UnboundedNonNegativeInt,
            True,
            True,
            False,
        ),
    )
    #: OCI.UnboundedNonNegativeInt: *Required* maxActiveCalls
    max_active_calls = Field(
        type=OCI.UnboundedNonNegativeInt,
        required=True,
    )
    #: OCI.UnboundedNonNegativeInt: *Required* burstingMaxActiveCalls
    bursting_max_active_calls = Field(
        type=OCI.UnboundedNonNegativeInt,
        required=True,
    )


class SystemAccessDeviceGetResponse(OCIResponse):
    """
    Response to ``SystemAccessDeviceGetRequest()``.
    Replaced By ``SystemAccessDeviceGetResponse14sp3()``
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            True,
            False,
        ),
        E(
            "protocol",
            "protocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "net_address",
            "netAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "port",
            "port",
            int,
            False,
            False,
            False,
        ),
        E(
            "outbound_proxy_server_net_address",
            "outboundProxyServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "stun_server_net_address",
            "stunServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mac_address",
            "macAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "serial_number",
            "serialNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "number_of_assigned_ports",
            "numberOfAssignedPorts",
            int,
            False,
            True,
            False,
        ),
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
        E(
            "physical_location",
            "physicalLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "transport_protocol",
            "transportProtocol",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* deviceType
    device_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* protocol
    protocol = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* netAddress
    net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* port
    port = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* outboundProxyServerNetAddress
    outbound_proxy_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* stunServerNetAddress
    stun_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* macAddress
    mac_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serialNumber
    serial_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: int: *Required* numberOfAssignedPorts
    number_of_assigned_ports = Field(
        type=int,
        required=True,
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* physicalLocation
    physical_location = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* transportProtocol
    transport_protocol = Field(
        type=str,
        required=False,
    )


class SystemAccessDeviceGetResponse14sp3(OCIResponse):
    """
    Response to ``SystemAccessDeviceGetRequest14sp3()``
    Replaced By ``SystemAccessDeviceGetResponse14sp6()``
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            True,
            False,
        ),
        E(
            "protocol",
            "protocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "net_address",
            "netAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "port",
            "port",
            int,
            False,
            False,
            False,
        ),
        E(
            "outbound_proxy_server_net_address",
            "outboundProxyServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "stun_server_net_address",
            "stunServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mac_address",
            "macAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "serial_number",
            "serialNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "number_of_assigned_ports",
            "numberOfAssignedPorts",
            int,
            False,
            True,
            False,
        ),
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
        E(
            "physical_location",
            "physicalLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "transport_protocol",
            "transportProtocol",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_url",
            "mobilityManagerProvisioningURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey",
            int,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* deviceType
    device_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* protocol
    protocol = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* netAddress
    net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* port
    port = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* outboundProxyServerNetAddress
    outbound_proxy_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* stunServerNetAddress
    stun_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* macAddress
    mac_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serialNumber
    serial_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: int: *Required* numberOfAssignedPorts
    number_of_assigned_ports = Field(
        type=int,
        required=True,
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* physicalLocation
    physical_location = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* transportProtocol
    transport_protocol = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningURL
    mobility_manager_provisioning_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningUserName
    mobility_manager_provisioning_user_name = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultOriginatingServiceKey
    mobility_manager_default_originating_service_key = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultTerminatingServiceKey
    mobility_manager_default_terminating_service_key = Field(
        type=int,
        required=False,
    )


class SystemAccessDeviceGetResponse14sp6(OCIResponse):
    """
    Response to: ``SystemAccessDeviceGetRequest14sp6()``
    Replaced By ``SystemAccessDeviceGetRequest16()``
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            True,
            False,
        ),
        E(
            "protocol",
            "protocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "net_address",
            "netAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "port",
            "port",
            int,
            False,
            False,
            False,
        ),
        E(
            "outbound_proxy_server_net_address",
            "outboundProxyServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "stun_server_net_address",
            "stunServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mac_address",
            "macAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "serial_number",
            "serialNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "number_of_assigned_ports",
            "numberOfAssignedPorts",
            int,
            False,
            True,
            False,
        ),
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
        E(
            "physical_location",
            "physicalLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "transport_protocol",
            "transportProtocol",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_url",
            "mobilityManagerProvisioningURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "use_custom_user_name_password",
            "useCustomUserNamePassword",
            bool,
            False,
            False,
            False,
        ),
        E(
            "user_name",
            "userName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* deviceType
    device_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* protocol
    protocol = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* netAddress
    net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* port
    port = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* outboundProxyServerNetAddress
    outbound_proxy_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* stunServerNetAddress
    stun_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* macAddress
    mac_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serialNumber
    serial_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: int: *Required* numberOfAssignedPorts
    number_of_assigned_ports = Field(
        type=int,
        required=True,
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* physicalLocation
    physical_location = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* transportProtocol
    transport_protocol = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningURL
    mobility_manager_provisioning_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningUserName
    mobility_manager_provisioning_user_name = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultOriginatingServiceKey
    mobility_manager_default_originating_service_key = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultTerminatingServiceKey
    mobility_manager_default_terminating_service_key = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* useCustomUserNamePassword
    use_custom_user_name_password = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* userName
    user_name = Field(
        type=str,
        required=False,
    )


class SystemAccessDeviceGetResponse16(OCIResponse):
    """
    Response to ``SystemAccessDeviceGetRequest16()``
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            True,
            False,
        ),
        E(
            "protocol",
            "protocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "net_address",
            "netAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "port",
            "port",
            int,
            False,
            False,
            False,
        ),
        E(
            "outbound_proxy_server_net_address",
            "outboundProxyServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "stun_server_net_address",
            "stunServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mac_address",
            "macAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "serial_number",
            "serialNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "number_of_assigned_ports",
            "numberOfAssignedPorts",
            int,
            False,
            True,
            False,
        ),
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
        E(
            "physical_location",
            "physicalLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "transport_protocol",
            "transportProtocol",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_url",
            "mobilityManagerProvisioningURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "use_custom_user_name_password",
            "useCustomUserNamePassword",
            bool,
            False,
            False,
            False,
        ),
        E(
            "user_name",
            "userName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* deviceType
    device_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* protocol
    protocol = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* netAddress
    net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* port
    port = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* outboundProxyServerNetAddress
    outbound_proxy_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* stunServerNetAddress
    stun_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* macAddress
    mac_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serialNumber
    serial_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: int: *Required* numberOfAssignedPorts
    number_of_assigned_ports = Field(
        type=int,
        required=True,
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* physicalLocation
    physical_location = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* transportProtocol
    transport_protocol = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningURL
    mobility_manager_provisioning_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningUserName
    mobility_manager_provisioning_user_name = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultOriginatingServiceKey
    mobility_manager_default_originating_service_key = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultTerminatingServiceKey
    mobility_manager_default_terminating_service_key = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* useCustomUserNamePassword
    use_custom_user_name_password = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* userName
    user_name = Field(
        type=str,
        required=False,
    )


class SystemAccessDeviceGetResponse18sp1(OCIResponse):
    """
    Response to ``SystemAccessDeviceGetRequest18sp1()``


    The following elements are only used in AS data mode:
    version
    """

    _ELEMENTS = (
        E(
            "device_type",
            "deviceType",
            str,
            False,
            True,
            False,
        ),
        E(
            "protocol",
            "protocol",
            str,
            False,
            True,
            False,
        ),
        E(
            "net_address",
            "netAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "port",
            "port",
            int,
            False,
            False,
            False,
        ),
        E(
            "outbound_proxy_server_net_address",
            "outboundProxyServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "stun_server_net_address",
            "stunServerNetAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "mac_address",
            "macAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "serial_number",
            "serialNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "number_of_assigned_ports",
            "numberOfAssignedPorts",
            int,
            False,
            True,
            False,
        ),
        E(
            "status",
            "status",
            str,
            False,
            True,
            False,
        ),
        E(
            "physical_location",
            "physicalLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "transport_protocol",
            "transportProtocol",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_url",
            "mobilityManagerProvisioningURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_provisioning_user_name",
            "mobilityManagerProvisioningUserName",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_originating_service_key",
            "mobilityManagerDefaultOriginatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "mobility_manager_default_terminating_service_key",
            "mobilityManagerDefaultTerminatingServiceKey",
            int,
            False,
            False,
            False,
        ),
        E(
            "use_custom_user_name_password",
            "useCustomUserNamePassword",
            bool,
            False,
            False,
            False,
        ),
        E(
            "user_name",
            "userName",
            str,
            False,
            False,
            False,
        ),
        E(
            "version",
            "version",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* deviceType
    device_type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* protocol
    protocol = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* netAddress
    net_address = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* port
    port = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* outboundProxyServerNetAddress
    outbound_proxy_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* stunServerNetAddress
    stun_server_net_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* macAddress
    mac_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* serialNumber
    serial_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: int: *Required* numberOfAssignedPorts
    number_of_assigned_ports = Field(
        type=int,
        required=True,
    )
    #: str: *Required* status
    status = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* physicalLocation
    physical_location = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* transportProtocol
    transport_protocol = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningURL
    mobility_manager_provisioning_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilityManagerProvisioningUserName
    mobility_manager_provisioning_user_name = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultOriginatingServiceKey
    mobility_manager_default_originating_service_key = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* mobilityManagerDefaultTerminatingServiceKey
    mobility_manager_default_terminating_service_key = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* useCustomUserNamePassword
    use_custom_user_name_password = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* userName
    user_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* version
    version = Field(
        type=str,
        required=False,
    )


class SystemCallCenterEnhancedReportingDataTemplateGetListResponse(OCIResponse):
    """
    Response to ``SystemCallCenterEnhancedReportingDataTemplateGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "info",
            "info",
            OCI.CallCenterReportDataTemplateInfo,
            True,
            False,
            False,
        ),
    )
    #: OCI.CallCenterReportDataTemplateInfo: *Optional* info
    info = Field(
        type=OCI.CallCenterReportDataTemplateInfo,
        required=False,
    )


class SystemCollaborateGetResponse(OCIResponse):
    """
    Response to ``SystemCollaborateGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "collaborate_room_id_length",
            "collaborateRoomIdLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "instant_room_idle_timeout_seconds",
            "instantRoomIdleTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "collaborate_room_maximum_duration_minutes",
            "collaborateRoomMaximumDurationMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "support_outdial",
            "supportOutdial",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_collaborate_room_participants",
            "maxCollaborateRoomParticipants",
            int,
            False,
            True,
            False,
        ),
        E(
            "collaborate_active_talker_refresh_interval_seconds",
            "collaborateActiveTalkerRefreshIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "terminate_collaborate_after_grace_period",
            "terminateCollaborateAfterGracePeriod",
            bool,
            False,
            True,
            False,
        ),
        E(
            "collaborate_grace_period",
            "collaborateGracePeriod",
            OCI.CollaborateGracePeriodDuration,
            True,
            True,
            False,
        ),
        E(
            "enable_active_collaborate_notification",
            "enableActiveCollaborateNotification",
            bool,
            False,
            True,
            False,
        ),
        E(
            "collaborate_from_address",
            "collaborateFromAddress",
            str,
            False,
            False,
            False,
        ),
    )
    #: int: *Required* collaborateRoomIdLength
    collaborate_room_id_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* instantRoomIdleTimeoutSeconds
    instant_room_idle_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: int: *Required* collaborateRoomMaximumDurationMinutes
    collaborate_room_maximum_duration_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* supportOutdial
    support_outdial = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCollaborateRoomParticipants
    max_collaborate_room_participants = Field(
        type=int,
        required=True,
    )
    #: int: *Required* collaborateActiveTalkerRefreshIntervalSeconds
    collaborate_active_talker_refresh_interval_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* terminateCollaborateAfterGracePeriod
    terminate_collaborate_after_grace_period = Field(
        type=bool,
        required=True,
    )
    #: OCI.CollaborateGracePeriodDuration: *Required* collaborateGracePeriod
    collaborate_grace_period = Field(
        type=OCI.CollaborateGracePeriodDuration,
        required=True,
    )
    #: bool: *Required* enableActiveCollaborateNotification
    enable_active_collaborate_notification = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* collaborateFromAddress
    collaborate_from_address = Field(
        type=str,
        required=False,
    )


class SystemCommunicationBarringProfileGetResponse(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringProfileGetRequest()``.
    The response contains the Communication Barring Profile information.
    Replaced By ``SystemCommunicationBarringProfileGetResponse16()``
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_action",
            "originatingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "originating_default_treatment_id",
            "originatingDefaultTreatmentId",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_transfer_number",
            "originatingDefaultTransferNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_rule",
            "originatingRule",
            OCI.CommunicationBarringOriginatingRule15sp2,
            True,
            False,
            False,
        ),
        E(
            "redirecting_default_action",
            "redirectingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "redirecting_rule",
            "redirectingRule",
            OCI.CommunicationBarringRedirectingRule15sp2,
            True,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Required* originatingDefaultAction
    originating_default_action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* originatingDefaultTreatmentId
    originating_default_treatment_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* originatingDefaultTransferNumber
    originating_default_transfer_number = Field(
        type=str,
        required=False,
    )
    #: OCI.CommunicationBarringOriginatingRule15sp2: *Optional* originatingRule
    originating_rule = Field(
        type=OCI.CommunicationBarringOriginatingRule15sp2,
        required=False,
    )
    #: str: *Required* redirectingDefaultAction
    redirecting_default_action = Field(
        type=str,
        required=True,
    )
    #: OCI.CommunicationBarringRedirectingRule15sp2: *Optional* redirectingRule
    redirecting_rule = Field(
        type=OCI.CommunicationBarringRedirectingRule15sp2,
        required=False,
    )


class SystemCommunicationBarringProfileGetResponse16(OCIResponse):
    """
    Response to the ``SystemCommunicationBarringProfileGetRequest16()``.
    The response contains the Communication Barring Profile information.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_action",
            "originatingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "originating_default_treatment_id",
            "originatingDefaultTreatmentId",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_transfer_number",
            "originatingDefaultTransferNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_call_timeout",
            "originatingDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "originating_rule",
            "originatingRule",
            OCI.CommunicationBarringOriginatingRule,
            True,
            False,
            False,
        ),
        E(
            "redirecting_default_action",
            "redirectingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "redirecting_default_call_timeout",
            "redirectingDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "redirecting_rule",
            "redirectingRule",
            OCI.CommunicationBarringRedirectingRule,
            True,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Required* originatingDefaultAction
    originating_default_action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* originatingDefaultTreatmentId
    originating_default_treatment_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* originatingDefaultTransferNumber
    originating_default_transfer_number = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* originatingDefaultCallTimeout
    originating_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.CommunicationBarringOriginatingRule: *Optional* originatingRule
    originating_rule = Field(
        type=OCI.CommunicationBarringOriginatingRule,
        required=False,
    )
    #: str: *Required* redirectingDefaultAction
    redirecting_default_action = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* redirectingDefaultCallTimeout
    redirecting_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.CommunicationBarringRedirectingRule: *Optional* redirectingRule
    redirecting_rule = Field(
        type=OCI.CommunicationBarringRedirectingRule,
        required=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
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_action",
            "originatingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "originating_default_treatment_id",
            "originatingDefaultTreatmentId",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_transfer_number",
            "originatingDefaultTransferNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_call_timeout",
            "originatingDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "originating_rule",
            "originatingRule",
            OCI.CommunicationBarringOriginatingRule,
            True,
            False,
            False,
        ),
        E(
            "redirecting_default_action",
            "redirectingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "redirecting_default_call_timeout",
            "redirectingDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "redirecting_rule",
            "redirectingRule",
            OCI.CommunicationBarringRedirectingRule,
            True,
            False,
            False,
        ),
        E(
            "incoming_default_action",
            "incomingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "incoming_default_call_timeout",
            "incomingDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "incoming_rule",
            "incomingRule",
            OCI.CommunicationBarringIncomingRule,
            True,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Required* originatingDefaultAction
    originating_default_action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* originatingDefaultTreatmentId
    originating_default_treatment_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* originatingDefaultTransferNumber
    originating_default_transfer_number = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* originatingDefaultCallTimeout
    originating_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.CommunicationBarringOriginatingRule: *Optional* originatingRule
    originating_rule = Field(
        type=OCI.CommunicationBarringOriginatingRule,
        required=False,
    )
    #: str: *Required* redirectingDefaultAction
    redirecting_default_action = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* redirectingDefaultCallTimeout
    redirecting_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.CommunicationBarringRedirectingRule: *Optional* redirectingRule
    redirecting_rule = Field(
        type=OCI.CommunicationBarringRedirectingRule,
        required=False,
    )
    #: str: *Required* incomingDefaultAction
    incoming_default_action = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* incomingDefaultCallTimeout
    incoming_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.CommunicationBarringIncomingRule: *Optional* incomingRule
    incoming_rule = Field(
        type=OCI.CommunicationBarringIncomingRule,
        required=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
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_action",
            "originatingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "originating_default_treatment_id",
            "originatingDefaultTreatmentId",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_transfer_number",
            "originatingDefaultTransferNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_call_timeout",
            "originatingDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "originating_rule",
            "originatingRule",
            OCI.CommunicationBarringOriginatingRule,
            True,
            False,
            False,
        ),
        E(
            "redirecting_default_action",
            "redirectingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "redirecting_default_call_timeout",
            "redirectingDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "redirecting_rule",
            "redirectingRule",
            OCI.CommunicationBarringRedirectingRule,
            True,
            False,
            False,
        ),
        E(
            "incoming_default_action",
            "incomingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "incoming_default_call_timeout",
            "incomingDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "incoming_rule",
            "incomingRule",
            OCI.CommunicationBarringIncomingRule,
            True,
            False,
            False,
        ),
        E(
            "call_me_now_default_action",
            "callMeNowDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_me_now_default_call_timeout",
            "callMeNowDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "call_me_now_rule",
            "callMeNowRule",
            OCI.CommunicationBarringCallMeNowRule,
            True,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Required* originatingDefaultAction
    originating_default_action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* originatingDefaultTreatmentId
    originating_default_treatment_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* originatingDefaultTransferNumber
    originating_default_transfer_number = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* originatingDefaultCallTimeout
    originating_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.CommunicationBarringOriginatingRule: *Optional* originatingRule
    originating_rule = Field(
        type=OCI.CommunicationBarringOriginatingRule,
        required=False,
    )
    #: str: *Required* redirectingDefaultAction
    redirecting_default_action = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* redirectingDefaultCallTimeout
    redirecting_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.CommunicationBarringRedirectingRule: *Optional* redirectingRule
    redirecting_rule = Field(
        type=OCI.CommunicationBarringRedirectingRule,
        required=False,
    )
    #: str: *Required* incomingDefaultAction
    incoming_default_action = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* incomingDefaultCallTimeout
    incoming_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.CommunicationBarringIncomingRule: *Optional* incomingRule
    incoming_rule = Field(
        type=OCI.CommunicationBarringIncomingRule,
        required=False,
    )
    #: str: *Required* callMeNowDefaultAction
    call_me_now_default_action = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* callMeNowDefaultCallTimeout
    call_me_now_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.CommunicationBarringCallMeNowRule: *Optional* callMeNowRule
    call_me_now_rule = Field(
        type=OCI.CommunicationBarringCallMeNowRule,
        required=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
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_action",
            "originatingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "originating_default_treatment_id",
            "originatingDefaultTreatmentId",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_transfer_number",
            "originatingDefaultTransferNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "originating_default_call_timeout",
            "originatingDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "originating_rule",
            "originatingRule",
            OCI.CommunicationBarringOriginatingRule,
            True,
            False,
            False,
        ),
        E(
            "redirecting_default_action",
            "redirectingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "redirecting_default_call_timeout",
            "redirectingDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "redirecting_rule",
            "redirectingRule",
            OCI.CommunicationBarringRedirectingRule,
            True,
            False,
            False,
        ),
        E(
            "incoming_default_action",
            "incomingDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "incoming_default_call_timeout",
            "incomingDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "incoming_rule",
            "incomingRule",
            OCI.CommunicationBarringIncomingRule,
            True,
            False,
            False,
        ),
        E(
            "call_me_now_default_action",
            "callMeNowDefaultAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "call_me_now_default_call_timeout",
            "callMeNowDefaultCallTimeout",
            int,
            False,
            False,
            False,
        ),
        E(
            "call_me_now_rule",
            "callMeNowRule",
            OCI.CommunicationBarringCallMeNowRule,
            True,
            False,
            False,
        ),
        E(
            "apply_to_attended_call_transfers",
            "applyToAttendedCallTransfers",
            bool,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: str: *Required* originatingDefaultAction
    originating_default_action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* originatingDefaultTreatmentId
    originating_default_treatment_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* originatingDefaultTransferNumber
    originating_default_transfer_number = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* originatingDefaultCallTimeout
    originating_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.CommunicationBarringOriginatingRule: *Optional* originatingRule
    originating_rule = Field(
        type=OCI.CommunicationBarringOriginatingRule,
        required=False,
    )
    #: str: *Required* redirectingDefaultAction
    redirecting_default_action = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* redirectingDefaultCallTimeout
    redirecting_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.CommunicationBarringRedirectingRule: *Optional* redirectingRule
    redirecting_rule = Field(
        type=OCI.CommunicationBarringRedirectingRule,
        required=False,
    )
    #: str: *Required* incomingDefaultAction
    incoming_default_action = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* incomingDefaultCallTimeout
    incoming_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.CommunicationBarringIncomingRule: *Optional* incomingRule
    incoming_rule = Field(
        type=OCI.CommunicationBarringIncomingRule,
        required=False,
    )
    #: str: *Required* callMeNowDefaultAction
    call_me_now_default_action = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* callMeNowDefaultCallTimeout
    call_me_now_default_call_timeout = Field(
        type=int,
        required=False,
    )
    #: OCI.CommunicationBarringCallMeNowRule: *Optional* callMeNowRule
    call_me_now_rule = Field(
        type=OCI.CommunicationBarringCallMeNowRule,
        required=False,
    )
    #: bool: *Required* applyToAttendedCallTransfers
    apply_to_attended_call_transfers = Field(
        type=bool,
        required=True,
    )


class SystemDeviceTypeGetResponse(OCIResponse):
    """
    Response to ``SystemDeviceTypeGetRequest()``.
    Replaced By ``SystemDeviceTypeGetResponse14sp3()``
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptions,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_ip_address_optional",
            "isIpAddressOptional",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_domain",
            "useDomain",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptions: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptions,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isIpAddressOptional
    is_ip_address_optional = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useDomain
    use_domain = Field(
        type=bool,
        required=True,
    )


class SystemDeviceTypeGetResponse14sp3(OCIResponse):
    """
    Response to ``SystemDeviceTypeGetRequest14sp3()``.
    Replaced By ``SystemDeviceTypeGetResponse14sp6()``
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptions,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_ip_address_optional",
            "isIpAddressOptional",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_domain",
            "useDomain",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_mobility_manager_device",
            "isMobilityManagerDevice",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptions: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptions,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isIpAddressOptional
    is_ip_address_optional = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useDomain
    use_domain = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMobilityManagerDevice
    is_mobility_manager_device = Field(
        type=bool,
        required=True,
    )


class SystemFeatureAccessCodeGetListResponse(OCIResponse):
    """
    Response to the ``SystemFeatureAccessCodeGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "feature_access_code",
            "featureAccessCode",
            OCI.FeatureAccessCodeEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.FeatureAccessCodeEntry: *Optional* featureAccessCode
    feature_access_code = Field(
        type=OCI.FeatureAccessCodeEntry,
        required=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()``
    """

    _ELEMENTS = (
        E(
            "feature_access_code",
            "featureAccessCode",
            OCI.FeatureAccessCodeEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.FeatureAccessCodeEntry: *Optional* featureAccessCode
    feature_access_code = Field(
        type=OCI.FeatureAccessCodeEntry,
        required=False,
    )


class SystemFeatureAccessCodeGetListResponse21(OCIResponse):
    """
    Response to the ``SystemFeatureAccessCodeGetListRequest21()``.

    In release 20 the "Call Recording" FAC name is changed to
    "Call Recording - Start".
    """

    _ELEMENTS = (
        E(
            "feature_access_code",
            "featureAccessCode",
            OCI.FeatureAccessCodeReadEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.FeatureAccessCodeReadEntry: *Optional* featureAccessCode
    feature_access_code = Field(
        type=OCI.FeatureAccessCodeReadEntry,
        required=False,
    )


class SystemFileRepositoryDeviceGetResponse(OCIResponse):
    """
    Response to ``SystemFileRepositoryDeviceGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "root_directory",
            "rootDirectory",
            str,
            False,
            False,
            False,
        ),
        E(
            "port",
            "port",
            int,
            False,
            False,
            False,
        ),
        E(
            "protocol_web_dav",
            "protocolWebDAV",
            OCI.FileRepositoryProtocolWebDAV,
            True,
            True,
            False,
        ),
        E(
            "protocol_ftp",
            "protocolFTP",
            OCI.FileRepositoryProtocolFTP,
            True,
            True,
            False,
        ),
    )
    #: str: *Optional* rootDirectory
    root_directory = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* port
    port = Field(
        type=int,
        required=False,
    )
    #: OCI.FileRepositoryProtocolWebDAV: *Required* protocolWebDAV
    protocol_web_dav = Field(
        type=OCI.FileRepositoryProtocolWebDAV,
        required=True,
    )
    #: OCI.FileRepositoryProtocolFTP: *Required* protocolFTP
    protocol_ftp = Field(
        type=OCI.FileRepositoryProtocolFTP,
        required=True,
    )


class SystemFileRepositoryDeviceGetResponse16(OCIResponse):
    """
    Response to ``SystemFileRepositoryDeviceGetRequest16()``.
    """

    _ELEMENTS = (
        E(
            "root_directory",
            "rootDirectory",
            str,
            False,
            False,
            False,
        ),
        E(
            "port",
            "port",
            int,
            False,
            False,
            False,
        ),
        E(
            "protocol_web_dav",
            "protocolWebDAV",
            OCI.FileRepositoryProtocolWebDAV,
            True,
            True,
            False,
        ),
        E(
            "protocol_ftp",
            "protocolFTP",
            OCI.FileRepositoryProtocolFTP16,
            True,
            True,
            False,
        ),
    )
    #: str: *Optional* rootDirectory
    root_directory = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* port
    port = Field(
        type=int,
        required=False,
    )
    #: OCI.FileRepositoryProtocolWebDAV: *Required* protocolWebDAV
    protocol_web_dav = Field(
        type=OCI.FileRepositoryProtocolWebDAV,
        required=True,
    )
    #: OCI.FileRepositoryProtocolFTP16: *Required* protocolFTP
    protocol_ftp = Field(
        type=OCI.FileRepositoryProtocolFTP16,
        required=True,
    )


class SystemFileRepositoryDeviceGetResponse20(OCIResponse):
    """
    Response to ``SystemFileRepositoryDeviceGetRequest20()``.
    """

    _ELEMENTS = (
        E(
            "root_directory",
            "rootDirectory",
            str,
            False,
            False,
            False,
        ),
        E(
            "port",
            "port",
            int,
            False,
            False,
            False,
        ),
        E(
            "protocol_web_dav",
            "protocolWebDAV",
            OCI.FileRepositoryProtocolWebDAV20,
            True,
            True,
            False,
        ),
        E(
            "protocol_ftp",
            "protocolFTP",
            OCI.FileRepositoryProtocolFTP16,
            True,
            True,
            False,
        ),
    )
    #: str: *Optional* rootDirectory
    root_directory = Field(
        type=str,
        required=False,
    )
    #: int: *Optional* port
    port = Field(
        type=int,
        required=False,
    )
    #: OCI.FileRepositoryProtocolWebDAV20: *Required* protocolWebDAV
    protocol_web_dav = Field(
        type=OCI.FileRepositoryProtocolWebDAV20,
        required=True,
    )
    #: OCI.FileRepositoryProtocolFTP16: *Required* protocolFTP
    protocol_ftp = Field(
        type=OCI.FileRepositoryProtocolFTP16,
        required=True,
    )


class SystemHolidayScheduleGetResponse(OCIResponse):
    """
    Response to the ``SystemHolidayScheduleGetRequest()``.
    The response contains the system holiday schedule information.
    """

    _ELEMENTS = (
        E(
            "holiday01",
            "holiday01",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday02",
            "holiday02",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday03",
            "holiday03",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday04",
            "holiday04",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday05",
            "holiday05",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday06",
            "holiday06",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday07",
            "holiday07",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday08",
            "holiday08",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday09",
            "holiday09",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday10",
            "holiday10",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday11",
            "holiday11",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday12",
            "holiday12",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday13",
            "holiday13",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday14",
            "holiday14",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday15",
            "holiday15",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday16",
            "holiday16",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday17",
            "holiday17",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday18",
            "holiday18",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday19",
            "holiday19",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday20",
            "holiday20",
            OCI.Holiday,
            True,
            False,
            False,
        ),
    )
    #: OCI.Holiday: *Optional* holiday01
    holiday01 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday02
    holiday02 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday03
    holiday03 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday04
    holiday04 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday05
    holiday05 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday06
    holiday06 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday07
    holiday07 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday08
    holiday08 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday09
    holiday09 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday10
    holiday10 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday11
    holiday11 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday12
    holiday12 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday13
    holiday13 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday14
    holiday14 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday15
    holiday15 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday16
    holiday16 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday17
    holiday17 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday18
    holiday18 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday19
    holiday19 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday20
    holiday20 = Field(
        type=OCI.Holiday,
        required=False,
    )


class SystemInterceptUserGetDnListResponse(OCIResponse):
    """
    Response to ``SystemInterceptUserGetDnListRequest()``.
    The Intercept User DN List.
    """

    _ELEMENTS = (
        E(
            "intercept_user_list",
            "interceptUserList",
            OCI.InterceptDNListEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.InterceptDNListEntry: *Optional* interceptUserList
    intercept_user_list = Field(
        type=OCI.InterceptDNListEntry,
        required=False,
    )


class SystemMGCPDeviceTypeGetResponse(OCIResponse):
    """
    Response to ``SystemMGCPDeviceTypeGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )


class SystemMeetMeConferencingGetResponse18(OCIResponse):
    """
    Response to ``SystemMeetMeConferencingGetRequest18()``.
    """

    _ELEMENTS = (
        E(
            "conference_id_length",
            "conferenceIdLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "moderator_pin_length",
            "moderatorPinLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_conference_end_date_restriction",
            "enableConferenceEndDateRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_end_date_restriction_months",
            "conferenceEndDateRestrictionMonths",
            int,
            False,
            True,
            False,
        ),
        E(
            "delete_expired_conferences_after_hold_period",
            "deleteExpiredConferencesAfterHoldPeriod",
            bool,
            False,
            True,
            False,
        ),
        E(
            "expired_conference_hold_period_days",
            "expiredConferenceHoldPeriodDays",
            int,
            False,
            True,
            False,
        ),
        E(
            "recording_web_app_url",
            "recordingWebAppURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "recording_file_format",
            "recordingFileFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "terminate_after_grace_period",
            "terminateAfterGracePeriod",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_grace_period_minutes",
            "conferenceGracePeriodMinutes",
            OCI.MeetMeConferencingConferenceDuration,
            True,
            True,
            False,
        ),
        E(
            "conference_participant_early_entry_minutes",
            "conferenceParticipantEarlyEntryMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_conference_expiry_notification",
            "enableConferenceExpiryNotification",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_active_conference_notification",
            "enableActiveConferenceNotification",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_from_address",
            "conferenceFromAddress",
            str,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* conferenceIdLength
    conference_id_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* moderatorPinLength
    moderator_pin_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableConferenceEndDateRestriction
    enable_conference_end_date_restriction = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* conferenceEndDateRestrictionMonths
    conference_end_date_restriction_months = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* deleteExpiredConferencesAfterHoldPeriod
    delete_expired_conferences_after_hold_period = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* expiredConferenceHoldPeriodDays
    expired_conference_hold_period_days = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* recordingWebAppURL
    recording_web_app_url = Field(
        type=str,
        required=False,
    )
    #: str: *Required* recordingFileFormat
    recording_file_format = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* terminateAfterGracePeriod
    terminate_after_grace_period = Field(
        type=bool,
        required=True,
    )
    #: OCI.MeetMeConferencingConferenceDuration: *Required* conferenceGracePeriodMinutes
    conference_grace_period_minutes = Field(
        type=OCI.MeetMeConferencingConferenceDuration,
        required=True,
    )
    #: int: *Required* conferenceParticipantEarlyEntryMinutes
    conference_participant_early_entry_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableConferenceExpiryNotification
    enable_conference_expiry_notification = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableActiveConferenceNotification
    enable_active_conference_notification = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* conferenceFromAddress
    conference_from_address = Field(
        type=str,
        required=True,
    )


class SystemMeetMeConferencingGetResponse19(OCIResponse):
    """
    Response to ``SystemMeetMeConferencingGetRequest19()``.
    """

    _ELEMENTS = (
        E(
            "conference_id_length",
            "conferenceIdLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "moderator_pin_length",
            "moderatorPinLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_conference_end_date_restriction",
            "enableConferenceEndDateRestriction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_end_date_restriction_months",
            "conferenceEndDateRestrictionMonths",
            int,
            False,
            True,
            False,
        ),
        E(
            "delete_expired_conferences_after_hold_period",
            "deleteExpiredConferencesAfterHoldPeriod",
            bool,
            False,
            True,
            False,
        ),
        E(
            "expired_conference_hold_period_days",
            "expiredConferenceHoldPeriodDays",
            int,
            False,
            True,
            False,
        ),
        E(
            "recording_web_app_url",
            "recordingWebAppURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "recording_file_format",
            "recordingFileFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "terminate_after_grace_period",
            "terminateAfterGracePeriod",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_grace_period_minutes",
            "conferenceGracePeriodMinutes",
            OCI.MeetMeConferencingConferenceDuration,
            True,
            True,
            False,
        ),
        E(
            "conference_participant_early_entry_minutes",
            "conferenceParticipantEarlyEntryMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_conference_expiry_notification",
            "enableConferenceExpiryNotification",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_active_conference_notification",
            "enableActiveConferenceNotification",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_from_address",
            "conferenceFromAddress",
            str,
            False,
            True,
            False,
        ),
        E(
            "conference_active_talker_refresh_interval_seconds",
            "conferenceActiveTalkerRefreshIntervalSeconds",
            int,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* conferenceIdLength
    conference_id_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* moderatorPinLength
    moderator_pin_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableConferenceEndDateRestriction
    enable_conference_end_date_restriction = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* conferenceEndDateRestrictionMonths
    conference_end_date_restriction_months = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* deleteExpiredConferencesAfterHoldPeriod
    delete_expired_conferences_after_hold_period = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* expiredConferenceHoldPeriodDays
    expired_conference_hold_period_days = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* recordingWebAppURL
    recording_web_app_url = Field(
        type=str,
        required=False,
    )
    #: str: *Required* recordingFileFormat
    recording_file_format = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* terminateAfterGracePeriod
    terminate_after_grace_period = Field(
        type=bool,
        required=True,
    )
    #: OCI.MeetMeConferencingConferenceDuration: *Required* conferenceGracePeriodMinutes
    conference_grace_period_minutes = Field(
        type=OCI.MeetMeConferencingConferenceDuration,
        required=True,
    )
    #: int: *Required* conferenceParticipantEarlyEntryMinutes
    conference_participant_early_entry_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableConferenceExpiryNotification
    enable_conference_expiry_notification = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableActiveConferenceNotification
    enable_active_conference_notification = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* conferenceFromAddress
    conference_from_address = Field(
        type=str,
        required=True,
    )
    #: int: *Required* conferenceActiveTalkerRefreshIntervalSeconds
    conference_active_talker_refresh_interval_seconds = Field(
        type=int,
        required=True,
    )


class SystemNetworkClassOfServiceGetResponse(OCIResponse):
    """
    Response to the ``SystemNetworkClassOfServiceGetRequest()``.
    The response contains the Network Class of Service information.
    Replaced By ``SystemNetworkClassOfServiceGetResponse17()``
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "communication_barring_profile0",
            "communicationBarringProfile0",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile1",
            "communicationBarringProfile1",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile2",
            "communicationBarringProfile2",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile3",
            "communicationBarringProfile3",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile4",
            "communicationBarringProfile4",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile5",
            "communicationBarringProfile5",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile6",
            "communicationBarringProfile6",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile7",
            "communicationBarringProfile7",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile8",
            "communicationBarringProfile8",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile9",
            "communicationBarringProfile9",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile0
    communication_barring_profile0 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile1
    communication_barring_profile1 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile2
    communication_barring_profile2 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile3
    communication_barring_profile3 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile4
    communication_barring_profile4 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile5
    communication_barring_profile5 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile6
    communication_barring_profile6 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile7
    communication_barring_profile7 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile8
    communication_barring_profile8 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile9
    communication_barring_profile9 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )


class SystemNetworkClassOfServiceGetResponse17(OCIResponse):
    """
    Response to the ``SystemNetworkClassOfServiceGetRequest17()``.
    The response contains the Network Class of Service information.

    Replaced by ``SystemNetworkClassOfServiceGetResponse19sp1()``
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "communication_barring_profile0",
            "communicationBarringProfile0",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile1",
            "communicationBarringProfile1",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile2",
            "communicationBarringProfile2",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile3",
            "communicationBarringProfile3",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile4",
            "communicationBarringProfile4",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile5",
            "communicationBarringProfile5",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile6",
            "communicationBarringProfile6",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile7",
            "communicationBarringProfile7",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile8",
            "communicationBarringProfile8",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile9",
            "communicationBarringProfile9",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "network_translation_index",
            "networkTranslationIndex",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile0
    communication_barring_profile0 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile1
    communication_barring_profile1 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile2
    communication_barring_profile2 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile3
    communication_barring_profile3 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile4
    communication_barring_profile4 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile5
    communication_barring_profile5 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile6
    communication_barring_profile6 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile7
    communication_barring_profile7 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile8
    communication_barring_profile8 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile9
    communication_barring_profile9 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: str: *Optional* networkTranslationIndex
    network_translation_index = Field(
        type=str,
        required=False,
    )


class SystemNetworkClassOfServiceGetResponse19sp1(OCIResponse):
    """
    Response to the ``SystemNetworkClassOfServiceGetRequest19sp1()``.
    The response contains the Network Class of Service information.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "communication_barring_profile0",
            "communicationBarringProfile0",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile1",
            "communicationBarringProfile1",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile2",
            "communicationBarringProfile2",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile3",
            "communicationBarringProfile3",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile4",
            "communicationBarringProfile4",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile5",
            "communicationBarringProfile5",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile6",
            "communicationBarringProfile6",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile7",
            "communicationBarringProfile7",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile8",
            "communicationBarringProfile8",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "communication_barring_profile9",
            "communicationBarringProfile9",
            OCI.NetworkClassOfServiceCommunicationBarringProfile,
            True,
            False,
            False,
        ),
        E(
            "network_translation_index",
            "networkTranslationIndex",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_processing_policy_profile_name",
            "callProcessingPolicyProfileName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile0
    communication_barring_profile0 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile1
    communication_barring_profile1 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile2
    communication_barring_profile2 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile3
    communication_barring_profile3 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile4
    communication_barring_profile4 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile5
    communication_barring_profile5 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile6
    communication_barring_profile6 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile7
    communication_barring_profile7 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile8
    communication_barring_profile8 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: OCI.NetworkClassOfServiceCommunicationBarringProfile: *Optional*
    #: communicationBarringProfile9
    communication_barring_profile9 = Field(
        type=OCI.NetworkClassOfServiceCommunicationBarringProfile,
        required=False,
    )
    #: str: *Optional* networkTranslationIndex
    network_translation_index = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callProcessingPolicyProfileName
    call_processing_policy_profile_name = Field(
        type=str,
        required=False,
    )


class SystemSIPDeviceTypeGetResponse(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "registration_capable",
            "registrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_conference_device",
            "isConferenceDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_music_on_hold_device",
            "isMusicOnHoldDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "authentication_override",
            "authenticationOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "rfc3264_hold",
            "RFC3264Hold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_trusted",
            "isTrusted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "e164_capable",
            "E164Capable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "route_advance",
            "routeAdvance",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forwarding_override",
            "forwardingOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "wireless_integration",
            "wirelessIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_video_capable",
            "isVideoCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pbx_integration",
            "PBXIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_business_trunking_contact",
            "useBusinessTrunkingContact",
            bool,
            False,
            True,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptions,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* registrationCapable
    registration_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isConferenceDevice
    is_conference_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMusicOnHoldDevice
    is_music_on_hold_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* authenticationOverride
    authentication_override = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* RFC3264Hold
    rfc3264_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isTrusted
    is_trusted = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* E164Capable
    e164_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* routeAdvance
    route_advance = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forwardingOverride
    forwarding_override = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* wirelessIntegration
    wireless_integration = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isVideoCapable
    is_video_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* PBXIntegration
    pbx_integration = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useBusinessTrunkingContact
    use_business_trunking_contact = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptions: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptions,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )


class SystemSIPDeviceTypeGetResponse14sp1(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest14sp1()``.
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "registration_capable",
            "registrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_conference_device",
            "isConferenceDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_music_on_hold_device",
            "isMusicOnHoldDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "authentication_override",
            "authenticationOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "rfc3264_hold",
            "RFC3264Hold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_trusted",
            "isTrusted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "e164_capable",
            "E164Capable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "route_advance",
            "routeAdvance",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forwarding_override",
            "forwardingOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "wireless_integration",
            "wirelessIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_video_capable",
            "isVideoCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pbx_integration",
            "PBXIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_business_trunking_contact",
            "useBusinessTrunkingContact",
            bool,
            False,
            True,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptions,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "early_media_support",
            "earlyMediaSupport",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* registrationCapable
    registration_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isConferenceDevice
    is_conference_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMusicOnHoldDevice
    is_music_on_hold_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* authenticationOverride
    authentication_override = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* RFC3264Hold
    rfc3264_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isTrusted
    is_trusted = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* E164Capable
    e164_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* routeAdvance
    route_advance = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forwardingOverride
    forwarding_override = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* wirelessIntegration
    wireless_integration = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isVideoCapable
    is_video_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* PBXIntegration
    pbx_integration = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useBusinessTrunkingContact
    use_business_trunking_contact = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptions: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptions,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: str: *Required* earlyMediaSupport
    early_media_support = Field(
        type=str,
        required=True,
    )


class SystemSIPDeviceTypeGetResponse14sp2(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest14sp2()``.
    Replaced By ``SystemSIPDeviceTypeGetResponse14sp3()``
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "registration_capable",
            "registrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_conference_device",
            "isConferenceDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_music_on_hold_device",
            "isMusicOnHoldDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "rfc3264_hold",
            "RFC3264Hold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_trusted",
            "isTrusted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "e164_capable",
            "E164Capable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "route_advance",
            "routeAdvance",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forwarding_override",
            "forwardingOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "wireless_integration",
            "wirelessIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_video_capable",
            "isVideoCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pbx_integration",
            "PBXIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_business_trunking_contact",
            "useBusinessTrunkingContact",
            bool,
            False,
            True,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptions,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "early_media_support",
            "earlyMediaSupport",
            str,
            False,
            True,
            False,
        ),
        E(
            "authenticate_refer",
            "authenticateRefer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "auto_config_soft_client",
            "autoConfigSoftClient",
            bool,
            False,
            True,
            False,
        ),
        E(
            "authentication_mode",
            "authenticationMode",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* registrationCapable
    registration_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isConferenceDevice
    is_conference_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMusicOnHoldDevice
    is_music_on_hold_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* RFC3264Hold
    rfc3264_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isTrusted
    is_trusted = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* E164Capable
    e164_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* routeAdvance
    route_advance = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forwardingOverride
    forwarding_override = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* wirelessIntegration
    wireless_integration = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isVideoCapable
    is_video_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* PBXIntegration
    pbx_integration = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useBusinessTrunkingContact
    use_business_trunking_contact = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptions: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptions,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: str: *Required* earlyMediaSupport
    early_media_support = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* authenticateRefer
    authenticate_refer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* autoConfigSoftClient
    auto_config_soft_client = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* authenticationMode
    authentication_mode = Field(
        type=str,
        required=True,
    )


class SystemSIPDeviceTypeGetResponse14sp3(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest14sp3()``.
    Replaced By ``SystemSIPDeviceTypeGetResponse14sp6()``
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "registration_capable",
            "registrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_conference_device",
            "isConferenceDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_mobility_manager_device",
            "isMobilityManagerDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_music_on_hold_device",
            "isMusicOnHoldDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "rfc3264_hold",
            "RFC3264Hold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_trusted",
            "isTrusted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "e164_capable",
            "E164Capable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "route_advance",
            "routeAdvance",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forwarding_override",
            "forwardingOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "wireless_integration",
            "wirelessIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_video_capable",
            "isVideoCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pbx_integration",
            "PBXIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_business_trunking_contact",
            "useBusinessTrunkingContact",
            bool,
            False,
            True,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptions,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "early_media_support",
            "earlyMediaSupport",
            str,
            False,
            True,
            False,
        ),
        E(
            "authenticate_refer",
            "authenticateRefer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "auto_config_soft_client",
            "autoConfigSoftClient",
            bool,
            False,
            True,
            False,
        ),
        E(
            "authentication_mode",
            "authenticationMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "tdm_overlay",
            "tdmOverlay",
            bool,
            False,
            True,
            False,
        ),
        E(
            "supports_broad_works_info_for_call_waiting",
            "supportsBroadWorksINFOForCallWaiting",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* registrationCapable
    registration_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isConferenceDevice
    is_conference_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMobilityManagerDevice
    is_mobility_manager_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMusicOnHoldDevice
    is_music_on_hold_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* RFC3264Hold
    rfc3264_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isTrusted
    is_trusted = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* E164Capable
    e164_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* routeAdvance
    route_advance = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forwardingOverride
    forwarding_override = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* wirelessIntegration
    wireless_integration = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isVideoCapable
    is_video_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* PBXIntegration
    pbx_integration = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useBusinessTrunkingContact
    use_business_trunking_contact = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptions: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptions,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: str: *Required* earlyMediaSupport
    early_media_support = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* authenticateRefer
    authenticate_refer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* autoConfigSoftClient
    auto_config_soft_client = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* authenticationMode
    authentication_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* tdmOverlay
    tdm_overlay = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportsBroadWorksINFOForCallWaiting
    supports_broad_works_info_for_call_waiting = Field(
        type=bool,
        required=True,
    )


class SystemScheduleGetEventResponse(OCIResponse):
    """
    Response to ``SystemScheduleGetEventRequest()``.
    The response contains the event of the system schedulable.
    """

    _ELEMENTS = (
        E(
            "start_date",
            "startDate",
            str,
            False,
            True,
            False,
        ),
        E(
            "all_day_event",
            "allDayEvent",
            bool,
            False,
            True,
            False,
        ),
        E(
            "start_time",
            "startTime",
            OCI.HourMinute,
            True,
            True,
            False,
        ),
        E(
            "end_time",
            "endTime",
            OCI.HourMinute,
            True,
            True,
            False,
        ),
        E(
            "end_date",
            "endDate",
            str,
            False,
            True,
            False,
        ),
        E(
            "recurrence",
            "recurrence",
            OCI.Recurrence,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* startDate
    start_date = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allDayEvent
    all_day_event = Field(
        type=bool,
        required=True,
    )
    #: OCI.HourMinute: *Required* startTime
    start_time = Field(
        type=OCI.HourMinute,
        required=True,
    )
    #: OCI.HourMinute: *Required* endTime
    end_time = Field(
        type=OCI.HourMinute,
        required=True,
    )
    #: str: *Required* endDate
    end_date = Field(
        type=str,
        required=True,
    )
    #: OCI.Recurrence: *Optional* recurrence
    recurrence = Field(
        type=OCI.Recurrence,
        required=False,
    )


class SystemTimeScheduleGetResponse(OCIResponse):
    """
    Response to the ``SystemTimeScheduleGetRequest()``.
    The response contains the system time schedule's information.
    """

    _ELEMENTS = (
        E(
            "time_interval01",
            "timeInterval01",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval02",
            "timeInterval02",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval03",
            "timeInterval03",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval04",
            "timeInterval04",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval05",
            "timeInterval05",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval06",
            "timeInterval06",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval07",
            "timeInterval07",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval08",
            "timeInterval08",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval09",
            "timeInterval09",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval10",
            "timeInterval10",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval11",
            "timeInterval11",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval12",
            "timeInterval12",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval13",
            "timeInterval13",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval14",
            "timeInterval14",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval15",
            "timeInterval15",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval16",
            "timeInterval16",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval17",
            "timeInterval17",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval18",
            "timeInterval18",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval19",
            "timeInterval19",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval20",
            "timeInterval20",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
    )
    #: OCI.TimeInterval: *Optional* timeInterval01
    time_interval01 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval02
    time_interval02 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval03
    time_interval03 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval04
    time_interval04 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval05
    time_interval05 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval06
    time_interval06 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval07
    time_interval07 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval08
    time_interval08 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval09
    time_interval09 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval10
    time_interval10 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval11
    time_interval11 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval12
    time_interval12 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval13
    time_interval13 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval14
    time_interval14 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval15
    time_interval15 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval16
    time_interval16 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval17
    time_interval17 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval18
    time_interval18 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval19
    time_interval19 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval20
    time_interval20 = Field(
        type=OCI.TimeInterval,
        required=False,
    )


class SystemZoneCallingRestrictionsNetAddressGetListResponse(OCIResponse):
    """
    Response to ``SystemZoneCallingRestrictionsNetAddressGetListRequest()``.
    Replaced By ``SystemZoneNetAddressGetListResponse()``
    """

    _ELEMENTS = (
        E(
            "net_address",
            "netAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "net_address_range",
            "netAddressRange",
            OCI.IPAddressRange,
            True,
            False,
            False,
        ),
    )
    #: str: *Optional* netAddress
    net_address = Field(
        type=str,
        required=False,
    )
    #: OCI.IPAddressRange: *Optional* netAddressRange
    net_address_range = Field(
        type=OCI.IPAddressRange,
        required=False,
    )


class SystemZoneNetAddressGetListResponse(OCIResponse):
    """
    Response to ``SystemZoneNetAddressGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "net_address",
            "netAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "net_address_range",
            "netAddressRange",
            OCI.IPAddressRange,
            True,
            False,
            False,
        ),
    )
    #: str: *Optional* netAddress
    net_address = Field(
        type=str,
        required=False,
    )
    #: OCI.IPAddressRange: *Optional* netAddressRange
    net_address_range = Field(
        type=OCI.IPAddressRange,
        required=False,
    )


class UserAlternateNumbersGetResponse(OCIResponse):
    """
    Response to ``UserAlternateNumbersGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "distinctive_ring",
            "distinctiveRing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "alternate_entry01",
            "alternateEntry01",
            OCI.AlternateNumberEntry,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry02",
            "alternateEntry02",
            OCI.AlternateNumberEntry,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry03",
            "alternateEntry03",
            OCI.AlternateNumberEntry,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry04",
            "alternateEntry04",
            OCI.AlternateNumberEntry,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry05",
            "alternateEntry05",
            OCI.AlternateNumberEntry,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry06",
            "alternateEntry06",
            OCI.AlternateNumberEntry,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry07",
            "alternateEntry07",
            OCI.AlternateNumberEntry,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry08",
            "alternateEntry08",
            OCI.AlternateNumberEntry,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry09",
            "alternateEntry09",
            OCI.AlternateNumberEntry,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry10",
            "alternateEntry10",
            OCI.AlternateNumberEntry,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* distinctiveRing
    distinctive_ring = Field(
        type=bool,
        required=True,
    )
    #: OCI.AlternateNumberEntry: *Optional* alternateEntry01
    alternate_entry01 = Field(
        type=OCI.AlternateNumberEntry,
        required=False,
    )
    #: OCI.AlternateNumberEntry: *Optional* alternateEntry02
    alternate_entry02 = Field(
        type=OCI.AlternateNumberEntry,
        required=False,
    )
    #: OCI.AlternateNumberEntry: *Optional* alternateEntry03
    alternate_entry03 = Field(
        type=OCI.AlternateNumberEntry,
        required=False,
    )
    #: OCI.AlternateNumberEntry: *Optional* alternateEntry04
    alternate_entry04 = Field(
        type=OCI.AlternateNumberEntry,
        required=False,
    )
    #: OCI.AlternateNumberEntry: *Optional* alternateEntry05
    alternate_entry05 = Field(
        type=OCI.AlternateNumberEntry,
        required=False,
    )
    #: OCI.AlternateNumberEntry: *Optional* alternateEntry06
    alternate_entry06 = Field(
        type=OCI.AlternateNumberEntry,
        required=False,
    )
    #: OCI.AlternateNumberEntry: *Optional* alternateEntry07
    alternate_entry07 = Field(
        type=OCI.AlternateNumberEntry,
        required=False,
    )
    #: OCI.AlternateNumberEntry: *Optional* alternateEntry08
    alternate_entry08 = Field(
        type=OCI.AlternateNumberEntry,
        required=False,
    )
    #: OCI.AlternateNumberEntry: *Optional* alternateEntry09
    alternate_entry09 = Field(
        type=OCI.AlternateNumberEntry,
        required=False,
    )
    #: OCI.AlternateNumberEntry: *Optional* alternateEntry10
    alternate_entry10 = Field(
        type=OCI.AlternateNumberEntry,
        required=False,
    )


class UserAlternateNumbersGetResponse17(OCIResponse):
    """
    Response to ``UserAlternateNumbersGetRequest17()``.

    Replaced By ``UserAlternateNumbersGetResponse21()``
    """

    _ELEMENTS = (
        E(
            "distinctive_ring",
            "distinctiveRing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "alternate_entry01",
            "alternateEntry01",
            OCI.AlternateNumberEntry17,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry02",
            "alternateEntry02",
            OCI.AlternateNumberEntry17,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry03",
            "alternateEntry03",
            OCI.AlternateNumberEntry17,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry04",
            "alternateEntry04",
            OCI.AlternateNumberEntry17,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry05",
            "alternateEntry05",
            OCI.AlternateNumberEntry17,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry06",
            "alternateEntry06",
            OCI.AlternateNumberEntry17,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry07",
            "alternateEntry07",
            OCI.AlternateNumberEntry17,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry08",
            "alternateEntry08",
            OCI.AlternateNumberEntry17,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry09",
            "alternateEntry09",
            OCI.AlternateNumberEntry17,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry10",
            "alternateEntry10",
            OCI.AlternateNumberEntry17,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* distinctiveRing
    distinctive_ring = Field(
        type=bool,
        required=True,
    )
    #: OCI.AlternateNumberEntry17: *Optional* alternateEntry01
    alternate_entry01 = Field(
        type=OCI.AlternateNumberEntry17,
        required=False,
    )
    #: OCI.AlternateNumberEntry17: *Optional* alternateEntry02
    alternate_entry02 = Field(
        type=OCI.AlternateNumberEntry17,
        required=False,
    )
    #: OCI.AlternateNumberEntry17: *Optional* alternateEntry03
    alternate_entry03 = Field(
        type=OCI.AlternateNumberEntry17,
        required=False,
    )
    #: OCI.AlternateNumberEntry17: *Optional* alternateEntry04
    alternate_entry04 = Field(
        type=OCI.AlternateNumberEntry17,
        required=False,
    )
    #: OCI.AlternateNumberEntry17: *Optional* alternateEntry05
    alternate_entry05 = Field(
        type=OCI.AlternateNumberEntry17,
        required=False,
    )
    #: OCI.AlternateNumberEntry17: *Optional* alternateEntry06
    alternate_entry06 = Field(
        type=OCI.AlternateNumberEntry17,
        required=False,
    )
    #: OCI.AlternateNumberEntry17: *Optional* alternateEntry07
    alternate_entry07 = Field(
        type=OCI.AlternateNumberEntry17,
        required=False,
    )
    #: OCI.AlternateNumberEntry17: *Optional* alternateEntry08
    alternate_entry08 = Field(
        type=OCI.AlternateNumberEntry17,
        required=False,
    )
    #: OCI.AlternateNumberEntry17: *Optional* alternateEntry09
    alternate_entry09 = Field(
        type=OCI.AlternateNumberEntry17,
        required=False,
    )
    #: OCI.AlternateNumberEntry17: *Optional* alternateEntry10
    alternate_entry10 = Field(
        type=OCI.AlternateNumberEntry17,
        required=False,
    )


class UserAlternateNumbersGetResponse21(OCIResponse):
    """
    Response to ``UserAlternateNumbersGetRequest21()``.
    """

    _ELEMENTS = (
        E(
            "distinctive_ring",
            "distinctiveRing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "alternate_entry01",
            "alternateEntry01",
            OCI.AlternateNumberEntry21,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry02",
            "alternateEntry02",
            OCI.AlternateNumberEntry21,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry03",
            "alternateEntry03",
            OCI.AlternateNumberEntry21,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry04",
            "alternateEntry04",
            OCI.AlternateNumberEntry21,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry05",
            "alternateEntry05",
            OCI.AlternateNumberEntry21,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry06",
            "alternateEntry06",
            OCI.AlternateNumberEntry21,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry07",
            "alternateEntry07",
            OCI.AlternateNumberEntry21,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry08",
            "alternateEntry08",
            OCI.AlternateNumberEntry21,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry09",
            "alternateEntry09",
            OCI.AlternateNumberEntry21,
            True,
            False,
            False,
        ),
        E(
            "alternate_entry10",
            "alternateEntry10",
            OCI.AlternateNumberEntry21,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* distinctiveRing
    distinctive_ring = Field(
        type=bool,
        required=True,
    )
    #: OCI.AlternateNumberEntry21: *Optional* alternateEntry01
    alternate_entry01 = Field(
        type=OCI.AlternateNumberEntry21,
        required=False,
    )
    #: OCI.AlternateNumberEntry21: *Optional* alternateEntry02
    alternate_entry02 = Field(
        type=OCI.AlternateNumberEntry21,
        required=False,
    )
    #: OCI.AlternateNumberEntry21: *Optional* alternateEntry03
    alternate_entry03 = Field(
        type=OCI.AlternateNumberEntry21,
        required=False,
    )
    #: OCI.AlternateNumberEntry21: *Optional* alternateEntry04
    alternate_entry04 = Field(
        type=OCI.AlternateNumberEntry21,
        required=False,
    )
    #: OCI.AlternateNumberEntry21: *Optional* alternateEntry05
    alternate_entry05 = Field(
        type=OCI.AlternateNumberEntry21,
        required=False,
    )
    #: OCI.AlternateNumberEntry21: *Optional* alternateEntry06
    alternate_entry06 = Field(
        type=OCI.AlternateNumberEntry21,
        required=False,
    )
    #: OCI.AlternateNumberEntry21: *Optional* alternateEntry07
    alternate_entry07 = Field(
        type=OCI.AlternateNumberEntry21,
        required=False,
    )
    #: OCI.AlternateNumberEntry21: *Optional* alternateEntry08
    alternate_entry08 = Field(
        type=OCI.AlternateNumberEntry21,
        required=False,
    )
    #: OCI.AlternateNumberEntry21: *Optional* alternateEntry09
    alternate_entry09 = Field(
        type=OCI.AlternateNumberEntry21,
        required=False,
    )
    #: OCI.AlternateNumberEntry21: *Optional* alternateEntry10
    alternate_entry10 = Field(
        type=OCI.AlternateNumberEntry21,
        required=False,
    )


class UserAssignedServicesGetListResponse(OCIResponse):
    """
    Response to ``UserAssignedServicesGetListRequest()``.
    A user can have both user services and group services because of music on hold.
    """

    _ELEMENTS = (
        E(
            "group_service_entry",
            "groupServiceEntry",
            OCI.AssignedGroupServicesEntry,
            True,
            False,
            False,
        ),
        E(
            "user_service_entry",
            "userServiceEntry",
            OCI.AssignedUserServicesEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.AssignedGroupServicesEntry: *Optional* groupServiceEntry
    group_service_entry = Field(
        type=OCI.AssignedGroupServicesEntry,
        required=False,
    )
    #: OCI.AssignedUserServicesEntry: *Optional* userServiceEntry
    user_service_entry = Field(
        type=OCI.AssignedUserServicesEntry,
        required=False,
    )


class UserBasicCallLogsGetListResponse(OCIResponse):
    """
    Response to ``UserBasicCallLogsGetListRequest()``.
    Replaced By ``UserBasicCallLogsGetListResponse14sp4()``
    """

    _ELEMENTS = (
        E(
            "placed",
            "placed",
            OCI.BasicCallLogsEntry,
            True,
            False,
            False,
        ),
        E(
            "received",
            "received",
            OCI.BasicCallLogsEntry,
            True,
            False,
            False,
        ),
        E(
            "missed",
            "missed",
            OCI.BasicCallLogsEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.BasicCallLogsEntry: *Optional* placed
    placed = Field(
        type=OCI.BasicCallLogsEntry,
        required=False,
    )
    #: OCI.BasicCallLogsEntry: *Optional* received
    received = Field(
        type=OCI.BasicCallLogsEntry,
        required=False,
    )
    #: OCI.BasicCallLogsEntry: *Optional* missed
    missed = Field(
        type=OCI.BasicCallLogsEntry,
        required=False,
    )


class UserBasicCallLogsGetListResponse14sp4(OCIResponse):
    """
    Response to ``UserBasicCallLogsGetListRequest14sp4()``.
    """

    _ELEMENTS = (
        E(
            "placed",
            "placed",
            OCI.CallLogsEntry,
            True,
            False,
            False,
        ),
        E(
            "received",
            "received",
            OCI.CallLogsEntry,
            True,
            False,
            False,
        ),
        E(
            "missed",
            "missed",
            OCI.CallLogsEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.CallLogsEntry: *Optional* placed
    placed = Field(
        type=OCI.CallLogsEntry,
        required=False,
    )
    #: OCI.CallLogsEntry: *Optional* received
    received = Field(
        type=OCI.CallLogsEntry,
        required=False,
    )
    #: OCI.CallLogsEntry: *Optional* missed
    missed = Field(
        type=OCI.CallLogsEntry,
        required=False,
    )


class UserBroadWorksAnywhereGetSelectiveCriteriaResponse(OCIResponse):
    """
    Response to the ``UserBroadWorksAnywhereGetSelectiveCriteriaRequest()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )


class UserBroadWorksAnywhereGetSelectiveCriteriaResponse16(OCIResponse):
    """
    Response to the ``UserBroadWorksAnywhereGetSelectiveCriteriaRequest16()``.

    Replaced By ``UserBroadWorksAnywhereGetSelectiveCriteriaResponse21()``
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )


class UserBroadWorksAnywhereGetSelectiveCriteriaResponse21(OCIResponse):
    """
    Response to the ``UserBroadWorksAnywhereGetSelectiveCriteriaRequest21()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
        E(
            "call_to_number",
            "callToNumber",
            OCI.CallToNumber,
            True,
            False,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )
    #: OCI.CallToNumber: *Optional* callToNumber
    call_to_number = Field(
        type=OCI.CallToNumber,
        required=False,
    )


class UserBroadWorksMobilityGetResponse21(OCIResponse):
    """
    Response to a ``UserBroadWorksMobilityGetRequest21()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_mobile_identity_call_anchoring",
            "useMobileIdentityCallAnchoring",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prevent_calls_to_own_mobiles",
            "preventCallsToOwnMobiles",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mobile_identity",
            "mobileIdentity",
            OCI.BroadWorksMobilityUserMobileIdentityEntry,
            True,
            False,
            False,
        ),
        E(
            "profile_identity_devices_to_ring",
            "profileIdentityDevicesToRing",
            str,
            False,
            True,
            False,
        ),
        E(
            "profile_identity_include_shared_call_appearance",
            "profileIdentityIncludeSharedCallAppearance",
            bool,
            False,
            True,
            False,
        ),
        E(
            "profile_identity_include_broadworks_anywhere",
            "profileIdentityIncludeBroadworksAnywhere",
            bool,
            False,
            True,
            False,
        ),
        E(
            "profile_identity_include_executive_assistant",
            "profileIdentityIncludeExecutiveAssistant",
            bool,
            False,
            True,
            False,
        ),
        E(
            "profile_identity_mobile_number_alerted",
            "profileIdentityMobileNumberAlerted",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMobileIdentityCallAnchoring
    use_mobile_identity_call_anchoring = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* preventCallsToOwnMobiles
    prevent_calls_to_own_mobiles = Field(
        type=bool,
        required=True,
    )
    #: OCI.BroadWorksMobilityUserMobileIdentityEntry: *Optional* mobileIdentity
    mobile_identity = Field(
        type=OCI.BroadWorksMobilityUserMobileIdentityEntry,
        required=False,
    )
    #: str: *Required* profileIdentityDevicesToRing
    profile_identity_devices_to_ring = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* profileIdentityIncludeSharedCallAppearance
    profile_identity_include_shared_call_appearance = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* profileIdentityIncludeBroadworksAnywhere
    profile_identity_include_broadworks_anywhere = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* profileIdentityIncludeExecutiveAssistant
    profile_identity_include_executive_assistant = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* profileIdentityMobileNumberAlerted
    profile_identity_mobile_number_alerted = Field(
        type=str,
        required=False,
    )


class UserCallCenterGetAvailableDNISListResponse(OCIResponse):
    """
    Response to ``UserCallCenterGetAvailableDNISListRequest()``.
    Contains a list of available DNIS for agent to select.
    """

    _ELEMENTS = (
        E(
            "available_dnis",
            "availableDNIS",
            OCI.DNISKey,
            True,
            False,
            False,
        ),
    )
    #: OCI.DNISKey: *Optional* availableDNIS
    available_dnis = Field(
        type=OCI.DNISKey,
        required=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()``.
    """

    _ELEMENTS = (
        E(
            "agent_acd_state",
            "agentACDState",
            str,
            False,
            False,
            False,
        ),
        E(
            "agent_unavailable_code",
            "agentUnavailableCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_default_guard_timer",
            "useDefaultGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_guard_timer",
            "enableGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "guard_timer_seconds",
            "guardTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_system_default_unavailable_settings",
            "useSystemDefaultUnavailableSettings",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_unavailable_on_personal_calls",
            "forceUnavailableOnPersonalCalls",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit",
            bool,
            False,
            False,
            False,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable",
            int,
            False,
            False,
            False,
        ),
        E(
            "make_outgoing_calls_as_call_center",
            "makeOutgoingCallsAsCallCenter",
            bool,
            False,
            False,
            False,
        ),
        E(
            "outgoing_call_dnis",
            "outgoingCallDNIS",
            OCI.DNISKey,
            True,
            False,
            False,
        ),
        E(
            "call_center_table",
            "callCenterTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Optional* agentACDState
    agent_acd_state = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* agentUnavailableCode
    agent_unavailable_code = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useDefaultGuardTimer
    use_default_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableGuardTimer
    enable_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* guardTimerSeconds
    guard_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Optional* useSystemDefaultUnavailableSettings
    use_system_default_unavailable_settings = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnDNDActivation
    force_agent_unavailable_on_dnd_activation = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceUnavailableOnPersonalCalls
    force_unavailable_on_personal_calls = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnBouncedCallLimit
    force_agent_unavailable_on_bounced_call_limit = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* numberConsecutiveBouncedCallsToForceAgentUnavailable
    number_consecutive_bounced_calls_to_force_agent_unavailable = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* makeOutgoingCallsAsCallCenter
    make_outgoing_calls_as_call_center = Field(
        type=bool,
        required=False,
    )
    #: OCI.DNISKey: *Optional* outgoingCallDNIS
    outgoing_call_dnis = Field(
        type=OCI.DNISKey,
        required=False,
    )
    #: list: *Required* callCenterTable  *Tabular*
    call_center_table = Field(
        type=list,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "agent_acd_state",
            "agentACDState",
            str,
            False,
            False,
            False,
        ),
        E(
            "agent_unavailable_code",
            "agentUnavailableCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_default_guard_timer",
            "useDefaultGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_guard_timer",
            "enableGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "guard_timer_seconds",
            "guardTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_system_default_unavailable_settings",
            "useSystemDefaultUnavailableSettings",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit",
            bool,
            False,
            False,
            False,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable",
            int,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_not_reachable",
            "forceAgentUnavailableOnNotReachable",
            bool,
            False,
            False,
            False,
        ),
        E(
            "make_outgoing_calls_as_call_center",
            "makeOutgoingCallsAsCallCenter",
            bool,
            False,
            False,
            False,
        ),
        E(
            "outgoing_call_dnis",
            "outgoingCallDNIS",
            OCI.DNISKey,
            True,
            False,
            False,
        ),
        E(
            "call_center_table",
            "callCenterTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Optional* agentACDState
    agent_acd_state = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* agentUnavailableCode
    agent_unavailable_code = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useDefaultGuardTimer
    use_default_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableGuardTimer
    enable_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* guardTimerSeconds
    guard_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Optional* useSystemDefaultUnavailableSettings
    use_system_default_unavailable_settings = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnDNDActivation
    force_agent_unavailable_on_dnd_activation = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnPersonalCalls
    force_agent_unavailable_on_personal_calls = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnBouncedCallLimit
    force_agent_unavailable_on_bounced_call_limit = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* numberConsecutiveBouncedCallsToForceAgentUnavailable
    number_consecutive_bounced_calls_to_force_agent_unavailable = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnNotReachable
    force_agent_unavailable_on_not_reachable = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* makeOutgoingCallsAsCallCenter
    make_outgoing_calls_as_call_center = Field(
        type=bool,
        required=False,
    )
    #: OCI.DNISKey: *Optional* outgoingCallDNIS
    outgoing_call_dnis = Field(
        type=OCI.DNISKey,
        required=False,
    )
    #: list: *Required* callCenterTable  *Tabular*
    call_center_table = Field(
        type=list,
        required=True,
    )


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.
    """

    _ELEMENTS = (
        E(
            "agent_acd_state",
            "agentACDState",
            str,
            False,
            False,
            False,
        ),
        E(
            "agent_threshold_profile_name",
            "agentThresholdProfileName",
            str,
            False,
            False,
            False,
        ),
        E(
            "agent_unavailable_code",
            "agentUnavailableCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "use_default_guard_timer",
            "useDefaultGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_guard_timer",
            "enableGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "guard_timer_seconds",
            "guardTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "use_system_default_unavailable_settings",
            "useSystemDefaultUnavailableSettings",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_dnd_activation",
            "forceAgentUnavailableOnDNDActivation",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_personal_calls",
            "forceAgentUnavailableOnPersonalCalls",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_bounced_call_limit",
            "forceAgentUnavailableOnBouncedCallLimit",
            bool,
            False,
            False,
            False,
        ),
        E(
            "number_consecutive_bounced_calls_to_force_agent_unavailable",
            "numberConsecutiveBouncedCallsToForceAgentUnavailable",
            int,
            False,
            False,
            False,
        ),
        E(
            "force_agent_unavailable_on_not_reachable",
            "forceAgentUnavailableOnNotReachable",
            bool,
            False,
            False,
            False,
        ),
        E(
            "make_outgoing_calls_as_call_center",
            "makeOutgoingCallsAsCallCenter",
            bool,
            False,
            False,
            False,
        ),
        E(
            "outgoing_call_dnis",
            "outgoingCallDNIS",
            OCI.DNISKey,
            True,
            False,
            False,
        ),
        E(
            "call_center_table",
            "callCenterTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: str: *Optional* agentACDState
    agent_acd_state = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* agentThresholdProfileName
    agent_threshold_profile_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* agentUnavailableCode
    agent_unavailable_code = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* useDefaultGuardTimer
    use_default_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableGuardTimer
    enable_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* guardTimerSeconds
    guard_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Optional* useSystemDefaultUnavailableSettings
    use_system_default_unavailable_settings = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnDNDActivation
    force_agent_unavailable_on_dnd_activation = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnPersonalCalls
    force_agent_unavailable_on_personal_calls = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnBouncedCallLimit
    force_agent_unavailable_on_bounced_call_limit = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* numberConsecutiveBouncedCallsToForceAgentUnavailable
    number_consecutive_bounced_calls_to_force_agent_unavailable = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* forceAgentUnavailableOnNotReachable
    force_agent_unavailable_on_not_reachable = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* makeOutgoingCallsAsCallCenter
    make_outgoing_calls_as_call_center = Field(
        type=bool,
        required=False,
    )
    #: OCI.DNISKey: *Optional* outgoingCallDNIS
    outgoing_call_dnis = Field(
        type=OCI.DNISKey,
        required=False,
    )
    #: list: *Required* callCenterTable  *Tabular*
    call_center_table = Field(
        type=list,
        required=True,
    )


class UserCallForwardingSelectiveGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserCallForwardingSelectiveGetCriteriaRequest()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "forward_to_number_selection",
            "forwardToNumberSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: str: *Required* forwardToNumberSelection
    forward_to_number_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )


class UserCallForwardingSelectiveGetCriteriaResponse16(OCIResponse):
    """
    Response to the ``UserCallForwardingSelectiveGetCriteriaRequest16()``.

    Replaced By ``UserCallForwardingSelectiveGetCriteriaResponse21()``
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "forward_to_number_selection",
            "forwardToNumberSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: str: *Required* forwardToNumberSelection
    forward_to_number_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )


class UserCallForwardingSelectiveGetCriteriaResponse21(OCIResponse):
    """
    Response to the ``UserCallForwardingSelectiveGetCriteriaRequest21()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "forward_to_number_selection",
            "forwardToNumberSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
        E(
            "call_to_number",
            "callToNumber",
            OCI.CallToNumber,
            True,
            False,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: str: *Required* forwardToNumberSelection
    forward_to_number_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )
    #: OCI.CallToNumber: *Optional* callToNumber
    call_to_number = Field(
        type=OCI.CallToNumber,
        required=False,
    )


class UserCallMeNowGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserCallMeNowGetCriteriaRequest()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "reject_call",
            "rejectCall",
            bool,
            False,
            True,
            False,
        ),
        E(
            "to_dn_criteria",
            "toDnCriteria",
            OCI.CallMeNowToDnCriteria,
            True,
            True,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* rejectCall
    reject_call = Field(
        type=bool,
        required=True,
    )
    #: OCI.CallMeNowToDnCriteria: *Required* toDnCriteria
    to_dn_criteria = Field(
        type=OCI.CallMeNowToDnCriteria,
        required=True,
    )


class UserCallNotifyGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserCallNotifyGetCriteriaRequest()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )


class UserCallNotifyGetCriteriaResponse16(OCIResponse):
    """
    Response to the ``UserCallNotifyGetCriteriaRequest16()``.

    Replaced By ``UserCallNotifyGetCriteriaResponse21()``
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )


class UserCallNotifyGetCriteriaResponse21(OCIResponse):
    """
    Response to the ``UserCallNotifyGetCriteriaRequest21()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
        E(
            "call_to_number",
            "callToNumber",
            OCI.CallToNumber,
            True,
            False,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )
    #: OCI.CallToNumber: *Optional* callToNumber
    call_to_number = Field(
        type=OCI.CallToNumber,
        required=False,
    )


class UserCallToNumberGetAvailableListResponse(OCIResponse):
    """
    Response to the ``UserCallToNumberGetAvailableListRequest()``.
    Contains a list of the user available Call to Numbers".
    """

    _ELEMENTS = (
        E(
            "call_to_number",
            "callToNumber",
            OCI.CallToNumber,
            True,
            False,
            False,
        ),
    )
    #: OCI.CallToNumber: *Optional* callToNumber
    call_to_number = Field(
        type=OCI.CallToNumber,
        required=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()``.
    """

    _ELEMENTS = (
        E(
            "bridge_id",
            "bridgeId",
            str,
            False,
            True,
            False,
        ),
        E(
            "bridge_name",
            "bridgeName",
            str,
            False,
            True,
            False,
        ),
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "extension",
            "extension",
            str,
            False,
            False,
            False,
        ),
        E(
            "alternate_number_entry",
            "alternateNumberEntry",
            OCI.AlternateNumberEntry21,
            True,
            False,
            False,
        ),
        E(
            "support_out_dial",
            "supportOutDial",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_collaborate_room_participants",
            "maxCollaborateRoomParticipants",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* bridgeId
    bridge_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* bridgeName
    bridge_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* extension
    extension = Field(
        type=str,
        required=False,
    )
    #: OCI.AlternateNumberEntry21: *Optional* alternateNumberEntry
    alternate_number_entry = Field(
        type=OCI.AlternateNumberEntry21,
        required=False,
    )
    #: bool: *Required* supportOutDial
    support_out_dial = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCollaborateRoomParticipants
    max_collaborate_room_participants = Field(
        type=int,
        required=True,
    )


class UserCollaborateProjectRoomGetResponse(OCIResponse):
    """
    Response to ``UserCollaborateProjectRoomGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "room_name",
            "roomName",
            str,
            False,
            True,
            False,
        ),
        E(
            "attendee_notification",
            "attendeeNotification",
            str,
            False,
            True,
            False,
        ),
        E(
            "end_collaborate_room_session_on_owner_exit",
            "endCollaborateRoomSessionOnOwnerExit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "owner_required",
            "ownerRequired",
            bool,
            False,
            True,
            False,
        ),
        E(
            "room_schedule",
            "roomSchedule",
            OCI.CollaborateRoomSchedule,
            True,
            True,
            False,
        ),
    )
    #: str: *Required* roomName
    room_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* attendeeNotification
    attendee_notification = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* endCollaborateRoomSessionOnOwnerExit
    end_collaborate_room_session_on_owner_exit = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* ownerRequired
    owner_required = Field(
        type=bool,
        required=True,
    )
    #: OCI.CollaborateRoomSchedule: *Required* roomSchedule
    room_schedule = Field(
        type=OCI.CollaborateRoomSchedule,
        required=True,
    )


class UserCommunicationBarringAuthorizationCodeGetListResponse(OCIResponse):
    """
    Response to ``UserCommunicationBarringAuthorizationCodeGetListRequest()``.
    Contains a list of Communication Barring Authorization Codes
    assigned to the user.
    """

    _ELEMENTS = (
        E(
            "code",
            "code",
            OCI.CommunicationBarringAuthorizationCodeEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.CommunicationBarringAuthorizationCodeEntry: *Optional* code
    code = Field(
        type=OCI.CommunicationBarringAuthorizationCodeEntry,
        required=False,
    )


class UserCustomRingbackUserGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserCustomRingbackUserGetCriteriaRequest()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
        E(
            "audio_selection",
            "audioSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_file_url",
            "audioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_selection",
            "videoSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_url",
            "videoFileUrl",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )
    #: str: *Required* audioSelection
    audio_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioFileUrl
    audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Required* videoSelection
    video_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileUrl
    video_file_url = Field(
        type=str,
        required=False,
    )


class UserCustomRingbackUserGetCriteriaResponse15sp2(OCIResponse):
    """
    Response to the ``UserCustomRingbackUserGetCriteriaRequest15sp2()``.
    Replaced By ``UserCustomRingbackUserAddCriteriaResponse16()``
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
        E(
            "audio_selection",
            "audioSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_file_url",
            "audioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_selection",
            "videoSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_url",
            "videoFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_audio_selection",
            "callWaitingAudioSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_audio_file_description",
            "callWaitingAudioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_audio_file_url",
            "callWaitingAudioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_video_selection",
            "callWaitingVideoSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_video_file_description",
            "callWaitingVideoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_video_file_url",
            "callWaitingVideoFileUrl",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )
    #: str: *Required* audioSelection
    audio_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioFileUrl
    audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Required* videoSelection
    video_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileUrl
    video_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callWaitingAudioSelection
    call_waiting_audio_selection = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callWaitingAudioFileDescription
    call_waiting_audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callWaitingAudioFileUrl
    call_waiting_audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callWaitingVideoSelection
    call_waiting_video_selection = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callWaitingVideoFileDescription
    call_waiting_video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callWaitingVideoFileUrl
    call_waiting_video_file_url = Field(
        type=str,
        required=False,
    )


class UserCustomRingbackUserGetCriteriaResponse16(OCIResponse):
    """
    Response to the ``UserCustomRingbackUserGetCriteriaRequest16()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
        E(
            "audio_selection",
            "audioSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_media_type",
            "audioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_file_url",
            "audioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_selection",
            "videoSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_media_type",
            "videoMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_url",
            "videoFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_audio_selection",
            "callWaitingAudioSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_audio_file_description",
            "callWaitingAudioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_audio_media_type",
            "callWaitingAudioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_audio_file_url",
            "callWaitingAudioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_video_selection",
            "callWaitingVideoSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_video_file_description",
            "callWaitingVideoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_video_media_type",
            "callWaitingVideoMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_video_file_url",
            "callWaitingVideoFileUrl",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )
    #: str: *Required* audioSelection
    audio_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioMediaType
    audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioFileUrl
    audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Required* videoSelection
    video_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoMediaType
    video_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileUrl
    video_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callWaitingAudioSelection
    call_waiting_audio_selection = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callWaitingAudioFileDescription
    call_waiting_audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callWaitingAudioMediaType
    call_waiting_audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callWaitingAudioFileUrl
    call_waiting_audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callWaitingVideoSelection
    call_waiting_video_selection = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callWaitingVideoFileDescription
    call_waiting_video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callWaitingVideoMediaType
    call_waiting_video_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callWaitingVideoFileUrl
    call_waiting_video_file_url = Field(
        type=str,
        required=False,
    )


class UserCustomRingbackUserGetCriteriaResponse20(OCIResponse):
    """
    Response to the ``UserCustomRingbackUserGetCriteriaRequest20()``.

    Replaced By ``UserCustomRingbackUserGetCriteriaResponse21()``
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
        E(
            "audio_selection",
            "audioSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file",
            "audioFile",
            OCI.AnnouncementFileLevelKey,
            True,
            False,
            False,
        ),
        E(
            "audio_file_url",
            "audioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_selection",
            "videoSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_file",
            "videoFile",
            OCI.AnnouncementFileLevelKey,
            True,
            False,
            False,
        ),
        E(
            "video_file_url",
            "videoFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_audio_selection",
            "callWaitingAudioSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_audio_file",
            "callWaitingAudioFile",
            OCI.AnnouncementFileLevelKey,
            True,
            False,
            False,
        ),
        E(
            "call_waiting_audio_file_url",
            "callWaitingAudioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_video_selection",
            "callWaitingVideoSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_video_file",
            "callWaitingVideoFile",
            OCI.AnnouncementFileLevelKey,
            True,
            False,
            False,
        ),
        E(
            "call_waiting_video_file_url",
            "callWaitingVideoFileUrl",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )
    #: str: *Required* audioSelection
    audio_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.AnnouncementFileLevelKey: *Optional* audioFile
    audio_file = Field(
        type=OCI.AnnouncementFileLevelKey,
        required=False,
    )
    #: str: *Optional* audioFileUrl
    audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Required* videoSelection
    video_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.AnnouncementFileLevelKey: *Optional* videoFile
    video_file = Field(
        type=OCI.AnnouncementFileLevelKey,
        required=False,
    )
    #: str: *Optional* videoFileUrl
    video_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callWaitingAudioSelection
    call_waiting_audio_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.AnnouncementFileLevelKey: *Optional* callWaitingAudioFile
    call_waiting_audio_file = Field(
        type=OCI.AnnouncementFileLevelKey,
        required=False,
    )
    #: str: *Optional* callWaitingAudioFileUrl
    call_waiting_audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callWaitingVideoSelection
    call_waiting_video_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.AnnouncementFileLevelKey: *Optional* callWaitingVideoFile
    call_waiting_video_file = Field(
        type=OCI.AnnouncementFileLevelKey,
        required=False,
    )
    #: str: *Optional* callWaitingVideoFileUrl
    call_waiting_video_file_url = Field(
        type=str,
        required=False,
    )


class UserCustomRingbackUserGetCriteriaResponse21(OCIResponse):
    """
    Response to the ``UserCustomRingbackUserGetCriteriaRequest21()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
        E(
            "call_to_number",
            "callToNumber",
            OCI.CallToNumber,
            True,
            False,
            False,
        ),
        E(
            "audio_selection",
            "audioSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file",
            "audioFile",
            OCI.AnnouncementFileLevelKey,
            True,
            False,
            False,
        ),
        E(
            "audio_file_url",
            "audioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_selection",
            "videoSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_file",
            "videoFile",
            OCI.AnnouncementFileLevelKey,
            True,
            False,
            False,
        ),
        E(
            "video_file_url",
            "videoFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_audio_selection",
            "callWaitingAudioSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_audio_file",
            "callWaitingAudioFile",
            OCI.AnnouncementFileLevelKey,
            True,
            False,
            False,
        ),
        E(
            "call_waiting_audio_file_url",
            "callWaitingAudioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_video_selection",
            "callWaitingVideoSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "call_waiting_video_file",
            "callWaitingVideoFile",
            OCI.AnnouncementFileLevelKey,
            True,
            False,
            False,
        ),
        E(
            "call_waiting_video_file_url",
            "callWaitingVideoFileUrl",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )
    #: OCI.CallToNumber: *Optional* callToNumber
    call_to_number = Field(
        type=OCI.CallToNumber,
        required=False,
    )
    #: str: *Required* audioSelection
    audio_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.AnnouncementFileLevelKey: *Optional* audioFile
    audio_file = Field(
        type=OCI.AnnouncementFileLevelKey,
        required=False,
    )
    #: str: *Optional* audioFileUrl
    audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Required* videoSelection
    video_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.AnnouncementFileLevelKey: *Optional* videoFile
    video_file = Field(
        type=OCI.AnnouncementFileLevelKey,
        required=False,
    )
    #: str: *Optional* videoFileUrl
    video_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callWaitingAudioSelection
    call_waiting_audio_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.AnnouncementFileLevelKey: *Optional* callWaitingAudioFile
    call_waiting_audio_file = Field(
        type=OCI.AnnouncementFileLevelKey,
        required=False,
    )
    #: str: *Optional* callWaitingAudioFileUrl
    call_waiting_audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callWaitingVideoSelection
    call_waiting_video_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.AnnouncementFileLevelKey: *Optional* callWaitingVideoFile
    call_waiting_video_file = Field(
        type=OCI.AnnouncementFileLevelKey,
        required=False,
    )
    #: str: *Optional* callWaitingVideoFileUrl
    call_waiting_video_file_url = Field(
        type=str,
        required=False,
    )


class UserEnhancedCallLogsGetListResponse(OCIResponse):
    """
    Response to ``UserEnhancedCallLogsGetListRequest()``.
    Replaced By ``UserEnhancedCallLogsGetListResponse14sp4()``
    """

    _ELEMENTS = (
        E(
            "placed",
            "placed",
            OCI.EnhancedCallLogsEntry,
            True,
            False,
            False,
        ),
        E(
            "received",
            "received",
            OCI.EnhancedCallLogsEntry,
            True,
            False,
            False,
        ),
        E(
            "missed",
            "missed",
            OCI.EnhancedCallLogsEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.EnhancedCallLogsEntry: *Optional* placed
    placed = Field(
        type=OCI.EnhancedCallLogsEntry,
        required=False,
    )
    #: OCI.EnhancedCallLogsEntry: *Optional* received
    received = Field(
        type=OCI.EnhancedCallLogsEntry,
        required=False,
    )
    #: OCI.EnhancedCallLogsEntry: *Optional* missed
    missed = Field(
        type=OCI.EnhancedCallLogsEntry,
        required=False,
    )


class UserEnhancedCallLogsGetListResponse14sp4(OCIResponse):
    """
    Response to ``UserEnhancedCallLogsGetListRequest14sp4()``.
    Replaced By ``UserEnhancedCallLogsGetListResponse16()``
    """

    _ELEMENTS = (
        E(
            "placed",
            "placed",
            OCI.CallLogsEntry,
            True,
            False,
            False,
        ),
        E(
            "received",
            "received",
            OCI.CallLogsEntry,
            True,
            False,
            False,
        ),
        E(
            "missed",
            "missed",
            OCI.CallLogsEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.CallLogsEntry: *Optional* placed
    placed = Field(
        type=OCI.CallLogsEntry,
        required=False,
    )
    #: OCI.CallLogsEntry: *Optional* received
    received = Field(
        type=OCI.CallLogsEntry,
        required=False,
    )
    #: OCI.CallLogsEntry: *Optional* missed
    missed = Field(
        type=OCI.CallLogsEntry,
        required=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()``
    """

    _ELEMENTS = (
        E(
            "total_number_of_rows",
            "totalNumberOfRows",
            int,
            False,
            True,
            False,
        ),
        E(
            "call_log",
            "callLog",
            OCI.MixedCallLogsEntry,
            True,
            False,
            False,
        ),
    )
    #: int: *Required* totalNumberOfRows
    total_number_of_rows = Field(
        type=int,
        required=True,
    )
    #: OCI.MixedCallLogsEntry: *Optional* callLog
    call_log = Field(
        type=OCI.MixedCallLogsEntry,
        required=False,
    )


class UserExecutiveGetFilteringSelectiveCriteriaResponse(OCIResponse):
    """
    Response to the ``UserExecutiveGetFilteringSelectiveCriteriaRequest()``.

    Replaced By ``UserExecutiveGetFilteringSelectiveCriteriaResponse21()``
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "filter",
            "filter",
            bool,
            False,
            True,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.ExecutiveCallFilteringCriteriaFromDn,
            True,
            True,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* filter
    filter = Field(
        type=bool,
        required=True,
    )
    #: OCI.ExecutiveCallFilteringCriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.ExecutiveCallFilteringCriteriaFromDn,
        required=True,
    )


class UserExecutiveGetFilteringSelectiveCriteriaResponse21(OCIResponse):
    """
    Response to the ``UserExecutiveGetFilteringSelectiveCriteriaRequest21()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "filter",
            "filter",
            bool,
            False,
            True,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.ExecutiveCallFilteringCriteriaFromDn,
            True,
            True,
            False,
        ),
        E(
            "call_to_number",
            "callToNumber",
            OCI.CallToNumber,
            True,
            False,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* filter
    filter = Field(
        type=bool,
        required=True,
    )
    #: OCI.ExecutiveCallFilteringCriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.ExecutiveCallFilteringCriteriaFromDn,
        required=True,
    )
    #: OCI.CallToNumber: *Optional* callToNumber
    call_to_number = Field(
        type=OCI.CallToNumber,
        required=False,
    )


class UserFeatureAccessCodeGetListResponse(OCIResponse):
    """
    Response to the ``UserFeatureAccessCodeGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "feature_access_code",
            "featureAccessCode",
            OCI.FeatureAccessCodeEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.FeatureAccessCodeEntry: *Optional* featureAccessCode
    feature_access_code = Field(
        type=OCI.FeatureAccessCodeEntry,
        required=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()``
    """

    _ELEMENTS = (
        E(
            "feature_access_code",
            "featureAccessCode",
            OCI.FeatureAccessCodeEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.FeatureAccessCodeEntry: *Optional* featureAccessCode
    feature_access_code = Field(
        type=OCI.FeatureAccessCodeEntry,
        required=False,
    )


class UserFeatureAccessCodeGetListResponse21(OCIResponse):
    """
    Response to the ``UserFeatureAccessCodeGetListRequest21()``.

    In release 20 the "Call Recording" FAC name is changed to
    "Call Recording Start".
    """

    _ELEMENTS = (
        E(
            "feature_access_code",
            "featureAccessCode",
            OCI.FeatureAccessCodeReadEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.FeatureAccessCodeReadEntry: *Optional* featureAccessCode
    feature_access_code = Field(
        type=OCI.FeatureAccessCodeReadEntry,
        required=False,
    )


class UserGroupNightForwardingGetResponse(OCIResponse):
    """
    Response to ``UserGroupNightForwardingGetRequest()``.
    businessHours and holidaySchedule are returned in the response only when
    groupNightForwarding is ‘Auto On’.
    """

    _ELEMENTS = (
        E(
            "night_forwarding",
            "nightForwarding",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_night_forwarding",
            "groupNightForwarding",
            str,
            False,
            True,
            False,
        ),
        E(
            "business_hours",
            "businessHours",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* nightForwarding
    night_forwarding = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupNightForwarding
    group_night_forwarding = Field(
        type=str,
        required=True,
    )
    #: OCI.TimeSchedule: *Optional* businessHours
    business_hours = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )


class UserHolidayScheduleGetResponse(OCIResponse):
    """
    Response to the ``UserHolidayScheduleGetRequest()``.
    The response contains the user?s holiday schedule information.
    """

    _ELEMENTS = (
        E(
            "holiday_schedule_name",
            "holidayScheduleName",
            str,
            False,
            True,
            False,
        ),
        E(
            "holiday01",
            "holiday01",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday02",
            "holiday02",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday03",
            "holiday03",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday04",
            "holiday04",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday05",
            "holiday05",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday06",
            "holiday06",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday07",
            "holiday07",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday08",
            "holiday08",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday09",
            "holiday09",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday10",
            "holiday10",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday11",
            "holiday11",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday12",
            "holiday12",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday13",
            "holiday13",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday14",
            "holiday14",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday15",
            "holiday15",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday16",
            "holiday16",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday17",
            "holiday17",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday18",
            "holiday18",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday19",
            "holiday19",
            OCI.Holiday,
            True,
            False,
            False,
        ),
        E(
            "holiday20",
            "holiday20",
            OCI.Holiday,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* holidayScheduleName
    holiday_schedule_name = Field(
        type=str,
        required=True,
    )
    #: OCI.Holiday: *Optional* holiday01
    holiday01 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday02
    holiday02 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday03
    holiday03 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday04
    holiday04 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday05
    holiday05 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday06
    holiday06 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday07
    holiday07 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday08
    holiday08 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday09
    holiday09 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday10
    holiday10 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday11
    holiday11 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday12
    holiday12 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday13
    holiday13 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday14
    holiday14 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday15
    holiday15 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday16
    holiday16 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday17
    holiday17 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday18
    holiday18 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday19
    holiday19 = Field(
        type=OCI.Holiday,
        required=False,
    )
    #: OCI.Holiday: *Optional* holiday20
    holiday20 = Field(
        type=OCI.Holiday,
        required=False,
    )


class UserLDAPIntegrationGetDirectoryEntryResponse(OCIResponse):
    """
    Response to ``UserLDAPIntegrationGetDirectoryEntryRequest()``.
    """

    _ELEMENTS = (
        E(
            "data",
            "data",
            OCI.LDAPEntryField,
            True,
            False,
            False,
        ),
    )
    #: OCI.LDAPEntryField: *Optional* data
    data = Field(
        type=OCI.LDAPEntryField,
        required=False,
    )


class UserMaliciousCallTraceGetResponse(OCIResponse):
    """
    Response to ``UserMaliciousCallTraceGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "trace_type_selection",
            "traceTypeSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "trace_for_time_period",
            "traceForTimePeriod",
            bool,
            False,
            True,
            False,
        ),
        E(
            "trace_time_period",
            "traceTimePeriod",
            OCI.MaliciousCallTraceTimePeriod,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* traceTypeSelection
    trace_type_selection = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* traceForTimePeriod
    trace_for_time_period = Field(
        type=bool,
        required=True,
    )
    #: OCI.MaliciousCallTraceTimePeriod: *Optional* traceTimePeriod
    trace_time_period = Field(
        type=OCI.MaliciousCallTraceTimePeriod,
        required=False,
    )


class UserMeetMeConferencingGetConferenceGreetingResponse20(OCIResponse):
    """
    Response to ``UserMeetMeConferencingGetConferenceGreetingRequest20()``.
    Contains the information of a conference custom greeting.
    """

    _ELEMENTS = (
        E(
            "play_entrance_greeting",
            "playEntranceGreeting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "entrance_greeting_file",
            "entranceGreetingFile",
            OCI.AnnouncementFileKey,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* playEntranceGreeting
    play_entrance_greeting = Field(
        type=bool,
        required=True,
    )
    #: OCI.AnnouncementFileKey: *Optional* entranceGreetingFile
    entrance_greeting_file = Field(
        type=OCI.AnnouncementFileKey,
        required=False,
    )


class UserMeetMeConferencingGetConferenceResponse(OCIResponse):
    """
    Response to ``UserMeetMeConferencingGetConferenceRequest()``.
    Contains the information of a conference.
    """

    _ELEMENTS = (
        E(
            "title",
            "title",
            str,
            False,
            True,
            False,
        ),
        E(
            "estimated_participants",
            "estimatedParticipants",
            int,
            False,
            False,
            False,
        ),
        E(
            "restrict_participants",
            "restrictParticipants",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_participants",
            "maxParticipants",
            int,
            False,
            True,
            False,
        ),
        E(
            "account_code",
            "accountCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "mute_all_attendees_on_entry",
            "muteAllAttendeesOnEntry",
            bool,
            False,
            True,
            False,
        ),
        E(
            "end_conference_on_moderator_exit",
            "endConferenceOnModeratorExit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "moderator_required",
            "moderatorRequired",
            bool,
            False,
            True,
            False,
        ),
        E(
            "attendee_notification",
            "attendeeNotification",
            str,
            False,
            True,
            False,
        ),
        E(
            "conference_schedule",
            "conferenceSchedule",
            OCI.MeetMeConferencingConferenceSchedule,
            True,
            True,
            False,
        ),
        E(
            "moderator_pin",
            "moderatorPin",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* title
    title = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* estimatedParticipants
    estimated_participants = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* restrictParticipants
    restrict_participants = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxParticipants
    max_participants = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* accountCode
    account_code = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* muteAllAttendeesOnEntry
    mute_all_attendees_on_entry = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* endConferenceOnModeratorExit
    end_conference_on_moderator_exit = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* moderatorRequired
    moderator_required = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* attendeeNotification
    attendee_notification = Field(
        type=str,
        required=True,
    )
    #: OCI.MeetMeConferencingConferenceSchedule: *Required* conferenceSchedule
    conference_schedule = Field(
        type=OCI.MeetMeConferencingConferenceSchedule,
        required=True,
    )
    #: str: *Required* moderatorPin
    moderator_pin = Field(
        type=str,
        required=True,
    )


class UserMeetMeConferencingGetConferenceResponse19(OCIResponse):
    """
    Response to ``UserMeetMeConferencingGetConferenceRequest19()``.
    Contains the information of a conference.
    """

    _ELEMENTS = (
        E(
            "title",
            "title",
            str,
            False,
            True,
            False,
        ),
        E(
            "estimated_participants",
            "estimatedParticipants",
            int,
            False,
            False,
            False,
        ),
        E(
            "restrict_participants",
            "restrictParticipants",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_participants",
            "maxParticipants",
            int,
            False,
            True,
            False,
        ),
        E(
            "account_code",
            "accountCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "mute_all_attendees_on_entry",
            "muteAllAttendeesOnEntry",
            bool,
            False,
            True,
            False,
        ),
        E(
            "end_conference_on_moderator_exit",
            "endConferenceOnModeratorExit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "moderator_required",
            "moderatorRequired",
            bool,
            False,
            True,
            False,
        ),
        E(
            "require_security_pin",
            "requireSecurityPin",
            bool,
            False,
            True,
            False,
        ),
        E(
            "security_pin",
            "securityPin",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_unique_identifier",
            "allowUniqueIdentifier",
            bool,
            False,
            True,
            False,
        ),
        E(
            "attendee_notification",
            "attendeeNotification",
            str,
            False,
            True,
            False,
        ),
        E(
            "conference_schedule",
            "conferenceSchedule",
            OCI.MeetMeConferencingConferenceSchedule,
            True,
            True,
            False,
        ),
        E(
            "moderator_pin",
            "moderatorPin",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* title
    title = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* estimatedParticipants
    estimated_participants = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* restrictParticipants
    restrict_participants = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxParticipants
    max_participants = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* accountCode
    account_code = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* muteAllAttendeesOnEntry
    mute_all_attendees_on_entry = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* endConferenceOnModeratorExit
    end_conference_on_moderator_exit = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* moderatorRequired
    moderator_required = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requireSecurityPin
    require_security_pin = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* securityPin
    security_pin = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowUniqueIdentifier
    allow_unique_identifier = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* attendeeNotification
    attendee_notification = Field(
        type=str,
        required=True,
    )
    #: OCI.MeetMeConferencingConferenceSchedule: *Required* conferenceSchedule
    conference_schedule = Field(
        type=OCI.MeetMeConferencingConferenceSchedule,
        required=True,
    )
    #: str: *Required* moderatorPin
    moderator_pin = Field(
        type=str,
        required=True,
    )


class UserMeetMeConferencingGetConferenceResponse20(OCIResponse):
    """
    Response to ``UserMeetMeConferencingGetConferenceRequest20()``.
    Contains the information of a conference.
    """

    _ELEMENTS = (
        E(
            "title",
            "title",
            str,
            False,
            True,
            False,
        ),
        E(
            "estimated_participants",
            "estimatedParticipants",
            int,
            False,
            False,
            False,
        ),
        E(
            "restrict_participants",
            "restrictParticipants",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_participants",
            "maxParticipants",
            int,
            False,
            True,
            False,
        ),
        E(
            "account_code",
            "accountCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "mute_all_attendees_on_entry",
            "muteAllAttendeesOnEntry",
            bool,
            False,
            True,
            False,
        ),
        E(
            "end_conference_on_moderator_exit",
            "endConferenceOnModeratorExit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "moderator_required",
            "moderatorRequired",
            bool,
            False,
            True,
            False,
        ),
        E(
            "require_security_pin",
            "requireSecurityPin",
            bool,
            False,
            True,
            False,
        ),
        E(
            "security_pin",
            "securityPin",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_unique_identifier",
            "allowUniqueIdentifier",
            bool,
            False,
            True,
            False,
        ),
        E(
            "attendee_notification",
            "attendeeNotification",
            str,
            False,
            True,
            False,
        ),
        E(
            "conference_schedule",
            "conferenceSchedule",
            OCI.MeetMeConferencingConferenceSchedule,
            True,
            True,
            False,
        ),
        E(
            "moderator_pin",
            "moderatorPin",
            str,
            False,
            True,
            False,
        ),
        E(
            "host_time_zone",
            "hostTimeZone",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* title
    title = Field(
        type=str,
        required=True,
    )
    #: int: *Optional* estimatedParticipants
    estimated_participants = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* restrictParticipants
    restrict_participants = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxParticipants
    max_participants = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* accountCode
    account_code = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* muteAllAttendeesOnEntry
    mute_all_attendees_on_entry = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* endConferenceOnModeratorExit
    end_conference_on_moderator_exit = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* moderatorRequired
    moderator_required = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requireSecurityPin
    require_security_pin = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* securityPin
    security_pin = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowUniqueIdentifier
    allow_unique_identifier = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* attendeeNotification
    attendee_notification = Field(
        type=str,
        required=True,
    )
    #: OCI.MeetMeConferencingConferenceSchedule: *Required* conferenceSchedule
    conference_schedule = Field(
        type=OCI.MeetMeConferencingConferenceSchedule,
        required=True,
    )
    #: str: *Required* moderatorPin
    moderator_pin = Field(
        type=str,
        required=True,
    )
    #: str: *Required* hostTimeZone
    host_time_zone = Field(
        type=str,
        required=True,
    )


class UserMusicOnHoldUserGetResponse(OCIResponse):
    """
    Response to ``UserMusicOnHoldUserGetRequest()``.
    Replaced By ``UserMusicOnHoldUserGetResponse16()``
    """

    _ELEMENTS = (
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "source",
            "source",
            OCI.MusicOnHoldUserSourceRead,
            True,
            True,
            False,
        ),
        E(
            "use_alternate_source_for_internal_calls",
            "useAlternateSourceForInternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "internal_source",
            "internalSource",
            OCI.MusicOnHoldUserSourceRead,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: OCI.MusicOnHoldUserSourceRead: *Required* source
    source = Field(
        type=OCI.MusicOnHoldUserSourceRead,
        required=True,
    )
    #: bool: *Required* useAlternateSourceForInternalCalls
    use_alternate_source_for_internal_calls = Field(
        type=bool,
        required=True,
    )
    #: OCI.MusicOnHoldUserSourceRead: *Optional* internalSource
    internal_source = Field(
        type=OCI.MusicOnHoldUserSourceRead,
        required=False,
    )


class UserMusicOnHoldUserGetResponse16(OCIResponse):
    """
    Response to ``UserMusicOnHoldUserGetRequest16()``.
    """

    _ELEMENTS = (
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "source",
            "source",
            OCI.MusicOnHoldUserSourceRead16,
            True,
            True,
            False,
        ),
        E(
            "use_alternate_source_for_internal_calls",
            "useAlternateSourceForInternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "internal_source",
            "internalSource",
            OCI.MusicOnHoldUserSourceRead16,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: OCI.MusicOnHoldUserSourceRead16: *Required* source
    source = Field(
        type=OCI.MusicOnHoldUserSourceRead16,
        required=True,
    )
    #: bool: *Required* useAlternateSourceForInternalCalls
    use_alternate_source_for_internal_calls = Field(
        type=bool,
        required=True,
    )
    #: OCI.MusicOnHoldUserSourceRead16: *Optional* internalSource
    internal_source = Field(
        type=OCI.MusicOnHoldUserSourceRead16,
        required=False,
    )


class UserMusicOnHoldUserGetResponse20(OCIResponse):
    """
    Response to ``UserMusicOnHoldUserGetRequest20()``.
    """

    _ELEMENTS = (
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "source",
            "source",
            OCI.MusicOnHoldUserSourceRead20,
            True,
            True,
            False,
        ),
        E(
            "use_alternate_source_for_internal_calls",
            "useAlternateSourceForInternalCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "internal_source",
            "internalSource",
            OCI.MusicOnHoldUserSourceRead20,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: OCI.MusicOnHoldUserSourceRead20: *Required* source
    source = Field(
        type=OCI.MusicOnHoldUserSourceRead20,
        required=True,
    )
    #: bool: *Required* useAlternateSourceForInternalCalls
    use_alternate_source_for_internal_calls = Field(
        type=bool,
        required=True,
    )
    #: OCI.MusicOnHoldUserSourceRead20: *Optional* internalSource
    internal_source = Field(
        type=OCI.MusicOnHoldUserSourceRead20,
        required=False,
    )


class UserOutgoingCallingPlanAuthorizationCodeGetListResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanAuthorizationCodeGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "code_entry",
            "codeEntry",
            OCI.OutgoingCallingPlanAuthorizationCodeEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.OutgoingCallingPlanAuthorizationCodeEntry: *Optional* codeEntry
    code_entry = Field(
        type=OCI.OutgoingCallingPlanAuthorizationCodeEntry,
        required=False,
    )


class UserOutgoingCallingPlanCallMeNowGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanCallMeNowGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_custom_settings",
            "useCustomSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_permissions",
            "userPermissions",
            OCI.OutgoingCallingPlanCallMeNowPermissions,
            True,
            True,
            False,
        ),
    )
    #: bool: *Required* useCustomSettings
    use_custom_settings = Field(
        type=bool,
        required=True,
    )
    #: OCI.OutgoingCallingPlanCallMeNowPermissions: *Required* userPermissions
    user_permissions = Field(
        type=OCI.OutgoingCallingPlanCallMeNowPermissions,
        required=True,
    )


class UserOutgoingCallingPlanOriginatingGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanOriginatingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_custom_settings",
            "useCustomSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_permissions",
            "userPermissions",
            OCI.OutgoingCallingPlanOriginatingPermissions,
            True,
            True,
            False,
        ),
    )
    #: bool: *Required* useCustomSettings
    use_custom_settings = Field(
        type=bool,
        required=True,
    )
    #: OCI.OutgoingCallingPlanOriginatingPermissions: *Required* userPermissions
    user_permissions = Field(
        type=OCI.OutgoingCallingPlanOriginatingPermissions,
        required=True,
    )


class UserOutgoingCallingPlanRedirectedGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanRedirectedGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_custom_settings",
            "useCustomSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_permissions",
            "userPermissions",
            OCI.OutgoingCallingPlanRedirectedPermissions,
            True,
            True,
            False,
        ),
    )
    #: bool: *Required* useCustomSettings
    use_custom_settings = Field(
        type=bool,
        required=True,
    )
    #: OCI.OutgoingCallingPlanRedirectedPermissions: *Required* userPermissions
    user_permissions = Field(
        type=OCI.OutgoingCallingPlanRedirectedPermissions,
        required=True,
    )


class UserOutgoingCallingPlanRedirectingGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanRedirectingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_custom_settings",
            "useCustomSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_permissions",
            "userPermissions",
            OCI.OutgoingCallingPlanRedirectingPermissions,
            True,
            True,
            False,
        ),
    )
    #: bool: *Required* useCustomSettings
    use_custom_settings = Field(
        type=bool,
        required=True,
    )
    #: OCI.OutgoingCallingPlanRedirectingPermissions: *Required* userPermissions
    user_permissions = Field(
        type=OCI.OutgoingCallingPlanRedirectingPermissions,
        required=True,
    )


class UserOutgoingCallingPlanTransferNumbersGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanTransferNumbersGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_custom_settings",
            "useCustomSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_numbers",
            "userNumbers",
            OCI.OutgoingCallingPlanTransferNumbers,
            True,
            True,
            False,
        ),
    )
    #: bool: *Required* useCustomSettings
    use_custom_settings = Field(
        type=bool,
        required=True,
    )
    #: OCI.OutgoingCallingPlanTransferNumbers: *Required* userNumbers
    user_numbers = Field(
        type=OCI.OutgoingCallingPlanTransferNumbers,
        required=True,
    )


class UserPersonalAssistantCallToNumberGetListResponse(OCIResponse):
    """
    Response to the ``UserPersonalAssistantCallToNumberGetListRequest()``.
    Contains a list of assigned Call to Numbers".
    """

    _ELEMENTS = (
        E(
            "call_to_number",
            "callToNumber",
            OCI.CallToNumber,
            True,
            False,
            False,
        ),
    )
    #: OCI.CallToNumber: *Optional* callToNumber
    call_to_number = Field(
        type=OCI.CallToNumber,
        required=False,
    )


class UserPersonalPhoneListGetListResponse(OCIResponse):
    """
    Response to the ``UserPersonalPhoneListGetListRequest()``.
    The response contains a user's personal phone list.
    """

    _ELEMENTS = (
        E(
            "entry",
            "entry",
            OCI.PhoneListEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.PhoneListEntry: *Optional* entry
    entry = Field(
        type=OCI.PhoneListEntry,
        required=False,
    )


class UserPreAlertingAnnouncementGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserPreAlertingAnnouncementGetCriteriaRequest()``.

    Replaced By ``UserPreAlertingAnnouncementGetCriteriaResponse21()``
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )


class UserPreAlertingAnnouncementGetCriteriaResponse21(OCIResponse):
    """
    Response to the ``UserPreAlertingAnnouncementGetCriteriaRequest21()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
        E(
            "call_to_number",
            "callToNumber",
            OCI.CallToNumber,
            True,
            False,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )
    #: OCI.CallToNumber: *Optional* callToNumber
    call_to_number = Field(
        type=OCI.CallToNumber,
        required=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.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_selection",
            "audioSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file",
            "audioFile",
            OCI.AnnouncementFileLevelKey,
            True,
            False,
            False,
        ),
        E(
            "audio_file_url",
            "audioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_selection",
            "videoSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_file",
            "videoFile",
            OCI.AnnouncementFileLevelKey,
            True,
            False,
            False,
        ),
        E(
            "video_file_url",
            "videoFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioSelection
    audio_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.AnnouncementFileLevelKey: *Optional* audioFile
    audio_file = Field(
        type=OCI.AnnouncementFileLevelKey,
        required=False,
    )
    #: str: *Optional* audioFileUrl
    audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Required* videoSelection
    video_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.AnnouncementFileLevelKey: *Optional* videoFile
    video_file = Field(
        type=OCI.AnnouncementFileLevelKey,
        required=False,
    )
    #: str: *Optional* videoFileUrl
    video_file_url = Field(
        type=str,
        required=False,
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


class UserPreferredCarrierUserGetResponse(OCIResponse):
    """
    Response to a ``UserPreferredCarrierUserGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "intra_lata_carrier",
            "intraLataCarrier",
            OCI.UserPreferredCarrierName,
            True,
            True,
            False,
        ),
        E(
            "inter_lata_carrier",
            "interLataCarrier",
            OCI.UserPreferredCarrierName,
            True,
            True,
            False,
        ),
        E(
            "international_carrier",
            "internationalCarrier",
            OCI.UserPreferredCarrierName,
            True,
            True,
            False,
        ),
    )
    #: OCI.UserPreferredCarrierName: *Required* intraLataCarrier
    intra_lata_carrier = Field(
        type=OCI.UserPreferredCarrierName,
        required=True,
    )
    #: OCI.UserPreferredCarrierName: *Required* interLataCarrier
    inter_lata_carrier = Field(
        type=OCI.UserPreferredCarrierName,
        required=True,
    )
    #: OCI.UserPreferredCarrierName: *Required* internationalCarrier
    international_carrier = Field(
        type=OCI.UserPreferredCarrierName,
        required=True,
    )


class UserPriorityAlertGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserPriorityAlertGetCriteriaRequest()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.PriorityAlertCriteriaFromDn,
            True,
            True,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.PriorityAlertCriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.PriorityAlertCriteriaFromDn,
        required=True,
    )


class UserPriorityAlertGetCriteriaResponse16(OCIResponse):
    """
    Response to the ``UserPriorityAlertGetCriteriaRequest16()``.

    Replaced By ``UserPriorityAlertGetCriteriaResponse21()``
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.PriorityAlertCriteriaFromDn,
            True,
            True,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.PriorityAlertCriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.PriorityAlertCriteriaFromDn,
        required=True,
    )


class UserPriorityAlertGetCriteriaResponse21(OCIResponse):
    """
    Response to the ``UserPriorityAlertGetCriteriaRequest21()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.PriorityAlertCriteriaFromDn,
            True,
            True,
            False,
        ),
        E(
            "call_to_number",
            "callToNumber",
            OCI.CallToNumber,
            True,
            False,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.PriorityAlertCriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.PriorityAlertCriteriaFromDn,
        required=True,
    )
    #: OCI.CallToNumber: *Optional* callToNumber
    call_to_number = Field(
        type=OCI.CallToNumber,
        required=False,
    )


class UserScheduleGetEventResponse(OCIResponse):
    """
    Response to ``UserScheduleGetEventRequest()``.
    The response contains the event of the user schedule.
    """

    _ELEMENTS = (
        E(
            "start_date",
            "startDate",
            str,
            False,
            True,
            False,
        ),
        E(
            "all_day_event",
            "allDayEvent",
            bool,
            False,
            True,
            False,
        ),
        E(
            "start_time",
            "startTime",
            OCI.HourMinute,
            True,
            True,
            False,
        ),
        E(
            "end_time",
            "endTime",
            OCI.HourMinute,
            True,
            True,
            False,
        ),
        E(
            "end_date",
            "endDate",
            str,
            False,
            True,
            False,
        ),
        E(
            "recurrence",
            "recurrence",
            OCI.Recurrence,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* startDate
    start_date = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* allDayEvent
    all_day_event = Field(
        type=bool,
        required=True,
    )
    #: OCI.HourMinute: *Required* startTime
    start_time = Field(
        type=OCI.HourMinute,
        required=True,
    )
    #: OCI.HourMinute: *Required* endTime
    end_time = Field(
        type=OCI.HourMinute,
        required=True,
    )
    #: str: *Required* endDate
    end_date = Field(
        type=str,
        required=True,
    )
    #: OCI.Recurrence: *Optional* recurrence
    recurrence = Field(
        type=OCI.Recurrence,
        required=False,
    )


class UserSelectiveCallAcceptanceGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserSelectiveCallAcceptanceGetCriteriaRequest()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )


class UserSelectiveCallAcceptanceGetCriteriaResponse16(OCIResponse):
    """
    Response to the ``UserSelectiveCallAcceptanceGetCriteriaRequest16()``.

    Replaced By ``UserSelectiveCallAcceptanceGetCriteriaResponse21()``
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )


class UserSelectiveCallAcceptanceGetCriteriaResponse21(OCIResponse):
    """
    Response to the ``UserSelectiveCallAcceptanceGetCriteriaRequest21()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
        E(
            "call_to_number",
            "callToNumber",
            OCI.CallToNumber,
            True,
            False,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )
    #: OCI.CallToNumber: *Optional* callToNumber
    call_to_number = Field(
        type=OCI.CallToNumber,
        required=False,
    )


class UserSelectiveCallRejectionGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserSelectiveCallRejectionGetCriteriaRequest()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )


class UserSelectiveCallRejectionGetCriteriaResponse16(OCIResponse):
    """
    Response to the ``UserSelectiveCallRejectionGetCriteriaRequest16()``.
    Replaced By ``UserSelectiveCallRejectionGetCriteriaResponse16sp1()``
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.SelectiveCallRejectionCriteriaCallType,
            True,
            True,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.SelectiveCallRejectionCriteriaCallType: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.SelectiveCallRejectionCriteriaCallType,
        required=True,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )


class UserSelectiveCallRejectionGetCriteriaResponse16sp1(OCIResponse):
    """
    Response to the ``UserSelectiveCallRejectionGetCriteriaRequest16sp1()``.
    Private Phone Numbers are omitted from the fromDnCriteria.

    Replaced By ``UserSelectiveCallRejectionGetCriteriaResponse21()``
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.SelectiveCallRejectionCriteriaCallType,
            True,
            True,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "private",
            "private",
            bool,
            False,
            True,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.SelectiveCallRejectionCriteriaCallType: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.SelectiveCallRejectionCriteriaCallType,
        required=True,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* private
    private = Field(
        type=bool,
        required=True,
    )


class UserSelectiveCallRejectionGetCriteriaResponse21(OCIResponse):
    """
    Response to the ``UserSelectiveCallRejectionGetCriteriaRequest21()``.
    Private Phone Numbers are omitted from the fromDnCriteria.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.SelectiveCallRejectionCriteriaCallType,
            True,
            True,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "private",
            "private",
            bool,
            False,
            True,
            False,
        ),
        E(
            "call_to_number",
            "callToNumber",
            OCI.CallToNumber,
            True,
            False,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.SelectiveCallRejectionCriteriaCallType: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.SelectiveCallRejectionCriteriaCallType,
        required=True,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* private
    private = Field(
        type=bool,
        required=True,
    )
    #: OCI.CallToNumber: *Optional* callToNumber
    call_to_number = Field(
        type=OCI.CallToNumber,
        required=False,
    )


class UserSequentialRingGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserSequentialRingGetCriteriaRequest()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )


class UserSequentialRingGetCriteriaResponse16(OCIResponse):
    """
    Response to the ``UserSequentialRingGetCriteriaRequest16()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "ring_base_location_first",
            "ringBaseLocationFirst",
            bool,
            False,
            True,
            False,
        ),
        E(
            "base_location_number_of_rings",
            "baseLocationNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "continue_if_base_location_is_busy",
            "continueIfBaseLocationIsBusy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "caller_may_stop_search",
            "callerMayStopSearch",
            bool,
            False,
            True,
            False,
        ),
        E(
            "location01",
            "Location01",
            OCI.SequentialRingLocation,
            True,
            True,
            False,
        ),
        E(
            "location02",
            "Location02",
            OCI.SequentialRingLocation,
            True,
            True,
            False,
        ),
        E(
            "location03",
            "Location03",
            OCI.SequentialRingLocation,
            True,
            True,
            False,
        ),
        E(
            "location04",
            "Location04",
            OCI.SequentialRingLocation,
            True,
            True,
            False,
        ),
        E(
            "location05",
            "Location05",
            OCI.SequentialRingLocation,
            True,
            True,
            False,
        ),
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* ringBaseLocationFirst
    ring_base_location_first = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* baseLocationNumberOfRings
    base_location_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* continueIfBaseLocationIsBusy
    continue_if_base_location_is_busy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* callerMayStopSearch
    caller_may_stop_search = Field(
        type=bool,
        required=True,
    )
    #: OCI.SequentialRingLocation: *Required* Location01
    location01 = Field(
        type=OCI.SequentialRingLocation,
        required=True,
    )
    #: OCI.SequentialRingLocation: *Required* Location02
    location02 = Field(
        type=OCI.SequentialRingLocation,
        required=True,
    )
    #: OCI.SequentialRingLocation: *Required* Location03
    location03 = Field(
        type=OCI.SequentialRingLocation,
        required=True,
    )
    #: OCI.SequentialRingLocation: *Required* Location04
    location04 = Field(
        type=OCI.SequentialRingLocation,
        required=True,
    )
    #: OCI.SequentialRingLocation: *Required* Location05
    location05 = Field(
        type=OCI.SequentialRingLocation,
        required=True,
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "ring_base_location_first",
            "ringBaseLocationFirst",
            bool,
            False,
            True,
            False,
        ),
        E(
            "base_location_number_of_rings",
            "baseLocationNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "continue_if_base_location_is_busy",
            "continueIfBaseLocationIsBusy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "caller_may_stop_search",
            "callerMayStopSearch",
            bool,
            False,
            True,
            False,
        ),
        E(
            "location01",
            "Location01",
            OCI.SequentialRingLocation14sp4,
            True,
            True,
            False,
        ),
        E(
            "location02",
            "Location02",
            OCI.SequentialRingLocation14sp4,
            True,
            True,
            False,
        ),
        E(
            "location03",
            "Location03",
            OCI.SequentialRingLocation14sp4,
            True,
            True,
            False,
        ),
        E(
            "location04",
            "Location04",
            OCI.SequentialRingLocation14sp4,
            True,
            True,
            False,
        ),
        E(
            "location05",
            "Location05",
            OCI.SequentialRingLocation14sp4,
            True,
            True,
            False,
        ),
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* ringBaseLocationFirst
    ring_base_location_first = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* baseLocationNumberOfRings
    base_location_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* continueIfBaseLocationIsBusy
    continue_if_base_location_is_busy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* callerMayStopSearch
    caller_may_stop_search = Field(
        type=bool,
        required=True,
    )
    #: OCI.SequentialRingLocation14sp4: *Required* Location01
    location01 = Field(
        type=OCI.SequentialRingLocation14sp4,
        required=True,
    )
    #: OCI.SequentialRingLocation14sp4: *Required* Location02
    location02 = Field(
        type=OCI.SequentialRingLocation14sp4,
        required=True,
    )
    #: OCI.SequentialRingLocation14sp4: *Required* Location03
    location03 = Field(
        type=OCI.SequentialRingLocation14sp4,
        required=True,
    )
    #: OCI.SequentialRingLocation14sp4: *Required* Location04
    location04 = Field(
        type=OCI.SequentialRingLocation14sp4,
        required=True,
    )
    #: OCI.SequentialRingLocation14sp4: *Required* Location05
    location05 = Field(
        type=OCI.SequentialRingLocation14sp4,
        required=True,
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


class UserSimultaneousRingFamilyGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserSimultaneousRingFamilyGetCriteriaRequest()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "do_not_ring_if_on_call",
            "doNotRingIfOnCall",
            bool,
            False,
            True,
            False,
        ),
        E(
            "simultaneous_ring_number",
            "simultaneousRingNumber",
            OCI.SimultaneousRingNumber,
            True,
            False,
            False,
        ),
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* doNotRingIfOnCall
    do_not_ring_if_on_call = Field(
        type=bool,
        required=True,
    )
    #: OCI.SimultaneousRingNumber: *Optional* simultaneousRingNumber
    simultaneous_ring_number = Field(
        type=OCI.SimultaneousRingNumber,
        required=False,
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


class UserSimultaneousRingPersonalGetCriteriaResponse(OCIResponse):
    """
    Response to the ``UserSimultaneousRingPersonalGetCriteriaRequest()``.
    """

    _ELEMENTS = (
        E(
            "time_schedule",
            "timeSchedule",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "blacklisted",
            "blacklisted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "from_dn_criteria",
            "fromDnCriteria",
            OCI.CriteriaFromDn,
            True,
            True,
            False,
        ),
    )
    #: OCI.TimeSchedule: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: bool: *Required* blacklisted
    blacklisted = Field(
        type=bool,
        required=True,
    )
    #: OCI.CriteriaFromDn: *Required* fromDnCriteria
    from_dn_criteria = Field(
        type=OCI.CriteriaFromDn,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "do_not_ring_if_on_call",
            "doNotRingIfOnCall",
            bool,
            False,
            True,
            False,
        ),
        E(
            "simultaneous_ring_number",
            "simultaneousRingNumber",
            OCI.SimultaneousRingNumber,
            True,
            False,
            False,
        ),
        E(
            "criteria_table",
            "criteriaTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* doNotRingIfOnCall
    do_not_ring_if_on_call = Field(
        type=bool,
        required=True,
    )
    #: OCI.SimultaneousRingNumber: *Optional* simultaneousRingNumber
    simultaneous_ring_number = Field(
        type=OCI.SimultaneousRingNumber,
        required=False,
    )
    #: list: *Required* criteriaTable  *Tabular*
    criteria_table = Field(
        type=list,
        required=True,
    )


class UserSpeedDial100GetListResponse(OCIResponse):
    """
    Response to the ``UserSpeedDial100GetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "prefix",
            "prefix",
            str,
            False,
            True,
            False,
        ),
        E(
            "speed_dial_entry",
            "speedDialEntry",
            OCI.SpeedDial100Entry,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* prefix
    prefix = Field(
        type=str,
        required=True,
    )
    #: OCI.SpeedDial100Entry: *Optional* speedDialEntry
    speed_dial_entry = Field(
        type=OCI.SpeedDial100Entry,
        required=False,
    )


class UserSpeedDial100GetListResponse17sp1(OCIResponse):
    """
    Response to the ``UserSpeedDial100GetListRequest17sp1()``.
    """

    _ELEMENTS = (
        E(
            "prefix",
            "prefix",
            str,
            False,
            False,
            False,
        ),
        E(
            "speed_dial_entry",
            "speedDialEntry",
            OCI.SpeedDial100Entry,
            True,
            False,
            False,
        ),
    )
    #: str: *Optional* prefix
    prefix = Field(
        type=str,
        required=False,
    )
    #: OCI.SpeedDial100Entry: *Optional* speedDialEntry
    speed_dial_entry = Field(
        type=OCI.SpeedDial100Entry,
        required=False,
    )


class UserSpeedDial8GetListResponse(OCIResponse):
    """
    Response to the ``UserSpeedDial8GetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "speed_dial_entry",
            "speedDialEntry",
            OCI.SpeedDial8Entry,
            True,
            True,
            False,
        ),
    )
    #: OCI.SpeedDial8Entry: *Required* speedDialEntry
    speed_dial_entry = Field(
        type=OCI.SpeedDial8Entry,
        required=True,
    )


class UserTimeScheduleGetResponse(OCIResponse):
    """
    Response to the ``UserTimeScheduleGetRequest()``.
    The response contains the requested time schedule information.
    """

    _ELEMENTS = (
        E(
            "time_schedule_name",
            "timeScheduleName",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_interval01",
            "timeInterval01",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval02",
            "timeInterval02",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval03",
            "timeInterval03",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval04",
            "timeInterval04",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval05",
            "timeInterval05",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval06",
            "timeInterval06",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval07",
            "timeInterval07",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval08",
            "timeInterval08",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval09",
            "timeInterval09",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval10",
            "timeInterval10",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval11",
            "timeInterval11",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval12",
            "timeInterval12",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval13",
            "timeInterval13",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval14",
            "timeInterval14",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval15",
            "timeInterval15",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval16",
            "timeInterval16",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval17",
            "timeInterval17",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval18",
            "timeInterval18",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval19",
            "timeInterval19",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
        E(
            "time_interval20",
            "timeInterval20",
            OCI.TimeInterval,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* timeScheduleName
    time_schedule_name = Field(
        type=str,
        required=True,
    )
    #: OCI.TimeInterval: *Optional* timeInterval01
    time_interval01 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval02
    time_interval02 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval03
    time_interval03 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval04
    time_interval04 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval05
    time_interval05 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval06
    time_interval06 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval07
    time_interval07 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval08
    time_interval08 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval09
    time_interval09 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval10
    time_interval10 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval11
    time_interval11 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval12
    time_interval12 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval13
    time_interval13 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval14
    time_interval14 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval15
    time_interval15 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval16
    time_interval16 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval17
    time_interval17 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval18
    time_interval18 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval19
    time_interval19 = Field(
        type=OCI.TimeInterval,
        required=False,
    )
    #: OCI.TimeInterval: *Optional* timeInterval20
    time_interval20 = Field(
        type=OCI.TimeInterval,
        required=False,
    )


class UserVoiceMessagingUserGetGreetingResponse13mp16(OCIResponse):
    """
    Response to ``UserVoiceMessagingUserGetGreetingRequest13mp16()``.
    Contains the greeting configuration for a user's voice messaging.
    Replaced By ``UserVoiceMessagingUserGetGreetingResponse16()``
    """

    _ELEMENTS = (
        E(
            "busy_announcement_selection",
            "busyAnnouncementSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "busy_personal_audio_file",
            "busyPersonalAudioFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "busy_personal_video_file",
            "busyPersonalVideoFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "no_answer_announcement_selection",
            "noAnswerAnnouncementSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "no_answer_personal_audio_file",
            "noAnswerPersonalAudioFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "no_answer_personal_video_file",
            "noAnswerPersonalVideoFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "no_answer_alternate_greeting01",
            "noAnswerAlternateGreeting01",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead,
            True,
            False,
            False,
        ),
        E(
            "no_answer_alternate_greeting02",
            "noAnswerAlternateGreeting02",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead,
            True,
            False,
            False,
        ),
        E(
            "no_answer_alternate_greeting03",
            "noAnswerAlternateGreeting03",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead,
            True,
            False,
            False,
        ),
        E(
            "no_answer_number_of_rings",
            "noAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* busyAnnouncementSelection
    busy_announcement_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* busyPersonalAudioFile
    busy_personal_audio_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* busyPersonalVideoFile
    busy_personal_video_file = Field(
        type=str,
        required=False,
    )
    #: str: *Required* noAnswerAnnouncementSelection
    no_answer_announcement_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* noAnswerPersonalAudioFile
    no_answer_personal_audio_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* noAnswerPersonalVideoFile
    no_answer_personal_video_file = Field(
        type=str,
        required=False,
    )
    #: OCI.VoiceMessagingAlternateNoAnswerGreetingRead: *Optional*
    #: noAnswerAlternateGreeting01
    no_answer_alternate_greeting01 = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead,
        required=False,
    )
    #: OCI.VoiceMessagingAlternateNoAnswerGreetingRead: *Optional*
    #: noAnswerAlternateGreeting02
    no_answer_alternate_greeting02 = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead,
        required=False,
    )
    #: OCI.VoiceMessagingAlternateNoAnswerGreetingRead: *Optional*
    #: noAnswerAlternateGreeting03
    no_answer_alternate_greeting03 = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead,
        required=False,
    )
    #: int: *Required* noAnswerNumberOfRings
    no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )


class UserVoiceMessagingUserGetGreetingResponse16(OCIResponse):
    """
    Response to ``UserVoiceMessagingUserGetGreetingRequest16()``.
    Contains the greeting configuration for a user's voice messaging.
    """

    _ELEMENTS = (
        E(
            "busy_announcement_selection",
            "busyAnnouncementSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "busy_personal_audio_file",
            "busyPersonalAudioFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "busy_personal_audio_media_type",
            "busyPersonalAudioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "busy_personal_video_file",
            "busyPersonalVideoFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "busy_personal_video_media_type",
            "busyPersonalVideoMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "no_answer_announcement_selection",
            "noAnswerAnnouncementSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "no_answer_personal_audio_file",
            "noAnswerPersonalAudioFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "no_answer_personal_audio_media_type",
            "noAnswerPersonalAudioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "no_answer_personal_video_file",
            "noAnswerPersonalVideoFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "no_answer_personal_video_media_type",
            "noAnswerPersonalVideoMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "no_answer_alternate_greeting01",
            "noAnswerAlternateGreeting01",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead16,
            True,
            False,
            False,
        ),
        E(
            "no_answer_alternate_greeting02",
            "noAnswerAlternateGreeting02",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead16,
            True,
            False,
            False,
        ),
        E(
            "no_answer_alternate_greeting03",
            "noAnswerAlternateGreeting03",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead16,
            True,
            False,
            False,
        ),
        E(
            "no_answer_number_of_rings",
            "noAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
    )
    #: str: *Required* busyAnnouncementSelection
    busy_announcement_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* busyPersonalAudioFile
    busy_personal_audio_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* busyPersonalAudioMediaType
    busy_personal_audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* busyPersonalVideoFile
    busy_personal_video_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* busyPersonalVideoMediaType
    busy_personal_video_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Required* noAnswerAnnouncementSelection
    no_answer_announcement_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* noAnswerPersonalAudioFile
    no_answer_personal_audio_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* noAnswerPersonalAudioMediaType
    no_answer_personal_audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* noAnswerPersonalVideoFile
    no_answer_personal_video_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* noAnswerPersonalVideoMediaType
    no_answer_personal_video_media_type = Field(
        type=str,
        required=False,
    )
    #: OCI.VoiceMessagingAlternateNoAnswerGreetingRead16: *Optional*
    #: noAnswerAlternateGreeting01
    no_answer_alternate_greeting01 = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead16,
        required=False,
    )
    #: OCI.VoiceMessagingAlternateNoAnswerGreetingRead16: *Optional*
    #: noAnswerAlternateGreeting02
    no_answer_alternate_greeting02 = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead16,
        required=False,
    )
    #: OCI.VoiceMessagingAlternateNoAnswerGreetingRead16: *Optional*
    #: noAnswerAlternateGreeting03
    no_answer_alternate_greeting03 = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead16,
        required=False,
    )
    #: int: *Required* noAnswerNumberOfRings
    no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "busy_announcement_selection",
            "busyAnnouncementSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "busy_personal_audio_file",
            "busyPersonalAudioFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "busy_personal_audio_media_type",
            "busyPersonalAudioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "busy_personal_video_file",
            "busyPersonalVideoFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "busy_personal_video_media_type",
            "busyPersonalVideoMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "no_answer_announcement_selection",
            "noAnswerAnnouncementSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "no_answer_personal_audio_file",
            "noAnswerPersonalAudioFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "no_answer_personal_audio_media_type",
            "noAnswerPersonalAudioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "no_answer_personal_video_file",
            "noAnswerPersonalVideoFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "no_answer_personal_video_media_type",
            "noAnswerPersonalVideoMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "no_answer_alternate_greeting01",
            "noAnswerAlternateGreeting01",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead16,
            True,
            False,
            False,
        ),
        E(
            "no_answer_alternate_greeting02",
            "noAnswerAlternateGreeting02",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead16,
            True,
            False,
            False,
        ),
        E(
            "no_answer_alternate_greeting03",
            "noAnswerAlternateGreeting03",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead16,
            True,
            False,
            False,
        ),
        E(
            "no_answer_number_of_rings",
            "noAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "disable_message_deposit",
            "disableMessageDeposit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disable_message_deposit_action",
            "disableMessageDepositAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "greeting_only_forward_destination",
            "greetingOnlyForwardDestination",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* busyAnnouncementSelection
    busy_announcement_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* busyPersonalAudioFile
    busy_personal_audio_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* busyPersonalAudioMediaType
    busy_personal_audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* busyPersonalVideoFile
    busy_personal_video_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* busyPersonalVideoMediaType
    busy_personal_video_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Required* noAnswerAnnouncementSelection
    no_answer_announcement_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* noAnswerPersonalAudioFile
    no_answer_personal_audio_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* noAnswerPersonalAudioMediaType
    no_answer_personal_audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* noAnswerPersonalVideoFile
    no_answer_personal_video_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* noAnswerPersonalVideoMediaType
    no_answer_personal_video_media_type = Field(
        type=str,
        required=False,
    )
    #: OCI.VoiceMessagingAlternateNoAnswerGreetingRead16: *Optional*
    #: noAnswerAlternateGreeting01
    no_answer_alternate_greeting01 = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead16,
        required=False,
    )
    #: OCI.VoiceMessagingAlternateNoAnswerGreetingRead16: *Optional*
    #: noAnswerAlternateGreeting02
    no_answer_alternate_greeting02 = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead16,
        required=False,
    )
    #: OCI.VoiceMessagingAlternateNoAnswerGreetingRead16: *Optional*
    #: noAnswerAlternateGreeting03
    no_answer_alternate_greeting03 = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead16,
        required=False,
    )
    #: int: *Required* noAnswerNumberOfRings
    no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disableMessageDeposit
    disable_message_deposit = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* disableMessageDepositAction
    disable_message_deposit_action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* greetingOnlyForwardDestination
    greeting_only_forward_destination = Field(
        type=str,
        required=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()``
    """

    _ELEMENTS = (
        E(
            "busy_announcement_selection",
            "busyAnnouncementSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "busy_personal_audio_file",
            "busyPersonalAudioFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "busy_personal_audio_media_type",
            "busyPersonalAudioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "busy_personal_video_file",
            "busyPersonalVideoFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "busy_personal_video_media_type",
            "busyPersonalVideoMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "no_answer_announcement_selection",
            "noAnswerAnnouncementSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "no_answer_personal_audio_file",
            "noAnswerPersonalAudioFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "no_answer_personal_audio_media_type",
            "noAnswerPersonalAudioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "no_answer_personal_video_file",
            "noAnswerPersonalVideoFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "no_answer_personal_video_media_type",
            "noAnswerPersonalVideoMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "extended_away_enabled",
            "extendedAwayEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "extended_away_disable_message_deposit",
            "extendedAwayDisableMessageDeposit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "extended_away_audio_file",
            "extendedAwayAudioFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "extended_away_audio_media_type",
            "extendedAwayAudioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "extended_away_video_file",
            "extendedAwayVideoFile",
            str,
            False,
            False,
            False,
        ),
        E(
            "extended_away_video_media_type",
            "extendedAwayVideoMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "no_answer_alternate_greeting01",
            "noAnswerAlternateGreeting01",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead16,
            True,
            False,
            False,
        ),
        E(
            "no_answer_alternate_greeting02",
            "noAnswerAlternateGreeting02",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead16,
            True,
            False,
            False,
        ),
        E(
            "no_answer_alternate_greeting03",
            "noAnswerAlternateGreeting03",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead16,
            True,
            False,
            False,
        ),
        E(
            "no_answer_number_of_rings",
            "noAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "disable_message_deposit",
            "disableMessageDeposit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disable_message_deposit_action",
            "disableMessageDepositAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "greeting_only_forward_destination",
            "greetingOnlyForwardDestination",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* busyAnnouncementSelection
    busy_announcement_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* busyPersonalAudioFile
    busy_personal_audio_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* busyPersonalAudioMediaType
    busy_personal_audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* busyPersonalVideoFile
    busy_personal_video_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* busyPersonalVideoMediaType
    busy_personal_video_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Required* noAnswerAnnouncementSelection
    no_answer_announcement_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* noAnswerPersonalAudioFile
    no_answer_personal_audio_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* noAnswerPersonalAudioMediaType
    no_answer_personal_audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* noAnswerPersonalVideoFile
    no_answer_personal_video_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* noAnswerPersonalVideoMediaType
    no_answer_personal_video_media_type = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* extendedAwayEnabled
    extended_away_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* extendedAwayDisableMessageDeposit
    extended_away_disable_message_deposit = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* extendedAwayAudioFile
    extended_away_audio_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* extendedAwayAudioMediaType
    extended_away_audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* extendedAwayVideoFile
    extended_away_video_file = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* extendedAwayVideoMediaType
    extended_away_video_media_type = Field(
        type=str,
        required=False,
    )
    #: OCI.VoiceMessagingAlternateNoAnswerGreetingRead16: *Optional*
    #: noAnswerAlternateGreeting01
    no_answer_alternate_greeting01 = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead16,
        required=False,
    )
    #: OCI.VoiceMessagingAlternateNoAnswerGreetingRead16: *Optional*
    #: noAnswerAlternateGreeting02
    no_answer_alternate_greeting02 = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead16,
        required=False,
    )
    #: OCI.VoiceMessagingAlternateNoAnswerGreetingRead16: *Optional*
    #: noAnswerAlternateGreeting03
    no_answer_alternate_greeting03 = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead16,
        required=False,
    )
    #: int: *Required* noAnswerNumberOfRings
    no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disableMessageDeposit
    disable_message_deposit = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* disableMessageDepositAction
    disable_message_deposit_action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* greetingOnlyForwardDestination
    greeting_only_forward_destination = Field(
        type=str,
        required=False,
    )


class UserVoiceMessagingUserGetVoicePortalResponse20(OCIResponse):
    """
    Response to ``UserVoiceMessagingUserGetVoicePortalRequest20()``.
    """

    _ELEMENTS = (
        E(
            "use_personalized_name",
            "usePersonalizedName",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_auto_login",
            "voicePortalAutoLogin",
            bool,
            False,
            True,
            False,
        ),
        E(
            "personalized_name_audio_file",
            "personalizedNameAudioFile",
            OCI.AnnouncementFileLevelKey,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* usePersonalizedName
    use_personalized_name = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* voicePortalAutoLogin
    voice_portal_auto_login = Field(
        type=bool,
        required=True,
    )
    #: OCI.AnnouncementFileLevelKey: *Optional* personalizedNameAudioFile
    personalized_name_audio_file = Field(
        type=OCI.AnnouncementFileLevelKey,
        required=False,
    )


class EnterpriseSessionAdmissionControlGetAvailableDeviceListResponse(OCIResponse):
    """
    Response to ``EnterpriseSessionAdmissionControlGetAvailableDeviceListRequest()``.
    Contains a table of devices can be assigned to session admission control group in
    the enterprise.
    """

    _ELEMENTS = (
        E(
            "access_device",
            "accessDevice",
            OCI.EnterpriseAccessDevice,
            True,
            False,
            False,
        ),
    )
    #: OCI.EnterpriseAccessDevice: *Optional* accessDevice
    access_device = Field(
        type=OCI.EnterpriseAccessDevice,
        required=False,
    )


class EnterpriseSessionAdmissionControlGroupGetResponse(OCIResponse):
    """
    Response to ``EnterpriseSessionAdmissionControlGroupGetRequest()``.
    Returns the profile information for the session admission control group.
    """

    _ELEMENTS = (
        E(
            "max_session",
            "maxSession",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_user_originating_sessions",
            "maxUserOriginatingSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_user_terminating_sessions",
            "maxUserTerminatingSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "reserved_session",
            "reservedSession",
            int,
            False,
            True,
            False,
        ),
        E(
            "reserved_user_originating_sessions",
            "reservedUserOriginatingSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "reserved_user_terminating_sessions",
            "reservedUserTerminatingSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "default_group",
            "defaultGroup",
            bool,
            False,
            True,
            False,
        ),
        E(
            "count_intra_sac_group_sessions",
            "countIntraSACGroupSessions",
            bool,
            False,
            True,
            False,
        ),
        E(
            "devices",
            "devices",
            OCI.EnterpriseAccessDevice,
            True,
            False,
            False,
        ),
    )
    #: int: *Required* maxSession
    max_session = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* maxUserOriginatingSessions
    max_user_originating_sessions = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxUserTerminatingSessions
    max_user_terminating_sessions = Field(
        type=int,
        required=False,
    )
    #: int: *Required* reservedSession
    reserved_session = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* reservedUserOriginatingSessions
    reserved_user_originating_sessions = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* reservedUserTerminatingSessions
    reserved_user_terminating_sessions = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* defaultGroup
    default_group = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* countIntraSACGroupSessions
    count_intra_sac_group_sessions = Field(
        type=bool,
        required=True,
    )
    #: OCI.EnterpriseAccessDevice: *Optional* devices
    devices = Field(
        type=OCI.EnterpriseAccessDevice,
        required=False,
    )


class EnterpriseSessionAdmissionControlGroupGetResponse19sp1(OCIResponse):
    """
    Response to ``EnterpriseSessionAdmissionControlGroupGetRequest19sp1()``.
    Returns the profile information for the session admission control group.
    """

    _ELEMENTS = (
        E(
            "max_session",
            "maxSession",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_user_originating_sessions",
            "maxUserOriginatingSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_user_terminating_sessions",
            "maxUserTerminatingSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "reserved_session",
            "reservedSession",
            int,
            False,
            True,
            False,
        ),
        E(
            "reserved_user_originating_sessions",
            "reservedUserOriginatingSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "reserved_user_terminating_sessions",
            "reservedUserTerminatingSessions",
            int,
            False,
            False,
            False,
        ),
        E(
            "default_group",
            "defaultGroup",
            bool,
            False,
            True,
            False,
        ),
        E(
            "count_intra_sac_group_sessions",
            "countIntraSACGroupSessions",
            bool,
            False,
            True,
            False,
        ),
        E(
            "devices",
            "devices",
            OCI.EnterpriseAccessDevice,
            True,
            False,
            False,
        ),
        E(
            "block_emergency_and_repair_calls_due_to_sac_limits",
            "blockEmergencyAndRepairCallsDueToSACLimits",
            bool,
            False,
            True,
            False,
        ),
    )
    #: int: *Required* maxSession
    max_session = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* maxUserOriginatingSessions
    max_user_originating_sessions = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxUserTerminatingSessions
    max_user_terminating_sessions = Field(
        type=int,
        required=False,
    )
    #: int: *Required* reservedSession
    reserved_session = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* reservedUserOriginatingSessions
    reserved_user_originating_sessions = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* reservedUserTerminatingSessions
    reserved_user_terminating_sessions = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* defaultGroup
    default_group = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* countIntraSACGroupSessions
    count_intra_sac_group_sessions = Field(
        type=bool,
        required=True,
    )
    #: OCI.EnterpriseAccessDevice: *Optional* devices
    devices = Field(
        type=OCI.EnterpriseAccessDevice,
        required=False,
    )
    #: bool: *Required* blockEmergencyAndRepairCallsDueToSACLimits
    block_emergency_and_repair_calls_due_to_sac_limits = Field(
        type=bool,
        required=True,
    )


class GroupAutoAttendantSubmenuGetResponse(OCIResponse):
    """
    Response to ``GroupAutoAttendantSubmenuGetRequest()``.
    Contains AutoAttendant submenu information.
    """

    _ELEMENTS = (
        E(
            "announcement_selection",
            "announcementSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_media_type",
            "audioMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_media_type",
            "videoMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "enable_level_extension_dialing",
            "enableLevelExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "key_configuration",
            "keyConfiguration",
            OCI.AutoAttendantKeyReadConfiguration19,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* announcementSelection
    announcement_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioMediaType
    audio_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoMediaType
    video_media_type = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* enableLevelExtensionDialing
    enable_level_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: OCI.AutoAttendantKeyReadConfiguration19: *Optional* keyConfiguration
    key_configuration = Field(
        type=OCI.AutoAttendantKeyReadConfiguration19,
        required=False,
    )


class GroupBroadWorksAnywhereGetInstanceResponse(OCIResponse):
    """
    Response to ``GroupBroadWorksAnywhereGetInstanceRequest()``.
    Contains the service profile information.
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile,
            True,
            True,
            False,
        ),
        E(
            "broad_works_anywhere_scope",
            "broadWorksAnywhereScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "prompt_for_clid",
            "promptForCLID",
            str,
            False,
            True,
            False,
        ),
        E(
            "silent_prompt_mode",
            "silentPromptMode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prompt_for_passcode",
            "promptForPasscode",
            bool,
            False,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile,
        required=True,
    )
    #: str: *Required* broadWorksAnywhereScope
    broad_works_anywhere_scope = Field(
        type=str,
        required=True,
    )
    #: str: *Required* promptForCLID
    prompt_for_clid = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* silentPromptMode
    silent_prompt_mode = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* promptForPasscode
    prompt_for_passcode = Field(
        type=bool,
        required=True,
    )


class GroupBroadWorksAnywhereGetInstanceResponse17(OCIResponse):
    """
    Response to ``GroupBroadWorksAnywhereGetInstanceRequest17()``.
    Contains the service profile information.

    Replaced By ``GroupBroadWorksAnywhereGetInstanceResponse19sp1()``
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17,
            True,
            True,
            False,
        ),
        E(
            "broad_works_anywhere_scope",
            "broadWorksAnywhereScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "prompt_for_clid",
            "promptForCLID",
            str,
            False,
            True,
            False,
        ),
        E(
            "silent_prompt_mode",
            "silentPromptMode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prompt_for_passcode",
            "promptForPasscode",
            bool,
            False,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17,
        required=True,
    )
    #: str: *Required* broadWorksAnywhereScope
    broad_works_anywhere_scope = Field(
        type=str,
        required=True,
    )
    #: str: *Required* promptForCLID
    prompt_for_clid = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* silentPromptMode
    silent_prompt_mode = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* promptForPasscode
    prompt_for_passcode = Field(
        type=bool,
        required=True,
    )


class GroupBroadWorksAnywhereGetInstanceResponse19sp1(OCIResponse):
    """
    Response to ``GroupBroadWorksAnywhereGetInstanceRequest19sp1()``.
    Contains the service profile information.
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1,
            True,
            True,
            False,
        ),
        E(
            "broad_works_anywhere_scope",
            "broadWorksAnywhereScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "prompt_for_clid",
            "promptForCLID",
            str,
            False,
            True,
            False,
        ),
        E(
            "silent_prompt_mode",
            "silentPromptMode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "prompt_for_passcode",
            "promptForPasscode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile19sp1: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile19sp1,
        required=True,
    )
    #: str: *Required* broadWorksAnywhereScope
    broad_works_anywhere_scope = Field(
        type=str,
        required=True,
    )
    #: str: *Required* promptForCLID
    prompt_for_clid = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* silentPromptMode
    silent_prompt_mode = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* promptForPasscode
    prompt_for_passcode = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )


class GroupCallCenterComfortMessageBypassGetResponse20(OCIResponse):
    """
    Response to the ``GroupCallCenterComfortMessageBypassGetRequest20()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "call_waiting_age_threshold_seconds",
            "callWaitingAgeThresholdSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "play_announcement_after_ringing",
            "playAnnouncementAfterRinging",
            bool,
            False,
            True,
            False,
        ),
        E(
            "ring_time_before_playing_announcement_seconds",
            "ringTimeBeforePlayingAnnouncementSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* callWaitingAgeThresholdSeconds
    call_waiting_age_threshold_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* playAnnouncementAfterRinging
    play_announcement_after_ringing = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* ringTimeBeforePlayingAnnouncementSeconds
    ring_time_before_playing_announcement_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )


class GroupCallCenterForcedForwardingGetResponse20(OCIResponse):
    """
    Response to the ``GroupCallCenterForcedForwardingGetRequest20()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_enable_via_fac",
            "allowEnableViaFAC",
            bool,
            False,
            True,
            False,
        ),
        E(
            "play_announcement_before_forwarding",
            "playAnnouncementBeforeForwarding",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowEnableViaFAC
    allow_enable_via_fac = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* playAnnouncementBeforeForwarding
    play_announcement_before_forwarding = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=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()``
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile,
            True,
            True,
            False,
        ),
        E(
            "policy",
            "policy",
            str,
            False,
            True,
            False,
        ),
        E(
            "hunt_after_no_answer",
            "huntAfterNoAnswer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "no_answer_number_of_rings",
            "noAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "forward_after_timeout",
            "forwardAfterTimeout",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forward_timeout_seconds",
            "forwardTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "queue_length",
            "queueLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "allow_agent_logoff",
            "allowAgentLogoff",
            bool,
            False,
            True,
            False,
        ),
        E(
            "play_music_on_hold",
            "playMusicOnHold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "play_comfort_message",
            "playComfortMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "time_between_comfort_messages_seconds",
            "timeBetweenComfortMessagesSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_guard_timer",
            "enableGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "guard_timer_seconds",
            "guardTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "agent_user_table",
            "agentUserTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "allow_call_waiting_for_agents",
            "allowCallWaitingForAgents",
            bool,
            False,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile,
        required=True,
    )
    #: str: *Required* policy
    policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* huntAfterNoAnswer
    hunt_after_no_answer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* noAnswerNumberOfRings
    no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* forwardAfterTimeout
    forward_after_timeout = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* forwardTimeoutSeconds
    forward_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* queueLength
    queue_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* allowAgentLogoff
    allow_agent_logoff = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* playMusicOnHold
    play_music_on_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* playComfortMessage
    play_comfort_message = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* timeBetweenComfortMessagesSeconds
    time_between_comfort_messages_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableGuardTimer
    enable_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* guardTimerSeconds
    guard_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: list: *Required* agentUserTable  *Tabular*
    agent_user_table = Field(
        type=list,
        required=True,
    )
    #: bool: *Required* allowCallWaitingForAgents
    allow_call_waiting_for_agents = Field(
        type=bool,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile,
            True,
            True,
            False,
        ),
        E(
            "policy",
            "policy",
            str,
            False,
            True,
            False,
        ),
        E(
            "hunt_after_no_answer",
            "huntAfterNoAnswer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "no_answer_number_of_rings",
            "noAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "forward_after_timeout",
            "forwardAfterTimeout",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forward_timeout_seconds",
            "forwardTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "queue_length",
            "queueLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "allow_agent_logoff",
            "allowAgentLogoff",
            bool,
            False,
            True,
            False,
        ),
        E(
            "play_music_on_hold",
            "playMusicOnHold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "play_comfort_message",
            "playComfortMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "time_between_comfort_messages_seconds",
            "timeBetweenComfortMessagesSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_guard_timer",
            "enableGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "guard_timer_seconds",
            "guardTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "agent_user_table",
            "agentUserTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "allow_call_waiting_for_agents",
            "allowCallWaitingForAgents",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_calls_to_agents_in_wrap_up",
            "allowCallsToAgentsInWrapUp",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_call_queue_when_no_agents_available",
            "enableCallQueueWhenNoAgentsAvailable",
            bool,
            False,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile,
        required=True,
    )
    #: str: *Required* policy
    policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* huntAfterNoAnswer
    hunt_after_no_answer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* noAnswerNumberOfRings
    no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* forwardAfterTimeout
    forward_after_timeout = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* forwardTimeoutSeconds
    forward_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* queueLength
    queue_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* allowAgentLogoff
    allow_agent_logoff = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* playMusicOnHold
    play_music_on_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* playComfortMessage
    play_comfort_message = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* timeBetweenComfortMessagesSeconds
    time_between_comfort_messages_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableGuardTimer
    enable_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* guardTimerSeconds
    guard_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: list: *Required* agentUserTable  *Tabular*
    agent_user_table = Field(
        type=list,
        required=True,
    )
    #: bool: *Required* allowCallWaitingForAgents
    allow_call_waiting_for_agents = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowCallsToAgentsInWrapUp
    allow_calls_to_agents_in_wrap_up = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableCallQueueWhenNoAgentsAvailable
    enable_call_queue_when_no_agents_available = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile,
            True,
            True,
            False,
        ),
        E(
            "policy",
            "policy",
            str,
            False,
            True,
            False,
        ),
        E(
            "hunt_after_no_answer",
            "huntAfterNoAnswer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "no_answer_number_of_rings",
            "noAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "forward_after_timeout",
            "forwardAfterTimeout",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forward_timeout_seconds",
            "forwardTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "queue_length",
            "queueLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "allow_agent_logoff",
            "allowAgentLogoff",
            bool,
            False,
            True,
            False,
        ),
        E(
            "play_music_on_hold",
            "playMusicOnHold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "play_comfort_message",
            "playComfortMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "time_between_comfort_messages_seconds",
            "timeBetweenComfortMessagesSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_guard_timer",
            "enableGuardTimer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "guard_timer_seconds",
            "guardTimerSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "agent_user_table",
            "agentUserTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "allow_call_waiting_for_agents",
            "allowCallWaitingForAgents",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_calls_to_agents_in_wrap_up",
            "allowCallsToAgentsInWrapUp",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_call_queue_when_no_agents_available",
            "enableCallQueueWhenNoAgentsAvailable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "statistics_source",
            "statisticsSource",
            str,
            False,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile,
        required=True,
    )
    #: str: *Required* policy
    policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* huntAfterNoAnswer
    hunt_after_no_answer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* noAnswerNumberOfRings
    no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* forwardAfterTimeout
    forward_after_timeout = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* forwardTimeoutSeconds
    forward_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* queueLength
    queue_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* allowAgentLogoff
    allow_agent_logoff = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* playMusicOnHold
    play_music_on_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* playComfortMessage
    play_comfort_message = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* timeBetweenComfortMessagesSeconds
    time_between_comfort_messages_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableGuardTimer
    enable_guard_timer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* guardTimerSeconds
    guard_timer_seconds = Field(
        type=int,
        required=True,
    )
    #: list: *Required* agentUserTable  *Tabular*
    agent_user_table = Field(
        type=list,
        required=True,
    )
    #: bool: *Required* allowCallWaitingForAgents
    allow_call_waiting_for_agents = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowCallsToAgentsInWrapUp
    allow_calls_to_agents_in_wrap_up = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableCallQueueWhenNoAgentsAvailable
    enable_call_queue_when_no_agents_available = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* statisticsSource
    statistics_source = Field(
        type=str,
        required=True,
    )


class GroupCallCenterGetInstanceResponse16(OCIResponse):
    """
    Response to ``GroupCallCenterGetInstanceRequest16()``.
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile,
            True,
            True,
            False,
        ),
        E(
            "type",
            "type",
            str,
            False,
            True,
            False,
        ),
        E(
            "policy",
            "policy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "queue_length",
            "queueLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "reporting_server_name",
            "reportingServerName",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_caller_to_dial_escape_digit",
            "allowCallerToDialEscapeDigit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "escape_digit",
            "escapeDigit",
            str,
            False,
            True,
            False,
        ),
        E(
            "reset_call_statistics_upon_entry_in_queue",
            "resetCallStatisticsUponEntryInQueue",
            bool,
            False,
            False,
            False,
        ),
        E(
            "allow_agent_logoff",
            "allowAgentLogoff",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_call_waiting_for_agents",
            "allowCallWaitingForAgents",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_calls_to_agents_in_wrap_up",
            "allowCallsToAgentsInWrapUp",
            bool,
            False,
            False,
            False,
        ),
        E(
            "override_agent_wrap_up_time",
            "overrideAgentWrapUpTime",
            bool,
            False,
            False,
            False,
        ),
        E(
            "wrap_up_seconds",
            "wrapUpSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "force_delivery_of_calls",
            "forceDeliveryOfCalls",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_delivery_wait_time_seconds",
            "forceDeliveryWaitTimeSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "external_preferred_audio_codec",
            "externalPreferredAudioCodec",
            str,
            False,
            True,
            False,
        ),
        E(
            "internal_preferred_audio_codec",
            "internalPreferredAudioCodec",
            str,
            False,
            True,
            False,
        ),
        E(
            "play_ringing_when_offering_call",
            "playRingingWhenOfferingCall",
            bool,
            False,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile,
        required=True,
    )
    #: str: *Required* type
    type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* policy
    policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* queueLength
    queue_length = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* reportingServerName
    reporting_server_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowCallerToDialEscapeDigit
    allow_caller_to_dial_escape_digit = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* escapeDigit
    escape_digit = Field(
        type=str,
        required=True,
    )
    #: bool: *Optional* resetCallStatisticsUponEntryInQueue
    reset_call_statistics_upon_entry_in_queue = Field(
        type=bool,
        required=False,
    )
    #: bool: *Required* allowAgentLogoff
    allow_agent_logoff = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowCallWaitingForAgents
    allow_call_waiting_for_agents = Field(
        type=bool,
        required=True,
    )
    #: bool: *Optional* allowCallsToAgentsInWrapUp
    allow_calls_to_agents_in_wrap_up = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* overrideAgentWrapUpTime
    override_agent_wrap_up_time = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* wrapUpSeconds
    wrap_up_seconds = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* forceDeliveryOfCalls
    force_delivery_of_calls = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* forceDeliveryWaitTimeSeconds
    force_delivery_wait_time_seconds = Field(
        type=int,
        required=False,
    )
    #: str: *Required* externalPreferredAudioCodec
    external_preferred_audio_codec = Field(
        type=str,
        required=True,
    )
    #: str: *Required* internalPreferredAudioCodec
    internal_preferred_audio_codec = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* playRingingWhenOfferingCall
    play_ringing_when_offering_call = Field(
        type=bool,
        required=True,
    )


class GroupCallCenterGetInstanceResponse17(OCIResponse):
    """
    Response to ``GroupCallCenterGetInstanceRequest17()``.
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17,
            True,
            True,
            False,
        ),
        E(
            "type",
            "type",
            str,
            False,
            True,
            False,
        ),
        E(
            "policy",
            "policy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "queue_length",
            "queueLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "reporting_server_name",
            "reportingServerName",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_caller_to_dial_escape_digit",
            "allowCallerToDialEscapeDigit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "escape_digit",
            "escapeDigit",
            str,
            False,
            True,
            False,
        ),
        E(
            "reset_call_statistics_upon_entry_in_queue",
            "resetCallStatisticsUponEntryInQueue",
            bool,
            False,
            False,
            False,
        ),
        E(
            "allow_agent_logoff",
            "allowAgentLogoff",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_call_waiting_for_agents",
            "allowCallWaitingForAgents",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_calls_to_agents_in_wrap_up",
            "allowCallsToAgentsInWrapUp",
            bool,
            False,
            False,
            False,
        ),
        E(
            "override_agent_wrap_up_time",
            "overrideAgentWrapUpTime",
            bool,
            False,
            False,
            False,
        ),
        E(
            "wrap_up_seconds",
            "wrapUpSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "force_delivery_of_calls",
            "forceDeliveryOfCalls",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_delivery_wait_time_seconds",
            "forceDeliveryWaitTimeSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_automatic_state_change_for_agents",
            "enableAutomaticStateChangeForAgents",
            bool,
            False,
            False,
            False,
        ),
        E(
            "agent_state_after_call",
            "agentStateAfterCall",
            str,
            False,
            False,
            False,
        ),
        E(
            "agent_unavailable_code",
            "agentUnavailableCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "external_preferred_audio_codec",
            "externalPreferredAudioCodec",
            str,
            False,
            True,
            False,
        ),
        E(
            "internal_preferred_audio_codec",
            "internalPreferredAudioCodec",
            str,
            False,
            True,
            False,
        ),
        E(
            "play_ringing_when_offering_call",
            "playRingingWhenOfferingCall",
            bool,
            False,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17,
        required=True,
    )
    #: str: *Required* type
    type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* policy
    policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* queueLength
    queue_length = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* reportingServerName
    reporting_server_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowCallerToDialEscapeDigit
    allow_caller_to_dial_escape_digit = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* escapeDigit
    escape_digit = Field(
        type=str,
        required=True,
    )
    #: bool: *Optional* resetCallStatisticsUponEntryInQueue
    reset_call_statistics_upon_entry_in_queue = Field(
        type=bool,
        required=False,
    )
    #: bool: *Required* allowAgentLogoff
    allow_agent_logoff = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowCallWaitingForAgents
    allow_call_waiting_for_agents = Field(
        type=bool,
        required=True,
    )
    #: bool: *Optional* allowCallsToAgentsInWrapUp
    allow_calls_to_agents_in_wrap_up = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* overrideAgentWrapUpTime
    override_agent_wrap_up_time = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* wrapUpSeconds
    wrap_up_seconds = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* forceDeliveryOfCalls
    force_delivery_of_calls = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* forceDeliveryWaitTimeSeconds
    force_delivery_wait_time_seconds = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* enableAutomaticStateChangeForAgents
    enable_automatic_state_change_for_agents = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* agentStateAfterCall
    agent_state_after_call = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* agentUnavailableCode
    agent_unavailable_code = Field(
        type=str,
        required=False,
    )
    #: str: *Required* externalPreferredAudioCodec
    external_preferred_audio_codec = Field(
        type=str,
        required=True,
    )
    #: str: *Required* internalPreferredAudioCodec
    internal_preferred_audio_codec = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* playRingingWhenOfferingCall
    play_ringing_when_offering_call = Field(
        type=bool,
        required=True,
    )


class GroupCallCenterGetInstanceResponse17sp1(OCIResponse):
    """
    Response to ``GroupCallCenterGetInstanceRequest17sp1()``.
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17,
            True,
            True,
            False,
        ),
        E(
            "type",
            "type",
            str,
            False,
            True,
            False,
        ),
        E(
            "policy",
            "policy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "queue_length",
            "queueLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_reporting",
            "enableReporting",
            bool,
            False,
            False,
            False,
        ),
        E(
            "reporting_server_name",
            "reportingServerName",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_caller_to_dial_escape_digit",
            "allowCallerToDialEscapeDigit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "escape_digit",
            "escapeDigit",
            str,
            False,
            True,
            False,
        ),
        E(
            "reset_call_statistics_upon_entry_in_queue",
            "resetCallStatisticsUponEntryInQueue",
            bool,
            False,
            False,
            False,
        ),
        E(
            "allow_agent_logoff",
            "allowAgentLogoff",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_call_waiting_for_agents",
            "allowCallWaitingForAgents",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_calls_to_agents_in_wrap_up",
            "allowCallsToAgentsInWrapUp",
            bool,
            False,
            False,
            False,
        ),
        E(
            "override_agent_wrap_up_time",
            "overrideAgentWrapUpTime",
            bool,
            False,
            False,
            False,
        ),
        E(
            "wrap_up_seconds",
            "wrapUpSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "force_delivery_of_calls",
            "forceDeliveryOfCalls",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_delivery_wait_time_seconds",
            "forceDeliveryWaitTimeSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_automatic_state_change_for_agents",
            "enableAutomaticStateChangeForAgents",
            bool,
            False,
            False,
            False,
        ),
        E(
            "agent_state_after_call",
            "agentStateAfterCall",
            str,
            False,
            False,
            False,
        ),
        E(
            "agent_unavailable_code",
            "agentUnavailableCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "external_preferred_audio_codec",
            "externalPreferredAudioCodec",
            str,
            False,
            True,
            False,
        ),
        E(
            "internal_preferred_audio_codec",
            "internalPreferredAudioCodec",
            str,
            False,
            True,
            False,
        ),
        E(
            "play_ringing_when_offering_call",
            "playRingingWhenOfferingCall",
            bool,
            False,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17,
        required=True,
    )
    #: str: *Required* type
    type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* policy
    policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* queueLength
    queue_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Optional* enableReporting
    enable_reporting = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* reportingServerName
    reporting_server_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowCallerToDialEscapeDigit
    allow_caller_to_dial_escape_digit = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* escapeDigit
    escape_digit = Field(
        type=str,
        required=True,
    )
    #: bool: *Optional* resetCallStatisticsUponEntryInQueue
    reset_call_statistics_upon_entry_in_queue = Field(
        type=bool,
        required=False,
    )
    #: bool: *Required* allowAgentLogoff
    allow_agent_logoff = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowCallWaitingForAgents
    allow_call_waiting_for_agents = Field(
        type=bool,
        required=True,
    )
    #: bool: *Optional* allowCallsToAgentsInWrapUp
    allow_calls_to_agents_in_wrap_up = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* overrideAgentWrapUpTime
    override_agent_wrap_up_time = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* wrapUpSeconds
    wrap_up_seconds = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* forceDeliveryOfCalls
    force_delivery_of_calls = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* forceDeliveryWaitTimeSeconds
    force_delivery_wait_time_seconds = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* enableAutomaticStateChangeForAgents
    enable_automatic_state_change_for_agents = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* agentStateAfterCall
    agent_state_after_call = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* agentUnavailableCode
    agent_unavailable_code = Field(
        type=str,
        required=False,
    )
    #: str: *Required* externalPreferredAudioCodec
    external_preferred_audio_codec = Field(
        type=str,
        required=True,
    )
    #: str: *Required* internalPreferredAudioCodec
    internal_preferred_audio_codec = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* playRingingWhenOfferingCall
    play_ringing_when_offering_call = Field(
        type=bool,
        required=True,
    )


class GroupCallCenterGetInstanceResponse17sp3(OCIResponse):
    """
    Response to ``GroupCallCenterGetInstanceRequest17sp3()``.

    Replaced by ``GroupCallCenterGetInstanceResponse19()``
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17,
            True,
            True,
            False,
        ),
        E(
            "type",
            "type",
            str,
            False,
            True,
            False,
        ),
        E(
            "policy",
            "policy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "queue_length",
            "queueLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_reporting",
            "enableReporting",
            bool,
            False,
            False,
            False,
        ),
        E(
            "reporting_server_name",
            "reportingServerName",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_caller_to_dial_escape_digit",
            "allowCallerToDialEscapeDigit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "escape_digit",
            "escapeDigit",
            str,
            False,
            True,
            False,
        ),
        E(
            "reset_call_statistics_upon_entry_in_queue",
            "resetCallStatisticsUponEntryInQueue",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_agent_logoff",
            "allowAgentLogoff",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_call_waiting_for_agents",
            "allowCallWaitingForAgents",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_calls_to_agents_in_wrap_up",
            "allowCallsToAgentsInWrapUp",
            bool,
            False,
            False,
            False,
        ),
        E(
            "override_agent_wrap_up_time",
            "overrideAgentWrapUpTime",
            bool,
            False,
            False,
            False,
        ),
        E(
            "wrap_up_seconds",
            "wrapUpSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "force_delivery_of_calls",
            "forceDeliveryOfCalls",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_delivery_wait_time_seconds",
            "forceDeliveryWaitTimeSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_automatic_state_change_for_agents",
            "enableAutomaticStateChangeForAgents",
            bool,
            False,
            False,
            False,
        ),
        E(
            "agent_state_after_call",
            "agentStateAfterCall",
            str,
            False,
            False,
            False,
        ),
        E(
            "agent_unavailable_code",
            "agentUnavailableCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "external_preferred_audio_codec",
            "externalPreferredAudioCodec",
            str,
            False,
            True,
            False,
        ),
        E(
            "internal_preferred_audio_codec",
            "internalPreferredAudioCodec",
            str,
            False,
            True,
            False,
        ),
        E(
            "play_ringing_when_offering_call",
            "playRingingWhenOfferingCall",
            bool,
            False,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17,
        required=True,
    )
    #: str: *Required* type
    type = Field(
        type=str,
        required=True,
    )
    #: str: *Required* policy
    policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* queueLength
    queue_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Optional* enableReporting
    enable_reporting = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* reportingServerName
    reporting_server_name = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowCallerToDialEscapeDigit
    allow_caller_to_dial_escape_digit = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* escapeDigit
    escape_digit = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* resetCallStatisticsUponEntryInQueue
    reset_call_statistics_upon_entry_in_queue = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowAgentLogoff
    allow_agent_logoff = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowCallWaitingForAgents
    allow_call_waiting_for_agents = Field(
        type=bool,
        required=True,
    )
    #: bool: *Optional* allowCallsToAgentsInWrapUp
    allow_calls_to_agents_in_wrap_up = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* overrideAgentWrapUpTime
    override_agent_wrap_up_time = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* wrapUpSeconds
    wrap_up_seconds = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* forceDeliveryOfCalls
    force_delivery_of_calls = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* forceDeliveryWaitTimeSeconds
    force_delivery_wait_time_seconds = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* enableAutomaticStateChangeForAgents
    enable_automatic_state_change_for_agents = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* agentStateAfterCall
    agent_state_after_call = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* agentUnavailableCode
    agent_unavailable_code = Field(
        type=str,
        required=False,
    )
    #: str: *Required* externalPreferredAudioCodec
    external_preferred_audio_codec = Field(
        type=str,
        required=True,
    )
    #: str: *Required* internalPreferredAudioCodec
    internal_preferred_audio_codec = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* playRingingWhenOfferingCall
    play_ringing_when_offering_call = Field(
        type=bool,
        required=True,
    )


class GroupCallCenterGetInstanceResponse19(OCIResponse):
    """
    Response to ``GroupCallCenterGetInstanceRequest19()``.

    Replaced By Response to ``GroupCallCenterGetInstanceRequest19sp1()``
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17,
            True,
            True,
            False,
        ),
        E(
            "type",
            "type",
            str,
            False,
            True,
            False,
        ),
        E(
            "routing_type",
            "routingType",
            str,
            False,
            False,
            False,
        ),
        E(
            "policy",
            "policy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "queue_length",
            "queueLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_reporting",
            "enableReporting",
            bool,
            False,
            False,
            False,
        ),
        E(
            "allow_caller_to_dial_escape_digit",
            "allowCallerToDialEscapeDigit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "escape_digit",
            "escapeDigit",
            str,
            False,
            True,
            False,
        ),
        E(
            "reset_call_statistics_upon_entry_in_queue",
            "resetCallStatisticsUponEntryInQueue",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_agent_logoff",
            "allowAgentLogoff",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_call_waiting_for_agents",
            "allowCallWaitingForAgents",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_calls_to_agents_in_wrap_up",
            "allowCallsToAgentsInWrapUp",
            bool,
            False,
            False,
            False,
        ),
        E(
            "override_agent_wrap_up_time",
            "overrideAgentWrapUpTime",
            bool,
            False,
            False,
            False,
        ),
        E(
            "wrap_up_seconds",
            "wrapUpSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "force_delivery_of_calls",
            "forceDeliveryOfCalls",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_delivery_wait_time_seconds",
            "forceDeliveryWaitTimeSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_automatic_state_change_for_agents",
            "enableAutomaticStateChangeForAgents",
            bool,
            False,
            False,
            False,
        ),
        E(
            "agent_state_after_call",
            "agentStateAfterCall",
            str,
            False,
            False,
            False,
        ),
        E(
            "agent_unavailable_code",
            "agentUnavailableCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "external_preferred_audio_codec",
            "externalPreferredAudioCodec",
            str,
            False,
            True,
            False,
        ),
        E(
            "internal_preferred_audio_codec",
            "internalPreferredAudioCodec",
            str,
            False,
            True,
            False,
        ),
        E(
            "play_ringing_when_offering_call",
            "playRingingWhenOfferingCall",
            bool,
            False,
            True,
            False,
        ),
        E(
            "call_center_queue_thresholds_is_active",
            "callCenterQueueThresholdsIsActive",
            bool,
            False,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17,
        required=True,
    )
    #: str: *Required* type
    type = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* routingType
    routing_type = Field(
        type=str,
        required=False,
    )
    #: str: *Required* policy
    policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* queueLength
    queue_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Optional* enableReporting
    enable_reporting = Field(
        type=bool,
        required=False,
    )
    #: bool: *Required* allowCallerToDialEscapeDigit
    allow_caller_to_dial_escape_digit = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* escapeDigit
    escape_digit = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* resetCallStatisticsUponEntryInQueue
    reset_call_statistics_upon_entry_in_queue = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowAgentLogoff
    allow_agent_logoff = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowCallWaitingForAgents
    allow_call_waiting_for_agents = Field(
        type=bool,
        required=True,
    )
    #: bool: *Optional* allowCallsToAgentsInWrapUp
    allow_calls_to_agents_in_wrap_up = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* overrideAgentWrapUpTime
    override_agent_wrap_up_time = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* wrapUpSeconds
    wrap_up_seconds = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* forceDeliveryOfCalls
    force_delivery_of_calls = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* forceDeliveryWaitTimeSeconds
    force_delivery_wait_time_seconds = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* enableAutomaticStateChangeForAgents
    enable_automatic_state_change_for_agents = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* agentStateAfterCall
    agent_state_after_call = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* agentUnavailableCode
    agent_unavailable_code = Field(
        type=str,
        required=False,
    )
    #: str: *Required* externalPreferredAudioCodec
    external_preferred_audio_codec = Field(
        type=str,
        required=True,
    )
    #: str: *Required* internalPreferredAudioCodec
    internal_preferred_audio_codec = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* playRingingWhenOfferingCall
    play_ringing_when_offering_call = Field(
        type=bool,
        required=True,
    )
    #: bool: *Optional* callCenterQueueThresholdsIsActive
    call_center_queue_thresholds_is_active = Field(
        type=bool,
        required=False,
    )


class GroupCallCenterGetInstanceResponse19sp1(OCIResponse):
    """
    Response to ``GroupCallCenterGetInstanceRequest19sp1()``.
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1,
            True,
            True,
            False,
        ),
        E(
            "type",
            "type",
            str,
            False,
            True,
            False,
        ),
        E(
            "routing_type",
            "routingType",
            str,
            False,
            False,
            False,
        ),
        E(
            "policy",
            "policy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "queue_length",
            "queueLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_reporting",
            "enableReporting",
            bool,
            False,
            False,
            False,
        ),
        E(
            "allow_caller_to_dial_escape_digit",
            "allowCallerToDialEscapeDigit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "escape_digit",
            "escapeDigit",
            str,
            False,
            True,
            False,
        ),
        E(
            "reset_call_statistics_upon_entry_in_queue",
            "resetCallStatisticsUponEntryInQueue",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_agent_logoff",
            "allowAgentLogoff",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_call_waiting_for_agents",
            "allowCallWaitingForAgents",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_calls_to_agents_in_wrap_up",
            "allowCallsToAgentsInWrapUp",
            bool,
            False,
            False,
            False,
        ),
        E(
            "override_agent_wrap_up_time",
            "overrideAgentWrapUpTime",
            bool,
            False,
            False,
            False,
        ),
        E(
            "wrap_up_seconds",
            "wrapUpSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "force_delivery_of_calls",
            "forceDeliveryOfCalls",
            bool,
            False,
            False,
            False,
        ),
        E(
            "force_delivery_wait_time_seconds",
            "forceDeliveryWaitTimeSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_automatic_state_change_for_agents",
            "enableAutomaticStateChangeForAgents",
            bool,
            False,
            False,
            False,
        ),
        E(
            "agent_state_after_call",
            "agentStateAfterCall",
            str,
            False,
            False,
            False,
        ),
        E(
            "agent_unavailable_code",
            "agentUnavailableCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "external_preferred_audio_codec",
            "externalPreferredAudioCodec",
            str,
            False,
            True,
            False,
        ),
        E(
            "internal_preferred_audio_codec",
            "internalPreferredAudioCodec",
            str,
            False,
            True,
            False,
        ),
        E(
            "play_ringing_when_offering_call",
            "playRingingWhenOfferingCall",
            bool,
            False,
            True,
            False,
        ),
        E(
            "call_center_queue_thresholds_is_active",
            "callCenterQueueThresholdsIsActive",
            bool,
            False,
            False,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile19sp1: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile19sp1,
        required=True,
    )
    #: str: *Required* type
    type = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* routingType
    routing_type = Field(
        type=str,
        required=False,
    )
    #: str: *Required* policy
    policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* queueLength
    queue_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Optional* enableReporting
    enable_reporting = Field(
        type=bool,
        required=False,
    )
    #: bool: *Required* allowCallerToDialEscapeDigit
    allow_caller_to_dial_escape_digit = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* escapeDigit
    escape_digit = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* resetCallStatisticsUponEntryInQueue
    reset_call_statistics_upon_entry_in_queue = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowAgentLogoff
    allow_agent_logoff = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowCallWaitingForAgents
    allow_call_waiting_for_agents = Field(
        type=bool,
        required=True,
    )
    #: bool: *Optional* allowCallsToAgentsInWrapUp
    allow_calls_to_agents_in_wrap_up = Field(
        type=bool,
        required=False,
    )
    #: bool: *Optional* overrideAgentWrapUpTime
    override_agent_wrap_up_time = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* wrapUpSeconds
    wrap_up_seconds = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* forceDeliveryOfCalls
    force_delivery_of_calls = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* forceDeliveryWaitTimeSeconds
    force_delivery_wait_time_seconds = Field(
        type=int,
        required=False,
    )
    #: bool: *Optional* enableAutomaticStateChangeForAgents
    enable_automatic_state_change_for_agents = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* agentStateAfterCall
    agent_state_after_call = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* agentUnavailableCode
    agent_unavailable_code = Field(
        type=str,
        required=False,
    )
    #: str: *Required* externalPreferredAudioCodec
    external_preferred_audio_codec = Field(
        type=str,
        required=True,
    )
    #: str: *Required* internalPreferredAudioCodec
    internal_preferred_audio_codec = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* playRingingWhenOfferingCall
    play_ringing_when_offering_call = Field(
        type=bool,
        required=True,
    )
    #: bool: *Optional* callCenterQueueThresholdsIsActive
    call_center_queue_thresholds_is_active = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )


class GroupCallCenterGetInstanceStatisticsResponse13mp8(OCIResponse):
    """
    Contains Call Center statistics.
    Replaced By ``GroupCallCenterGetInstanceStatisticsResponse14sp9()``
    """

    _ELEMENTS = (
        E(
            "number_of_calls_queued_now",
            "numberOfCallsQueuedNow",
            int,
            False,
            True,
            False,
        ),
        E(
            "generate_daily_report",
            "generateDailyReport",
            bool,
            False,
            True,
            False,
        ),
        E(
            "collection_period_minutes",
            "collectionPeriodMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "reporting_email_address1",
            "reportingEmailAddress1",
            str,
            False,
            False,
            False,
        ),
        E(
            "reporting_email_address2",
            "reportingEmailAddress2",
            str,
            False,
            False,
            False,
        ),
        E(
            "queue_statistics_yesterday",
            "queueStatisticsYesterday",
            OCI.CallCenterQueueStatistics13mp8,
            True,
            True,
            False,
        ),
        E(
            "queue_statistics_today",
            "queueStatisticsToday",
            OCI.CallCenterQueueStatistics13mp8,
            True,
            True,
            False,
        ),
        E(
            "agent_statistics",
            "agentStatistics",
            OCI.CallCenterAgentStatistics13mp8,
            True,
            False,
            False,
        ),
    )
    #: int: *Required* numberOfCallsQueuedNow
    number_of_calls_queued_now = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* generateDailyReport
    generate_daily_report = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* collectionPeriodMinutes
    collection_period_minutes = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* reportingEmailAddress1
    reporting_email_address1 = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* reportingEmailAddress2
    reporting_email_address2 = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterQueueStatistics13mp8: *Required* queueStatisticsYesterday
    queue_statistics_yesterday = Field(
        type=OCI.CallCenterQueueStatistics13mp8,
        required=True,
    )
    #: OCI.CallCenterQueueStatistics13mp8: *Required* queueStatisticsToday
    queue_statistics_today = Field(
        type=OCI.CallCenterQueueStatistics13mp8,
        required=True,
    )
    #: OCI.CallCenterAgentStatistics13mp8: *Optional* agentStatistics
    agent_statistics = Field(
        type=OCI.CallCenterAgentStatistics13mp8,
        required=False,
    )


class GroupCallCenterGetInstanceStatisticsResponse14sp9(OCIResponse):
    """
    Contains Call Center statistics.
    """

    _ELEMENTS = (
        E(
            "statistics_range",
            "statisticsRange",
            OCI.CallCenterStatisticsRange,
            True,
            True,
            False,
        ),
        E(
            "queue_statistics",
            "queueStatistics",
            OCI.CallCenterQueueStatistics14sp9,
            True,
            True,
            False,
        ),
        E(
            "agent_statistics",
            "agentStatistics",
            OCI.CallCenterAgentStatistics14sp9,
            True,
            False,
            False,
        ),
    )
    #: OCI.CallCenterStatisticsRange: *Required* statisticsRange
    statistics_range = Field(
        type=OCI.CallCenterStatisticsRange,
        required=True,
    )
    #: OCI.CallCenterQueueStatistics14sp9: *Required* queueStatistics
    queue_statistics = Field(
        type=OCI.CallCenterQueueStatistics14sp9,
        required=True,
    )
    #: OCI.CallCenterAgentStatistics14sp9: *Optional* agentStatistics
    agent_statistics = Field(
        type=OCI.CallCenterAgentStatistics14sp9,
        required=False,
    )


class GroupCallCenterHolidayServiceGetResponse20(OCIResponse):
    """
    Response to the ``GroupCallCenterHolidayServiceGetRequest20()``.
    """

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_announcement_before_action",
            "playAnnouncementBeforeAction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playAnnouncementBeforeAction
    play_announcement_before_action = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )


class GroupCallCenterNightServiceGetResponse20(OCIResponse):
    """
    Response to the ``GroupCallCenterNightServiceGetRequest20()``.
    """

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "business_hours",
            "businessHours",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "force_night_service",
            "forceNightService",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_manual_override_via_fac",
            "allowManualOverrideViaFAC",
            bool,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_announcement_before_action",
            "playAnnouncementBeforeAction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "manual_announcement_mode",
            "manualAnnouncementMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "manual_audio_message_selection",
            "manualAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "manual_audio_url_list",
            "manualAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "manual_audio_file_list",
            "manualAudioFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "manual_video_message_selection",
            "manualVideoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "manual_video_url_list",
            "manualVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "manual_video_file_list",
            "manualVideoFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: OCI.TimeSchedule: *Optional* businessHours
    business_hours = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: bool: *Required* forceNightService
    force_night_service = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowManualOverrideViaFAC
    allow_manual_override_via_fac = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playAnnouncementBeforeAction
    play_announcement_before_action = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Required* manualAnnouncementMode
    manual_announcement_mode = Field(
        type=str,
        required=True,
    )
    #: str: *Required* manualAudioMessageSelection
    manual_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* manualAudioUrlList
    manual_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* manualAudioFileList
    manual_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Required* manualVideoMessageSelection
    manual_video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* manualVideoUrlList
    manual_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* manualVideoFileList
    manual_video_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )


class GroupCallCenterOverflowGetResponse20(OCIResponse):
    """
    Response to the ``GroupCallCenterOverflowGetRequest20()``.
    """

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "overflow_after_timeout",
            "overflowAfterTimeout",
            bool,
            False,
            True,
            False,
        ),
        E(
            "timeout_seconds",
            "timeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "play_announcement_before_overflow_processing",
            "playAnnouncementBeforeOverflowProcessing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* overflowAfterTimeout
    overflow_after_timeout = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* timeoutSeconds
    timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* playAnnouncementBeforeOverflowProcessing
    play_announcement_before_overflow_processing = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Optional* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )


class GroupCallCenterStrandedCallGetResponse20(OCIResponse):
    """
    Response to the ``GroupCallCenterStrandedCallGetRequest20()``.
    """

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Optional* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )


class GroupCallCenterStrandedCallUnavailableGetResponse20(OCIResponse):
    """
    Response to the ``GroupCallCenterStrandedCallUnavailableGetRequest20()``.
    """

    _ELEMENTS = (
        E(
            "condition_policy_on_number_of_agents_with_specified_unavailable_code",
            "conditionPolicyOnNumberOfAgentsWithSpecifiedUnavailableCode",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_agents_with_specified_unavailable_code",
            "numberOfAgentsWithSpecifiedUnavailableCode",
            int,
            False,
            False,
            False,
        ),
        E(
            "agents_unavailable_code",
            "agentsUnavailableCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* conditionPolicyOnNumberOfAgentsWithSpecifiedUnavailableCode
    condition_policy_on_number_of_agents_with_specified_unavailable_code = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* numberOfAgentsWithSpecifiedUnavailableCode
    number_of_agents_with_specified_unavailable_code = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* agentsUnavailableCode
    agents_unavailable_code = Field(
        type=str,
        required=False,
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Optional* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=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.
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1,
            True,
            True,
            False,
        ),
        E(
            "maximum_bridge_participants",
            "maximumBridgeParticipants",
            OCI.CollaborateBridgeMaximumParticipants,
            True,
            True,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_default",
            "isDefault",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_collaborate_room_participants",
            "maxCollaborateRoomParticipants",
            int,
            False,
            True,
            False,
        ),
        E(
            "support_outdial",
            "supportOutdial",
            bool,
            False,
            True,
            False,
        ),
        E(
            "collaborate_owner_user_table",
            "collaborateOwnerUserTable",
            list,
            True,
            False,
            True,
        ),
    )
    #: OCI.ServiceInstanceReadProfile19sp1: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile19sp1,
        required=True,
    )
    #: OCI.CollaborateBridgeMaximumParticipants: *Required* maximumBridgeParticipants
    maximum_bridge_participants = Field(
        type=OCI.CollaborateBridgeMaximumParticipants,
        required=True,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isDefault
    is_default = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxCollaborateRoomParticipants
    max_collaborate_room_participants = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* supportOutdial
    support_outdial = Field(
        type=bool,
        required=True,
    )
    #: list: *Optional* collaborateOwnerUserTable  *Tabular*
    collaborate_owner_user_table = Field(
        type=list,
        required=False,
    )


class GroupFindMeFollowMeGetInstanceResponse(OCIResponse):
    """
    Response to ``GroupFindMeFollowMeGetInstanceRequest()``.
    Contains the service profile information.

    Replaced By ``GroupFindMeFollowMeGetInstanceResponse19sp1()``
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17sp4,
            True,
            True,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17sp4: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17sp4,
        required=True,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )


class GroupFindMeFollowMeGetInstanceResponse19sp1(OCIResponse):
    """
    Response to ``GroupFindMeFollowMeGetInstanceRequest19sp1()``.
    Contains the service profile information.
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1,
            True,
            True,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile19sp1: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile19sp1,
        required=True,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )


class GroupFlexibleSeatingHostGetInstanceResponse(OCIResponse):
    """
    Response to ``GroupFlexibleSeatingHostGetInstanceRequest()``.
    Contains the service profile and access device information.
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1,
            True,
            True,
            False,
        ),
        E(
            "default_alias",
            "defaultAlias",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceMultipleContactEndpointRead20,
            True,
            False,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile19sp1: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile19sp1,
        required=True,
    )
    #: str: *Required* defaultAlias
    default_alias = Field(
        type=str,
        required=True,
    )
    #: OCI.AccessDeviceMultipleContactEndpointRead20: *Optional* accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceMultipleContactEndpointRead20,
        required=False,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )


class GroupGroupPagingGetInstanceResponse(OCIResponse):
    """
    Replaced By ``GroupGroupPagingGetInstanceResponse17sp3()``
    Response to ``GroupGroupPagingGetInstanceRequest()``.
    Contains the service profile information.
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile,
            True,
            True,
            False,
        ),
        E(
            "confirmation_tone_timeout_seconds",
            "confirmationToneTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "deliver_originator_clid_instead",
            "deliverOriginatorCLIDInstead",
            bool,
            False,
            True,
            False,
        ),
        E(
            "originator_clid_prefix",
            "originatorCLIDPrefix",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile,
        required=True,
    )
    #: int: *Required* confirmationToneTimeoutSeconds
    confirmation_tone_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* deliverOriginatorCLIDInstead
    deliver_originator_clid_instead = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* originatorCLIDPrefix
    originator_clid_prefix = Field(
        type=str,
        required=False,
    )


class GroupGroupPagingGetInstanceResponse17sp3(OCIResponse):
    """
    Response to ``GroupGroupPagingGetInstanceRequest17sp3()``.
    Contains the service profile information.

    Replaced By ``GroupGroupPagingGetInstanceResponse19sp1()``
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17,
            True,
            True,
            False,
        ),
        E(
            "confirmation_tone_timeout_seconds",
            "confirmationToneTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "deliver_originator_clid_instead",
            "deliverOriginatorCLIDInstead",
            bool,
            False,
            True,
            False,
        ),
        E(
            "originator_clid_prefix",
            "originatorCLIDPrefix",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17,
        required=True,
    )
    #: int: *Required* confirmationToneTimeoutSeconds
    confirmation_tone_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* deliverOriginatorCLIDInstead
    deliver_originator_clid_instead = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* originatorCLIDPrefix
    originator_clid_prefix = Field(
        type=str,
        required=False,
    )


class GroupGroupPagingGetInstanceResponse19sp1(OCIResponse):
    """
    Response to ``GroupGroupPagingGetInstanceRequest19sp1()``.
    Contains the service profile information.
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1,
            True,
            True,
            False,
        ),
        E(
            "confirmation_tone_timeout_seconds",
            "confirmationToneTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "deliver_originator_clid_instead",
            "deliverOriginatorCLIDInstead",
            bool,
            False,
            True,
            False,
        ),
        E(
            "originator_clid_prefix",
            "originatorCLIDPrefix",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile19sp1: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile19sp1,
        required=True,
    )
    #: int: *Required* confirmationToneTimeoutSeconds
    confirmation_tone_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* deliverOriginatorCLIDInstead
    deliver_originator_clid_instead = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* originatorCLIDPrefix
    originator_clid_prefix = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=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".
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile,
            True,
            True,
            False,
        ),
        E(
            "policy",
            "policy",
            str,
            False,
            True,
            False,
        ),
        E(
            "hunt_after_no_answer",
            "huntAfterNoAnswer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "no_answer_number_of_rings",
            "noAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "forward_after_timeout",
            "forwardAfterTimeout",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forward_timeout_seconds",
            "forwardTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "agent_user_table",
            "agentUserTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "allow_call_waiting_for_agents",
            "allowCallWaitingForAgents",
            bool,
            False,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile,
        required=True,
    )
    #: str: *Required* policy
    policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* huntAfterNoAnswer
    hunt_after_no_answer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* noAnswerNumberOfRings
    no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* forwardAfterTimeout
    forward_after_timeout = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* forwardTimeoutSeconds
    forward_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: list: *Required* agentUserTable  *Tabular*
    agent_user_table = Field(
        type=list,
        required=True,
    )
    #: bool: *Required* allowCallWaitingForAgents
    allow_call_waiting_for_agents = Field(
        type=bool,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17,
            True,
            True,
            False,
        ),
        E(
            "policy",
            "policy",
            str,
            False,
            True,
            False,
        ),
        E(
            "hunt_after_no_answer",
            "huntAfterNoAnswer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "no_answer_number_of_rings",
            "noAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "forward_after_timeout",
            "forwardAfterTimeout",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forward_timeout_seconds",
            "forwardTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "agent_user_table",
            "agentUserTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "allow_call_waiting_for_agents",
            "allowCallWaitingForAgents",
            bool,
            False,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17,
        required=True,
    )
    #: str: *Required* policy
    policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* huntAfterNoAnswer
    hunt_after_no_answer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* noAnswerNumberOfRings
    no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* forwardAfterTimeout
    forward_after_timeout = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* forwardTimeoutSeconds
    forward_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: list: *Required* agentUserTable  *Tabular*
    agent_user_table = Field(
        type=list,
        required=True,
    )
    #: bool: *Required* allowCallWaitingForAgents
    allow_call_waiting_for_agents = Field(
        type=bool,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17,
            True,
            True,
            False,
        ),
        E(
            "policy",
            "policy",
            str,
            False,
            True,
            False,
        ),
        E(
            "hunt_after_no_answer",
            "huntAfterNoAnswer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "no_answer_number_of_rings",
            "noAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "forward_after_timeout",
            "forwardAfterTimeout",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forward_timeout_seconds",
            "forwardTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "agent_user_table",
            "agentUserTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "allow_call_waiting_for_agents",
            "allowCallWaitingForAgents",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_system_hunt_group_clid_setting",
            "useSystemHuntGroupCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_hunt_group_name_in_clid",
            "includeHuntGroupNameInCLID",
            bool,
            False,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17,
        required=True,
    )
    #: str: *Required* policy
    policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* huntAfterNoAnswer
    hunt_after_no_answer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* noAnswerNumberOfRings
    no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* forwardAfterTimeout
    forward_after_timeout = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* forwardTimeoutSeconds
    forward_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: list: *Required* agentUserTable  *Tabular*
    agent_user_table = Field(
        type=list,
        required=True,
    )
    #: bool: *Required* allowCallWaitingForAgents
    allow_call_waiting_for_agents = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useSystemHuntGroupCLIDSetting
    use_system_hunt_group_clid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeHuntGroupNameInCLID
    include_hunt_group_name_in_clid = Field(
        type=bool,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17,
            True,
            True,
            False,
        ),
        E(
            "policy",
            "policy",
            str,
            False,
            True,
            False,
        ),
        E(
            "hunt_after_no_answer",
            "huntAfterNoAnswer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "no_answer_number_of_rings",
            "noAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "forward_after_timeout",
            "forwardAfterTimeout",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forward_timeout_seconds",
            "forwardTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "agent_user_table",
            "agentUserTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "allow_call_waiting_for_agents",
            "allowCallWaitingForAgents",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_system_hunt_group_clid_setting",
            "useSystemHuntGroupCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_hunt_group_name_in_clid",
            "includeHuntGroupNameInCLID",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_not_reachable_forwarding",
            "enableNotReachableForwarding",
            bool,
            False,
            True,
            False,
        ),
        E(
            "not_reachable_forward_to_phone_number",
            "notReachableForwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "make_busy_when_not_reachable",
            "makeBusyWhenNotReachable",
            bool,
            False,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17,
        required=True,
    )
    #: str: *Required* policy
    policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* huntAfterNoAnswer
    hunt_after_no_answer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* noAnswerNumberOfRings
    no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* forwardAfterTimeout
    forward_after_timeout = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* forwardTimeoutSeconds
    forward_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: list: *Required* agentUserTable  *Tabular*
    agent_user_table = Field(
        type=list,
        required=True,
    )
    #: bool: *Required* allowCallWaitingForAgents
    allow_call_waiting_for_agents = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useSystemHuntGroupCLIDSetting
    use_system_hunt_group_clid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeHuntGroupNameInCLID
    include_hunt_group_name_in_clid = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableNotReachableForwarding
    enable_not_reachable_forwarding = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* notReachableForwardToPhoneNumber
    not_reachable_forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* makeBusyWhenNotReachable
    make_busy_when_not_reachable = Field(
        type=bool,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17,
            True,
            True,
            False,
        ),
        E(
            "policy",
            "policy",
            str,
            False,
            True,
            False,
        ),
        E(
            "hunt_after_no_answer",
            "huntAfterNoAnswer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "no_answer_number_of_rings",
            "noAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "forward_after_timeout",
            "forwardAfterTimeout",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forward_timeout_seconds",
            "forwardTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "agent_user_table",
            "agentUserTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "allow_call_waiting_for_agents",
            "allowCallWaitingForAgents",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_system_hunt_group_clid_setting",
            "useSystemHuntGroupCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_hunt_group_name_in_clid",
            "includeHuntGroupNameInCLID",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_not_reachable_forwarding",
            "enableNotReachableForwarding",
            bool,
            False,
            True,
            False,
        ),
        E(
            "not_reachable_forward_to_phone_number",
            "notReachableForwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "make_busy_when_not_reachable",
            "makeBusyWhenNotReachable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_members_to_control_group_busy",
            "allowMembersToControlGroupBusy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_group_busy",
            "enableGroupBusy",
            bool,
            False,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17,
        required=True,
    )
    #: str: *Required* policy
    policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* huntAfterNoAnswer
    hunt_after_no_answer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* noAnswerNumberOfRings
    no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* forwardAfterTimeout
    forward_after_timeout = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* forwardTimeoutSeconds
    forward_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: list: *Required* agentUserTable  *Tabular*
    agent_user_table = Field(
        type=list,
        required=True,
    )
    #: bool: *Required* allowCallWaitingForAgents
    allow_call_waiting_for_agents = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useSystemHuntGroupCLIDSetting
    use_system_hunt_group_clid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeHuntGroupNameInCLID
    include_hunt_group_name_in_clid = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableNotReachableForwarding
    enable_not_reachable_forwarding = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* notReachableForwardToPhoneNumber
    not_reachable_forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* makeBusyWhenNotReachable
    make_busy_when_not_reachable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowMembersToControlGroupBusy
    allow_members_to_control_group_busy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableGroupBusy
    enable_group_busy = Field(
        type=bool,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1,
            True,
            True,
            False,
        ),
        E(
            "policy",
            "policy",
            str,
            False,
            True,
            False,
        ),
        E(
            "hunt_after_no_answer",
            "huntAfterNoAnswer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "no_answer_number_of_rings",
            "noAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "forward_after_timeout",
            "forwardAfterTimeout",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forward_timeout_seconds",
            "forwardTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "agent_user_table",
            "agentUserTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "allow_call_waiting_for_agents",
            "allowCallWaitingForAgents",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_system_hunt_group_clid_setting",
            "useSystemHuntGroupCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_hunt_group_name_in_clid",
            "includeHuntGroupNameInCLID",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_not_reachable_forwarding",
            "enableNotReachableForwarding",
            bool,
            False,
            True,
            False,
        ),
        E(
            "not_reachable_forward_to_phone_number",
            "notReachableForwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "make_busy_when_not_reachable",
            "makeBusyWhenNotReachable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_members_to_control_group_busy",
            "allowMembersToControlGroupBusy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_group_busy",
            "enableGroupBusy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile19sp1: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile19sp1,
        required=True,
    )
    #: str: *Required* policy
    policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* huntAfterNoAnswer
    hunt_after_no_answer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* noAnswerNumberOfRings
    no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* forwardAfterTimeout
    forward_after_timeout = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* forwardTimeoutSeconds
    forward_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: list: *Required* agentUserTable  *Tabular*
    agent_user_table = Field(
        type=list,
        required=True,
    )
    #: bool: *Required* allowCallWaitingForAgents
    allow_call_waiting_for_agents = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useSystemHuntGroupCLIDSetting
    use_system_hunt_group_clid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeHuntGroupNameInCLID
    include_hunt_group_name_in_clid = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableNotReachableForwarding
    enable_not_reachable_forwarding = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* notReachableForwardToPhoneNumber
    not_reachable_forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* makeBusyWhenNotReachable
    make_busy_when_not_reachable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowMembersToControlGroupBusy
    allow_members_to_control_group_busy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableGroupBusy
    enable_group_busy = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=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
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1,
            True,
            True,
            False,
        ),
        E(
            "policy",
            "policy",
            str,
            False,
            True,
            False,
        ),
        E(
            "hunt_after_no_answer",
            "huntAfterNoAnswer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "no_answer_number_of_rings",
            "noAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "forward_after_timeout",
            "forwardAfterTimeout",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forward_timeout_seconds",
            "forwardTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "agent_user_table",
            "agentUserTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "allow_call_waiting_for_agents",
            "allowCallWaitingForAgents",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_system_hunt_group_clid_setting",
            "useSystemHuntGroupCLIDSetting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_hunt_group_name_in_clid",
            "includeHuntGroupNameInCLID",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_not_reachable_forwarding",
            "enableNotReachableForwarding",
            bool,
            False,
            True,
            False,
        ),
        E(
            "not_reachable_forward_to_phone_number",
            "notReachableForwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "make_busy_when_not_reachable",
            "makeBusyWhenNotReachable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_members_to_control_group_busy",
            "allowMembersToControlGroupBusy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_group_busy",
            "enableGroupBusy",
            bool,
            False,
            True,
            False,
        ),
        E(
            "apply_group_busy_when_terminating_to_agent",
            "applyGroupBusyWhenTerminatingToAgent",
            bool,
            False,
            True,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile19sp1: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile19sp1,
        required=True,
    )
    #: str: *Required* policy
    policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* huntAfterNoAnswer
    hunt_after_no_answer = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* noAnswerNumberOfRings
    no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* forwardAfterTimeout
    forward_after_timeout = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* forwardTimeoutSeconds
    forward_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: list: *Required* agentUserTable  *Tabular*
    agent_user_table = Field(
        type=list,
        required=True,
    )
    #: bool: *Required* allowCallWaitingForAgents
    allow_call_waiting_for_agents = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useSystemHuntGroupCLIDSetting
    use_system_hunt_group_clid_setting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeHuntGroupNameInCLID
    include_hunt_group_name_in_clid = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableNotReachableForwarding
    enable_not_reachable_forwarding = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* notReachableForwardToPhoneNumber
    not_reachable_forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* makeBusyWhenNotReachable
    make_busy_when_not_reachable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowMembersToControlGroupBusy
    allow_members_to_control_group_busy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableGroupBusy
    enable_group_busy = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* applyGroupBusyWhenTerminatingToAgent
    apply_group_busy_when_terminating_to_agent = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )


class GroupIncomingCallingPlanGetListResponse(OCIResponse):
    """
    Response to ``GroupIncomingCallingPlanGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "group_permissions",
            "groupPermissions",
            OCI.IncomingCallingPlanPermissions,
            True,
            True,
            False,
        ),
        E(
            "department_permissions",
            "departmentPermissions",
            OCI.IncomingCallingPlanDepartmentPermissions,
            True,
            False,
            False,
        ),
    )
    #: OCI.IncomingCallingPlanPermissions: *Required* groupPermissions
    group_permissions = Field(
        type=OCI.IncomingCallingPlanPermissions,
        required=True,
    )
    #: OCI.IncomingCallingPlanDepartmentPermissions: *Optional* departmentPermissions
    department_permissions = Field(
        type=OCI.IncomingCallingPlanDepartmentPermissions,
        required=False,
    )


class GroupInstantGroupCallGetInstanceResponse14(OCIResponse):
    """
    Response to ``GroupInstantGroupCallGetInstanceRequest14()``.
    Contains the service profile information and a list of phone numbers.
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile,
            True,
            True,
            False,
        ),
        E(
            "destination_phone_number",
            "destinationPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_answer_timeout_enabled",
            "isAnswerTimeoutEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "answer_timeout_minutes",
            "answerTimeoutMinutes",
            int,
            False,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile,
        required=True,
    )
    #: str: *Optional* destinationPhoneNumber
    destination_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isAnswerTimeoutEnabled
    is_answer_timeout_enabled = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* answerTimeoutMinutes
    answer_timeout_minutes = Field(
        type=int,
        required=False,
    )


class GroupInstantGroupCallGetInstanceResponse17(OCIResponse):
    """
    Response to ``GroupInstantGroupCallGetInstanceRequest17()``.
    Contains the service profile information and a list of phone numbers.

    Replaced By ``GroupInstantGroupCallGetInstanceResponse19sp1()``
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17,
            True,
            True,
            False,
        ),
        E(
            "destination_phone_number",
            "destinationPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_answer_timeout_enabled",
            "isAnswerTimeoutEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "answer_timeout_minutes",
            "answerTimeoutMinutes",
            int,
            False,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17,
        required=True,
    )
    #: str: *Optional* destinationPhoneNumber
    destination_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isAnswerTimeoutEnabled
    is_answer_timeout_enabled = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* answerTimeoutMinutes
    answer_timeout_minutes = Field(
        type=int,
        required=False,
    )


class GroupInstantGroupCallGetInstanceResponse19sp1(OCIResponse):
    """
    Response to ``GroupInstantGroupCallGetInstanceRequest19sp1()``.
    Contains the service profile information and a list of phone numbers.
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1,
            True,
            True,
            False,
        ),
        E(
            "destination_phone_number",
            "destinationPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_answer_timeout_enabled",
            "isAnswerTimeoutEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "answer_timeout_minutes",
            "answerTimeoutMinutes",
            int,
            False,
            False,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile19sp1: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile19sp1,
        required=True,
    )
    #: str: *Optional* destinationPhoneNumber
    destination_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isAnswerTimeoutEnabled
    is_answer_timeout_enabled = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* answerTimeoutMinutes
    answer_timeout_minutes = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )


class GroupMWIDeliveryToMobileEndpointCustomTemplateGetResponse(OCIResponse):
    """
    Response to the ``GroupMWIDeliveryToMobileEndpointCustomTemplateGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_enabled",
            "isEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "template_body",
            "templateBody",
            OCI.MWIDeliveryToMobileEndpointTemplateBody,
            True,
            True,
            False,
        ),
    )
    #: bool: *Required* isEnabled
    is_enabled = Field(
        type=bool,
        required=True,
    )
    #: OCI.MWIDeliveryToMobileEndpointTemplateBody: *Required* templateBody
    template_body = Field(
        type=OCI.MWIDeliveryToMobileEndpointTemplateBody,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile,
            True,
            True,
            False,
        ),
        E(
            "allocated_ports",
            "allocatedPorts",
            OCI.MeetMeConferencingConferencePorts,
            True,
            True,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_individual_out_dial",
            "allowIndividualOutDial",
            bool,
            False,
            True,
            False,
        ),
        E(
            "operator_number",
            "operatorNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "conference_host_user_table",
            "conferenceHostUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: OCI.ServiceInstanceReadProfile: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile,
        required=True,
    )
    #: OCI.MeetMeConferencingConferencePorts: *Required* allocatedPorts
    allocated_ports = Field(
        type=OCI.MeetMeConferencingConferencePorts,
        required=True,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowIndividualOutDial
    allow_individual_out_dial = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* operatorNumber
    operator_number = Field(
        type=str,
        required=False,
    )
    #: list: *Required* conferenceHostUserTable  *Tabular*
    conference_host_user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17,
            True,
            True,
            False,
        ),
        E(
            "allocated_ports",
            "allocatedPorts",
            OCI.MeetMeConferencingConferencePorts,
            True,
            True,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_individual_out_dial",
            "allowIndividualOutDial",
            bool,
            False,
            True,
            False,
        ),
        E(
            "operator_number",
            "operatorNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "conference_host_user_table",
            "conferenceHostUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17,
        required=True,
    )
    #: OCI.MeetMeConferencingConferencePorts: *Required* allocatedPorts
    allocated_ports = Field(
        type=OCI.MeetMeConferencingConferencePorts,
        required=True,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowIndividualOutDial
    allow_individual_out_dial = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* operatorNumber
    operator_number = Field(
        type=str,
        required=False,
    )
    #: list: *Required* conferenceHostUserTable  *Tabular*
    conference_host_user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17sp4,
            True,
            True,
            False,
        ),
        E(
            "allocated_ports",
            "allocatedPorts",
            OCI.MeetMeConferencingConferencePorts,
            True,
            True,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_individual_out_dial",
            "allowIndividualOutDial",
            bool,
            False,
            True,
            False,
        ),
        E(
            "operator_number",
            "operatorNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "conference_host_user_table",
            "conferenceHostUserTable",
            list,
            True,
            True,
            True,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17sp4: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17sp4,
        required=True,
    )
    #: OCI.MeetMeConferencingConferencePorts: *Required* allocatedPorts
    allocated_ports = Field(
        type=OCI.MeetMeConferencingConferencePorts,
        required=True,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowIndividualOutDial
    allow_individual_out_dial = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* operatorNumber
    operator_number = Field(
        type=str,
        required=False,
    )
    #: list: *Required* conferenceHostUserTable  *Tabular*
    conference_host_user_table = Field(
        type=list,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17sp4,
            True,
            True,
            False,
        ),
        E(
            "allocated_ports",
            "allocatedPorts",
            OCI.MeetMeConferencingConferencePorts,
            True,
            True,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
        E(
            "allow_individual_out_dial",
            "allowIndividualOutDial",
            bool,
            False,
            True,
            False,
        ),
        E(
            "operator_number",
            "operatorNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "conference_host_user_table",
            "conferenceHostUserTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "play_warning_prompt",
            "playWarningPrompt",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_end_warning_prompt_minutes",
            "conferenceEndWarningPromptMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_max_conference_duration",
            "enableMaxConferenceDuration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_conference_duration_minutes",
            "maxConferenceDurationMinutes",
            OCI.MeetMeConferencingConferenceDuration,
            True,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17sp4: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17sp4,
        required=True,
    )
    #: OCI.MeetMeConferencingConferencePorts: *Required* allocatedPorts
    allocated_ports = Field(
        type=OCI.MeetMeConferencingConferencePorts,
        required=True,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* allowIndividualOutDial
    allow_individual_out_dial = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* operatorNumber
    operator_number = Field(
        type=str,
        required=False,
    )
    #: list: *Required* conferenceHostUserTable  *Tabular*
    conference_host_user_table = Field(
        type=list,
        required=True,
    )
    #: bool: *Required* playWarningPrompt
    play_warning_prompt = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* conferenceEndWarningPromptMinutes
    conference_end_warning_prompt_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableMaxConferenceDuration
    enable_max_conference_duration = Field(
        type=bool,
        required=True,
    )
    #: OCI.MeetMeConferencingConferenceDuration: *Required* maxConferenceDurationMinutes
    max_conference_duration_minutes = Field(
        type=OCI.MeetMeConferencingConferenceDuration,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17sp4,
            True,
            True,
            False,
        ),
        E(
            "allocated_ports",
            "allocatedPorts",
            OCI.MeetMeConferencingConferencePorts,
            True,
            True,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
        E(
            "security_pin_length",
            "securityPinLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "allow_individual_out_dial",
            "allowIndividualOutDial",
            bool,
            False,
            True,
            False,
        ),
        E(
            "operator_number",
            "operatorNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "conference_host_user_table",
            "conferenceHostUserTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "play_warning_prompt",
            "playWarningPrompt",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_end_warning_prompt_minutes",
            "conferenceEndWarningPromptMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_max_conference_duration",
            "enableMaxConferenceDuration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_conference_duration_minutes",
            "maxConferenceDurationMinutes",
            OCI.MeetMeConferencingConferenceDuration,
            True,
            True,
            False,
        ),
        E(
            "max_scheduled_conference_duration_minutes",
            "maxScheduledConferenceDurationMinutes",
            OCI.MeetMeConferencingConferenceDuration,
            True,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17sp4: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17sp4,
        required=True,
    )
    #: OCI.MeetMeConferencingConferencePorts: *Required* allocatedPorts
    allocated_ports = Field(
        type=OCI.MeetMeConferencingConferencePorts,
        required=True,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )
    #: int: *Required* securityPinLength
    security_pin_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* allowIndividualOutDial
    allow_individual_out_dial = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* operatorNumber
    operator_number = Field(
        type=str,
        required=False,
    )
    #: list: *Required* conferenceHostUserTable  *Tabular*
    conference_host_user_table = Field(
        type=list,
        required=True,
    )
    #: bool: *Required* playWarningPrompt
    play_warning_prompt = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* conferenceEndWarningPromptMinutes
    conference_end_warning_prompt_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableMaxConferenceDuration
    enable_max_conference_duration = Field(
        type=bool,
        required=True,
    )
    #: OCI.MeetMeConferencingConferenceDuration: *Required* maxConferenceDurationMinutes
    max_conference_duration_minutes = Field(
        type=OCI.MeetMeConferencingConferenceDuration,
        required=True,
    )
    #: OCI.MeetMeConferencingConferenceDuration: *Required*
    #: maxScheduledConferenceDurationMinutes
    max_scheduled_conference_duration_minutes = Field(
        type=OCI.MeetMeConferencingConferenceDuration,
        required=True,
    )


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".
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1,
            True,
            True,
            False,
        ),
        E(
            "allocated_ports",
            "allocatedPorts",
            OCI.MeetMeConferencingConferencePorts,
            True,
            True,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
        E(
            "security_pin_length",
            "securityPinLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "allow_individual_out_dial",
            "allowIndividualOutDial",
            bool,
            False,
            True,
            False,
        ),
        E(
            "operator_number",
            "operatorNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "conference_host_user_table",
            "conferenceHostUserTable",
            list,
            True,
            True,
            True,
        ),
        E(
            "play_warning_prompt",
            "playWarningPrompt",
            bool,
            False,
            True,
            False,
        ),
        E(
            "conference_end_warning_prompt_minutes",
            "conferenceEndWarningPromptMinutes",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_max_conference_duration",
            "enableMaxConferenceDuration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_conference_duration_minutes",
            "maxConferenceDurationMinutes",
            OCI.MeetMeConferencingConferenceDuration,
            True,
            True,
            False,
        ),
        E(
            "max_scheduled_conference_duration_minutes",
            "maxScheduledConferenceDurationMinutes",
            OCI.MeetMeConferencingConferenceDuration,
            True,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile19sp1: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile19sp1,
        required=True,
    )
    #: OCI.MeetMeConferencingConferencePorts: *Required* allocatedPorts
    allocated_ports = Field(
        type=OCI.MeetMeConferencingConferencePorts,
        required=True,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )
    #: int: *Required* securityPinLength
    security_pin_length = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* allowIndividualOutDial
    allow_individual_out_dial = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* operatorNumber
    operator_number = Field(
        type=str,
        required=False,
    )
    #: list: *Required* conferenceHostUserTable  *Tabular*
    conference_host_user_table = Field(
        type=list,
        required=True,
    )
    #: bool: *Required* playWarningPrompt
    play_warning_prompt = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* conferenceEndWarningPromptMinutes
    conference_end_warning_prompt_minutes = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableMaxConferenceDuration
    enable_max_conference_duration = Field(
        type=bool,
        required=True,
    )
    #: OCI.MeetMeConferencingConferenceDuration: *Required* maxConferenceDurationMinutes
    max_conference_duration_minutes = Field(
        type=OCI.MeetMeConferencingConferenceDuration,
        required=True,
    )
    #: OCI.MeetMeConferencingConferenceDuration: *Required*
    #: maxScheduledConferenceDurationMinutes
    max_scheduled_conference_duration_minutes = Field(
        type=OCI.MeetMeConferencingConferenceDuration,
        required=True,
    )


class GroupMusicOnHoldGetInstanceResponse14(OCIResponse):
    """
    Response to the ``GroupMusicOnHoldGetInstanceRequest14()``.
    """

    _ELEMENTS = (
        E(
            "service_user_id",
            "serviceUserId",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_active_during_call_hold",
            "isActiveDuringCallHold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_active_during_call_park",
            "isActiveDuringCallPark",
            bool,
            False,
            True,
            False,
        ),
        E(
            "message_selection",
            "messageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14,
            True,
            False,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* serviceUserId
    service_user_id = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isActiveDuringCallHold
    is_active_during_call_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isActiveDuringCallPark
    is_active_during_call_park = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* messageSelection
    message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.AccessDeviceEndpointRead14: *Optional* accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceEndpointRead14,
        required=False,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )


class GroupMusicOnHoldGetInstanceResponse14sp4(OCIResponse):
    """
    Response to the ``GroupMusicOnHoldGetInstanceRequest14sp4()``.
    """

    _ELEMENTS = (
        E(
            "service_user_id",
            "serviceUserId",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_active_during_call_hold",
            "isActiveDuringCallHold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_active_during_call_park",
            "isActiveDuringCallPark",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_active_during_busy_camp_on",
            "isActiveDuringBusyCampOn",
            bool,
            False,
            True,
            False,
        ),
        E(
            "message_selection",
            "messageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14,
            True,
            False,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_file_description",
            "audioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_file_description",
            "videoFileDescription",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* serviceUserId
    service_user_id = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isActiveDuringCallHold
    is_active_during_call_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isActiveDuringCallPark
    is_active_during_call_park = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isActiveDuringBusyCampOn
    is_active_during_busy_camp_on = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* messageSelection
    message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.AccessDeviceEndpointRead14: *Optional* accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceEndpointRead14,
        required=False,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* audioFileDescription
    audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* videoFileDescription
    video_file_description = Field(
        type=str,
        required=False,
    )


class GroupOutgoingCallingPlanAuthorizationCodeGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanAuthorizationCodeGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "group_code_list",
            "groupCodeList",
            OCI.OutgoingCallingPlanGroupAuthorizationCodes,
            True,
            True,
            False,
        ),
        E(
            "department_code_list",
            "departmentCodeList",
            OCI.OutgoingCallingPlanDepartmentAuthorizationCodes,
            True,
            False,
            False,
        ),
    )
    #: OCI.OutgoingCallingPlanGroupAuthorizationCodes: *Required* groupCodeList
    group_code_list = Field(
        type=OCI.OutgoingCallingPlanGroupAuthorizationCodes,
        required=True,
    )
    #: OCI.OutgoingCallingPlanDepartmentAuthorizationCodes: *Optional* departmentCodeList
    department_code_list = Field(
        type=OCI.OutgoingCallingPlanDepartmentAuthorizationCodes,
        required=False,
    )


class GroupOutgoingCallingPlanCallMeNowGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanCallMeNowGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "group_permissions",
            "groupPermissions",
            OCI.OutgoingCallingPlanCallMeNowPermissions,
            True,
            True,
            False,
        ),
        E(
            "department_permissions",
            "departmentPermissions",
            OCI.OutgoingCallingPlanCallMeNowDepartmentPermissions,
            True,
            False,
            False,
        ),
    )
    #: OCI.OutgoingCallingPlanCallMeNowPermissions: *Required* groupPermissions
    group_permissions = Field(
        type=OCI.OutgoingCallingPlanCallMeNowPermissions,
        required=True,
    )
    #: OCI.OutgoingCallingPlanCallMeNowDepartmentPermissions: *Optional*
    #: departmentPermissions
    department_permissions = Field(
        type=OCI.OutgoingCallingPlanCallMeNowDepartmentPermissions,
        required=False,
    )


class GroupOutgoingCallingPlanOriginatingGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanOriginatingGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "group_permissions",
            "groupPermissions",
            OCI.OutgoingCallingPlanOriginatingPermissions,
            True,
            True,
            False,
        ),
        E(
            "department_permissions",
            "departmentPermissions",
            OCI.OutgoingCallingPlanOriginatingDepartmentPermissions,
            True,
            False,
            False,
        ),
    )
    #: OCI.OutgoingCallingPlanOriginatingPermissions: *Required* groupPermissions
    group_permissions = Field(
        type=OCI.OutgoingCallingPlanOriginatingPermissions,
        required=True,
    )
    #: OCI.OutgoingCallingPlanOriginatingDepartmentPermissions: *Optional*
    #: departmentPermissions
    department_permissions = Field(
        type=OCI.OutgoingCallingPlanOriginatingDepartmentPermissions,
        required=False,
    )


class GroupOutgoingCallingPlanRedirectedGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanRedirectedGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "group_permissions",
            "groupPermissions",
            OCI.OutgoingCallingPlanRedirectedPermissions,
            True,
            True,
            False,
        ),
        E(
            "department_permissions",
            "departmentPermissions",
            OCI.OutgoingCallingPlanRedirectedDepartmentPermissions,
            True,
            False,
            False,
        ),
    )
    #: OCI.OutgoingCallingPlanRedirectedPermissions: *Required* groupPermissions
    group_permissions = Field(
        type=OCI.OutgoingCallingPlanRedirectedPermissions,
        required=True,
    )
    #: OCI.OutgoingCallingPlanRedirectedDepartmentPermissions: *Optional*
    #: departmentPermissions
    department_permissions = Field(
        type=OCI.OutgoingCallingPlanRedirectedDepartmentPermissions,
        required=False,
    )


class GroupOutgoingCallingPlanRedirectingGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanRedirectingGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "group_permissions",
            "groupPermissions",
            OCI.OutgoingCallingPlanRedirectingPermissions,
            True,
            True,
            False,
        ),
        E(
            "department_permissions",
            "departmentPermissions",
            OCI.OutgoingCallingPlanRedirectingDepartmentPermissions,
            True,
            False,
            False,
        ),
    )
    #: OCI.OutgoingCallingPlanRedirectingPermissions: *Required* groupPermissions
    group_permissions = Field(
        type=OCI.OutgoingCallingPlanRedirectingPermissions,
        required=True,
    )
    #: OCI.OutgoingCallingPlanRedirectingDepartmentPermissions: *Optional*
    #: departmentPermissions
    department_permissions = Field(
        type=OCI.OutgoingCallingPlanRedirectingDepartmentPermissions,
        required=False,
    )


class GroupOutgoingCallingPlanTransferNumbersGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanTransferNumbersGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "group_numbers",
            "groupNumbers",
            OCI.OutgoingCallingPlanTransferNumbers,
            True,
            True,
            False,
        ),
        E(
            "department_numbers",
            "departmentNumbers",
            OCI.OutgoingCallingPlanDepartmentTransferNumbers,
            True,
            False,
            False,
        ),
    )
    #: OCI.OutgoingCallingPlanTransferNumbers: *Required* groupNumbers
    group_numbers = Field(
        type=OCI.OutgoingCallingPlanTransferNumbers,
        required=True,
    )
    #: OCI.OutgoingCallingPlanDepartmentTransferNumbers: *Optional* departmentNumbers
    department_numbers = Field(
        type=OCI.OutgoingCallingPlanDepartmentTransferNumbers,
        required=False,
    )


class GroupRoutePointForcedForwardingGetResponse20(OCIResponse):
    """
    Response to the ``GroupRoutePointForcedForwardingGetRequest20()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forward_to_phone_number",
            "forwardToPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_announcement_before_forwarding",
            "playAnnouncementBeforeForwarding",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* forwardToPhoneNumber
    forward_to_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playAnnouncementBeforeForwarding
    play_announcement_before_forwarding = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )


class GroupRoutePointGetInstanceResponse(OCIResponse):
    """
    Response to ``GroupRoutePointGetInstanceRequest()``.

    Replaced By ``GroupRoutePointGetInstanceResponse19sp1()``
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17,
            True,
            True,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
        E(
            "external_preferred_audio_codec",
            "externalPreferredAudioCodec",
            str,
            False,
            True,
            False,
        ),
        E(
            "internal_preferred_audio_codec",
            "internalPreferredAudioCodec",
            str,
            False,
            True,
            False,
        ),
        E(
            "queue_length",
            "queueLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "no_answer_timeout_rings",
            "noAnswerTimeoutRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "play_ringing_when_offering_call",
            "playRingingWhenOfferingCall",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_agent_wrap_up_time",
            "overrideAgentWrapUpTime",
            bool,
            False,
            True,
            False,
        ),
        E(
            "wrap_up_seconds",
            "wrapUpSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_automatic_state_change_for_agents",
            "enableAutomaticStateChangeForAgents",
            bool,
            False,
            True,
            False,
        ),
        E(
            "agent_state_after_call",
            "agentStateAfterCall",
            str,
            False,
            True,
            False,
        ),
        E(
            "agent_unavailable_code",
            "agentUnavailableCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "force_delivery_of_calls",
            "forceDeliveryOfCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "force_delivery_wait_time_seconds",
            "forceDeliveryWaitTimeSeconds",
            int,
            False,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17,
        required=True,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )
    #: str: *Required* externalPreferredAudioCodec
    external_preferred_audio_codec = Field(
        type=str,
        required=True,
    )
    #: str: *Required* internalPreferredAudioCodec
    internal_preferred_audio_codec = Field(
        type=str,
        required=True,
    )
    #: int: *Required* queueLength
    queue_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* noAnswerTimeoutRings
    no_answer_timeout_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* playRingingWhenOfferingCall
    play_ringing_when_offering_call = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideAgentWrapUpTime
    override_agent_wrap_up_time = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* wrapUpSeconds
    wrap_up_seconds = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableAutomaticStateChangeForAgents
    enable_automatic_state_change_for_agents = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* agentStateAfterCall
    agent_state_after_call = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* agentUnavailableCode
    agent_unavailable_code = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* forceDeliveryOfCalls
    force_delivery_of_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* forceDeliveryWaitTimeSeconds
    force_delivery_wait_time_seconds = Field(
        type=int,
        required=False,
    )


class GroupRoutePointGetInstanceResponse19sp1(OCIResponse):
    """
    Response to ``GroupRoutePointGetInstanceRequest19sp1()``.
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1,
            True,
            True,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
        E(
            "external_preferred_audio_codec",
            "externalPreferredAudioCodec",
            str,
            False,
            True,
            False,
        ),
        E(
            "internal_preferred_audio_codec",
            "internalPreferredAudioCodec",
            str,
            False,
            True,
            False,
        ),
        E(
            "queue_length",
            "queueLength",
            int,
            False,
            True,
            False,
        ),
        E(
            "no_answer_timeout_rings",
            "noAnswerTimeoutRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "play_ringing_when_offering_call",
            "playRingingWhenOfferingCall",
            bool,
            False,
            True,
            False,
        ),
        E(
            "override_agent_wrap_up_time",
            "overrideAgentWrapUpTime",
            bool,
            False,
            True,
            False,
        ),
        E(
            "wrap_up_seconds",
            "wrapUpSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_automatic_state_change_for_agents",
            "enableAutomaticStateChangeForAgents",
            bool,
            False,
            True,
            False,
        ),
        E(
            "agent_state_after_call",
            "agentStateAfterCall",
            str,
            False,
            True,
            False,
        ),
        E(
            "agent_unavailable_code",
            "agentUnavailableCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "force_delivery_of_calls",
            "forceDeliveryOfCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "force_delivery_wait_time_seconds",
            "forceDeliveryWaitTimeSeconds",
            int,
            False,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile19sp1: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile19sp1,
        required=True,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )
    #: str: *Required* externalPreferredAudioCodec
    external_preferred_audio_codec = Field(
        type=str,
        required=True,
    )
    #: str: *Required* internalPreferredAudioCodec
    internal_preferred_audio_codec = Field(
        type=str,
        required=True,
    )
    #: int: *Required* queueLength
    queue_length = Field(
        type=int,
        required=True,
    )
    #: int: *Required* noAnswerTimeoutRings
    no_answer_timeout_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* playRingingWhenOfferingCall
    play_ringing_when_offering_call = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* overrideAgentWrapUpTime
    override_agent_wrap_up_time = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* wrapUpSeconds
    wrap_up_seconds = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableAutomaticStateChangeForAgents
    enable_automatic_state_change_for_agents = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* agentStateAfterCall
    agent_state_after_call = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* agentUnavailableCode
    agent_unavailable_code = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* forceDeliveryOfCalls
    force_delivery_of_calls = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* forceDeliveryWaitTimeSeconds
    force_delivery_wait_time_seconds = Field(
        type=int,
        required=False,
    )


class GroupRoutePointHolidayServiceGetResponse20(OCIResponse):
    """
    Response to the ``GroupRoutePointHolidayServiceGetRequest20()``.
    """

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_announcement_before_action",
            "playAnnouncementBeforeAction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playAnnouncementBeforeAction
    play_announcement_before_action = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )


class GroupRoutePointNightServiceGetResponse20(OCIResponse):
    """
    Response to the ``GroupRoutePointNightServiceGetRequest20()``.
    """

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "business_hours",
            "businessHours",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "force_night_service",
            "forceNightService",
            bool,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_announcement_before_action",
            "playAnnouncementBeforeAction",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "manual_announcement_mode",
            "manualAnnouncementMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "manual_audio_message_selection",
            "manualAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "manual_audio_url_list",
            "manualAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "manual_audio_file_list",
            "manualAudioFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "manual_video_message_selection",
            "manualVideoMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "manual_video_url_list",
            "manualVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "manual_video_file_list",
            "manualVideoFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: OCI.TimeSchedule: *Optional* businessHours
    business_hours = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: bool: *Required* forceNightService
    force_night_service = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playAnnouncementBeforeAction
    play_announcement_before_action = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Required* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Required* manualAnnouncementMode
    manual_announcement_mode = Field(
        type=str,
        required=True,
    )
    #: str: *Required* manualAudioMessageSelection
    manual_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* manualAudioUrlList
    manual_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* manualAudioFileList
    manual_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Required* manualVideoMessageSelection
    manual_video_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* manualVideoUrlList
    manual_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* manualVideoFileList
    manual_video_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )


class GroupRoutePointOverflowGetResponse20(OCIResponse):
    """
    Response to the ``GroupRoutePointOverflowGetRequest20()``.
    """

    _ELEMENTS = (
        E(
            "action",
            "action",
            str,
            False,
            True,
            False,
        ),
        E(
            "transfer_phone_number",
            "transferPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "overflow_after_timeout",
            "overflowAfterTimeout",
            bool,
            False,
            True,
            False,
        ),
        E(
            "timeout_seconds",
            "timeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "play_announcement_before_overflow_processing",
            "playAnnouncementBeforeOverflowProcessing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "audio_message_selection",
            "audioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_url_list",
            "audioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "audio_file_list",
            "audioFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "video_message_selection",
            "videoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "video_url_list",
            "videoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "video_file_list",
            "videoFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* action
    action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* transferPhoneNumber
    transfer_phone_number = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* overflowAfterTimeout
    overflow_after_timeout = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* timeoutSeconds
    timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* playAnnouncementBeforeOverflowProcessing
    play_announcement_before_overflow_processing = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* audioMessageSelection
    audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* audioUrlList
    audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* audioFileList
    audio_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Optional* videoMessageSelection
    video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* videoUrlList
    video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* videoFileList
    video_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=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.
    """

    _ELEMENTS = (
        E(
            "schedule_global_key",
            "scheduleGlobalKey",
            OCI.ScheduleGlobalKey,
            True,
            False,
            False,
        ),
    )
    #: OCI.ScheduleGlobalKey: *Optional* scheduleGlobalKey
    schedule_global_key = Field(
        type=OCI.ScheduleGlobalKey,
        required=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.
    """

    _ELEMENTS = (
        E(
            "entry",
            "entry",
            OCI.ShInterfaceUserListEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.ShInterfaceUserListEntry: *Optional* entry
    entry = Field(
        type=OCI.ShInterfaceUserListEntry,
        required=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.
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile,
            True,
            True,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14,
            True,
            False,
            False,
        ),
        E(
            "max_active_calls",
            "maxActiveCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_incoming_calls",
            "maxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_outgoing_calls",
            "maxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "require_authentication",
            "requireAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sip_authentication_user_name",
            "sipAuthenticationUserName",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile,
        required=True,
    )
    #: OCI.AccessDeviceEndpointRead14: *Optional* accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceEndpointRead14,
        required=False,
    )
    #: int: *Required* maxActiveCalls
    max_active_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* maxIncomingCalls
    max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxOutgoingCalls
    max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* requireAuthentication
    require_authentication = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* sipAuthenticationUserName
    sip_authentication_user_name = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile,
            True,
            True,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14,
            True,
            False,
            False,
        ),
        E(
            "max_active_calls",
            "maxActiveCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "max_incoming_calls",
            "maxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "max_outgoing_calls",
            "maxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "enable_bursting",
            "enableBursting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bursting_max_active_calls",
            "burstingMaxActiveCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_incoming_calls",
            "burstingMaxIncomingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "bursting_max_outgoing_calls",
            "burstingMaxOutgoingCalls",
            int,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_action",
            "capacityExceededAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_forward_address",
            "capacityExceededForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_reroute_trunk_group_id",
            "capacityExceededRerouteTrunkGroupId",
            str,
            False,
            False,
            False,
        ),
        E(
            "capacity_exceeded_trap_initial_calls",
            "capacityExceededTrapInitialCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "capacity_exceeded_trap_offset_calls",
            "capacityExceededTrapOffsetCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "unreachable_destination_action",
            "unreachableDestinationAction",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_forward_address",
            "unreachableDestinationForwardAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_reroute_trunk_group_id",
            "unreachableDestinationRerouteTrunkGroupId",
            str,
            False,
            False,
            False,
        ),
        E(
            "unreachable_destination_trap_initial_calls",
            "unreachableDestinationTrapInitialCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "unreachable_destination_trap_offset_calls",
            "unreachableDestinationTrapOffsetCalls",
            int,
            False,
            True,
            False,
        ),
        E(
            "invitation_timeout",
            "invitationTimeout",
            int,
            False,
            True,
            False,
        ),
        E(
            "require_authentication",
            "requireAuthentication",
            bool,
            False,
            True,
            False,
        ),
        E(
            "sip_authentication_user_name",
            "sipAuthenticationUserName",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile,
        required=True,
    )
    #: OCI.AccessDeviceEndpointRead14: *Optional* accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceEndpointRead14,
        required=False,
    )
    #: int: *Required* maxActiveCalls
    max_active_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Optional* maxIncomingCalls
    max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* maxOutgoingCalls
    max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: bool: *Required* enableBursting
    enable_bursting = Field(
        type=bool,
        required=True,
    )
    #: int: *Optional* burstingMaxActiveCalls
    bursting_max_active_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxIncomingCalls
    bursting_max_incoming_calls = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* burstingMaxOutgoingCalls
    bursting_max_outgoing_calls = Field(
        type=int,
        required=False,
    )
    #: str: *Optional* capacityExceededAction
    capacity_exceeded_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* capacityExceededForwardAddress
    capacity_exceeded_forward_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* capacityExceededRerouteTrunkGroupId
    capacity_exceeded_reroute_trunk_group_id = Field(
        type=str,
        required=False,
    )
    #: int: *Required* capacityExceededTrapInitialCalls
    capacity_exceeded_trap_initial_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* capacityExceededTrapOffsetCalls
    capacity_exceeded_trap_offset_calls = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* unreachableDestinationAction
    unreachable_destination_action = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* unreachableDestinationForwardAddress
    unreachable_destination_forward_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* unreachableDestinationRerouteTrunkGroupId
    unreachable_destination_reroute_trunk_group_id = Field(
        type=str,
        required=False,
    )
    #: int: *Required* unreachableDestinationTrapInitialCalls
    unreachable_destination_trap_initial_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* unreachableDestinationTrapOffsetCalls
    unreachable_destination_trap_offset_calls = Field(
        type=int,
        required=True,
    )
    #: int: *Required* invitationTimeout
    invitation_timeout = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* requireAuthentication
    require_authentication = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* sipAuthenticationUserName
    sip_authentication_user_name = Field(
        type=str,
        required=False,
    )


class GroupVoiceMessagingGroupGetVoicePortalResponse14(OCIResponse):
    """
    Response to the ``GroupVoiceMessagingGroupGetVoicePortalRequest14()``.
    Replaced by ``GroupVoiceMessagingGroupGetVoicePortalResponse15()``
    """

    _ELEMENTS = (
        E(
            "service_user_id",
            "serviceUserId",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile,
            True,
            True,
            False,
        ),
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_identification_by_phone_number_or_voice_mail_aliases_on_login",
            "allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_voice_portal_wizard",
            "useVoicePortalWizard",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_external_routing_scope",
            "voicePortalExternalRoutingScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_external_routing",
            "useExternalRouting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "external_routing_address",
            "externalRoutingAddress",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* serviceUserId
    service_user_id = Field(
        type=str,
        required=True,
    )
    #: OCI.ServiceInstanceReadProfile: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile,
        required=True,
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin
    allow_identification_by_phone_number_or_voice_mail_aliases_on_login = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useVoicePortalWizard
    use_voice_portal_wizard = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* voicePortalExternalRoutingScope
    voice_portal_external_routing_scope = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useExternalRouting
    use_external_routing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* externalRoutingAddress
    external_routing_address = Field(
        type=str,
        required=False,
    )


class GroupVoiceMessagingGroupGetVoicePortalResponse15(OCIResponse):
    """
    Response to the ``GroupVoiceMessagingGroupGetVoicePortalRequest15()``.
    """

    _ELEMENTS = (
        E(
            "service_user_id",
            "serviceUserId",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile,
            True,
            True,
            False,
        ),
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_identification_by_phone_number_or_voice_mail_aliases_on_login",
            "allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_voice_portal_wizard",
            "useVoicePortalWizard",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_external_routing_scope",
            "voicePortalExternalRoutingScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_external_routing",
            "useExternalRouting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "external_routing_address",
            "externalRoutingAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "home_zone_name",
            "homeZoneName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* serviceUserId
    service_user_id = Field(
        type=str,
        required=True,
    )
    #: OCI.ServiceInstanceReadProfile: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile,
        required=True,
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin
    allow_identification_by_phone_number_or_voice_mail_aliases_on_login = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useVoicePortalWizard
    use_voice_portal_wizard = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* voicePortalExternalRoutingScope
    voice_portal_external_routing_scope = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useExternalRouting
    use_external_routing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* externalRoutingAddress
    external_routing_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* homeZoneName
    home_zone_name = Field(
        type=str,
        required=False,
    )


class GroupVoiceMessagingGroupGetVoicePortalResponse17(OCIResponse):
    """
    Response to the ``GroupVoiceMessagingGroupGetVoicePortalRequest17()``.
    """

    _ELEMENTS = (
        E(
            "service_user_id",
            "serviceUserId",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17,
            True,
            True,
            False,
        ),
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_identification_by_phone_number_or_voice_mail_aliases_on_login",
            "allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_voice_portal_wizard",
            "useVoicePortalWizard",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_external_routing_scope",
            "voicePortalExternalRoutingScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_external_routing",
            "useExternalRouting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "external_routing_address",
            "externalRoutingAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "home_zone_name",
            "homeZoneName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* serviceUserId
    service_user_id = Field(
        type=str,
        required=True,
    )
    #: OCI.ServiceInstanceReadProfile17: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17,
        required=True,
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin
    allow_identification_by_phone_number_or_voice_mail_aliases_on_login = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useVoicePortalWizard
    use_voice_portal_wizard = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* voicePortalExternalRoutingScope
    voice_portal_external_routing_scope = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useExternalRouting
    use_external_routing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* externalRoutingAddress
    external_routing_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* homeZoneName
    home_zone_name = Field(
        type=str,
        required=False,
    )


class GroupVoiceMessagingGroupGetVoicePortalResponse17sp4(OCIResponse):
    """
    Response to the ``GroupVoiceMessagingGroupGetVoicePortalRequest17sp4()``.

    The following elements are only used in HSS data mode:
    enableExtendedScope

    Replaced By ``GroupVoiceMessagingGroupGetVoicePortalResponse19sp1()``
    """

    _ELEMENTS = (
        E(
            "service_user_id",
            "serviceUserId",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17,
            True,
            True,
            False,
        ),
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_extended_scope",
            "enableExtendedScope",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_identification_by_phone_number_or_voice_mail_aliases_on_login",
            "allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_voice_portal_wizard",
            "useVoicePortalWizard",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_external_routing_scope",
            "voicePortalExternalRoutingScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_external_routing",
            "useExternalRouting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "external_routing_address",
            "externalRoutingAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "home_zone_name",
            "homeZoneName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* serviceUserId
    service_user_id = Field(
        type=str,
        required=True,
    )
    #: OCI.ServiceInstanceReadProfile17: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17,
        required=True,
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableExtendedScope
    enable_extended_scope = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin
    allow_identification_by_phone_number_or_voice_mail_aliases_on_login = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useVoicePortalWizard
    use_voice_portal_wizard = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* voicePortalExternalRoutingScope
    voice_portal_external_routing_scope = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useExternalRouting
    use_external_routing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* externalRoutingAddress
    external_routing_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* homeZoneName
    home_zone_name = Field(
        type=str,
        required=False,
    )


class GroupVoiceMessagingGroupGetVoicePortalResponse19sp1(OCIResponse):
    """
    Response to the ``GroupVoiceMessagingGroupGetVoicePortalRequest19sp1()``.

    The following elements are only used in HSS data mode:
    enableExtendedScope
    """

    _ELEMENTS = (
        E(
            "service_user_id",
            "serviceUserId",
            str,
            False,
            True,
            False,
        ),
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1,
            True,
            True,
            False,
        ),
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_extended_scope",
            "enableExtendedScope",
            bool,
            False,
            True,
            False,
        ),
        E(
            "allow_identification_by_phone_number_or_voice_mail_aliases_on_login",
            "allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_voice_portal_wizard",
            "useVoicePortalWizard",
            bool,
            False,
            True,
            False,
        ),
        E(
            "voice_portal_external_routing_scope",
            "voicePortalExternalRoutingScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "use_external_routing",
            "useExternalRouting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "external_routing_address",
            "externalRoutingAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "home_zone_name",
            "homeZoneName",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* serviceUserId
    service_user_id = Field(
        type=str,
        required=True,
    )
    #: OCI.ServiceInstanceReadProfile19sp1: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile19sp1,
        required=True,
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableExtendedScope
    enable_extended_scope = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* allowIdentificationByPhoneNumberOrVoiceMailAliasesOnLogin
    allow_identification_by_phone_number_or_voice_mail_aliases_on_login = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useVoicePortalWizard
    use_voice_portal_wizard = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* voicePortalExternalRoutingScope
    voice_portal_external_routing_scope = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* useExternalRouting
    use_external_routing = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* externalRoutingAddress
    external_routing_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* homeZoneName
    home_zone_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )


class GroupVoiceXmlGetInstanceResponse(OCIResponse):
    """
    Response to ``GroupVoiceXmlGetInstanceRequest()``.
    Contains the service profile information and possibly access device information.

    Replaced By ``GroupVoiceXmlGetInstanceResponse19sp1()``
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17sp4,
            True,
            True,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointWithPortNumberRead,
            True,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17sp4: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17sp4,
        required=True,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )
    #: OCI.AccessDeviceEndpointWithPortNumberRead: *Optional* accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceEndpointWithPortNumberRead,
        required=False,
    )


class GroupVoiceXmlGetInstanceResponse19sp1(OCIResponse):
    """
    Response to ``GroupVoiceXmlGetInstanceRequest19sp1()``.
    Contains the service profile information and possibly access device information.
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1,
            True,
            True,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointWithPortNumberRead,
            True,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile19sp1: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile19sp1,
        required=True,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )
    #: OCI.AccessDeviceEndpointWithPortNumberRead: *Optional* accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceEndpointWithPortNumberRead,
        required=False,
    )


class ServiceProviderMWIDeliveryToMobileEndpointCustomTemplateGetResponse(OCIResponse):
    """
    Response to the ``ServiceProviderMWIDeliveryToMobileEndpointCustomTemplateGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_enabled",
            "isEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "template_body",
            "templateBody",
            OCI.MWIDeliveryToMobileEndpointTemplateBody,
            True,
            True,
            False,
        ),
    )
    #: bool: *Required* isEnabled
    is_enabled = Field(
        type=bool,
        required=True,
    )
    #: OCI.MWIDeliveryToMobileEndpointTemplateBody: *Required* templateBody
    template_body = Field(
        type=OCI.MWIDeliveryToMobileEndpointTemplateBody,
        required=True,
    )


class SystemDeviceTypeGetResponse14sp6(OCIResponse):
    """
    Response to ``SystemDeviceTypeGetRequest14sp6()``.
    Replaced By ``SystemDeviceTypeGetResponse16()``
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptionsRead,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_ip_address_optional",
            "isIpAddressOptional",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_domain",
            "useDomain",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_mobility_manager_device",
            "isMobilityManagerDevice",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptionsRead: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptionsRead,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isIpAddressOptional
    is_ip_address_optional = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useDomain
    use_domain = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMobilityManagerDevice
    is_mobility_manager_device = Field(
        type=bool,
        required=True,
    )


class SystemDeviceTypeGetResponse16(OCIResponse):
    """
    Response to ``SystemDeviceTypeGetRequest16()``.
    Replaced By ``SystemDeviceTypeGetResponse16sp1()``
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptionsRead16,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_ip_address_optional",
            "isIpAddressOptional",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_domain",
            "useDomain",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_mobility_manager_device",
            "isMobilityManagerDevice",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptionsRead16: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptionsRead16,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isIpAddressOptional
    is_ip_address_optional = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useDomain
    use_domain = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMobilityManagerDevice
    is_mobility_manager_device = Field(
        type=bool,
        required=True,
    )


class SystemDeviceTypeGetResponse16sp1(OCIResponse):
    """
    Replaced By SystemSIPDeviceTypeGetReponse18.
    Response to ``SystemDeviceTypeGetRequest16sp1()``.
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptionsRead16sp1,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_ip_address_optional",
            "isIpAddressOptional",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_domain",
            "useDomain",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_mobility_manager_device",
            "isMobilityManagerDevice",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptionsRead16sp1: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptionsRead16sp1,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isIpAddressOptional
    is_ip_address_optional = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useDomain
    use_domain = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMobilityManagerDevice
    is_mobility_manager_device = Field(
        type=bool,
        required=True,
    )


class SystemDeviceTypeGetResponse18(OCIResponse):
    """
    Response to ``SystemDeviceTypeGetRequest18()``.
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptionsRead16sp1,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_ip_address_optional",
            "isIpAddressOptional",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_domain",
            "useDomain",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_mobility_manager_device",
            "isMobilityManagerDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "device_type_configuration_option",
            "deviceTypeConfigurationOption",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptionsRead16sp1: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptionsRead16sp1,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isIpAddressOptional
    is_ip_address_optional = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useDomain
    use_domain = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMobilityManagerDevice
    is_mobility_manager_device = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* deviceTypeConfigurationOption
    device_type_configuration_option = Field(
        type=str,
        required=False,
    )


class SystemDeviceTypeGetResponse19(OCIResponse):
    """
    Response to ``SystemDeviceTypeGetRequest19()``.
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptionsRead16sp1,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_ip_address_optional",
            "isIpAddressOptional",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_domain",
            "useDomain",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_mobility_manager_device",
            "isMobilityManagerDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "device_type_configuration_option",
            "deviceTypeConfigurationOption",
            str,
            False,
            False,
            False,
        ),
        E(
            "static_line_ordering",
            "staticLineOrdering",
            bool,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptionsRead16sp1: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptionsRead16sp1,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isIpAddressOptional
    is_ip_address_optional = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useDomain
    use_domain = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMobilityManagerDevice
    is_mobility_manager_device = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* deviceTypeConfigurationOption
    device_type_configuration_option = Field(
        type=str,
        required=False,
    )
    #: bool: *Optional* staticLineOrdering
    static_line_ordering = Field(
        type=bool,
        required=False,
    )


class SystemSIPDeviceTypeGetResponse14sp6(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest14sp6()``.
    Replaced By ``SystemSIPDeviceTypeGetResponse14sp6()``
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "registration_capable",
            "registrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_conference_device",
            "isConferenceDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_mobility_manager_device",
            "isMobilityManagerDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_music_on_hold_device",
            "isMusicOnHoldDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "rfc3264_hold",
            "RFC3264Hold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_trusted",
            "isTrusted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "e164_capable",
            "E164Capable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "route_advance",
            "routeAdvance",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forwarding_override",
            "forwardingOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "wireless_integration",
            "wirelessIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_video_capable",
            "isVideoCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pbx_integration",
            "PBXIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_business_trunking_contact",
            "useBusinessTrunkingContact",
            bool,
            False,
            True,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptionsRead,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "early_media_support",
            "earlyMediaSupport",
            str,
            False,
            True,
            False,
        ),
        E(
            "authenticate_refer",
            "authenticateRefer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "auto_config_soft_client",
            "autoConfigSoftClient",
            bool,
            False,
            True,
            False,
        ),
        E(
            "authentication_mode",
            "authenticationMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "tdm_overlay",
            "tdmOverlay",
            bool,
            False,
            True,
            False,
        ),
        E(
            "supports_broad_works_info_for_call_waiting",
            "supportsBroadWorksINFOForCallWaiting",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* registrationCapable
    registration_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isConferenceDevice
    is_conference_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMobilityManagerDevice
    is_mobility_manager_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMusicOnHoldDevice
    is_music_on_hold_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* RFC3264Hold
    rfc3264_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isTrusted
    is_trusted = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* E164Capable
    e164_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* routeAdvance
    route_advance = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forwardingOverride
    forwarding_override = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* wirelessIntegration
    wireless_integration = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isVideoCapable
    is_video_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* PBXIntegration
    pbx_integration = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useBusinessTrunkingContact
    use_business_trunking_contact = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptionsRead: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptionsRead,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: str: *Required* earlyMediaSupport
    early_media_support = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* authenticateRefer
    authenticate_refer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* autoConfigSoftClient
    auto_config_soft_client = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* authenticationMode
    authentication_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* tdmOverlay
    tdm_overlay = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportsBroadWorksINFOForCallWaiting
    supports_broad_works_info_for_call_waiting = Field(
        type=bool,
        required=True,
    )


class SystemSIPDeviceTypeGetResponse15(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest15()``.
    Replaced By : ``SystemSIPDeviceTypeAddResponse16()``
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "registration_capable",
            "registrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_conference_device",
            "isConferenceDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_mobility_manager_device",
            "isMobilityManagerDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_music_on_hold_device",
            "isMusicOnHoldDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "rfc3264_hold",
            "RFC3264Hold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_trusted",
            "isTrusted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "e164_capable",
            "E164Capable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "route_advance",
            "routeAdvance",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forwarding_override",
            "forwardingOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "wireless_integration",
            "wirelessIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_video_capable",
            "isVideoCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pbx_integration",
            "PBXIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_business_trunking_contact",
            "useBusinessTrunkingContact",
            bool,
            False,
            True,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptionsRead,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "early_media_support",
            "earlyMediaSupport",
            str,
            False,
            True,
            False,
        ),
        E(
            "authenticate_refer",
            "authenticateRefer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "auto_config_soft_client",
            "autoConfigSoftClient",
            bool,
            False,
            True,
            False,
        ),
        E(
            "authentication_mode",
            "authenticationMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "tdm_overlay",
            "tdmOverlay",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_call_waiting_tone",
            "requiresBroadWorksCallWaitingTone",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_mwi_subscription",
            "requiresMWISubscription",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_history_info_header_on_access_side",
            "useHistoryInfoHeaderOnAccessSide",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* registrationCapable
    registration_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isConferenceDevice
    is_conference_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMobilityManagerDevice
    is_mobility_manager_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMusicOnHoldDevice
    is_music_on_hold_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* RFC3264Hold
    rfc3264_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isTrusted
    is_trusted = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* E164Capable
    e164_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* routeAdvance
    route_advance = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forwardingOverride
    forwarding_override = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* wirelessIntegration
    wireless_integration = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isVideoCapable
    is_video_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* PBXIntegration
    pbx_integration = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useBusinessTrunkingContact
    use_business_trunking_contact = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptionsRead: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptionsRead,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: str: *Required* earlyMediaSupport
    early_media_support = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* authenticateRefer
    authenticate_refer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* autoConfigSoftClient
    auto_config_soft_client = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* authenticationMode
    authentication_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* tdmOverlay
    tdm_overlay = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksCallWaitingTone
    requires_broad_works_call_waiting_tone = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresMWISubscription
    requires_mwi_subscription = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useHistoryInfoHeaderOnAccessSide
    use_history_info_header_on_access_side = Field(
        type=bool,
        required=True,
    )


class SystemSIPDeviceTypeGetResponse16(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest16()``.
    Replaced By ``SystemSIPDeviceTypeGetResponse16sp1()``
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "registration_capable",
            "registrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_conference_device",
            "isConferenceDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_mobility_manager_device",
            "isMobilityManagerDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_music_on_hold_device",
            "isMusicOnHoldDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "rfc3264_hold",
            "RFC3264Hold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_trusted",
            "isTrusted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "e164_capable",
            "E164Capable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "route_advance",
            "routeAdvance",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forwarding_override",
            "forwardingOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "wireless_integration",
            "wirelessIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_video_capable",
            "isVideoCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pbx_integration",
            "PBXIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_business_trunking_contact",
            "useBusinessTrunkingContact",
            bool,
            False,
            True,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptionsRead16,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "early_media_support",
            "earlyMediaSupport",
            str,
            False,
            True,
            False,
        ),
        E(
            "authenticate_refer",
            "authenticateRefer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "auto_config_soft_client",
            "autoConfigSoftClient",
            bool,
            False,
            True,
            False,
        ),
        E(
            "authentication_mode",
            "authenticationMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_digit_collection",
            "requiresBroadWorksDigitCollection",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_call_waiting_tone",
            "requiresBroadWorksCallWaitingTone",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_mwi_subscription",
            "requiresMWISubscription",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_history_info_header_on_access_side",
            "useHistoryInfoHeaderOnAccessSide",
            bool,
            False,
            True,
            False,
        ),
        E(
            "advice_of_charge_capable",
            "adviceOfChargeCapable",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* registrationCapable
    registration_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isConferenceDevice
    is_conference_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMobilityManagerDevice
    is_mobility_manager_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMusicOnHoldDevice
    is_music_on_hold_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* RFC3264Hold
    rfc3264_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isTrusted
    is_trusted = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* E164Capable
    e164_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* routeAdvance
    route_advance = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forwardingOverride
    forwarding_override = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* wirelessIntegration
    wireless_integration = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isVideoCapable
    is_video_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* PBXIntegration
    pbx_integration = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useBusinessTrunkingContact
    use_business_trunking_contact = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptionsRead16: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptionsRead16,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: str: *Required* earlyMediaSupport
    early_media_support = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* authenticateRefer
    authenticate_refer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* autoConfigSoftClient
    auto_config_soft_client = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* authenticationMode
    authentication_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksDigitCollection
    requires_broad_works_digit_collection = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksCallWaitingTone
    requires_broad_works_call_waiting_tone = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresMWISubscription
    requires_mwi_subscription = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useHistoryInfoHeaderOnAccessSide
    use_history_info_header_on_access_side = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* adviceOfChargeCapable
    advice_of_charge_capable = Field(
        type=bool,
        required=True,
    )


class SystemSIPDeviceTypeGetResponse16sp1(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest16sp1()``.
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "registration_capable",
            "registrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_conference_device",
            "isConferenceDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_mobility_manager_device",
            "isMobilityManagerDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_music_on_hold_device",
            "isMusicOnHoldDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "rfc3264_hold",
            "RFC3264Hold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_trusted",
            "isTrusted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "e164_capable",
            "E164Capable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "route_advance",
            "routeAdvance",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forwarding_override",
            "forwardingOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "wireless_integration",
            "wirelessIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_video_capable",
            "isVideoCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pbx_integration",
            "PBXIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_business_trunking_contact",
            "useBusinessTrunkingContact",
            bool,
            False,
            True,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptionsRead16sp1,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "early_media_support",
            "earlyMediaSupport",
            str,
            False,
            True,
            False,
        ),
        E(
            "authenticate_refer",
            "authenticateRefer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "auto_config_soft_client",
            "autoConfigSoftClient",
            bool,
            False,
            True,
            False,
        ),
        E(
            "authentication_mode",
            "authenticationMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_digit_collection",
            "requiresBroadWorksDigitCollection",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_call_waiting_tone",
            "requiresBroadWorksCallWaitingTone",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_mwi_subscription",
            "requiresMWISubscription",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_history_info_header_on_access_side",
            "useHistoryInfoHeaderOnAccessSide",
            bool,
            False,
            True,
            False,
        ),
        E(
            "advice_of_charge_capable",
            "adviceOfChargeCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "reset_event",
            "resetEvent",
            str,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* registrationCapable
    registration_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isConferenceDevice
    is_conference_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMobilityManagerDevice
    is_mobility_manager_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMusicOnHoldDevice
    is_music_on_hold_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* RFC3264Hold
    rfc3264_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isTrusted
    is_trusted = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* E164Capable
    e164_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* routeAdvance
    route_advance = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forwardingOverride
    forwarding_override = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* wirelessIntegration
    wireless_integration = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isVideoCapable
    is_video_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* PBXIntegration
    pbx_integration = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useBusinessTrunkingContact
    use_business_trunking_contact = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptionsRead16sp1: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptionsRead16sp1,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: str: *Required* earlyMediaSupport
    early_media_support = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* authenticateRefer
    authenticate_refer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* autoConfigSoftClient
    auto_config_soft_client = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* authenticationMode
    authentication_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksDigitCollection
    requires_broad_works_digit_collection = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksCallWaitingTone
    requires_broad_works_call_waiting_tone = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresMWISubscription
    requires_mwi_subscription = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useHistoryInfoHeaderOnAccessSide
    use_history_info_header_on_access_side = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* adviceOfChargeCapable
    advice_of_charge_capable = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* resetEvent
    reset_event = Field(
        type=str,
        required=False,
    )


class SystemSIPDeviceTypeGetResponse17(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest17()``.
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "registration_capable",
            "registrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_conference_device",
            "isConferenceDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_mobility_manager_device",
            "isMobilityManagerDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_music_on_hold_device",
            "isMusicOnHoldDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "rfc3264_hold",
            "RFC3264Hold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_trusted",
            "isTrusted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "e164_capable",
            "E164Capable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "route_advance",
            "routeAdvance",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forwarding_override",
            "forwardingOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "wireless_integration",
            "wirelessIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_video_capable",
            "isVideoCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pbx_integration",
            "PBXIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptionsRead16sp1,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "early_media_support",
            "earlyMediaSupport",
            str,
            False,
            True,
            False,
        ),
        E(
            "authenticate_refer",
            "authenticateRefer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "auto_config_soft_client",
            "autoConfigSoftClient",
            bool,
            False,
            True,
            False,
        ),
        E(
            "authentication_mode",
            "authenticationMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_digit_collection",
            "requiresBroadWorksDigitCollection",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_call_waiting_tone",
            "requiresBroadWorksCallWaitingTone",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_mwi_subscription",
            "requiresMWISubscription",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_history_info_header_on_access_side",
            "useHistoryInfoHeaderOnAccessSide",
            bool,
            False,
            True,
            False,
        ),
        E(
            "advice_of_charge_capable",
            "adviceOfChargeCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "reset_event",
            "resetEvent",
            str,
            False,
            False,
            False,
        ),
        E(
            "support_call_center_mime_type",
            "supportCallCenterMIMEType",
            bool,
            False,
            True,
            False,
        ),
        E(
            "trunk_mode",
            "trunkMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "add_p_called_party_id",
            "addPCalledPartyId",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* registrationCapable
    registration_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isConferenceDevice
    is_conference_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMobilityManagerDevice
    is_mobility_manager_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMusicOnHoldDevice
    is_music_on_hold_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* RFC3264Hold
    rfc3264_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isTrusted
    is_trusted = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* E164Capable
    e164_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* routeAdvance
    route_advance = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forwardingOverride
    forwarding_override = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* wirelessIntegration
    wireless_integration = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isVideoCapable
    is_video_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* PBXIntegration
    pbx_integration = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptionsRead16sp1: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptionsRead16sp1,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: str: *Required* earlyMediaSupport
    early_media_support = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* authenticateRefer
    authenticate_refer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* autoConfigSoftClient
    auto_config_soft_client = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* authenticationMode
    authentication_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksDigitCollection
    requires_broad_works_digit_collection = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksCallWaitingTone
    requires_broad_works_call_waiting_tone = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresMWISubscription
    requires_mwi_subscription = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useHistoryInfoHeaderOnAccessSide
    use_history_info_header_on_access_side = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* adviceOfChargeCapable
    advice_of_charge_capable = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* resetEvent
    reset_event = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* supportCallCenterMIMEType
    support_call_center_mime_type = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* trunkMode
    trunk_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* addPCalledPartyId
    add_p_called_party_id = Field(
        type=bool,
        required=True,
    )


class SystemSIPDeviceTypeGetResponse17sp4(OCIResponse):
    """
    Replaced By ``SystemSIPDeviceTypeGetResponse18()``.
    Response to ``SystemSIPDeviceTypeGetRequest17sp4()``.
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "registration_capable",
            "registrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_conference_device",
            "isConferenceDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_mobility_manager_device",
            "isMobilityManagerDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_music_on_hold_device",
            "isMusicOnHoldDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "rfc3264_hold",
            "RFC3264Hold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_trusted",
            "isTrusted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "e164_capable",
            "E164Capable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "route_advance",
            "routeAdvance",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forwarding_override",
            "forwardingOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "wireless_integration",
            "wirelessIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_video_capable",
            "isVideoCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pbx_integration",
            "PBXIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptionsRead16sp1,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "early_media_support",
            "earlyMediaSupport",
            str,
            False,
            True,
            False,
        ),
        E(
            "authenticate_refer",
            "authenticateRefer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "auto_config_soft_client",
            "autoConfigSoftClient",
            bool,
            False,
            True,
            False,
        ),
        E(
            "authentication_mode",
            "authenticationMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_digit_collection",
            "requiresBroadWorksDigitCollection",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_call_waiting_tone",
            "requiresBroadWorksCallWaitingTone",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_mwi_subscription",
            "requiresMWISubscription",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_history_info_header_on_access_side",
            "useHistoryInfoHeaderOnAccessSide",
            bool,
            False,
            True,
            False,
        ),
        E(
            "advice_of_charge_capable",
            "adviceOfChargeCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "reset_event",
            "resetEvent",
            str,
            False,
            False,
            False,
        ),
        E(
            "support_call_center_mime_type",
            "supportCallCenterMIMEType",
            bool,
            False,
            True,
            False,
        ),
        E(
            "trunk_mode",
            "trunkMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "add_p_called_party_id",
            "addPCalledPartyId",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_identity_in_update_and_re_invite",
            "supportIdentityInUpdateAndReInvite",
            bool,
            False,
            True,
            False,
        ),
        E(
            "unscreened_presentation_identity_policy",
            "unscreenedPresentationIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* registrationCapable
    registration_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isConferenceDevice
    is_conference_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMobilityManagerDevice
    is_mobility_manager_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMusicOnHoldDevice
    is_music_on_hold_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* RFC3264Hold
    rfc3264_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isTrusted
    is_trusted = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* E164Capable
    e164_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* routeAdvance
    route_advance = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forwardingOverride
    forwarding_override = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* wirelessIntegration
    wireless_integration = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isVideoCapable
    is_video_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* PBXIntegration
    pbx_integration = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptionsRead16sp1: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptionsRead16sp1,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: str: *Required* earlyMediaSupport
    early_media_support = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* authenticateRefer
    authenticate_refer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* autoConfigSoftClient
    auto_config_soft_client = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* authenticationMode
    authentication_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksDigitCollection
    requires_broad_works_digit_collection = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksCallWaitingTone
    requires_broad_works_call_waiting_tone = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresMWISubscription
    requires_mwi_subscription = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useHistoryInfoHeaderOnAccessSide
    use_history_info_header_on_access_side = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* adviceOfChargeCapable
    advice_of_charge_capable = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* resetEvent
    reset_event = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* supportCallCenterMIMEType
    support_call_center_mime_type = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* trunkMode
    trunk_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* addPCalledPartyId
    add_p_called_party_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportIdentityInUpdateAndReInvite
    support_identity_in_update_and_re_invite = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* unscreenedPresentationIdentityPolicy
    unscreened_presentation_identity_policy = Field(
        type=str,
        required=True,
    )


class SystemSIPDeviceTypeGetResponse18(OCIResponse):
    """
    Response to ``SystemSIPDeviceTypeGetRequest18()``.

    The following elements are only used in HSS data mode:
    enable3G4GContinuity

    Replaced By ``SystemSIPDeviceTypeGetResponse19()``
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "registration_capable",
            "registrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_conference_device",
            "isConferenceDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_mobility_manager_device",
            "isMobilityManagerDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_music_on_hold_device",
            "isMusicOnHoldDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "rfc3264_hold",
            "RFC3264Hold",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_trusted",
            "isTrusted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "e164_capable",
            "E164Capable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "route_advance",
            "routeAdvance",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forwarding_override",
            "forwardingOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "wireless_integration",
            "wirelessIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_video_capable",
            "isVideoCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pbx_integration",
            "PBXIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptionsRead16sp1,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "early_media_support",
            "earlyMediaSupport",
            str,
            False,
            True,
            False,
        ),
        E(
            "authenticate_refer",
            "authenticateRefer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "auto_config_soft_client",
            "autoConfigSoftClient",
            bool,
            False,
            True,
            False,
        ),
        E(
            "authentication_mode",
            "authenticationMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_digit_collection",
            "requiresBroadWorksDigitCollection",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_call_waiting_tone",
            "requiresBroadWorksCallWaitingTone",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_mwi_subscription",
            "requiresMWISubscription",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_history_info_header_on_access_side",
            "useHistoryInfoHeaderOnAccessSide",
            bool,
            False,
            True,
            False,
        ),
        E(
            "advice_of_charge_capable",
            "adviceOfChargeCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "reset_event",
            "resetEvent",
            str,
            False,
            False,
            False,
        ),
        E(
            "support_call_center_mime_type",
            "supportCallCenterMIMEType",
            bool,
            False,
            True,
            False,
        ),
        E(
            "trunk_mode",
            "trunkMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "add_p_called_party_id",
            "addPCalledPartyId",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_identity_in_update_and_re_invite",
            "supportIdentityInUpdateAndReInvite",
            bool,
            False,
            True,
            False,
        ),
        E(
            "unscreened_presentation_identity_policy",
            "unscreenedPresentationIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable3_g4_g_continuity",
            "enable3G4GContinuity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_emergency_disconnect_control",
            "supportEmergencyDisconnectControl",
            bool,
            False,
            True,
            False,
        ),
        E(
            "device_type_configuration_option",
            "deviceTypeConfigurationOption",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* registrationCapable
    registration_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isConferenceDevice
    is_conference_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMobilityManagerDevice
    is_mobility_manager_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMusicOnHoldDevice
    is_music_on_hold_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* RFC3264Hold
    rfc3264_hold = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isTrusted
    is_trusted = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* E164Capable
    e164_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* routeAdvance
    route_advance = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forwardingOverride
    forwarding_override = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* wirelessIntegration
    wireless_integration = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isVideoCapable
    is_video_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* PBXIntegration
    pbx_integration = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptionsRead16sp1: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptionsRead16sp1,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: str: *Required* earlyMediaSupport
    early_media_support = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* authenticateRefer
    authenticate_refer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* autoConfigSoftClient
    auto_config_soft_client = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* authenticationMode
    authentication_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksDigitCollection
    requires_broad_works_digit_collection = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksCallWaitingTone
    requires_broad_works_call_waiting_tone = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresMWISubscription
    requires_mwi_subscription = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useHistoryInfoHeaderOnAccessSide
    use_history_info_header_on_access_side = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* adviceOfChargeCapable
    advice_of_charge_capable = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* resetEvent
    reset_event = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* supportCallCenterMIMEType
    support_call_center_mime_type = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* trunkMode
    trunk_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* addPCalledPartyId
    add_p_called_party_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportIdentityInUpdateAndReInvite
    support_identity_in_update_and_re_invite = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* unscreenedPresentationIdentityPolicy
    unscreened_presentation_identity_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enable3G4GContinuity
    enable3_g4_g_continuity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportEmergencyDisconnectControl
    support_emergency_disconnect_control = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* deviceTypeConfigurationOption
    device_type_configuration_option = Field(
        type=str,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "registration_capable",
            "registrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_conference_device",
            "isConferenceDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_mobility_manager_device",
            "isMobilityManagerDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_music_on_hold_device",
            "isMusicOnHoldDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "hold_normalization",
            "holdNormalization",
            str,
            False,
            True,
            False,
        ),
        E(
            "hold_announcement_method",
            "holdAnnouncementMethod",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_trusted",
            "isTrusted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "e164_capable",
            "E164Capable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "route_advance",
            "routeAdvance",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forwarding_override",
            "forwardingOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "wireless_integration",
            "wirelessIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_video_capable",
            "isVideoCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pbx_integration",
            "PBXIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptionsRead16sp1,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "early_media_support",
            "earlyMediaSupport",
            str,
            False,
            True,
            False,
        ),
        E(
            "authenticate_refer",
            "authenticateRefer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "auto_config_soft_client",
            "autoConfigSoftClient",
            bool,
            False,
            True,
            False,
        ),
        E(
            "authentication_mode",
            "authenticationMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_digit_collection",
            "requiresBroadWorksDigitCollection",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_call_waiting_tone",
            "requiresBroadWorksCallWaitingTone",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_mwi_subscription",
            "requiresMWISubscription",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_history_info_header_on_access_side",
            "useHistoryInfoHeaderOnAccessSide",
            bool,
            False,
            True,
            False,
        ),
        E(
            "advice_of_charge_capable",
            "adviceOfChargeCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "reset_event",
            "resetEvent",
            str,
            False,
            False,
            False,
        ),
        E(
            "support_call_center_mime_type",
            "supportCallCenterMIMEType",
            bool,
            False,
            True,
            False,
        ),
        E(
            "trunk_mode",
            "trunkMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "add_p_called_party_id",
            "addPCalledPartyId",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_identity_in_update_and_re_invite",
            "supportIdentityInUpdateAndReInvite",
            bool,
            False,
            True,
            False,
        ),
        E(
            "unscreened_presentation_identity_policy",
            "unscreenedPresentationIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable3_g4_g_continuity",
            "enable3G4GContinuity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_emergency_disconnect_control",
            "supportEmergencyDisconnectControl",
            bool,
            False,
            True,
            False,
        ),
        E(
            "device_type_configuration_option",
            "deviceTypeConfigurationOption",
            str,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* registrationCapable
    registration_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isConferenceDevice
    is_conference_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMobilityManagerDevice
    is_mobility_manager_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMusicOnHoldDevice
    is_music_on_hold_device = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* holdNormalization
    hold_normalization = Field(
        type=str,
        required=True,
    )
    #: str: *Required* holdAnnouncementMethod
    hold_announcement_method = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isTrusted
    is_trusted = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* E164Capable
    e164_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* routeAdvance
    route_advance = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forwardingOverride
    forwarding_override = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* wirelessIntegration
    wireless_integration = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isVideoCapable
    is_video_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* PBXIntegration
    pbx_integration = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptionsRead16sp1: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptionsRead16sp1,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: str: *Required* earlyMediaSupport
    early_media_support = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* authenticateRefer
    authenticate_refer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* autoConfigSoftClient
    auto_config_soft_client = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* authenticationMode
    authentication_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksDigitCollection
    requires_broad_works_digit_collection = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksCallWaitingTone
    requires_broad_works_call_waiting_tone = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresMWISubscription
    requires_mwi_subscription = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useHistoryInfoHeaderOnAccessSide
    use_history_info_header_on_access_side = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* adviceOfChargeCapable
    advice_of_charge_capable = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* resetEvent
    reset_event = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* supportCallCenterMIMEType
    support_call_center_mime_type = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* trunkMode
    trunk_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* addPCalledPartyId
    add_p_called_party_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportIdentityInUpdateAndReInvite
    support_identity_in_update_and_re_invite = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* unscreenedPresentationIdentityPolicy
    unscreened_presentation_identity_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enable3G4GContinuity
    enable3_g4_g_continuity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportEmergencyDisconnectControl
    support_emergency_disconnect_control = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* deviceTypeConfigurationOption
    device_type_configuration_option = Field(
        type=str,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "registration_capable",
            "registrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_conference_device",
            "isConferenceDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_mobility_manager_device",
            "isMobilityManagerDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_music_on_hold_device",
            "isMusicOnHoldDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "hold_normalization",
            "holdNormalization",
            str,
            False,
            True,
            False,
        ),
        E(
            "hold_announcement_method",
            "holdAnnouncementMethod",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_trusted",
            "isTrusted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "e164_capable",
            "E164Capable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "route_advance",
            "routeAdvance",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forwarding_override",
            "forwardingOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "wireless_integration",
            "wirelessIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_video_capable",
            "isVideoCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pbx_integration",
            "PBXIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptionsRead16sp1,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "early_media_support",
            "earlyMediaSupport",
            str,
            False,
            True,
            False,
        ),
        E(
            "authenticate_refer",
            "authenticateRefer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "auto_config_soft_client",
            "autoConfigSoftClient",
            bool,
            False,
            True,
            False,
        ),
        E(
            "authentication_mode",
            "authenticationMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_digit_collection",
            "requiresBroadWorksDigitCollection",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_call_waiting_tone",
            "requiresBroadWorksCallWaitingTone",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_mwi_subscription",
            "requiresMWISubscription",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_history_info_header_on_access_side",
            "useHistoryInfoHeaderOnAccessSide",
            bool,
            False,
            True,
            False,
        ),
        E(
            "advice_of_charge_capable",
            "adviceOfChargeCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "reset_event",
            "resetEvent",
            str,
            False,
            False,
            False,
        ),
        E(
            "support_call_center_mime_type",
            "supportCallCenterMIMEType",
            bool,
            False,
            True,
            False,
        ),
        E(
            "trunk_mode",
            "trunkMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "add_p_called_party_id",
            "addPCalledPartyId",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_identity_in_update_and_re_invite",
            "supportIdentityInUpdateAndReInvite",
            bool,
            False,
            True,
            False,
        ),
        E(
            "unscreened_presentation_identity_policy",
            "unscreenedPresentationIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable3_g4_g_continuity",
            "enable3G4GContinuity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_emergency_disconnect_control",
            "supportEmergencyDisconnectControl",
            bool,
            False,
            True,
            False,
        ),
        E(
            "device_type_configuration_option",
            "deviceTypeConfigurationOption",
            str,
            False,
            True,
            False,
        ),
        E(
            "support_rfc3398",
            "supportRFC3398",
            bool,
            False,
            True,
            False,
        ),
        E(
            "static_line_ordering",
            "staticLineOrdering",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* registrationCapable
    registration_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isConferenceDevice
    is_conference_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMobilityManagerDevice
    is_mobility_manager_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMusicOnHoldDevice
    is_music_on_hold_device = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* holdNormalization
    hold_normalization = Field(
        type=str,
        required=True,
    )
    #: str: *Required* holdAnnouncementMethod
    hold_announcement_method = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isTrusted
    is_trusted = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* E164Capable
    e164_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* routeAdvance
    route_advance = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forwardingOverride
    forwarding_override = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* wirelessIntegration
    wireless_integration = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isVideoCapable
    is_video_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* PBXIntegration
    pbx_integration = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptionsRead16sp1: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptionsRead16sp1,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: str: *Required* earlyMediaSupport
    early_media_support = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* authenticateRefer
    authenticate_refer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* autoConfigSoftClient
    auto_config_soft_client = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* authenticationMode
    authentication_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksDigitCollection
    requires_broad_works_digit_collection = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksCallWaitingTone
    requires_broad_works_call_waiting_tone = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresMWISubscription
    requires_mwi_subscription = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useHistoryInfoHeaderOnAccessSide
    use_history_info_header_on_access_side = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* adviceOfChargeCapable
    advice_of_charge_capable = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* resetEvent
    reset_event = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* supportCallCenterMIMEType
    support_call_center_mime_type = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* trunkMode
    trunk_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* addPCalledPartyId
    add_p_called_party_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportIdentityInUpdateAndReInvite
    support_identity_in_update_and_re_invite = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* unscreenedPresentationIdentityPolicy
    unscreened_presentation_identity_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enable3G4GContinuity
    enable3_g4_g_continuity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportEmergencyDisconnectControl
    support_emergency_disconnect_control = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* deviceTypeConfigurationOption
    device_type_configuration_option = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* supportRFC3398
    support_rfc3398 = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* staticLineOrdering
    static_line_ordering = Field(
        type=bool,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "registration_capable",
            "registrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_conference_device",
            "isConferenceDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_mobility_manager_device",
            "isMobilityManagerDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_music_on_hold_device",
            "isMusicOnHoldDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "hold_normalization",
            "holdNormalization",
            str,
            False,
            True,
            False,
        ),
        E(
            "hold_announcement_method",
            "holdAnnouncementMethod",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_trusted",
            "isTrusted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "e164_capable",
            "E164Capable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "route_advance",
            "routeAdvance",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forwarding_override",
            "forwardingOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "wireless_integration",
            "wirelessIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_video_capable",
            "isVideoCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pbx_integration",
            "PBXIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptionsRead16sp1,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "early_media_support",
            "earlyMediaSupport",
            str,
            False,
            True,
            False,
        ),
        E(
            "authenticate_refer",
            "authenticateRefer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "auto_config_soft_client",
            "autoConfigSoftClient",
            bool,
            False,
            True,
            False,
        ),
        E(
            "authentication_mode",
            "authenticationMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_digit_collection",
            "requiresBroadWorksDigitCollection",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_call_waiting_tone",
            "requiresBroadWorksCallWaitingTone",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_mwi_subscription",
            "requiresMWISubscription",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_history_info_header_on_access_side",
            "useHistoryInfoHeaderOnAccessSide",
            bool,
            False,
            True,
            False,
        ),
        E(
            "advice_of_charge_capable",
            "adviceOfChargeCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "reset_event",
            "resetEvent",
            str,
            False,
            False,
            False,
        ),
        E(
            "support_call_center_mime_type",
            "supportCallCenterMIMEType",
            bool,
            False,
            True,
            False,
        ),
        E(
            "trunk_mode",
            "trunkMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "add_p_called_party_id",
            "addPCalledPartyId",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_identity_in_update_and_re_invite",
            "supportIdentityInUpdateAndReInvite",
            bool,
            False,
            True,
            False,
        ),
        E(
            "unscreened_presentation_identity_policy",
            "unscreenedPresentationIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable3_g4_g_continuity",
            "enable3G4GContinuity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_emergency_disconnect_control",
            "supportEmergencyDisconnectControl",
            bool,
            False,
            True,
            False,
        ),
        E(
            "device_type_configuration_option",
            "deviceTypeConfigurationOption",
            str,
            False,
            True,
            False,
        ),
        E(
            "support_rfc3398",
            "supportRFC3398",
            bool,
            False,
            True,
            False,
        ),
        E(
            "static_line_ordering",
            "staticLineOrdering",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bypass_media_treatment",
            "bypassMediaTreatment",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* registrationCapable
    registration_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isConferenceDevice
    is_conference_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMobilityManagerDevice
    is_mobility_manager_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMusicOnHoldDevice
    is_music_on_hold_device = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* holdNormalization
    hold_normalization = Field(
        type=str,
        required=True,
    )
    #: str: *Required* holdAnnouncementMethod
    hold_announcement_method = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isTrusted
    is_trusted = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* E164Capable
    e164_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* routeAdvance
    route_advance = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forwardingOverride
    forwarding_override = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* wirelessIntegration
    wireless_integration = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isVideoCapable
    is_video_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* PBXIntegration
    pbx_integration = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptionsRead16sp1: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptionsRead16sp1,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: str: *Required* earlyMediaSupport
    early_media_support = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* authenticateRefer
    authenticate_refer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* autoConfigSoftClient
    auto_config_soft_client = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* authenticationMode
    authentication_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksDigitCollection
    requires_broad_works_digit_collection = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksCallWaitingTone
    requires_broad_works_call_waiting_tone = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresMWISubscription
    requires_mwi_subscription = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useHistoryInfoHeaderOnAccessSide
    use_history_info_header_on_access_side = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* adviceOfChargeCapable
    advice_of_charge_capable = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* resetEvent
    reset_event = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* supportCallCenterMIMEType
    support_call_center_mime_type = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* trunkMode
    trunk_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* addPCalledPartyId
    add_p_called_party_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportIdentityInUpdateAndReInvite
    support_identity_in_update_and_re_invite = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* unscreenedPresentationIdentityPolicy
    unscreened_presentation_identity_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enable3G4GContinuity
    enable3_g4_g_continuity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportEmergencyDisconnectControl
    support_emergency_disconnect_control = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* deviceTypeConfigurationOption
    device_type_configuration_option = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* supportRFC3398
    support_rfc3398 = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* staticLineOrdering
    static_line_ordering = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* bypassMediaTreatment
    bypass_media_treatment = Field(
        type=bool,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "registration_capable",
            "registrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_conference_device",
            "isConferenceDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_mobility_manager_device",
            "isMobilityManagerDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_music_on_hold_device",
            "isMusicOnHoldDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "hold_normalization",
            "holdNormalization",
            str,
            False,
            True,
            False,
        ),
        E(
            "hold_announcement_method",
            "holdAnnouncementMethod",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_trusted",
            "isTrusted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "e164_capable",
            "E164Capable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "route_advance",
            "routeAdvance",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forwarding_override",
            "forwardingOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "wireless_integration",
            "wirelessIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_video_capable",
            "isVideoCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pbx_integration",
            "PBXIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptionsRead16sp1,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "early_media_support",
            "earlyMediaSupport",
            str,
            False,
            True,
            False,
        ),
        E(
            "authenticate_refer",
            "authenticateRefer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "auto_config_soft_client",
            "autoConfigSoftClient",
            bool,
            False,
            True,
            False,
        ),
        E(
            "authentication_mode",
            "authenticationMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_digit_collection",
            "requiresBroadWorksDigitCollection",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_call_waiting_tone",
            "requiresBroadWorksCallWaitingTone",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_mwi_subscription",
            "requiresMWISubscription",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_history_info_header_on_access_side",
            "useHistoryInfoHeaderOnAccessSide",
            bool,
            False,
            True,
            False,
        ),
        E(
            "advice_of_charge_capable",
            "adviceOfChargeCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "reset_event",
            "resetEvent",
            str,
            False,
            False,
            False,
        ),
        E(
            "support_call_center_mime_type",
            "supportCallCenterMIMEType",
            bool,
            False,
            True,
            False,
        ),
        E(
            "trunk_mode",
            "trunkMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "add_p_called_party_id",
            "addPCalledPartyId",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_identity_in_update_and_re_invite",
            "supportIdentityInUpdateAndReInvite",
            bool,
            False,
            True,
            False,
        ),
        E(
            "unscreened_presentation_identity_policy",
            "unscreenedPresentationIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable3_g4_g_continuity",
            "enable3G4GContinuity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_emergency_disconnect_control",
            "supportEmergencyDisconnectControl",
            bool,
            False,
            True,
            False,
        ),
        E(
            "device_type_configuration_option",
            "deviceTypeConfigurationOption",
            str,
            False,
            True,
            False,
        ),
        E(
            "support_rfc3398",
            "supportRFC3398",
            bool,
            False,
            True,
            False,
        ),
        E(
            "static_line_ordering",
            "staticLineOrdering",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_client_session_info",
            "supportClientSessionInfo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_call_info_conference_subscription_uri",
            "supportCallInfoConferenceSubscriptionURI",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_remote_party_info",
            "supportRemotePartyInfo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_visual_device_management",
            "supportVisualDeviceManagement",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bypass_media_treatment",
            "bypassMediaTreatment",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* registrationCapable
    registration_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isConferenceDevice
    is_conference_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMobilityManagerDevice
    is_mobility_manager_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMusicOnHoldDevice
    is_music_on_hold_device = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* holdNormalization
    hold_normalization = Field(
        type=str,
        required=True,
    )
    #: str: *Required* holdAnnouncementMethod
    hold_announcement_method = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isTrusted
    is_trusted = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* E164Capable
    e164_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* routeAdvance
    route_advance = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forwardingOverride
    forwarding_override = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* wirelessIntegration
    wireless_integration = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isVideoCapable
    is_video_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* PBXIntegration
    pbx_integration = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptionsRead16sp1: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptionsRead16sp1,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: str: *Required* earlyMediaSupport
    early_media_support = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* authenticateRefer
    authenticate_refer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* autoConfigSoftClient
    auto_config_soft_client = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* authenticationMode
    authentication_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksDigitCollection
    requires_broad_works_digit_collection = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksCallWaitingTone
    requires_broad_works_call_waiting_tone = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresMWISubscription
    requires_mwi_subscription = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useHistoryInfoHeaderOnAccessSide
    use_history_info_header_on_access_side = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* adviceOfChargeCapable
    advice_of_charge_capable = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* resetEvent
    reset_event = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* supportCallCenterMIMEType
    support_call_center_mime_type = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* trunkMode
    trunk_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* addPCalledPartyId
    add_p_called_party_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportIdentityInUpdateAndReInvite
    support_identity_in_update_and_re_invite = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* unscreenedPresentationIdentityPolicy
    unscreened_presentation_identity_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enable3G4GContinuity
    enable3_g4_g_continuity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportEmergencyDisconnectControl
    support_emergency_disconnect_control = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* deviceTypeConfigurationOption
    device_type_configuration_option = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* supportRFC3398
    support_rfc3398 = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* staticLineOrdering
    static_line_ordering = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportClientSessionInfo
    support_client_session_info = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportCallInfoConferenceSubscriptionURI
    support_call_info_conference_subscription_uri = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportRemotePartyInfo
    support_remote_party_info = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportVisualDeviceManagement
    support_visual_device_management = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* bypassMediaTreatment
    bypass_media_treatment = Field(
        type=bool,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "is_obsolete",
            "isObsolete",
            bool,
            False,
            True,
            False,
        ),
        E(
            "number_of_ports",
            "numberOfPorts",
            OCI.UnboundedPositiveInt,
            True,
            True,
            False,
        ),
        E(
            "profile",
            "profile",
            str,
            False,
            True,
            False,
        ),
        E(
            "registration_capable",
            "registrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_conference_device",
            "isConferenceDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_mobility_manager_device",
            "isMobilityManagerDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "is_music_on_hold_device",
            "isMusicOnHoldDevice",
            bool,
            False,
            True,
            False,
        ),
        E(
            "hold_normalization",
            "holdNormalization",
            str,
            False,
            True,
            False,
        ),
        E(
            "hold_announcement_method",
            "holdAnnouncementMethod",
            str,
            False,
            True,
            False,
        ),
        E(
            "is_trusted",
            "isTrusted",
            bool,
            False,
            True,
            False,
        ),
        E(
            "e164_capable",
            "E164Capable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "route_advance",
            "routeAdvance",
            bool,
            False,
            True,
            False,
        ),
        E(
            "forwarding_override",
            "forwardingOverride",
            bool,
            False,
            True,
            False,
        ),
        E(
            "wireless_integration",
            "wirelessIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "web_based_config_url",
            "webBasedConfigURL",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_video_capable",
            "isVideoCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "pbx_integration",
            "PBXIntegration",
            bool,
            False,
            True,
            False,
        ),
        E(
            "static_registration_capable",
            "staticRegistrationCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "cpe_device_options",
            "cpeDeviceOptions",
            OCI.CPEDeviceOptionsRead16sp1,
            True,
            False,
            False,
        ),
        E(
            "protocol_choice",
            "protocolChoice",
            str,
            False,
            True,
            False,
        ),
        E(
            "early_media_support",
            "earlyMediaSupport",
            str,
            False,
            True,
            False,
        ),
        E(
            "authenticate_refer",
            "authenticateRefer",
            bool,
            False,
            True,
            False,
        ),
        E(
            "auto_config_soft_client",
            "autoConfigSoftClient",
            bool,
            False,
            True,
            False,
        ),
        E(
            "authentication_mode",
            "authenticationMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_digit_collection",
            "requiresBroadWorksDigitCollection",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_broad_works_call_waiting_tone",
            "requiresBroadWorksCallWaitingTone",
            bool,
            False,
            True,
            False,
        ),
        E(
            "requires_mwi_subscription",
            "requiresMWISubscription",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_history_info_header_on_access_side",
            "useHistoryInfoHeaderOnAccessSide",
            bool,
            False,
            True,
            False,
        ),
        E(
            "advice_of_charge_capable",
            "adviceOfChargeCapable",
            bool,
            False,
            True,
            False,
        ),
        E(
            "reset_event",
            "resetEvent",
            str,
            False,
            False,
            False,
        ),
        E(
            "support_call_center_mime_type",
            "supportCallCenterMIMEType",
            bool,
            False,
            True,
            False,
        ),
        E(
            "trunk_mode",
            "trunkMode",
            str,
            False,
            True,
            False,
        ),
        E(
            "add_p_called_party_id",
            "addPCalledPartyId",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_identity_in_update_and_re_invite",
            "supportIdentityInUpdateAndReInvite",
            bool,
            False,
            True,
            False,
        ),
        E(
            "unscreened_presentation_identity_policy",
            "unscreenedPresentationIdentityPolicy",
            str,
            False,
            True,
            False,
        ),
        E(
            "enhanced_for_ics",
            "enhancedForICS",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_emergency_disconnect_control",
            "supportEmergencyDisconnectControl",
            bool,
            False,
            True,
            False,
        ),
        E(
            "device_type_configuration_option",
            "deviceTypeConfigurationOption",
            str,
            False,
            True,
            False,
        ),
        E(
            "support_rfc3398",
            "supportRFC3398",
            bool,
            False,
            True,
            False,
        ),
        E(
            "static_line_ordering",
            "staticLineOrdering",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_client_session_info",
            "supportClientSessionInfo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_call_info_conference_subscription_uri",
            "supportCallInfoConferenceSubscriptionURI",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_remote_party_info",
            "supportRemotePartyInfo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_visual_device_management",
            "supportVisualDeviceManagement",
            bool,
            False,
            True,
            False,
        ),
        E(
            "bypass_media_treatment",
            "bypassMediaTreatment",
            bool,
            False,
            True,
            False,
        ),
        E(
            "supports3_g4_g_continuity",
            "supports3G4GContinuity",
            bool,
            False,
            True,
            False,
        ),
        E(
            "publishes_own_presence",
            "publishesOwnPresence",
            bool,
            False,
            True,
            False,
        ),
        E(
            "support_cause_parameter",
            "supportCauseParameter",
            bool,
            False,
            True,
            False,
        ),
    )
    #: bool: *Required* isObsolete
    is_obsolete = Field(
        type=bool,
        required=True,
    )
    #: OCI.UnboundedPositiveInt: *Required* numberOfPorts
    number_of_ports = Field(
        type=OCI.UnboundedPositiveInt,
        required=True,
    )
    #: str: *Required* profile
    profile = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* registrationCapable
    registration_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isConferenceDevice
    is_conference_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMobilityManagerDevice
    is_mobility_manager_device = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* isMusicOnHoldDevice
    is_music_on_hold_device = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* holdNormalization
    hold_normalization = Field(
        type=str,
        required=True,
    )
    #: str: *Required* holdAnnouncementMethod
    hold_announcement_method = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* isTrusted
    is_trusted = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* E164Capable
    e164_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* routeAdvance
    route_advance = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* forwardingOverride
    forwarding_override = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* wirelessIntegration
    wireless_integration = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* webBasedConfigURL
    web_based_config_url = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isVideoCapable
    is_video_capable = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* PBXIntegration
    pbx_integration = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* staticRegistrationCapable
    static_registration_capable = Field(
        type=bool,
        required=True,
    )
    #: OCI.CPEDeviceOptionsRead16sp1: *Optional* cpeDeviceOptions
    cpe_device_options = Field(
        type=OCI.CPEDeviceOptionsRead16sp1,
        required=False,
    )
    #: str: *Required* protocolChoice
    protocol_choice = Field(
        type=str,
        required=True,
    )
    #: str: *Required* earlyMediaSupport
    early_media_support = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* authenticateRefer
    authenticate_refer = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* autoConfigSoftClient
    auto_config_soft_client = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* authenticationMode
    authentication_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksDigitCollection
    requires_broad_works_digit_collection = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresBroadWorksCallWaitingTone
    requires_broad_works_call_waiting_tone = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requiresMWISubscription
    requires_mwi_subscription = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useHistoryInfoHeaderOnAccessSide
    use_history_info_header_on_access_side = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* adviceOfChargeCapable
    advice_of_charge_capable = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* resetEvent
    reset_event = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* supportCallCenterMIMEType
    support_call_center_mime_type = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* trunkMode
    trunk_mode = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* addPCalledPartyId
    add_p_called_party_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportIdentityInUpdateAndReInvite
    support_identity_in_update_and_re_invite = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* unscreenedPresentationIdentityPolicy
    unscreened_presentation_identity_policy = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enhancedForICS
    enhanced_for_ics = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportEmergencyDisconnectControl
    support_emergency_disconnect_control = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* deviceTypeConfigurationOption
    device_type_configuration_option = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* supportRFC3398
    support_rfc3398 = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* staticLineOrdering
    static_line_ordering = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportClientSessionInfo
    support_client_session_info = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportCallInfoConferenceSubscriptionURI
    support_call_info_conference_subscription_uri = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportRemotePartyInfo
    support_remote_party_info = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportVisualDeviceManagement
    support_visual_device_management = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* bypassMediaTreatment
    bypass_media_treatment = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supports3G4GContinuity
    supports3_g4_g_continuity = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* publishesOwnPresence
    publishes_own_presence = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* supportCauseParameter
    support_cause_parameter = Field(
        type=bool,
        required=True,
    )


class UserBroadWorksMobilityMobileIdentityGetResponse(OCIResponse):
    """
    Response to a ``UserBroadWorksMobilityMobileIdentityGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "is_primary",
            "isPrimary",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_alerting",
            "enableAlerting",
            bool,
            False,
            True,
            False,
        ),
        E(
            "alert_agent_calls",
            "alertAgentCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "alert_click_to_dial_calls",
            "alertClickToDialCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "alert_group_paging_calls",
            "alertGroupPagingCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_mobility_calling_line_id",
            "useMobilityCallingLineID",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_diversion_inhibitor",
            "enableDiversionInhibitor",
            bool,
            False,
            True,
            False,
        ),
        E(
            "require_answer_confirmation",
            "requireAnswerConfirmation",
            bool,
            False,
            True,
            False,
        ),
        E(
            "broadworks_call_control",
            "broadworksCallControl",
            bool,
            False,
            True,
            False,
        ),
        E(
            "use_setting_level",
            "useSettingLevel",
            str,
            False,
            True,
            False,
        ),
        E(
            "deny_call_originations",
            "denyCallOriginations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "deny_call_terminations",
            "denyCallTerminations",
            bool,
            False,
            True,
            False,
        ),
        E(
            "devices_to_ring",
            "devicesToRing",
            str,
            False,
            True,
            False,
        ),
        E(
            "include_shared_call_appearance",
            "includeSharedCallAppearance",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_broadworks_anywhere",
            "includeBroadworksAnywhere",
            bool,
            False,
            True,
            False,
        ),
        E(
            "include_executive_assistant",
            "includeExecutiveAssistant",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mobile_number_alerted",
            "mobileNumberAlerted",
            str,
            False,
            False,
            False,
        ),
        E(
            "enable_call_anchoring",
            "enableCallAnchoring",
            bool,
            False,
            True,
            False,
        ),
        E(
            "time_schedule",
            "timeSchedule",
            OCI.ScheduleGlobalKey,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.ScheduleGlobalKey,
            True,
            False,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* isPrimary
    is_primary = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableAlerting
    enable_alerting = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* alertAgentCalls
    alert_agent_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* alertClickToDialCalls
    alert_click_to_dial_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* alertGroupPagingCalls
    alert_group_paging_calls = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* useMobilityCallingLineID
    use_mobility_calling_line_id = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableDiversionInhibitor
    enable_diversion_inhibitor = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* requireAnswerConfirmation
    require_answer_confirmation = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* broadworksCallControl
    broadworks_call_control = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* useSettingLevel
    use_setting_level = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* denyCallOriginations
    deny_call_originations = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* denyCallTerminations
    deny_call_terminations = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* devicesToRing
    devices_to_ring = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* includeSharedCallAppearance
    include_shared_call_appearance = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeBroadworksAnywhere
    include_broadworks_anywhere = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* includeExecutiveAssistant
    include_executive_assistant = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* mobileNumberAlerted
    mobile_number_alerted = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* enableCallAnchoring
    enable_call_anchoring = Field(
        type=bool,
        required=True,
    )
    #: OCI.ScheduleGlobalKey: *Optional* timeSchedule
    time_schedule = Field(
        type=OCI.ScheduleGlobalKey,
        required=False,
    )
    #: OCI.ScheduleGlobalKey: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.ScheduleGlobalKey,
        required=False,
    )


class UserCommPilotExpressGetResponse(OCIResponse):
    """
    Response to the ``UserCommPilotExpressGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "profile",
            "profile",
            str,
            False,
            False,
            False,
        ),
        E(
            "available_in_office",
            "availableInOffice",
            OCI.CommPilotExpressAvailableInOffice,
            True,
            True,
            False,
        ),
        E(
            "available_out_of_office",
            "availableOutOfOffice",
            OCI.CommPilotExpressAvailableOutOfOffice,
            True,
            True,
            False,
        ),
        E(
            "busy",
            "busy",
            OCI.CommPilotExpressBusy,
            True,
            True,
            False,
        ),
        E(
            "unavailable",
            "unavailable",
            OCI.CommPilotExpressUnavailable,
            True,
            True,
            False,
        ),
    )
    #: str: *Optional* profile
    profile = Field(
        type=str,
        required=False,
    )
    #: OCI.CommPilotExpressAvailableInOffice: *Required* availableInOffice
    available_in_office = Field(
        type=OCI.CommPilotExpressAvailableInOffice,
        required=True,
    )
    #: OCI.CommPilotExpressAvailableOutOfOffice: *Required* availableOutOfOffice
    available_out_of_office = Field(
        type=OCI.CommPilotExpressAvailableOutOfOffice,
        required=True,
    )
    #: OCI.CommPilotExpressBusy: *Required* busy
    busy = Field(
        type=OCI.CommPilotExpressBusy,
        required=True,
    )
    #: OCI.CommPilotExpressUnavailable: *Required* unavailable
    unavailable = Field(
        type=OCI.CommPilotExpressUnavailable,
        required=True,
    )


class UserFlexibleSeatingGuestGetResponse(OCIResponse):
    """
    Response to ``UserFlexibleSeatingGuestGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "enable_association_limit",
            "enableAssociationLimit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "association_limit_hours",
            "associationLimitHours",
            int,
            False,
            True,
            False,
        ),
        E(
            "unlock_phone_pin_code",
            "unlockPhonePINCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceMultipleContactEndpointRead20,
            True,
            False,
            False,
        ),
        E(
            "host_user_id",
            "hostUserId",
            str,
            False,
            False,
            False,
        ),
        E(
            "host_last_name",
            "hostLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "host_first_name",
            "hostFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "host_association_date_time",
            "hostAssociationDateTime",
            str,
            False,
            False,
            False,
        ),
        E(
            "host_enforces_association_limit",
            "hostEnforcesAssociationLimit",
            bool,
            False,
            False,
            False,
        ),
        E(
            "host_association_limit_hours",
            "hostAssociationLimitHours",
            int,
            False,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* enableAssociationLimit
    enable_association_limit = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* associationLimitHours
    association_limit_hours = Field(
        type=int,
        required=True,
    )
    #: str: *Optional* unlockPhonePINCode
    unlock_phone_pin_code = Field(
        type=str,
        required=False,
    )
    #: OCI.AccessDeviceMultipleContactEndpointRead20: *Optional* accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceMultipleContactEndpointRead20,
        required=False,
    )
    #: str: *Optional* hostUserId
    host_user_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hostLastName
    host_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hostFirstName
    host_first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hostAssociationDateTime
    host_association_date_time = Field(
        type=str,
        required=False,
    )
    #: bool: *Optional* hostEnforcesAssociationLimit
    host_enforces_association_limit = Field(
        type=bool,
        required=False,
    )
    #: int: *Optional* hostAssociationLimitHours
    host_association_limit_hours = Field(
        type=int,
        required=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.
    """

    _ELEMENTS = (
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_id",
            "groupId",
            str,
            False,
            True,
            False,
        ),
        E(
            "last_name",
            "lastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "first_name",
            "firstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_last_name",
            "callingLineIdLastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_first_name",
            "callingLineIdFirstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "hiragana_last_name",
            "hiraganaLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hiragana_first_name",
            "hiraganaFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "extension",
            "extension",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_phone_number",
            "callingLineIdPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "department_full_path",
            "departmentFullPath",
            str,
            False,
            False,
            False,
        ),
        E(
            "language",
            "language",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone",
            "timeZone",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone_display_name",
            "timeZoneDisplayName",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_alias",
            "defaultAlias",
            str,
            False,
            True,
            False,
        ),
        E(
            "alias",
            "alias",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14,
            True,
            False,
            False,
        ),
        E(
            "trunk_group_device_endpoint",
            "trunkGroupDeviceEndpoint",
            OCI.TrunkGroupDeviceEndpointRead,
            True,
            False,
            False,
        ),
        E(
            "title",
            "title",
            str,
            False,
            False,
            False,
        ),
        E(
            "pager_phone_number",
            "pagerPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobile_phone_number",
            "mobilePhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "email_address",
            "emailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "yahoo_id",
            "yahooId",
            str,
            False,
            False,
            False,
        ),
        E(
            "address_location",
            "addressLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "address",
            "address",
            OCI.StreetAddress,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupId
    group_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* lastName
    last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* firstName
    first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdLastName
    calling_line_id_last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdFirstName
    calling_line_id_first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* hiraganaLastName
    hiragana_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hiraganaFirstName
    hiragana_first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* extension
    extension = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdPhoneNumber
    calling_line_id_phone_number = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: str: *Optional* departmentFullPath
    department_full_path = Field(
        type=str,
        required=False,
    )
    #: str: *Required* language
    language = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZone
    time_zone = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZoneDisplayName
    time_zone_display_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultAlias
    default_alias = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* alias
    alias = Field(
        type=str,
        required=False,
    )
    #: OCI.AccessDeviceEndpointRead14: *Optional* accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceEndpointRead14,
        required=False,
    )
    #: OCI.TrunkGroupDeviceEndpointRead: *Optional* trunkGroupDeviceEndpoint
    trunk_group_device_endpoint = Field(
        type=OCI.TrunkGroupDeviceEndpointRead,
        required=False,
    )
    #: str: *Optional* title
    title = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* pagerPhoneNumber
    pager_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilePhoneNumber
    mobile_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* emailAddress
    email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* yahooId
    yahoo_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* addressLocation
    address_location = Field(
        type=str,
        required=False,
    )
    #: OCI.StreetAddress: *Optional* address
    address = Field(
        type=OCI.StreetAddress,
        required=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.
    """

    _ELEMENTS = (
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_id",
            "groupId",
            str,
            False,
            True,
            False,
        ),
        E(
            "last_name",
            "lastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "first_name",
            "firstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_last_name",
            "callingLineIdLastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_first_name",
            "callingLineIdFirstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "hiragana_last_name",
            "hiraganaLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hiragana_first_name",
            "hiraganaFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "extension",
            "extension",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_phone_number",
            "callingLineIdPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "department_full_path",
            "departmentFullPath",
            str,
            False,
            False,
            False,
        ),
        E(
            "language",
            "language",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone",
            "timeZone",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone_display_name",
            "timeZoneDisplayName",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_alias",
            "defaultAlias",
            str,
            False,
            True,
            False,
        ),
        E(
            "alias",
            "alias",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14,
            True,
            False,
            False,
        ),
        E(
            "trunk_group_device_endpoint",
            "trunkGroupDeviceEndpoint",
            OCI.TrunkGroupDeviceEndpointRead14sp4,
            True,
            False,
            False,
        ),
        E(
            "title",
            "title",
            str,
            False,
            False,
            False,
        ),
        E(
            "pager_phone_number",
            "pagerPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobile_phone_number",
            "mobilePhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "email_address",
            "emailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "yahoo_id",
            "yahooId",
            str,
            False,
            False,
            False,
        ),
        E(
            "address_location",
            "addressLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "address",
            "address",
            OCI.StreetAddress,
            True,
            False,
            False,
        ),
        E(
            "country_code",
            "countryCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "national_prefix",
            "nationalPrefix",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupId
    group_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* lastName
    last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* firstName
    first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdLastName
    calling_line_id_last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdFirstName
    calling_line_id_first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* hiraganaLastName
    hiragana_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hiraganaFirstName
    hiragana_first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* extension
    extension = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdPhoneNumber
    calling_line_id_phone_number = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: str: *Optional* departmentFullPath
    department_full_path = Field(
        type=str,
        required=False,
    )
    #: str: *Required* language
    language = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZone
    time_zone = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZoneDisplayName
    time_zone_display_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultAlias
    default_alias = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* alias
    alias = Field(
        type=str,
        required=False,
    )
    #: OCI.AccessDeviceEndpointRead14: *Optional* accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceEndpointRead14,
        required=False,
    )
    #: OCI.TrunkGroupDeviceEndpointRead14sp4: *Optional* trunkGroupDeviceEndpoint
    trunk_group_device_endpoint = Field(
        type=OCI.TrunkGroupDeviceEndpointRead14sp4,
        required=False,
    )
    #: str: *Optional* title
    title = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* pagerPhoneNumber
    pager_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilePhoneNumber
    mobile_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* emailAddress
    email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* yahooId
    yahoo_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* addressLocation
    address_location = Field(
        type=str,
        required=False,
    )
    #: OCI.StreetAddress: *Optional* address
    address = Field(
        type=OCI.StreetAddress,
        required=False,
    )
    #: str: *Optional* countryCode
    country_code = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* nationalPrefix
    national_prefix = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_id",
            "groupId",
            str,
            False,
            True,
            False,
        ),
        E(
            "last_name",
            "lastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "first_name",
            "firstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_last_name",
            "callingLineIdLastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_first_name",
            "callingLineIdFirstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "hiragana_last_name",
            "hiraganaLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hiragana_first_name",
            "hiraganaFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "extension",
            "extension",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_phone_number",
            "callingLineIdPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "department_full_path",
            "departmentFullPath",
            str,
            False,
            False,
            False,
        ),
        E(
            "language",
            "language",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone",
            "timeZone",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone_display_name",
            "timeZoneDisplayName",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_alias",
            "defaultAlias",
            str,
            False,
            True,
            False,
        ),
        E(
            "alias",
            "alias",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14,
            True,
            False,
            False,
        ),
        E(
            "trunk_addressing",
            "trunkAddressing",
            OCI.TrunkAddressingRead,
            True,
            False,
            False,
        ),
        E(
            "title",
            "title",
            str,
            False,
            False,
            False,
        ),
        E(
            "pager_phone_number",
            "pagerPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobile_phone_number",
            "mobilePhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "email_address",
            "emailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "yahoo_id",
            "yahooId",
            str,
            False,
            False,
            False,
        ),
        E(
            "address_location",
            "addressLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "address",
            "address",
            OCI.StreetAddress,
            True,
            False,
            False,
        ),
        E(
            "country_code",
            "countryCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "national_prefix",
            "nationalPrefix",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupId
    group_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* lastName
    last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* firstName
    first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdLastName
    calling_line_id_last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdFirstName
    calling_line_id_first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* hiraganaLastName
    hiragana_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hiraganaFirstName
    hiragana_first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* extension
    extension = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdPhoneNumber
    calling_line_id_phone_number = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: str: *Optional* departmentFullPath
    department_full_path = Field(
        type=str,
        required=False,
    )
    #: str: *Required* language
    language = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZone
    time_zone = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZoneDisplayName
    time_zone_display_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultAlias
    default_alias = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* alias
    alias = Field(
        type=str,
        required=False,
    )
    #: OCI.AccessDeviceEndpointRead14: *Optional* accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceEndpointRead14,
        required=False,
    )
    #: OCI.TrunkAddressingRead: *Optional* trunkAddressing
    trunk_addressing = Field(
        type=OCI.TrunkAddressingRead,
        required=False,
    )
    #: str: *Optional* title
    title = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* pagerPhoneNumber
    pager_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilePhoneNumber
    mobile_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* emailAddress
    email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* yahooId
    yahoo_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* addressLocation
    address_location = Field(
        type=str,
        required=False,
    )
    #: OCI.StreetAddress: *Optional* address
    address = Field(
        type=OCI.StreetAddress,
        required=False,
    )
    #: str: *Optional* countryCode
    country_code = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* nationalPrefix
    national_prefix = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_id",
            "groupId",
            str,
            False,
            True,
            False,
        ),
        E(
            "last_name",
            "lastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "first_name",
            "firstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_last_name",
            "callingLineIdLastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_first_name",
            "callingLineIdFirstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "hiragana_last_name",
            "hiraganaLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hiragana_first_name",
            "hiraganaFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "extension",
            "extension",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_phone_number",
            "callingLineIdPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "department_full_path",
            "departmentFullPath",
            str,
            False,
            False,
            False,
        ),
        E(
            "language",
            "language",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone",
            "timeZone",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone_display_name",
            "timeZoneDisplayName",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_alias",
            "defaultAlias",
            str,
            False,
            True,
            False,
        ),
        E(
            "alias",
            "alias",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14,
            True,
            False,
            False,
        ),
        E(
            "trunk_addressing",
            "trunkAddressing",
            OCI.TrunkAddressingRead,
            True,
            False,
            False,
        ),
        E(
            "title",
            "title",
            str,
            False,
            False,
            False,
        ),
        E(
            "pager_phone_number",
            "pagerPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobile_phone_number",
            "mobilePhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "email_address",
            "emailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "yahoo_id",
            "yahooId",
            str,
            False,
            False,
            False,
        ),
        E(
            "address_location",
            "addressLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "address",
            "address",
            OCI.StreetAddress,
            True,
            False,
            False,
        ),
        E(
            "country_code",
            "countryCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "national_prefix",
            "nationalPrefix",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupId
    group_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* lastName
    last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* firstName
    first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdLastName
    calling_line_id_last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdFirstName
    calling_line_id_first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* hiraganaLastName
    hiragana_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hiraganaFirstName
    hiragana_first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* extension
    extension = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdPhoneNumber
    calling_line_id_phone_number = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: str: *Optional* departmentFullPath
    department_full_path = Field(
        type=str,
        required=False,
    )
    #: str: *Required* language
    language = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZone
    time_zone = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZoneDisplayName
    time_zone_display_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultAlias
    default_alias = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* alias
    alias = Field(
        type=str,
        required=False,
    )
    #: OCI.AccessDeviceEndpointRead14: *Optional* accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceEndpointRead14,
        required=False,
    )
    #: OCI.TrunkAddressingRead: *Optional* trunkAddressing
    trunk_addressing = Field(
        type=OCI.TrunkAddressingRead,
        required=False,
    )
    #: str: *Optional* title
    title = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* pagerPhoneNumber
    pager_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilePhoneNumber
    mobile_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* emailAddress
    email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* yahooId
    yahoo_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* addressLocation
    address_location = Field(
        type=str,
        required=False,
    )
    #: OCI.StreetAddress: *Optional* address
    address = Field(
        type=OCI.StreetAddress,
        required=False,
    )
    #: str: *Optional* countryCode
    country_code = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* nationalPrefix
    national_prefix = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_id",
            "groupId",
            str,
            False,
            True,
            False,
        ),
        E(
            "last_name",
            "lastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "first_name",
            "firstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_last_name",
            "callingLineIdLastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_first_name",
            "callingLineIdFirstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "hiragana_last_name",
            "hiraganaLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hiragana_first_name",
            "hiraganaFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "extension",
            "extension",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_phone_number",
            "callingLineIdPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "department_full_path",
            "departmentFullPath",
            str,
            False,
            False,
            False,
        ),
        E(
            "language",
            "language",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone",
            "timeZone",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone_display_name",
            "timeZoneDisplayName",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_alias",
            "defaultAlias",
            str,
            False,
            True,
            False,
        ),
        E(
            "alias",
            "alias",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14,
            True,
            False,
            False,
        ),
        E(
            "trunk_addressing",
            "trunkAddressing",
            OCI.TrunkAddressingRead,
            True,
            False,
            False,
        ),
        E(
            "title",
            "title",
            str,
            False,
            False,
            False,
        ),
        E(
            "pager_phone_number",
            "pagerPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobile_phone_number",
            "mobilePhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "email_address",
            "emailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "yahoo_id",
            "yahooId",
            str,
            False,
            False,
            False,
        ),
        E(
            "address_location",
            "addressLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "address",
            "address",
            OCI.StreetAddress,
            True,
            False,
            False,
        ),
        E(
            "country_code",
            "countryCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "national_prefix",
            "nationalPrefix",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
        E(
            "office_zone_name",
            "officeZoneName",
            str,
            False,
            False,
            False,
        ),
        E(
            "primary_zone_name",
            "primaryZoneName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupId
    group_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* lastName
    last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* firstName
    first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdLastName
    calling_line_id_last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdFirstName
    calling_line_id_first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* hiraganaLastName
    hiragana_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hiraganaFirstName
    hiragana_first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* extension
    extension = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdPhoneNumber
    calling_line_id_phone_number = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: str: *Optional* departmentFullPath
    department_full_path = Field(
        type=str,
        required=False,
    )
    #: str: *Required* language
    language = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZone
    time_zone = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZoneDisplayName
    time_zone_display_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultAlias
    default_alias = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* alias
    alias = Field(
        type=str,
        required=False,
    )
    #: OCI.AccessDeviceEndpointRead14: *Optional* accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceEndpointRead14,
        required=False,
    )
    #: OCI.TrunkAddressingRead: *Optional* trunkAddressing
    trunk_addressing = Field(
        type=OCI.TrunkAddressingRead,
        required=False,
    )
    #: str: *Optional* title
    title = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* pagerPhoneNumber
    pager_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilePhoneNumber
    mobile_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* emailAddress
    email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* yahooId
    yahoo_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* addressLocation
    address_location = Field(
        type=str,
        required=False,
    )
    #: OCI.StreetAddress: *Optional* address
    address = Field(
        type=OCI.StreetAddress,
        required=False,
    )
    #: str: *Optional* countryCode
    country_code = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* nationalPrefix
    national_prefix = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* officeZoneName
    office_zone_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* primaryZoneName
    primary_zone_name = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_id",
            "groupId",
            str,
            False,
            True,
            False,
        ),
        E(
            "last_name",
            "lastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "first_name",
            "firstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_last_name",
            "callingLineIdLastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_first_name",
            "callingLineIdFirstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "hiragana_last_name",
            "hiraganaLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hiragana_first_name",
            "hiraganaFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "extension",
            "extension",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_phone_number",
            "callingLineIdPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "department_full_path",
            "departmentFullPath",
            str,
            False,
            False,
            False,
        ),
        E(
            "language",
            "language",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone",
            "timeZone",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone_display_name",
            "timeZoneDisplayName",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_alias",
            "defaultAlias",
            str,
            False,
            True,
            False,
        ),
        E(
            "alias",
            "alias",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14,
            True,
            False,
            False,
        ),
        E(
            "trunk_addressing",
            "trunkAddressing",
            OCI.TrunkAddressingRead,
            True,
            False,
            False,
        ),
        E(
            "title",
            "title",
            str,
            False,
            False,
            False,
        ),
        E(
            "pager_phone_number",
            "pagerPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobile_phone_number",
            "mobilePhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "email_address",
            "emailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "yahoo_id",
            "yahooId",
            str,
            False,
            False,
            False,
        ),
        E(
            "address_location",
            "addressLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "address",
            "address",
            OCI.StreetAddress,
            True,
            False,
            False,
        ),
        E(
            "country_code",
            "countryCode",
            str,
            False,
            False,
            False,
        ),
        E(
            "national_prefix",
            "nationalPrefix",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
        E(
            "office_zone_name",
            "officeZoneName",
            str,
            False,
            False,
            False,
        ),
        E(
            "primary_zone_name",
            "primaryZoneName",
            str,
            False,
            False,
            False,
        ),
        E(
            "imp_id",
            "impId",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupId
    group_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* lastName
    last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* firstName
    first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdLastName
    calling_line_id_last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdFirstName
    calling_line_id_first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* hiraganaLastName
    hiragana_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hiraganaFirstName
    hiragana_first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* extension
    extension = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdPhoneNumber
    calling_line_id_phone_number = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: str: *Optional* departmentFullPath
    department_full_path = Field(
        type=str,
        required=False,
    )
    #: str: *Required* language
    language = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZone
    time_zone = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZoneDisplayName
    time_zone_display_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultAlias
    default_alias = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* alias
    alias = Field(
        type=str,
        required=False,
    )
    #: OCI.AccessDeviceEndpointRead14: *Optional* accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceEndpointRead14,
        required=False,
    )
    #: OCI.TrunkAddressingRead: *Optional* trunkAddressing
    trunk_addressing = Field(
        type=OCI.TrunkAddressingRead,
        required=False,
    )
    #: str: *Optional* title
    title = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* pagerPhoneNumber
    pager_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilePhoneNumber
    mobile_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* emailAddress
    email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* yahooId
    yahoo_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* addressLocation
    address_location = Field(
        type=str,
        required=False,
    )
    #: OCI.StreetAddress: *Optional* address
    address = Field(
        type=OCI.StreetAddress,
        required=False,
    )
    #: str: *Optional* countryCode
    country_code = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* nationalPrefix
    national_prefix = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* officeZoneName
    office_zone_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* primaryZoneName
    primary_zone_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* impId
    imp_id = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_id",
            "groupId",
            str,
            False,
            True,
            False,
        ),
        E(
            "last_name",
            "lastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "first_name",
            "firstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_last_name",
            "callingLineIdLastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_first_name",
            "callingLineIdFirstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "hiragana_last_name",
            "hiraganaLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hiragana_first_name",
            "hiraganaFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "extension",
            "extension",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_phone_number",
            "callingLineIdPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "department_full_path",
            "departmentFullPath",
            str,
            False,
            False,
            False,
        ),
        E(
            "language",
            "language",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone",
            "timeZone",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone_display_name",
            "timeZoneDisplayName",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_alias",
            "defaultAlias",
            str,
            False,
            True,
            False,
        ),
        E(
            "alias",
            "alias",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceMultipleContactEndpointRead,
            True,
            False,
            False,
        ),
        E(
            "trunk_addressing",
            "trunkAddressing",
            OCI.TrunkAddressingMultipleContactRead,
            True,
            False,
            False,
        ),
        E(
            "title",
            "title",
            str,
            False,
            False,
            False,
        ),
        E(
            "pager_phone_number",
            "pagerPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobile_phone_number",
            "mobilePhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "email_address",
            "emailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "yahoo_id",
            "yahooId",
            str,
            False,
            False,
            False,
        ),
        E(
            "address_location",
            "addressLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "address",
            "address",
            OCI.StreetAddress,
            True,
            False,
            False,
        ),
        E(
            "country_code",
            "countryCode",
            str,
            False,
            True,
            False,
        ),
        E(
            "national_prefix",
            "nationalPrefix",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
        E(
            "office_zone_name",
            "officeZoneName",
            str,
            False,
            False,
            False,
        ),
        E(
            "primary_zone_name",
            "primaryZoneName",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupId
    group_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* lastName
    last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* firstName
    first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdLastName
    calling_line_id_last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdFirstName
    calling_line_id_first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* hiraganaLastName
    hiragana_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hiraganaFirstName
    hiragana_first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* extension
    extension = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdPhoneNumber
    calling_line_id_phone_number = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: str: *Optional* departmentFullPath
    department_full_path = Field(
        type=str,
        required=False,
    )
    #: str: *Required* language
    language = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZone
    time_zone = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZoneDisplayName
    time_zone_display_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultAlias
    default_alias = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* alias
    alias = Field(
        type=str,
        required=False,
    )
    #: OCI.AccessDeviceMultipleContactEndpointRead: *Optional* accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceMultipleContactEndpointRead,
        required=False,
    )
    #: OCI.TrunkAddressingMultipleContactRead: *Optional* trunkAddressing
    trunk_addressing = Field(
        type=OCI.TrunkAddressingMultipleContactRead,
        required=False,
    )
    #: str: *Optional* title
    title = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* pagerPhoneNumber
    pager_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilePhoneNumber
    mobile_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* emailAddress
    email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* yahooId
    yahoo_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* addressLocation
    address_location = Field(
        type=str,
        required=False,
    )
    #: OCI.StreetAddress: *Optional* address
    address = Field(
        type=OCI.StreetAddress,
        required=False,
    )
    #: str: *Required* countryCode
    country_code = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* nationalPrefix
    national_prefix = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* officeZoneName
    office_zone_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* primaryZoneName
    primary_zone_name = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_id",
            "groupId",
            str,
            False,
            True,
            False,
        ),
        E(
            "last_name",
            "lastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "first_name",
            "firstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_last_name",
            "callingLineIdLastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_first_name",
            "callingLineIdFirstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "hiragana_last_name",
            "hiraganaLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hiragana_first_name",
            "hiraganaFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "extension",
            "extension",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_phone_number",
            "callingLineIdPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "department_full_path",
            "departmentFullPath",
            str,
            False,
            False,
            False,
        ),
        E(
            "language",
            "language",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone",
            "timeZone",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone_display_name",
            "timeZoneDisplayName",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_alias",
            "defaultAlias",
            str,
            False,
            True,
            False,
        ),
        E(
            "alias",
            "alias",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceMultipleContactEndpointRead,
            True,
            False,
            False,
        ),
        E(
            "trunk_addressing",
            "trunkAddressing",
            OCI.TrunkAddressingMultipleContactRead,
            True,
            False,
            False,
        ),
        E(
            "title",
            "title",
            str,
            False,
            False,
            False,
        ),
        E(
            "pager_phone_number",
            "pagerPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobile_phone_number",
            "mobilePhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "email_address",
            "emailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "yahoo_id",
            "yahooId",
            str,
            False,
            False,
            False,
        ),
        E(
            "address_location",
            "addressLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "address",
            "address",
            OCI.StreetAddress,
            True,
            False,
            False,
        ),
        E(
            "country_code",
            "countryCode",
            str,
            False,
            True,
            False,
        ),
        E(
            "national_prefix",
            "nationalPrefix",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
        E(
            "office_zone_name",
            "officeZoneName",
            str,
            False,
            False,
            False,
        ),
        E(
            "primary_zone_name",
            "primaryZoneName",
            str,
            False,
            False,
            False,
        ),
        E(
            "imp_id",
            "impId",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupId
    group_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* lastName
    last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* firstName
    first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdLastName
    calling_line_id_last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdFirstName
    calling_line_id_first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* hiraganaLastName
    hiragana_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hiraganaFirstName
    hiragana_first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* extension
    extension = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdPhoneNumber
    calling_line_id_phone_number = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: str: *Optional* departmentFullPath
    department_full_path = Field(
        type=str,
        required=False,
    )
    #: str: *Required* language
    language = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZone
    time_zone = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZoneDisplayName
    time_zone_display_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultAlias
    default_alias = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* alias
    alias = Field(
        type=str,
        required=False,
    )
    #: OCI.AccessDeviceMultipleContactEndpointRead: *Optional* accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceMultipleContactEndpointRead,
        required=False,
    )
    #: OCI.TrunkAddressingMultipleContactRead: *Optional* trunkAddressing
    trunk_addressing = Field(
        type=OCI.TrunkAddressingMultipleContactRead,
        required=False,
    )
    #: str: *Optional* title
    title = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* pagerPhoneNumber
    pager_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilePhoneNumber
    mobile_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* emailAddress
    email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* yahooId
    yahoo_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* addressLocation
    address_location = Field(
        type=str,
        required=False,
    )
    #: OCI.StreetAddress: *Optional* address
    address = Field(
        type=OCI.StreetAddress,
        required=False,
    )
    #: str: *Required* countryCode
    country_code = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* nationalPrefix
    national_prefix = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* officeZoneName
    office_zone_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* primaryZoneName
    primary_zone_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* impId
    imp_id = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_id",
            "groupId",
            str,
            False,
            True,
            False,
        ),
        E(
            "last_name",
            "lastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "first_name",
            "firstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_last_name",
            "callingLineIdLastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_first_name",
            "callingLineIdFirstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "hiragana_last_name",
            "hiraganaLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hiragana_first_name",
            "hiraganaFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "extension",
            "extension",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_phone_number",
            "callingLineIdPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "department_full_path",
            "departmentFullPath",
            str,
            False,
            False,
            False,
        ),
        E(
            "language",
            "language",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone",
            "timeZone",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone_display_name",
            "timeZoneDisplayName",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_alias",
            "defaultAlias",
            str,
            False,
            True,
            False,
        ),
        E(
            "alias",
            "alias",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceMultipleContactEndpointRead19,
            True,
            False,
            False,
        ),
        E(
            "trunk_addressing",
            "trunkAddressing",
            OCI.TrunkAddressingMultipleContactRead,
            True,
            False,
            False,
        ),
        E(
            "title",
            "title",
            str,
            False,
            False,
            False,
        ),
        E(
            "pager_phone_number",
            "pagerPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobile_phone_number",
            "mobilePhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "email_address",
            "emailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "yahoo_id",
            "yahooId",
            str,
            False,
            False,
            False,
        ),
        E(
            "address_location",
            "addressLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "address",
            "address",
            OCI.StreetAddress,
            True,
            False,
            False,
        ),
        E(
            "country_code",
            "countryCode",
            str,
            False,
            True,
            False,
        ),
        E(
            "national_prefix",
            "nationalPrefix",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
        E(
            "office_zone_name",
            "officeZoneName",
            str,
            False,
            False,
            False,
        ),
        E(
            "primary_zone_name",
            "primaryZoneName",
            str,
            False,
            False,
            False,
        ),
        E(
            "imp_id",
            "impId",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupId
    group_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* lastName
    last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* firstName
    first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdLastName
    calling_line_id_last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdFirstName
    calling_line_id_first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* hiraganaLastName
    hiragana_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hiraganaFirstName
    hiragana_first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* extension
    extension = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdPhoneNumber
    calling_line_id_phone_number = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: str: *Optional* departmentFullPath
    department_full_path = Field(
        type=str,
        required=False,
    )
    #: str: *Required* language
    language = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZone
    time_zone = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZoneDisplayName
    time_zone_display_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultAlias
    default_alias = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* alias
    alias = Field(
        type=str,
        required=False,
    )
    #: OCI.AccessDeviceMultipleContactEndpointRead19: *Optional* accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceMultipleContactEndpointRead19,
        required=False,
    )
    #: OCI.TrunkAddressingMultipleContactRead: *Optional* trunkAddressing
    trunk_addressing = Field(
        type=OCI.TrunkAddressingMultipleContactRead,
        required=False,
    )
    #: str: *Optional* title
    title = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* pagerPhoneNumber
    pager_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilePhoneNumber
    mobile_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* emailAddress
    email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* yahooId
    yahoo_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* addressLocation
    address_location = Field(
        type=str,
        required=False,
    )
    #: OCI.StreetAddress: *Optional* address
    address = Field(
        type=OCI.StreetAddress,
        required=False,
    )
    #: str: *Required* countryCode
    country_code = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* nationalPrefix
    national_prefix = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* officeZoneName
    office_zone_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* primaryZoneName
    primary_zone_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* impId
    imp_id = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_id",
            "groupId",
            str,
            False,
            True,
            False,
        ),
        E(
            "last_name",
            "lastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "first_name",
            "firstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_last_name",
            "callingLineIdLastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_first_name",
            "callingLineIdFirstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "name_dialing_name",
            "nameDialingName",
            OCI.NameDialingName,
            True,
            False,
            False,
        ),
        E(
            "hiragana_last_name",
            "hiraganaLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hiragana_first_name",
            "hiraganaFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "extension",
            "extension",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_phone_number",
            "callingLineIdPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "department_full_path",
            "departmentFullPath",
            str,
            False,
            False,
            False,
        ),
        E(
            "language",
            "language",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone",
            "timeZone",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone_display_name",
            "timeZoneDisplayName",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_alias",
            "defaultAlias",
            str,
            False,
            True,
            False,
        ),
        E(
            "alias",
            "alias",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceMultipleContactEndpointRead20,
            True,
            False,
            False,
        ),
        E(
            "trunk_addressing",
            "trunkAddressing",
            OCI.TrunkAddressingMultipleContactRead,
            True,
            False,
            False,
        ),
        E(
            "title",
            "title",
            str,
            False,
            False,
            False,
        ),
        E(
            "pager_phone_number",
            "pagerPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobile_phone_number",
            "mobilePhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "email_address",
            "emailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "yahoo_id",
            "yahooId",
            str,
            False,
            False,
            False,
        ),
        E(
            "address_location",
            "addressLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "address",
            "address",
            OCI.StreetAddress,
            True,
            False,
            False,
        ),
        E(
            "country_code",
            "countryCode",
            str,
            False,
            True,
            False,
        ),
        E(
            "national_prefix",
            "nationalPrefix",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
        E(
            "office_zone_name",
            "officeZoneName",
            str,
            False,
            False,
            False,
        ),
        E(
            "primary_zone_name",
            "primaryZoneName",
            str,
            False,
            False,
            False,
        ),
        E(
            "imp_id",
            "impId",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupId
    group_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* lastName
    last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* firstName
    first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdLastName
    calling_line_id_last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdFirstName
    calling_line_id_first_name = Field(
        type=str,
        required=True,
    )
    #: OCI.NameDialingName: *Optional* nameDialingName
    name_dialing_name = Field(
        type=OCI.NameDialingName,
        required=False,
    )
    #: str: *Optional* hiraganaLastName
    hiragana_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hiraganaFirstName
    hiragana_first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* extension
    extension = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdPhoneNumber
    calling_line_id_phone_number = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: str: *Optional* departmentFullPath
    department_full_path = Field(
        type=str,
        required=False,
    )
    #: str: *Required* language
    language = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZone
    time_zone = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZoneDisplayName
    time_zone_display_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultAlias
    default_alias = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* alias
    alias = Field(
        type=str,
        required=False,
    )
    #: OCI.AccessDeviceMultipleContactEndpointRead20: *Optional* accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceMultipleContactEndpointRead20,
        required=False,
    )
    #: OCI.TrunkAddressingMultipleContactRead: *Optional* trunkAddressing
    trunk_addressing = Field(
        type=OCI.TrunkAddressingMultipleContactRead,
        required=False,
    )
    #: str: *Optional* title
    title = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* pagerPhoneNumber
    pager_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilePhoneNumber
    mobile_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* emailAddress
    email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* yahooId
    yahoo_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* addressLocation
    address_location = Field(
        type=str,
        required=False,
    )
    #: OCI.StreetAddress: *Optional* address
    address = Field(
        type=OCI.StreetAddress,
        required=False,
    )
    #: str: *Required* countryCode
    country_code = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* nationalPrefix
    national_prefix = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* officeZoneName
    office_zone_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* primaryZoneName
    primary_zone_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* impId
    imp_id = Field(
        type=str,
        required=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.
    """

    _ELEMENTS = (
        E(
            "service_provider_id",
            "serviceProviderId",
            str,
            False,
            True,
            False,
        ),
        E(
            "group_id",
            "groupId",
            str,
            False,
            True,
            False,
        ),
        E(
            "last_name",
            "lastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "first_name",
            "firstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_last_name",
            "callingLineIdLastName",
            str,
            False,
            True,
            False,
        ),
        E(
            "calling_line_id_first_name",
            "callingLineIdFirstName",
            str,
            False,
            True,
            False,
        ),
        E(
            "name_dialing_name",
            "nameDialingName",
            OCI.NameDialingName,
            True,
            False,
            False,
        ),
        E(
            "hiragana_last_name",
            "hiraganaLastName",
            str,
            False,
            False,
            False,
        ),
        E(
            "hiragana_first_name",
            "hiraganaFirstName",
            str,
            False,
            False,
            False,
        ),
        E(
            "phone_number",
            "phoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "extension",
            "extension",
            str,
            False,
            False,
            False,
        ),
        E(
            "calling_line_id_phone_number",
            "callingLineIdPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "department",
            "department",
            OCI.DepartmentKey,
            True,
            False,
            False,
        ),
        E(
            "department_full_path",
            "departmentFullPath",
            str,
            False,
            False,
            False,
        ),
        E(
            "language",
            "language",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone",
            "timeZone",
            str,
            False,
            True,
            False,
        ),
        E(
            "time_zone_display_name",
            "timeZoneDisplayName",
            str,
            False,
            True,
            False,
        ),
        E(
            "default_alias",
            "defaultAlias",
            str,
            False,
            True,
            False,
        ),
        E(
            "alias",
            "alias",
            str,
            False,
            False,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceMultipleIdentityAndContactEndpointRead,
            True,
            False,
            False,
        ),
        E(
            "trunk_addressing",
            "trunkAddressing",
            OCI.TrunkAddressingMultipleContactRead21,
            True,
            False,
            False,
        ),
        E(
            "title",
            "title",
            str,
            False,
            False,
            False,
        ),
        E(
            "pager_phone_number",
            "pagerPhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "mobile_phone_number",
            "mobilePhoneNumber",
            str,
            False,
            False,
            False,
        ),
        E(
            "email_address",
            "emailAddress",
            str,
            False,
            False,
            False,
        ),
        E(
            "yahoo_id",
            "yahooId",
            str,
            False,
            False,
            False,
        ),
        E(
            "address_location",
            "addressLocation",
            str,
            False,
            False,
            False,
        ),
        E(
            "address",
            "address",
            OCI.StreetAddress,
            True,
            False,
            False,
        ),
        E(
            "country_code",
            "countryCode",
            str,
            False,
            True,
            False,
        ),
        E(
            "national_prefix",
            "nationalPrefix",
            str,
            False,
            False,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
        E(
            "office_zone_name",
            "officeZoneName",
            str,
            False,
            False,
            False,
        ),
        E(
            "primary_zone_name",
            "primaryZoneName",
            str,
            False,
            False,
            False,
        ),
        E(
            "imp_id",
            "impId",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* serviceProviderId
    service_provider_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* groupId
    group_id = Field(
        type=str,
        required=True,
    )
    #: str: *Required* lastName
    last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* firstName
    first_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdLastName
    calling_line_id_last_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* callingLineIdFirstName
    calling_line_id_first_name = Field(
        type=str,
        required=True,
    )
    #: OCI.NameDialingName: *Optional* nameDialingName
    name_dialing_name = Field(
        type=OCI.NameDialingName,
        required=False,
    )
    #: str: *Optional* hiraganaLastName
    hiragana_last_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* hiraganaFirstName
    hiragana_first_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* phoneNumber
    phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* extension
    extension = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* callingLineIdPhoneNumber
    calling_line_id_phone_number = Field(
        type=str,
        required=False,
    )
    #: OCI.DepartmentKey: *Optional* department
    department = Field(
        type=OCI.DepartmentKey,
        required=False,
    )
    #: str: *Optional* departmentFullPath
    department_full_path = Field(
        type=str,
        required=False,
    )
    #: str: *Required* language
    language = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZone
    time_zone = Field(
        type=str,
        required=True,
    )
    #: str: *Required* timeZoneDisplayName
    time_zone_display_name = Field(
        type=str,
        required=True,
    )
    #: str: *Required* defaultAlias
    default_alias = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* alias
    alias = Field(
        type=str,
        required=False,
    )
    #: OCI.AccessDeviceMultipleIdentityAndContactEndpointRead: *Optional*
    #: accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceMultipleIdentityAndContactEndpointRead,
        required=False,
    )
    #: OCI.TrunkAddressingMultipleContactRead21: *Optional* trunkAddressing
    trunk_addressing = Field(
        type=OCI.TrunkAddressingMultipleContactRead21,
        required=False,
    )
    #: str: *Optional* title
    title = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* pagerPhoneNumber
    pager_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* mobilePhoneNumber
    mobile_phone_number = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* emailAddress
    email_address = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* yahooId
    yahoo_id = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* addressLocation
    address_location = Field(
        type=str,
        required=False,
    )
    #: OCI.StreetAddress: *Optional* address
    address = Field(
        type=OCI.StreetAddress,
        required=False,
    )
    #: str: *Required* countryCode
    country_code = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* nationalPrefix
    national_prefix = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* officeZoneName
    office_zone_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* primaryZoneName
    primary_zone_name = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* impId
    imp_id = Field(
        type=str,
        required=False,
    )


class UserIncomingCallingPlanGetResponse(OCIResponse):
    """
    Response to ``UserIncomingCallingPlanGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_custom_settings",
            "useCustomSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_permissions",
            "userPermissions",
            OCI.IncomingCallingPlanPermissions,
            True,
            True,
            False,
        ),
    )
    #: bool: *Required* useCustomSettings
    use_custom_settings = Field(
        type=bool,
        required=True,
    )
    #: OCI.IncomingCallingPlanPermissions: *Required* userPermissions
    user_permissions = Field(
        type=OCI.IncomingCallingPlanPermissions,
        required=True,
    )


class UserOutgoingCallingPlanDigitPlanCallMeNowGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanDigitPlanCallMeNowGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_custom_settings",
            "useCustomSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_permissions",
            "userPermissions",
            OCI.OutgoingCallingPlanDigitPatternCallMeNowPermissions,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* useCustomSettings
    use_custom_settings = Field(
        type=bool,
        required=True,
    )
    #: OCI.OutgoingCallingPlanDigitPatternCallMeNowPermissions: *Optional*
    #: userPermissions
    user_permissions = Field(
        type=OCI.OutgoingCallingPlanDigitPatternCallMeNowPermissions,
        required=False,
    )


class UserOutgoingCallingPlanDigitPlanOriginatingGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanDigitPlanOriginatingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_custom_settings",
            "useCustomSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_permissions",
            "userPermissions",
            OCI.OutgoingCallingPlanDigitPatternOriginatingPermissions,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* useCustomSettings
    use_custom_settings = Field(
        type=bool,
        required=True,
    )
    #: OCI.OutgoingCallingPlanDigitPatternOriginatingPermissions: *Optional*
    #: userPermissions
    user_permissions = Field(
        type=OCI.OutgoingCallingPlanDigitPatternOriginatingPermissions,
        required=False,
    )


class UserOutgoingCallingPlanDigitPlanRedirectingGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanDigitPlanRedirectingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_custom_settings",
            "useCustomSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_permissions",
            "userPermissions",
            OCI.OutgoingCallingPlanDigitPatternRedirectingPermissions,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* useCustomSettings
    use_custom_settings = Field(
        type=bool,
        required=True,
    )
    #: OCI.OutgoingCallingPlanDigitPatternRedirectingPermissions: *Optional*
    #: userPermissions
    user_permissions = Field(
        type=OCI.OutgoingCallingPlanDigitPatternRedirectingPermissions,
        required=False,
    )


class UserOutgoingCallingPlanPinholeDigitPlanCallMeNowGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanPinholeDigitPlanCallMeNowGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_custom_settings",
            "useCustomSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_permissions",
            "userPermissions",
            OCI.OutgoingPinholeDigitPlanDigitPatternCallMeNowPermissions,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* useCustomSettings
    use_custom_settings = Field(
        type=bool,
        required=True,
    )
    #: OCI.OutgoingPinholeDigitPlanDigitPatternCallMeNowPermissions: *Optional*
    #: userPermissions
    user_permissions = Field(
        type=OCI.OutgoingPinholeDigitPlanDigitPatternCallMeNowPermissions,
        required=False,
    )


class UserOutgoingCallingPlanPinholeDigitPlanOriginatingGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanPinholeDigitPlanOriginatingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_custom_settings",
            "useCustomSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_permissions",
            "userPermissions",
            OCI.OutgoingPinholeDigitPlanDigitPatternOriginatingPermissions,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* useCustomSettings
    use_custom_settings = Field(
        type=bool,
        required=True,
    )
    #: OCI.OutgoingPinholeDigitPlanDigitPatternOriginatingPermissions: *Optional*
    #: userPermissions
    user_permissions = Field(
        type=OCI.OutgoingPinholeDigitPlanDigitPatternOriginatingPermissions,
        required=False,
    )


class UserOutgoingCallingPlanPinholeDigitPlanRedirectingGetResponse(OCIResponse):
    """
    Response to ``UserOutgoingCallingPlanPinholeDigitPlanRedirectingGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "use_custom_settings",
            "useCustomSettings",
            bool,
            False,
            True,
            False,
        ),
        E(
            "user_permissions",
            "userPermissions",
            OCI.OutgoingPinholeDigitPlanDigitPatternRedirectingPermissions,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* useCustomSettings
    use_custom_settings = Field(
        type=bool,
        required=True,
    )
    #: OCI.OutgoingPinholeDigitPlanDigitPatternRedirectingPermissions: *Optional*
    #: userPermissions
    user_permissions = Field(
        type=OCI.OutgoingPinholeDigitPlanDigitPatternRedirectingPermissions,
        required=False,
    )


class UserScheduleGetEventDetailListResponse(OCIResponse):
    """
    Response to ``UserScheduleGetEventRequest()``.
    The response contains collection of event details of a requested schedule.
    """

    _ELEMENTS = (
        E(
            "schedule_events",
            "scheduleEvents",
            OCI.ScheduleEvents,
            True,
            False,
            False,
        ),
    )
    #: OCI.ScheduleEvents: *Optional* scheduleEvents
    schedule_events = Field(
        type=OCI.ScheduleEvents,
        required=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.
    """

    _ELEMENTS = (
        E(
            "schedule_global_key",
            "scheduleGlobalKey",
            OCI.ScheduleGlobalKey,
            True,
            False,
            False,
        ),
    )
    #: OCI.ScheduleGlobalKey: *Optional* scheduleGlobalKey
    schedule_global_key = Field(
        type=OCI.ScheduleGlobalKey,
        required=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.
    """

    _ELEMENTS = (
        E(
            "entry",
            "entry",
            OCI.ShInterfaceUserIdDataEntry,
            True,
            False,
            False,
        ),
    )
    #: OCI.ShInterfaceUserIdDataEntry: *Optional* entry
    entry = Field(
        type=OCI.ShInterfaceUserIdDataEntry,
        required=False,
    )


class UserVideoAddOnGetResponse14(OCIResponse):
    """
    Response to the ``UserVideoAddOnGetRequest14()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_originating_call_delay_seconds",
            "maxOriginatingCallDelaySeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointRead14,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxOriginatingCallDelaySeconds
    max_originating_call_delay_seconds = Field(
        type=int,
        required=True,
    )
    #: OCI.AccessDeviceEndpointRead14: *Optional* accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceEndpointRead14,
        required=False,
    )


class UserVideoAddOnGetResponse19(OCIResponse):
    """
    Response to the ``UserVideoAddOnGetRequest19()``.
    """

    _ELEMENTS = (
        E(
            "is_active",
            "isActive",
            bool,
            False,
            True,
            False,
        ),
        E(
            "max_originating_call_delay_seconds",
            "maxOriginatingCallDelaySeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "access_device_endpoint",
            "accessDeviceEndpoint",
            OCI.AccessDeviceEndpointWithPortNumberRead,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* isActive
    is_active = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* maxOriginatingCallDelaySeconds
    max_originating_call_delay_seconds = Field(
        type=int,
        required=True,
    )
    #: OCI.AccessDeviceEndpointWithPortNumberRead: *Optional* accessDeviceEndpoint
    access_device_endpoint = Field(
        type=OCI.AccessDeviceEndpointWithPortNumberRead,
        required=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
    """

    _ELEMENTS = (
        E(
            "busy_announcement_selection",
            "busyAnnouncementSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "busy_personal_audio_file",
            "busyPersonalAudioFile",
            OCI.AnnouncementFileLevelKey,
            True,
            False,
            False,
        ),
        E(
            "busy_personal_video_file",
            "busyPersonalVideoFile",
            OCI.AnnouncementFileLevelKey,
            True,
            False,
            False,
        ),
        E(
            "no_answer_announcement_selection",
            "noAnswerAnnouncementSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "no_answer_personal_audio_file",
            "noAnswerPersonalAudioFile",
            OCI.AnnouncementFileLevelKey,
            True,
            False,
            False,
        ),
        E(
            "no_answer_personal_video_file",
            "noAnswerPersonalVideoFile",
            OCI.AnnouncementFileLevelKey,
            True,
            False,
            False,
        ),
        E(
            "no_answer_alternate_greeting01",
            "noAnswerAlternateGreeting01",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead20,
            True,
            False,
            False,
        ),
        E(
            "no_answer_alternate_greeting02",
            "noAnswerAlternateGreeting02",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead20,
            True,
            False,
            False,
        ),
        E(
            "no_answer_alternate_greeting03",
            "noAnswerAlternateGreeting03",
            OCI.VoiceMessagingAlternateNoAnswerGreetingRead20,
            True,
            False,
            False,
        ),
        E(
            "extended_away_enabled",
            "extendedAwayEnabled",
            bool,
            False,
            True,
            False,
        ),
        E(
            "extended_away_disable_message_deposit",
            "extendedAwayDisableMessageDeposit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "extended_away_audio_file",
            "extendedAwayAudioFile",
            OCI.AnnouncementFileLevelKey,
            True,
            False,
            False,
        ),
        E(
            "extended_away_video_file",
            "extendedAwayVideoFile",
            OCI.AnnouncementFileLevelKey,
            True,
            False,
            False,
        ),
        E(
            "no_answer_number_of_rings",
            "noAnswerNumberOfRings",
            int,
            False,
            True,
            False,
        ),
        E(
            "disable_message_deposit",
            "disableMessageDeposit",
            bool,
            False,
            True,
            False,
        ),
        E(
            "disable_message_deposit_action",
            "disableMessageDepositAction",
            str,
            False,
            True,
            False,
        ),
        E(
            "greeting_only_forward_destination",
            "greetingOnlyForwardDestination",
            str,
            False,
            False,
            False,
        ),
    )
    #: str: *Required* busyAnnouncementSelection
    busy_announcement_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.AnnouncementFileLevelKey: *Optional* busyPersonalAudioFile
    busy_personal_audio_file = Field(
        type=OCI.AnnouncementFileLevelKey,
        required=False,
    )
    #: OCI.AnnouncementFileLevelKey: *Optional* busyPersonalVideoFile
    busy_personal_video_file = Field(
        type=OCI.AnnouncementFileLevelKey,
        required=False,
    )
    #: str: *Required* noAnswerAnnouncementSelection
    no_answer_announcement_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.AnnouncementFileLevelKey: *Optional* noAnswerPersonalAudioFile
    no_answer_personal_audio_file = Field(
        type=OCI.AnnouncementFileLevelKey,
        required=False,
    )
    #: OCI.AnnouncementFileLevelKey: *Optional* noAnswerPersonalVideoFile
    no_answer_personal_video_file = Field(
        type=OCI.AnnouncementFileLevelKey,
        required=False,
    )
    #: OCI.VoiceMessagingAlternateNoAnswerGreetingRead20: *Optional*
    #: noAnswerAlternateGreeting01
    no_answer_alternate_greeting01 = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead20,
        required=False,
    )
    #: OCI.VoiceMessagingAlternateNoAnswerGreetingRead20: *Optional*
    #: noAnswerAlternateGreeting02
    no_answer_alternate_greeting02 = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead20,
        required=False,
    )
    #: OCI.VoiceMessagingAlternateNoAnswerGreetingRead20: *Optional*
    #: noAnswerAlternateGreeting03
    no_answer_alternate_greeting03 = Field(
        type=OCI.VoiceMessagingAlternateNoAnswerGreetingRead20,
        required=False,
    )
    #: bool: *Required* extendedAwayEnabled
    extended_away_enabled = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* extendedAwayDisableMessageDeposit
    extended_away_disable_message_deposit = Field(
        type=bool,
        required=True,
    )
    #: OCI.AnnouncementFileLevelKey: *Optional* extendedAwayAudioFile
    extended_away_audio_file = Field(
        type=OCI.AnnouncementFileLevelKey,
        required=False,
    )
    #: OCI.AnnouncementFileLevelKey: *Optional* extendedAwayVideoFile
    extended_away_video_file = Field(
        type=OCI.AnnouncementFileLevelKey,
        required=False,
    )
    #: int: *Required* noAnswerNumberOfRings
    no_answer_number_of_rings = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* disableMessageDeposit
    disable_message_deposit = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* disableMessageDepositAction
    disable_message_deposit_action = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* greetingOnlyForwardDestination
    greeting_only_forward_destination = Field(
        type=str,
        required=False,
    )


class EnterpriseCallCenterEnhancedReportingScheduledReportGetResponse(OCIResponse):
    """
    Response to ``EnterpriseCallCenterEnhancedReportingScheduledReportGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "report_template",
            "reportTemplate",
            OCI.CallCenterReportTemplateKey,
            True,
            True,
            False,
        ),
        E(
            "schedule",
            "schedule",
            OCI.CallCenterReportSchedule,
            True,
            True,
            False,
        ),
        E(
            "sampling_period",
            "samplingPeriod",
            str,
            False,
            False,
            False,
        ),
        E(
            "start_day_of_week",
            "startDayOfWeek",
            str,
            False,
            False,
            False,
        ),
        E(
            "report_time_zone",
            "reportTimeZone",
            str,
            False,
            True,
            False,
        ),
        E(
            "report_date_format",
            "reportDateFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "report_time_format",
            "reportTimeFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "report_interval",
            "reportInterval",
            OCI.CallCenterReportInterval,
            True,
            True,
            False,
        ),
        E(
            "report_format",
            "reportFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "agent",
            "agent",
            OCI.CallCenterScheduledReportAgentSelectionAdminRead,
            True,
            False,
            False,
        ),
        E(
            "call_center",
            "callCenter",
            OCI.CallCenterScheduledReportCallCenterSelectionRead,
            True,
            True,
            False,
        ),
        E(
            "dnis",
            "dnis",
            OCI.CallCenterScheduledReportDNISSelectionRead,
            True,
            True,
            False,
        ),
        E(
            "call_completion_threshold_seconds",
            "callCompletionThresholdSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "short_duration_threshold_seconds",
            "shortDurationThresholdSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "service_level_threshold_seconds",
            "serviceLevelThresholdSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "service_level_inclusions",
            "serviceLevelInclusions",
            OCI.CallCenterScheduledReportServiceLevelInclusions,
            True,
            False,
            False,
        ),
        E(
            "service_level_objective_percentage",
            "serviceLevelObjectivePercentage",
            int,
            False,
            False,
            False,
        ),
        E(
            "abandoned_call_threshold_seconds",
            "abandonedCallThresholdSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "email_address",
            "emailAddress",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterReportTemplateKey: *Required* reportTemplate
    report_template = Field(
        type=OCI.CallCenterReportTemplateKey,
        required=True,
    )
    #: OCI.CallCenterReportSchedule: *Required* schedule
    schedule = Field(
        type=OCI.CallCenterReportSchedule,
        required=True,
    )
    #: str: *Optional* samplingPeriod
    sampling_period = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* startDayOfWeek
    start_day_of_week = Field(
        type=str,
        required=False,
    )
    #: str: *Required* reportTimeZone
    report_time_zone = Field(
        type=str,
        required=True,
    )
    #: str: *Required* reportDateFormat
    report_date_format = Field(
        type=str,
        required=True,
    )
    #: str: *Required* reportTimeFormat
    report_time_format = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterReportInterval: *Required* reportInterval
    report_interval = Field(
        type=OCI.CallCenterReportInterval,
        required=True,
    )
    #: str: *Required* reportFormat
    report_format = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterScheduledReportAgentSelectionAdminRead: *Optional* agent
    agent = Field(
        type=OCI.CallCenterScheduledReportAgentSelectionAdminRead,
        required=False,
    )
    #: OCI.CallCenterScheduledReportCallCenterSelectionRead: *Required* callCenter
    call_center = Field(
        type=OCI.CallCenterScheduledReportCallCenterSelectionRead,
        required=True,
    )
    #: OCI.CallCenterScheduledReportDNISSelectionRead: *Required* dnis
    dnis = Field(
        type=OCI.CallCenterScheduledReportDNISSelectionRead,
        required=True,
    )
    #: int: *Optional* callCompletionThresholdSeconds
    call_completion_threshold_seconds = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* shortDurationThresholdSeconds
    short_duration_threshold_seconds = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* serviceLevelThresholdSeconds
    service_level_threshold_seconds = Field(
        type=int,
        required=False,
    )
    #: OCI.CallCenterScheduledReportServiceLevelInclusions: *Optional*
    #: serviceLevelInclusions
    service_level_inclusions = Field(
        type=OCI.CallCenterScheduledReportServiceLevelInclusions,
        required=False,
    )
    #: int: *Optional* serviceLevelObjectivePercentage
    service_level_objective_percentage = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* abandonedCallThresholdSeconds
    abandoned_call_threshold_seconds = Field(
        type=int,
        required=False,
    )
    #: str: *Required* emailAddress
    email_address = Field(
        type=str,
        required=True,
    )


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()``
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17,
            True,
            True,
            False,
        ),
        E(
            "type",
            "type",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "business_hours",
            "businessHours",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "extension_dialing_scope",
            "extensionDialingScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "name_dialing_scope",
            "nameDialingScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "name_dialing_entries",
            "nameDialingEntries",
            str,
            False,
            True,
            False,
        ),
        E(
            "business_hours_menu",
            "businessHoursMenu",
            OCI.AutoAttendantReadMenu19,
            True,
            True,
            False,
        ),
        E(
            "after_hours_menu",
            "afterHoursMenu",
            OCI.AutoAttendantReadMenu19,
            True,
            True,
            False,
        ),
        E(
            "holiday_menu",
            "holidayMenu",
            OCI.AutoAttendantReadMenu19,
            True,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17,
        required=True,
    )
    #: str: *Required* type
    type = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: OCI.TimeSchedule: *Optional* businessHours
    business_hours = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: str: *Required* extensionDialingScope
    extension_dialing_scope = Field(
        type=str,
        required=True,
    )
    #: str: *Required* nameDialingScope
    name_dialing_scope = Field(
        type=str,
        required=True,
    )
    #: str: *Required* nameDialingEntries
    name_dialing_entries = Field(
        type=str,
        required=True,
    )
    #: OCI.AutoAttendantReadMenu19: *Required* businessHoursMenu
    business_hours_menu = Field(
        type=OCI.AutoAttendantReadMenu19,
        required=True,
    )
    #: OCI.AutoAttendantReadMenu19: *Required* afterHoursMenu
    after_hours_menu = Field(
        type=OCI.AutoAttendantReadMenu19,
        required=True,
    )
    #: OCI.AutoAttendantReadMenu19: *Optional* holidayMenu
    holiday_menu = Field(
        type=OCI.AutoAttendantReadMenu19,
        required=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()``
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1,
            True,
            True,
            False,
        ),
        E(
            "type",
            "type",
            str,
            False,
            True,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "business_hours",
            "businessHours",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "extension_dialing_scope",
            "extensionDialingScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "name_dialing_scope",
            "nameDialingScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "name_dialing_entries",
            "nameDialingEntries",
            str,
            False,
            True,
            False,
        ),
        E(
            "business_hours_menu",
            "businessHoursMenu",
            OCI.AutoAttendantReadMenu19,
            True,
            True,
            False,
        ),
        E(
            "after_hours_menu",
            "afterHoursMenu",
            OCI.AutoAttendantReadMenu19,
            True,
            True,
            False,
        ),
        E(
            "holiday_menu",
            "holidayMenu",
            OCI.AutoAttendantReadMenu19,
            True,
            False,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile19sp1: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile19sp1,
        required=True,
    )
    #: str: *Required* type
    type = Field(
        type=str,
        required=True,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: OCI.TimeSchedule: *Optional* businessHours
    business_hours = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: str: *Required* extensionDialingScope
    extension_dialing_scope = Field(
        type=str,
        required=True,
    )
    #: str: *Required* nameDialingScope
    name_dialing_scope = Field(
        type=str,
        required=True,
    )
    #: str: *Required* nameDialingEntries
    name_dialing_entries = Field(
        type=str,
        required=True,
    )
    #: OCI.AutoAttendantReadMenu19: *Required* businessHoursMenu
    business_hours_menu = Field(
        type=OCI.AutoAttendantReadMenu19,
        required=True,
    )
    #: OCI.AutoAttendantReadMenu19: *Required* afterHoursMenu
    after_hours_menu = Field(
        type=OCI.AutoAttendantReadMenu19,
        required=True,
    )
    #: OCI.AutoAttendantReadMenu19: *Optional* holidayMenu
    holiday_menu = Field(
        type=OCI.AutoAttendantReadMenu19,
        required=False,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )


class GroupAutoAttendantSubmenuGetResponse20(OCIResponse):
    """
    Response to ``GroupAutoAttendantSubmenuGetRequest20()``.
    Contains AutoAttendant submenu information.
    """

    _ELEMENTS = (
        E(
            "announcement_selection",
            "announcementSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "audio_file",
            "audioFile",
            OCI.AnnouncementFileLevelKey,
            True,
            False,
            False,
        ),
        E(
            "video_file",
            "videoFile",
            OCI.AnnouncementFileLevelKey,
            True,
            False,
            False,
        ),
        E(
            "enable_level_extension_dialing",
            "enableLevelExtensionDialing",
            bool,
            False,
            True,
            False,
        ),
        E(
            "key_configuration",
            "keyConfiguration",
            OCI.AutoAttendantKeyReadConfiguration20,
            True,
            False,
            False,
        ),
    )
    #: str: *Required* announcementSelection
    announcement_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.AnnouncementFileLevelKey: *Optional* audioFile
    audio_file = Field(
        type=OCI.AnnouncementFileLevelKey,
        required=False,
    )
    #: OCI.AnnouncementFileLevelKey: *Optional* videoFile
    video_file = Field(
        type=OCI.AnnouncementFileLevelKey,
        required=False,
    )
    #: bool: *Required* enableLevelExtensionDialing
    enable_level_extension_dialing = Field(
        type=bool,
        required=True,
    )
    #: OCI.AutoAttendantKeyReadConfiguration20: *Optional* keyConfiguration
    key_configuration = Field(
        type=OCI.AutoAttendantKeyReadConfiguration20,
        required=False,
    )


class GroupCallCenterEnhancedReportingScheduledReportGetResponse(OCIResponse):
    """
    Response to ``GroupCallCenterEnhancedReportingScheduledReportGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "report_template",
            "reportTemplate",
            OCI.CallCenterReportTemplateKey,
            True,
            True,
            False,
        ),
        E(
            "schedule",
            "schedule",
            OCI.CallCenterReportSchedule,
            True,
            True,
            False,
        ),
        E(
            "sampling_period",
            "samplingPeriod",
            str,
            False,
            False,
            False,
        ),
        E(
            "start_day_of_week",
            "startDayOfWeek",
            str,
            False,
            False,
            False,
        ),
        E(
            "report_time_zone",
            "reportTimeZone",
            str,
            False,
            True,
            False,
        ),
        E(
            "report_date_format",
            "reportDateFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "report_time_format",
            "reportTimeFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "report_interval",
            "reportInterval",
            OCI.CallCenterReportInterval,
            True,
            True,
            False,
        ),
        E(
            "report_format",
            "reportFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "agent",
            "agent",
            OCI.CallCenterScheduledReportAgentSelectionAdminRead,
            True,
            False,
            False,
        ),
        E(
            "call_center",
            "callCenter",
            OCI.CallCenterScheduledReportCallCenterSelectionRead,
            True,
            True,
            False,
        ),
        E(
            "dnis",
            "dnis",
            OCI.CallCenterScheduledReportDNISSelectionRead,
            True,
            True,
            False,
        ),
        E(
            "call_completion_threshold_seconds",
            "callCompletionThresholdSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "short_duration_threshold_seconds",
            "shortDurationThresholdSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "service_level_threshold_seconds",
            "serviceLevelThresholdSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "service_level_inclusions",
            "serviceLevelInclusions",
            OCI.CallCenterScheduledReportServiceLevelInclusions,
            True,
            False,
            False,
        ),
        E(
            "service_level_objective_percentage",
            "serviceLevelObjectivePercentage",
            int,
            False,
            False,
            False,
        ),
        E(
            "abandoned_call_threshold_seconds",
            "abandonedCallThresholdSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "email_address",
            "emailAddress",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterReportTemplateKey: *Required* reportTemplate
    report_template = Field(
        type=OCI.CallCenterReportTemplateKey,
        required=True,
    )
    #: OCI.CallCenterReportSchedule: *Required* schedule
    schedule = Field(
        type=OCI.CallCenterReportSchedule,
        required=True,
    )
    #: str: *Optional* samplingPeriod
    sampling_period = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* startDayOfWeek
    start_day_of_week = Field(
        type=str,
        required=False,
    )
    #: str: *Required* reportTimeZone
    report_time_zone = Field(
        type=str,
        required=True,
    )
    #: str: *Required* reportDateFormat
    report_date_format = Field(
        type=str,
        required=True,
    )
    #: str: *Required* reportTimeFormat
    report_time_format = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterReportInterval: *Required* reportInterval
    report_interval = Field(
        type=OCI.CallCenterReportInterval,
        required=True,
    )
    #: str: *Required* reportFormat
    report_format = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterScheduledReportAgentSelectionAdminRead: *Optional* agent
    agent = Field(
        type=OCI.CallCenterScheduledReportAgentSelectionAdminRead,
        required=False,
    )
    #: OCI.CallCenterScheduledReportCallCenterSelectionRead: *Required* callCenter
    call_center = Field(
        type=OCI.CallCenterScheduledReportCallCenterSelectionRead,
        required=True,
    )
    #: OCI.CallCenterScheduledReportDNISSelectionRead: *Required* dnis
    dnis = Field(
        type=OCI.CallCenterScheduledReportDNISSelectionRead,
        required=True,
    )
    #: int: *Optional* callCompletionThresholdSeconds
    call_completion_threshold_seconds = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* shortDurationThresholdSeconds
    short_duration_threshold_seconds = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* serviceLevelThresholdSeconds
    service_level_threshold_seconds = Field(
        type=int,
        required=False,
    )
    #: OCI.CallCenterScheduledReportServiceLevelInclusions: *Optional*
    #: serviceLevelInclusions
    service_level_inclusions = Field(
        type=OCI.CallCenterScheduledReportServiceLevelInclusions,
        required=False,
    )
    #: int: *Optional* serviceLevelObjectivePercentage
    service_level_objective_percentage = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* abandonedCallThresholdSeconds
    abandoned_call_threshold_seconds = Field(
        type=int,
        required=False,
    )
    #: str: *Required* emailAddress
    email_address = Field(
        type=str,
        required=True,
    )


class GroupCallCenterGetAnnouncementResponse16(OCIResponse):
    """
    Response to the ``GroupCallCenterGetAnnouncementRequest16()``.
    """

    _ELEMENTS = (
        E(
            "play_entrance_message",
            "playEntranceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mandatory_entrance_message",
            "mandatoryEntranceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "entrance_audio_message_selection",
            "entranceAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "entrance_audio_file_url",
            "entranceAudioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "entrance_message_audio_file_description",
            "entranceMessageAudioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "entrance_audio_file_media_type",
            "entranceAudioFileMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "entrance_video_message_selection",
            "entranceVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "entrance_video_file_url",
            "entranceVideoFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "entrance_message_video_file_description",
            "entranceMessageVideoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "entrance_video_file_media_type",
            "entranceVideoFileMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "play_periodic_comfort_message",
            "playPeriodicComfortMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "time_between_comfort_messages_seconds",
            "timeBetweenComfortMessagesSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "periodic_comfort_audio_message_selection",
            "periodicComfortAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "periodic_comfort_audio_file_url",
            "periodicComfortAudioFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_audio_file_description",
            "periodicComfortMessageAudioFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "periodic_comfort_audio_file_media_type",
            "periodicComfortAudioFileMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "periodic_comfort_video_message_selection",
            "periodicComfortVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "periodic_comfort_video_file_url",
            "periodicComfortVideoFileUrl",
            str,
            False,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_file_description",
            "periodicComfortMessageVideoFileDescription",
            str,
            False,
            False,
            False,
        ),
        E(
            "periodic_comfort_video_file_media_type",
            "periodicComfortVideoFileMediaType",
            str,
            False,
            False,
            False,
        ),
        E(
            "enable_media_on_hold_for_queued_calls",
            "enableMediaOnHoldForQueuedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "media_on_hold_source",
            "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead16,
            True,
            True,
            False,
        ),
        E(
            "media_on_hold_use_alternate_source_for_internal_calls",
            "mediaOnHoldUseAlternateSourceForInternalCalls",
            bool,
            False,
            False,
            False,
        ),
        E(
            "media_on_hold_internal_source",
            "mediaOnHoldInternalSource",
            OCI.CallCenterMediaOnHoldSourceRead16,
            True,
            False,
            False,
        ),
    )
    #: bool: *Required* playEntranceMessage
    play_entrance_message = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* mandatoryEntranceMessage
    mandatory_entrance_message = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* entranceAudioMessageSelection
    entrance_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* entranceAudioFileUrl
    entrance_audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* entranceMessageAudioFileDescription
    entrance_message_audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* entranceAudioFileMediaType
    entrance_audio_file_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* entranceVideoMessageSelection
    entrance_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* entranceVideoFileUrl
    entrance_video_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* entranceMessageVideoFileDescription
    entrance_message_video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* entranceVideoFileMediaType
    entrance_video_file_media_type = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* playPeriodicComfortMessage
    play_periodic_comfort_message = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* timeBetweenComfortMessagesSeconds
    time_between_comfort_messages_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* periodicComfortAudioMessageSelection
    periodic_comfort_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: str: *Optional* periodicComfortAudioFileUrl
    periodic_comfort_audio_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* periodicComfortMessageAudioFileDescription
    periodic_comfort_message_audio_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* periodicComfortAudioFileMediaType
    periodic_comfort_audio_file_media_type = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* periodicComfortVideoMessageSelection
    periodic_comfort_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* periodicComfortVideoFileUrl
    periodic_comfort_video_file_url = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* periodicComfortMessageVideoFileDescription
    periodic_comfort_message_video_file_description = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* periodicComfortVideoFileMediaType
    periodic_comfort_video_file_media_type = Field(
        type=str,
        required=False,
    )
    #: bool: *Required* enableMediaOnHoldForQueuedCalls
    enable_media_on_hold_for_queued_calls = Field(
        type=bool,
        required=True,
    )
    #: OCI.CallCenterMediaOnHoldSourceRead16: *Required* mediaOnHoldSource
    media_on_hold_source = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead16,
        required=True,
    )
    #: bool: *Optional* mediaOnHoldUseAlternateSourceForInternalCalls
    media_on_hold_use_alternate_source_for_internal_calls = Field(
        type=bool,
        required=False,
    )
    #: OCI.CallCenterMediaOnHoldSourceRead16: *Optional* mediaOnHoldInternalSource
    media_on_hold_internal_source = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead16,
        required=False,
    )


class GroupCallCenterGetAnnouncementResponse17(OCIResponse):
    """
    Response to the ``GroupCallCenterGetAnnouncementRequest17()``.

    Replaced by ``GroupCallCenterGetAnnouncementResponse17sp4()``
    """

    _ELEMENTS = (
        E(
            "play_entrance_message",
            "playEntranceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mandatory_entrance_message",
            "mandatoryEntranceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "entrance_audio_message_selection",
            "entranceAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "entrance_message_audio_url_list",
            "entranceMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_audio_file_list",
            "entranceMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_audio_media_type_list",
            "entranceMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "entrance_video_message_selection",
            "entranceVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "entrance_message_video_url_list",
            "entranceMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_video_file_list",
            "entranceMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_video_media_type_list",
            "entranceMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "play_periodic_comfort_message",
            "playPeriodicComfortMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "time_between_comfort_messages_seconds",
            "timeBetweenComfortMessagesSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "periodic_comfort_audio_message_selection",
            "periodicComfortAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "periodic_comfort_message_audio_url_list",
            "periodicComfortMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_audio_file_list",
            "periodicComfortMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_audio_media_type_list",
            "periodicComfortMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_video_message_selection",
            "periodicComfortVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_url_list",
            "periodicComfortMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_file_list",
            "periodicComfortMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_media_type_list",
            "periodicComfortMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "enable_media_on_hold_for_queued_calls",
            "enableMediaOnHoldForQueuedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "media_on_hold_source",
            "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead17,
            True,
            True,
            False,
        ),
        E(
            "media_on_hold_use_alternate_source_for_internal_calls",
            "mediaOnHoldUseAlternateSourceForInternalCalls",
            bool,
            False,
            False,
            False,
        ),
        E(
            "media_on_hold_internal_source",
            "mediaOnHoldInternalSource",
            OCI.CallCenterMediaOnHoldSourceRead17,
            True,
            False,
            False,
        ),
        E(
            "play_whisper_message",
            "playWhisperMessage",
            bool,
            False,
            False,
            False,
        ),
        E(
            "whisper_audio_message_selection",
            "whisperAudioMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "whisper_message_audio_url_list",
            "whisperMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_audio_file_list",
            "whisperMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_audio_media_type_list",
            "whisperMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "whisper_video_message_selection",
            "whisperVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "whisper_message_video_url_list",
            "whisperMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_video_file_list",
            "whisperMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_video_media_type_list",
            "whisperMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "estimated_wait_message_options_read",
            "estimatedWaitMessageOptionsRead",
            OCI.EstimatedWaitMessageOptionsRead,
            True,
            True,
            False,
        ),
    )
    #: bool: *Required* playEntranceMessage
    play_entrance_message = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* mandatoryEntranceMessage
    mandatory_entrance_message = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* entranceAudioMessageSelection
    entrance_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* entranceMessageAudioUrlList
    entrance_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* entranceMessageAudioFileList
    entrance_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: entranceMessageAudioMediaTypeList
    entrance_message_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* entranceVideoMessageSelection
    entrance_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* entranceMessageVideoUrlList
    entrance_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* entranceMessageVideoFileList
    entrance_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: entranceMessageVideoMediaTypeList
    entrance_message_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: bool: *Required* playPeriodicComfortMessage
    play_periodic_comfort_message = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* timeBetweenComfortMessagesSeconds
    time_between_comfort_messages_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* periodicComfortAudioMessageSelection
    periodic_comfort_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* periodicComfortMessageAudioUrlList
    periodic_comfort_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional*
    #: periodicComfortMessageAudioFileList
    periodic_comfort_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: periodicComfortMessageAudioMediaTypeList
    periodic_comfort_message_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* periodicComfortVideoMessageSelection
    periodic_comfort_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* periodicComfortMessageVideoUrlList
    periodic_comfort_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional*
    #: periodicComfortMessageVideoFileList
    periodic_comfort_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: periodicComfortMessageVideoMediaTypeList
    periodic_comfort_message_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: bool: *Required* enableMediaOnHoldForQueuedCalls
    enable_media_on_hold_for_queued_calls = Field(
        type=bool,
        required=True,
    )
    #: OCI.CallCenterMediaOnHoldSourceRead17: *Required* mediaOnHoldSource
    media_on_hold_source = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead17,
        required=True,
    )
    #: bool: *Optional* mediaOnHoldUseAlternateSourceForInternalCalls
    media_on_hold_use_alternate_source_for_internal_calls = Field(
        type=bool,
        required=False,
    )
    #: OCI.CallCenterMediaOnHoldSourceRead17: *Optional* mediaOnHoldInternalSource
    media_on_hold_internal_source = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead17,
        required=False,
    )
    #: bool: *Optional* playWhisperMessage
    play_whisper_message = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* whisperAudioMessageSelection
    whisper_audio_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* whisperMessageAudioUrlList
    whisper_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* whisperMessageAudioFileList
    whisper_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: whisperMessageAudioMediaTypeList
    whisper_message_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* whisperVideoMessageSelection
    whisper_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* whisperMessageVideoUrlList
    whisper_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* whisperMessageVideoFileList
    whisper_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: whisperMessageVideoMediaTypeList
    whisper_message_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: OCI.EstimatedWaitMessageOptionsRead: *Required* estimatedWaitMessageOptionsRead
    estimated_wait_message_options_read = Field(
        type=OCI.EstimatedWaitMessageOptionsRead,
        required=True,
    )


class GroupCallCenterGetAnnouncementResponse17sp4(OCIResponse):
    """
    Response to the ``GroupCallCenterGetAnnouncementRequest17sp4()``.
    """

    _ELEMENTS = (
        E(
            "play_entrance_message",
            "playEntranceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mandatory_entrance_message",
            "mandatoryEntranceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "entrance_audio_message_selection",
            "entranceAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "entrance_message_audio_url_list",
            "entranceMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_audio_file_list",
            "entranceMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_audio_media_type_list",
            "entranceMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "entrance_video_message_selection",
            "entranceVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "entrance_message_video_url_list",
            "entranceMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_video_file_list",
            "entranceMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_video_media_type_list",
            "entranceMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "play_periodic_comfort_message",
            "playPeriodicComfortMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "time_between_comfort_messages_seconds",
            "timeBetweenComfortMessagesSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "periodic_comfort_audio_message_selection",
            "periodicComfortAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "periodic_comfort_message_audio_url_list",
            "periodicComfortMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_audio_file_list",
            "periodicComfortMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_audio_media_type_list",
            "periodicComfortMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_video_message_selection",
            "periodicComfortVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_url_list",
            "periodicComfortMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_file_list",
            "periodicComfortMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_media_type_list",
            "periodicComfortMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "enable_media_on_hold_for_queued_calls",
            "enableMediaOnHoldForQueuedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "media_on_hold_source",
            "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead17,
            True,
            True,
            False,
        ),
        E(
            "media_on_hold_use_alternate_source_for_internal_calls",
            "mediaOnHoldUseAlternateSourceForInternalCalls",
            bool,
            False,
            False,
            False,
        ),
        E(
            "media_on_hold_internal_source",
            "mediaOnHoldInternalSource",
            OCI.CallCenterMediaOnHoldSourceRead17,
            True,
            False,
            False,
        ),
        E(
            "play_whisper_message",
            "playWhisperMessage",
            bool,
            False,
            False,
            False,
        ),
        E(
            "whisper_audio_message_selection",
            "whisperAudioMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "whisper_message_audio_url_list",
            "whisperMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_audio_file_list",
            "whisperMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_audio_media_type_list",
            "whisperMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "whisper_video_message_selection",
            "whisperVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "whisper_message_video_url_list",
            "whisperMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_video_file_list",
            "whisperMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_video_media_type_list",
            "whisperMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "estimated_wait_message_options_read",
            "estimatedWaitMessageOptionsRead",
            OCI.EstimatedWaitMessageOptionsRead17sp4,
            True,
            True,
            False,
        ),
    )
    #: bool: *Required* playEntranceMessage
    play_entrance_message = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* mandatoryEntranceMessage
    mandatory_entrance_message = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* entranceAudioMessageSelection
    entrance_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* entranceMessageAudioUrlList
    entrance_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* entranceMessageAudioFileList
    entrance_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: entranceMessageAudioMediaTypeList
    entrance_message_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* entranceVideoMessageSelection
    entrance_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* entranceMessageVideoUrlList
    entrance_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* entranceMessageVideoFileList
    entrance_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: entranceMessageVideoMediaTypeList
    entrance_message_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: bool: *Required* playPeriodicComfortMessage
    play_periodic_comfort_message = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* timeBetweenComfortMessagesSeconds
    time_between_comfort_messages_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* periodicComfortAudioMessageSelection
    periodic_comfort_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* periodicComfortMessageAudioUrlList
    periodic_comfort_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional*
    #: periodicComfortMessageAudioFileList
    periodic_comfort_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: periodicComfortMessageAudioMediaTypeList
    periodic_comfort_message_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* periodicComfortVideoMessageSelection
    periodic_comfort_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* periodicComfortMessageVideoUrlList
    periodic_comfort_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional*
    #: periodicComfortMessageVideoFileList
    periodic_comfort_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: periodicComfortMessageVideoMediaTypeList
    periodic_comfort_message_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: bool: *Required* enableMediaOnHoldForQueuedCalls
    enable_media_on_hold_for_queued_calls = Field(
        type=bool,
        required=True,
    )
    #: OCI.CallCenterMediaOnHoldSourceRead17: *Required* mediaOnHoldSource
    media_on_hold_source = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead17,
        required=True,
    )
    #: bool: *Optional* mediaOnHoldUseAlternateSourceForInternalCalls
    media_on_hold_use_alternate_source_for_internal_calls = Field(
        type=bool,
        required=False,
    )
    #: OCI.CallCenterMediaOnHoldSourceRead17: *Optional* mediaOnHoldInternalSource
    media_on_hold_internal_source = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead17,
        required=False,
    )
    #: bool: *Optional* playWhisperMessage
    play_whisper_message = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* whisperAudioMessageSelection
    whisper_audio_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* whisperMessageAudioUrlList
    whisper_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* whisperMessageAudioFileList
    whisper_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: whisperMessageAudioMediaTypeList
    whisper_message_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* whisperVideoMessageSelection
    whisper_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* whisperMessageVideoUrlList
    whisper_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* whisperMessageVideoFileList
    whisper_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: whisperMessageVideoMediaTypeList
    whisper_message_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: OCI.EstimatedWaitMessageOptionsRead17sp4: *Required*
    #: estimatedWaitMessageOptionsRead
    estimated_wait_message_options_read = Field(
        type=OCI.EstimatedWaitMessageOptionsRead17sp4,
        required=True,
    )


class GroupCallCenterGetAnnouncementResponse19(OCIResponse):
    """
    Response to the ``GroupCallCenterGetAnnouncementRequest19()``.
    """

    _ELEMENTS = (
        E(
            "play_entrance_message",
            "playEntranceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mandatory_entrance_message",
            "mandatoryEntranceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "entrance_audio_message_selection",
            "entranceAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "entrance_message_audio_url_list",
            "entranceMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_audio_file_list",
            "entranceMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_audio_media_type_list",
            "entranceMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "entrance_video_message_selection",
            "entranceVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "entrance_message_video_url_list",
            "entranceMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_video_file_list",
            "entranceMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_video_media_type_list",
            "entranceMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "play_periodic_comfort_message",
            "playPeriodicComfortMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "time_between_comfort_messages_seconds",
            "timeBetweenComfortMessagesSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "periodic_comfort_audio_message_selection",
            "periodicComfortAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "periodic_comfort_message_audio_url_list",
            "periodicComfortMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_audio_file_list",
            "periodicComfortMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_audio_media_type_list",
            "periodicComfortMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_video_message_selection",
            "periodicComfortVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_url_list",
            "periodicComfortMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_file_list",
            "periodicComfortMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_media_type_list",
            "periodicComfortMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "enable_media_on_hold_for_queued_calls",
            "enableMediaOnHoldForQueuedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "media_on_hold_source",
            "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead19,
            True,
            True,
            False,
        ),
        E(
            "media_on_hold_use_alternate_source_for_internal_calls",
            "mediaOnHoldUseAlternateSourceForInternalCalls",
            bool,
            False,
            False,
            False,
        ),
        E(
            "media_on_hold_internal_source",
            "mediaOnHoldInternalSource",
            OCI.CallCenterMediaOnHoldSourceRead19,
            True,
            False,
            False,
        ),
        E(
            "play_whisper_message",
            "playWhisperMessage",
            bool,
            False,
            False,
            False,
        ),
        E(
            "whisper_audio_message_selection",
            "whisperAudioMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "whisper_message_audio_url_list",
            "whisperMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_audio_file_list",
            "whisperMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_audio_media_type_list",
            "whisperMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "whisper_video_message_selection",
            "whisperVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "whisper_message_video_url_list",
            "whisperMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_video_file_list",
            "whisperMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_video_media_type_list",
            "whisperMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "estimated_wait_message_options_read",
            "estimatedWaitMessageOptionsRead",
            OCI.EstimatedWaitMessageOptionsRead17sp4,
            True,
            True,
            False,
        ),
    )
    #: bool: *Required* playEntranceMessage
    play_entrance_message = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* mandatoryEntranceMessage
    mandatory_entrance_message = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* entranceAudioMessageSelection
    entrance_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* entranceMessageAudioUrlList
    entrance_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* entranceMessageAudioFileList
    entrance_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: entranceMessageAudioMediaTypeList
    entrance_message_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* entranceVideoMessageSelection
    entrance_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* entranceMessageVideoUrlList
    entrance_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* entranceMessageVideoFileList
    entrance_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: entranceMessageVideoMediaTypeList
    entrance_message_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: bool: *Required* playPeriodicComfortMessage
    play_periodic_comfort_message = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* timeBetweenComfortMessagesSeconds
    time_between_comfort_messages_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* periodicComfortAudioMessageSelection
    periodic_comfort_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* periodicComfortMessageAudioUrlList
    periodic_comfort_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional*
    #: periodicComfortMessageAudioFileList
    periodic_comfort_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: periodicComfortMessageAudioMediaTypeList
    periodic_comfort_message_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* periodicComfortVideoMessageSelection
    periodic_comfort_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* periodicComfortMessageVideoUrlList
    periodic_comfort_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional*
    #: periodicComfortMessageVideoFileList
    periodic_comfort_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: periodicComfortMessageVideoMediaTypeList
    periodic_comfort_message_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: bool: *Required* enableMediaOnHoldForQueuedCalls
    enable_media_on_hold_for_queued_calls = Field(
        type=bool,
        required=True,
    )
    #: OCI.CallCenterMediaOnHoldSourceRead19: *Required* mediaOnHoldSource
    media_on_hold_source = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead19,
        required=True,
    )
    #: bool: *Optional* mediaOnHoldUseAlternateSourceForInternalCalls
    media_on_hold_use_alternate_source_for_internal_calls = Field(
        type=bool,
        required=False,
    )
    #: OCI.CallCenterMediaOnHoldSourceRead19: *Optional* mediaOnHoldInternalSource
    media_on_hold_internal_source = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead19,
        required=False,
    )
    #: bool: *Optional* playWhisperMessage
    play_whisper_message = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* whisperAudioMessageSelection
    whisper_audio_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* whisperMessageAudioUrlList
    whisper_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* whisperMessageAudioFileList
    whisper_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: whisperMessageAudioMediaTypeList
    whisper_message_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* whisperVideoMessageSelection
    whisper_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* whisperMessageVideoUrlList
    whisper_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* whisperMessageVideoFileList
    whisper_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: whisperMessageVideoMediaTypeList
    whisper_message_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: OCI.EstimatedWaitMessageOptionsRead17sp4: *Required*
    #: estimatedWaitMessageOptionsRead
    estimated_wait_message_options_read = Field(
        type=OCI.EstimatedWaitMessageOptionsRead17sp4,
        required=True,
    )


class GroupCallCenterGetAnnouncementResponse20(OCIResponse):
    """
    Response to the ``GroupCallCenterGetAnnouncementRequest20()``.
    """

    _ELEMENTS = (
        E(
            "play_entrance_message",
            "playEntranceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mandatory_entrance_message",
            "mandatoryEntranceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "entrance_audio_message_selection",
            "entranceAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "entrance_message_audio_url_list",
            "entranceMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_audio_file_list",
            "entranceMessageAudioFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "entrance_video_message_selection",
            "entranceVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "entrance_message_video_url_list",
            "entranceMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_video_file_list",
            "entranceMessageVideoFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "play_periodic_comfort_message",
            "playPeriodicComfortMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "time_between_comfort_messages_seconds",
            "timeBetweenComfortMessagesSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "periodic_comfort_audio_message_selection",
            "periodicComfortAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "periodic_comfort_message_audio_url_list",
            "periodicComfortMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_audio_file_list",
            "periodicComfortMessageAudioFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_video_message_selection",
            "periodicComfortVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_url_list",
            "periodicComfortMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_file_list",
            "periodicComfortMessageVideoFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "enable_media_on_hold_for_queued_calls",
            "enableMediaOnHoldForQueuedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "media_on_hold_source",
            "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead20,
            True,
            True,
            False,
        ),
        E(
            "media_on_hold_use_alternate_source_for_internal_calls",
            "mediaOnHoldUseAlternateSourceForInternalCalls",
            bool,
            False,
            False,
            False,
        ),
        E(
            "media_on_hold_internal_source",
            "mediaOnHoldInternalSource",
            OCI.CallCenterMediaOnHoldSourceRead20,
            True,
            False,
            False,
        ),
        E(
            "play_whisper_message",
            "playWhisperMessage",
            bool,
            False,
            False,
            False,
        ),
        E(
            "whisper_audio_message_selection",
            "whisperAudioMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "whisper_message_audio_url_list",
            "whisperMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_audio_file_list",
            "whisperMessageAudioFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "whisper_video_message_selection",
            "whisperVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "whisper_message_video_url_list",
            "whisperMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_video_file_list",
            "whisperMessageVideoFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "estimated_wait_message_options_read",
            "estimatedWaitMessageOptionsRead",
            OCI.EstimatedWaitMessageOptionsRead17sp4,
            True,
            True,
            False,
        ),
    )
    #: bool: *Required* playEntranceMessage
    play_entrance_message = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* mandatoryEntranceMessage
    mandatory_entrance_message = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* entranceAudioMessageSelection
    entrance_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* entranceMessageAudioUrlList
    entrance_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* entranceMessageAudioFileList
    entrance_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Optional* entranceVideoMessageSelection
    entrance_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* entranceMessageVideoUrlList
    entrance_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* entranceMessageVideoFileList
    entrance_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: bool: *Required* playPeriodicComfortMessage
    play_periodic_comfort_message = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* timeBetweenComfortMessagesSeconds
    time_between_comfort_messages_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* periodicComfortAudioMessageSelection
    periodic_comfort_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* periodicComfortMessageAudioUrlList
    periodic_comfort_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional*
    #: periodicComfortMessageAudioFileList
    periodic_comfort_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Optional* periodicComfortVideoMessageSelection
    periodic_comfort_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* periodicComfortMessageVideoUrlList
    periodic_comfort_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional*
    #: periodicComfortMessageVideoFileList
    periodic_comfort_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: bool: *Required* enableMediaOnHoldForQueuedCalls
    enable_media_on_hold_for_queued_calls = Field(
        type=bool,
        required=True,
    )
    #: OCI.CallCenterMediaOnHoldSourceRead20: *Required* mediaOnHoldSource
    media_on_hold_source = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead20,
        required=True,
    )
    #: bool: *Optional* mediaOnHoldUseAlternateSourceForInternalCalls
    media_on_hold_use_alternate_source_for_internal_calls = Field(
        type=bool,
        required=False,
    )
    #: OCI.CallCenterMediaOnHoldSourceRead20: *Optional* mediaOnHoldInternalSource
    media_on_hold_internal_source = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead20,
        required=False,
    )
    #: bool: *Optional* playWhisperMessage
    play_whisper_message = Field(
        type=bool,
        required=False,
    )
    #: str: *Optional* whisperAudioMessageSelection
    whisper_audio_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* whisperMessageAudioUrlList
    whisper_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* whisperMessageAudioFileList
    whisper_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Optional* whisperVideoMessageSelection
    whisper_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* whisperMessageVideoUrlList
    whisper_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* whisperMessageVideoFileList
    whisper_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: OCI.EstimatedWaitMessageOptionsRead17sp4: *Required*
    #: estimatedWaitMessageOptionsRead
    estimated_wait_message_options_read = Field(
        type=OCI.EstimatedWaitMessageOptionsRead17sp4,
        required=True,
    )


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

    Replaced by ``GroupCallCenterGetDNISAnnouncementResponse17sp4()``
    """

    _ELEMENTS = (
        E(
            "play_entrance_message",
            "playEntranceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mandatory_entrance_message",
            "mandatoryEntranceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "entrance_audio_message_selection",
            "entranceAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "entrance_message_audio_url_list",
            "entranceMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_audio_file_list",
            "entranceMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_audio_media_type_list",
            "entranceMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "entrance_video_message_selection",
            "entranceVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "entrance_message_video_url_list",
            "entranceMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_video_file_list",
            "entranceMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_video_media_type_list",
            "entranceMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "play_periodic_comfort_message",
            "playPeriodicComfortMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "time_between_comfort_messages_seconds",
            "timeBetweenComfortMessagesSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "periodic_comfort_audio_message_selection",
            "periodicComfortAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "periodic_comfort_message_audio_url_list",
            "periodicComfortMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_audio_file_list",
            "periodicComfortMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_audio_media_type_list",
            "periodicComfortMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_video_message_selection",
            "periodicComfortVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_url_list",
            "periodicComfortMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_file_list",
            "periodicComfortMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_media_type_list",
            "periodicComfortMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "enable_media_on_hold_for_queued_calls",
            "enableMediaOnHoldForQueuedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "media_on_hold_source",
            "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead17,
            True,
            True,
            False,
        ),
        E(
            "play_whisper_message",
            "playWhisperMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "whisper_audio_message_selection",
            "whisperAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "whisper_message_audio_url_list",
            "whisperMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_audio_file_list",
            "whisperMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_audio_media_type_list",
            "whisperMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "whisper_video_message_selection",
            "whisperVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "whisper_message_video_url_list",
            "whisperMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_video_file_list",
            "whisperMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_video_media_type_list",
            "whisperMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "estimated_wait_message_options_read",
            "estimatedWaitMessageOptionsRead",
            OCI.EstimatedWaitMessageOptionsRead,
            True,
            True,
            False,
        ),
    )
    #: bool: *Required* playEntranceMessage
    play_entrance_message = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* mandatoryEntranceMessage
    mandatory_entrance_message = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* entranceAudioMessageSelection
    entrance_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* entranceMessageAudioUrlList
    entrance_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* entranceMessageAudioFileList
    entrance_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: entranceMessageAudioMediaTypeList
    entrance_message_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* entranceVideoMessageSelection
    entrance_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* entranceMessageVideoUrlList
    entrance_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* entranceMessageVideoFileList
    entrance_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: entranceMessageVideoMediaTypeList
    entrance_message_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: bool: *Required* playPeriodicComfortMessage
    play_periodic_comfort_message = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* timeBetweenComfortMessagesSeconds
    time_between_comfort_messages_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* periodicComfortAudioMessageSelection
    periodic_comfort_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* periodicComfortMessageAudioUrlList
    periodic_comfort_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional*
    #: periodicComfortMessageAudioFileList
    periodic_comfort_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: periodicComfortMessageAudioMediaTypeList
    periodic_comfort_message_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* periodicComfortVideoMessageSelection
    periodic_comfort_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* periodicComfortMessageVideoUrlList
    periodic_comfort_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional*
    #: periodicComfortMessageVideoFileList
    periodic_comfort_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: periodicComfortMessageVideoMediaTypeList
    periodic_comfort_message_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: bool: *Required* enableMediaOnHoldForQueuedCalls
    enable_media_on_hold_for_queued_calls = Field(
        type=bool,
        required=True,
    )
    #: OCI.CallCenterMediaOnHoldSourceRead17: *Required* mediaOnHoldSource
    media_on_hold_source = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead17,
        required=True,
    )
    #: bool: *Required* playWhisperMessage
    play_whisper_message = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* whisperAudioMessageSelection
    whisper_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* whisperMessageAudioUrlList
    whisper_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* whisperMessageAudioFileList
    whisper_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: whisperMessageAudioMediaTypeList
    whisper_message_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* whisperVideoMessageSelection
    whisper_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* whisperMessageVideoUrlList
    whisper_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* whisperMessageVideoFileList
    whisper_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: whisperMessageVideoMediaTypeList
    whisper_message_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: OCI.EstimatedWaitMessageOptionsRead: *Required* estimatedWaitMessageOptionsRead
    estimated_wait_message_options_read = Field(
        type=OCI.EstimatedWaitMessageOptionsRead,
        required=True,
    )


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

    _ELEMENTS = (
        E(
            "play_entrance_message",
            "playEntranceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mandatory_entrance_message",
            "mandatoryEntranceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "entrance_audio_message_selection",
            "entranceAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "entrance_message_audio_url_list",
            "entranceMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_audio_file_list",
            "entranceMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_audio_media_type_list",
            "entranceMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "entrance_video_message_selection",
            "entranceVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "entrance_message_video_url_list",
            "entranceMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_video_file_list",
            "entranceMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_video_media_type_list",
            "entranceMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "play_periodic_comfort_message",
            "playPeriodicComfortMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "time_between_comfort_messages_seconds",
            "timeBetweenComfortMessagesSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "periodic_comfort_audio_message_selection",
            "periodicComfortAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "periodic_comfort_message_audio_url_list",
            "periodicComfortMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_audio_file_list",
            "periodicComfortMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_audio_media_type_list",
            "periodicComfortMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_video_message_selection",
            "periodicComfortVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_url_list",
            "periodicComfortMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_file_list",
            "periodicComfortMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_media_type_list",
            "periodicComfortMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "enable_media_on_hold_for_queued_calls",
            "enableMediaOnHoldForQueuedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "media_on_hold_source",
            "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead17,
            True,
            True,
            False,
        ),
        E(
            "play_whisper_message",
            "playWhisperMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "whisper_audio_message_selection",
            "whisperAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "whisper_message_audio_url_list",
            "whisperMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_audio_file_list",
            "whisperMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_audio_media_type_list",
            "whisperMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "whisper_video_message_selection",
            "whisperVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "whisper_message_video_url_list",
            "whisperMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_video_file_list",
            "whisperMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_video_media_type_list",
            "whisperMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "estimated_wait_message_options_read",
            "estimatedWaitMessageOptionsRead",
            OCI.EstimatedWaitMessageOptionsRead17sp4,
            True,
            True,
            False,
        ),
    )
    #: bool: *Required* playEntranceMessage
    play_entrance_message = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* mandatoryEntranceMessage
    mandatory_entrance_message = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* entranceAudioMessageSelection
    entrance_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* entranceMessageAudioUrlList
    entrance_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* entranceMessageAudioFileList
    entrance_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: entranceMessageAudioMediaTypeList
    entrance_message_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* entranceVideoMessageSelection
    entrance_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* entranceMessageVideoUrlList
    entrance_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* entranceMessageVideoFileList
    entrance_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: entranceMessageVideoMediaTypeList
    entrance_message_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: bool: *Required* playPeriodicComfortMessage
    play_periodic_comfort_message = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* timeBetweenComfortMessagesSeconds
    time_between_comfort_messages_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* periodicComfortAudioMessageSelection
    periodic_comfort_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* periodicComfortMessageAudioUrlList
    periodic_comfort_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional*
    #: periodicComfortMessageAudioFileList
    periodic_comfort_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: periodicComfortMessageAudioMediaTypeList
    periodic_comfort_message_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* periodicComfortVideoMessageSelection
    periodic_comfort_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* periodicComfortMessageVideoUrlList
    periodic_comfort_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional*
    #: periodicComfortMessageVideoFileList
    periodic_comfort_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: periodicComfortMessageVideoMediaTypeList
    periodic_comfort_message_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: bool: *Required* enableMediaOnHoldForQueuedCalls
    enable_media_on_hold_for_queued_calls = Field(
        type=bool,
        required=True,
    )
    #: OCI.CallCenterMediaOnHoldSourceRead17: *Required* mediaOnHoldSource
    media_on_hold_source = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead17,
        required=True,
    )
    #: bool: *Required* playWhisperMessage
    play_whisper_message = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* whisperAudioMessageSelection
    whisper_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* whisperMessageAudioUrlList
    whisper_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* whisperMessageAudioFileList
    whisper_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: whisperMessageAudioMediaTypeList
    whisper_message_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* whisperVideoMessageSelection
    whisper_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* whisperMessageVideoUrlList
    whisper_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* whisperMessageVideoFileList
    whisper_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: whisperMessageVideoMediaTypeList
    whisper_message_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: OCI.EstimatedWaitMessageOptionsRead17sp4: *Required*
    #: estimatedWaitMessageOptionsRead
    estimated_wait_message_options_read = Field(
        type=OCI.EstimatedWaitMessageOptionsRead17sp4,
        required=True,
    )


class GroupCallCenterGetDNISAnnouncementResponse19(OCIResponse):
    """
    Response to the ``GroupCallCenterGetDNISAnnouncementRequest19()``.
    """

    _ELEMENTS = (
        E(
            "play_entrance_message",
            "playEntranceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mandatory_entrance_message",
            "mandatoryEntranceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "entrance_audio_message_selection",
            "entranceAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "entrance_message_audio_url_list",
            "entranceMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_audio_file_list",
            "entranceMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_audio_media_type_list",
            "entranceMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "entrance_video_message_selection",
            "entranceVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "entrance_message_video_url_list",
            "entranceMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_video_file_list",
            "entranceMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_video_media_type_list",
            "entranceMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "play_periodic_comfort_message",
            "playPeriodicComfortMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "time_between_comfort_messages_seconds",
            "timeBetweenComfortMessagesSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "periodic_comfort_audio_message_selection",
            "periodicComfortAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "periodic_comfort_message_audio_url_list",
            "periodicComfortMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_audio_file_list",
            "periodicComfortMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_audio_media_type_list",
            "periodicComfortMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_video_message_selection",
            "periodicComfortVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_url_list",
            "periodicComfortMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_file_list",
            "periodicComfortMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_media_type_list",
            "periodicComfortMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "enable_media_on_hold_for_queued_calls",
            "enableMediaOnHoldForQueuedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "media_on_hold_source",
            "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead19,
            True,
            True,
            False,
        ),
        E(
            "play_whisper_message",
            "playWhisperMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "whisper_audio_message_selection",
            "whisperAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "whisper_message_audio_url_list",
            "whisperMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_audio_file_list",
            "whisperMessageAudioFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_audio_media_type_list",
            "whisperMessageAudioMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "whisper_video_message_selection",
            "whisperVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "whisper_message_video_url_list",
            "whisperMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_video_file_list",
            "whisperMessageVideoFileList",
            OCI.CallCenterAnnouncementDescriptionList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_video_media_type_list",
            "whisperMessageVideoMediaTypeList",
            OCI.CallCenterAnnouncementMediaFileTypeList,
            True,
            False,
            False,
        ),
        E(
            "estimated_wait_message_options_read",
            "estimatedWaitMessageOptionsRead",
            OCI.EstimatedWaitMessageOptionsRead17sp4,
            True,
            True,
            False,
        ),
    )
    #: bool: *Required* playEntranceMessage
    play_entrance_message = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* mandatoryEntranceMessage
    mandatory_entrance_message = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* entranceAudioMessageSelection
    entrance_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* entranceMessageAudioUrlList
    entrance_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* entranceMessageAudioFileList
    entrance_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: entranceMessageAudioMediaTypeList
    entrance_message_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* entranceVideoMessageSelection
    entrance_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* entranceMessageVideoUrlList
    entrance_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* entranceMessageVideoFileList
    entrance_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: entranceMessageVideoMediaTypeList
    entrance_message_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: bool: *Required* playPeriodicComfortMessage
    play_periodic_comfort_message = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* timeBetweenComfortMessagesSeconds
    time_between_comfort_messages_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* periodicComfortAudioMessageSelection
    periodic_comfort_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* periodicComfortMessageAudioUrlList
    periodic_comfort_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional*
    #: periodicComfortMessageAudioFileList
    periodic_comfort_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: periodicComfortMessageAudioMediaTypeList
    periodic_comfort_message_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* periodicComfortVideoMessageSelection
    periodic_comfort_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* periodicComfortMessageVideoUrlList
    periodic_comfort_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional*
    #: periodicComfortMessageVideoFileList
    periodic_comfort_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: periodicComfortMessageVideoMediaTypeList
    periodic_comfort_message_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: bool: *Required* enableMediaOnHoldForQueuedCalls
    enable_media_on_hold_for_queued_calls = Field(
        type=bool,
        required=True,
    )
    #: OCI.CallCenterMediaOnHoldSourceRead19: *Required* mediaOnHoldSource
    media_on_hold_source = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead19,
        required=True,
    )
    #: bool: *Required* playWhisperMessage
    play_whisper_message = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* whisperAudioMessageSelection
    whisper_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* whisperMessageAudioUrlList
    whisper_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* whisperMessageAudioFileList
    whisper_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: whisperMessageAudioMediaTypeList
    whisper_message_audio_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: str: *Optional* whisperVideoMessageSelection
    whisper_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* whisperMessageVideoUrlList
    whisper_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementDescriptionList: *Optional* whisperMessageVideoFileList
    whisper_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementDescriptionList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementMediaFileTypeList: *Optional*
    #: whisperMessageVideoMediaTypeList
    whisper_message_video_media_type_list = Field(
        type=OCI.CallCenterAnnouncementMediaFileTypeList,
        required=False,
    )
    #: OCI.EstimatedWaitMessageOptionsRead17sp4: *Required*
    #: estimatedWaitMessageOptionsRead
    estimated_wait_message_options_read = Field(
        type=OCI.EstimatedWaitMessageOptionsRead17sp4,
        required=True,
    )


class GroupCallCenterGetDNISAnnouncementResponse20(OCIResponse):
    """
    Response to the ``GroupCallCenterGetDNISAnnouncementRequest20()``.
    """

    _ELEMENTS = (
        E(
            "play_entrance_message",
            "playEntranceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "mandatory_entrance_message",
            "mandatoryEntranceMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "entrance_audio_message_selection",
            "entranceAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "entrance_message_audio_url_list",
            "entranceMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_audio_file_list",
            "entranceMessageAudioFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "entrance_video_message_selection",
            "entranceVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "entrance_message_video_url_list",
            "entranceMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "entrance_message_video_file_list",
            "entranceMessageVideoFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "play_periodic_comfort_message",
            "playPeriodicComfortMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "time_between_comfort_messages_seconds",
            "timeBetweenComfortMessagesSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "periodic_comfort_audio_message_selection",
            "periodicComfortAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "periodic_comfort_message_audio_url_list",
            "periodicComfortMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_audio_file_list",
            "periodicComfortMessageAudioFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_video_message_selection",
            "periodicComfortVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_url_list",
            "periodicComfortMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "periodic_comfort_message_video_file_list",
            "periodicComfortMessageVideoFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "enable_media_on_hold_for_queued_calls",
            "enableMediaOnHoldForQueuedCalls",
            bool,
            False,
            True,
            False,
        ),
        E(
            "media_on_hold_source",
            "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead20,
            True,
            True,
            False,
        ),
        E(
            "play_whisper_message",
            "playWhisperMessage",
            bool,
            False,
            True,
            False,
        ),
        E(
            "whisper_audio_message_selection",
            "whisperAudioMessageSelection",
            str,
            False,
            True,
            False,
        ),
        E(
            "whisper_message_audio_url_list",
            "whisperMessageAudioUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_audio_file_list",
            "whisperMessageAudioFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "whisper_video_message_selection",
            "whisperVideoMessageSelection",
            str,
            False,
            False,
            False,
        ),
        E(
            "whisper_message_video_url_list",
            "whisperMessageVideoUrlList",
            OCI.CallCenterAnnouncementURLList,
            True,
            False,
            False,
        ),
        E(
            "whisper_message_video_file_list",
            "whisperMessageVideoFileList",
            OCI.CallCenterAnnouncementFileListRead20,
            True,
            False,
            False,
        ),
        E(
            "estimated_wait_message_options_read",
            "estimatedWaitMessageOptionsRead",
            OCI.EstimatedWaitMessageOptionsRead17sp4,
            True,
            True,
            False,
        ),
    )
    #: bool: *Required* playEntranceMessage
    play_entrance_message = Field(
        type=bool,
        required=True,
    )
    #: bool: *Required* mandatoryEntranceMessage
    mandatory_entrance_message = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* entranceAudioMessageSelection
    entrance_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* entranceMessageAudioUrlList
    entrance_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* entranceMessageAudioFileList
    entrance_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Optional* entranceVideoMessageSelection
    entrance_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* entranceMessageVideoUrlList
    entrance_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* entranceMessageVideoFileList
    entrance_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: bool: *Required* playPeriodicComfortMessage
    play_periodic_comfort_message = Field(
        type=bool,
        required=True,
    )
    #: int: *Required* timeBetweenComfortMessagesSeconds
    time_between_comfort_messages_seconds = Field(
        type=int,
        required=True,
    )
    #: str: *Required* periodicComfortAudioMessageSelection
    periodic_comfort_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* periodicComfortMessageAudioUrlList
    periodic_comfort_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional*
    #: periodicComfortMessageAudioFileList
    periodic_comfort_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Optional* periodicComfortVideoMessageSelection
    periodic_comfort_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* periodicComfortMessageVideoUrlList
    periodic_comfort_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional*
    #: periodicComfortMessageVideoFileList
    periodic_comfort_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: bool: *Required* enableMediaOnHoldForQueuedCalls
    enable_media_on_hold_for_queued_calls = Field(
        type=bool,
        required=True,
    )
    #: OCI.CallCenterMediaOnHoldSourceRead20: *Required* mediaOnHoldSource
    media_on_hold_source = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead20,
        required=True,
    )
    #: bool: *Required* playWhisperMessage
    play_whisper_message = Field(
        type=bool,
        required=True,
    )
    #: str: *Required* whisperAudioMessageSelection
    whisper_audio_message_selection = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* whisperMessageAudioUrlList
    whisper_message_audio_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* whisperMessageAudioFileList
    whisper_message_audio_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: str: *Optional* whisperVideoMessageSelection
    whisper_video_message_selection = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterAnnouncementURLList: *Optional* whisperMessageVideoUrlList
    whisper_message_video_url_list = Field(
        type=OCI.CallCenterAnnouncementURLList,
        required=False,
    )
    #: OCI.CallCenterAnnouncementFileListRead20: *Optional* whisperMessageVideoFileList
    whisper_message_video_file_list = Field(
        type=OCI.CallCenterAnnouncementFileListRead20,
        required=False,
    )
    #: OCI.EstimatedWaitMessageOptionsRead17sp4: *Required*
    #: estimatedWaitMessageOptionsRead
    estimated_wait_message_options_read = Field(
        type=OCI.EstimatedWaitMessageOptionsRead17sp4,
        required=True,
    )


class GroupOutgoingCallingPlanDigitPlanCallMeNowGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanDigitPlanCallMeNowGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "group_permissions",
            "groupPermissions",
            OCI.OutgoingCallingPlanDigitPatternCallMeNowPermissions,
            True,
            False,
            False,
        ),
        E(
            "department_permissions",
            "departmentPermissions",
            OCI.OutgoingCallingPlanDigitPatternCallMeNowDepartmentPermissions,
            True,
            False,
            False,
        ),
    )
    #: OCI.OutgoingCallingPlanDigitPatternCallMeNowPermissions: *Optional*
    #: groupPermissions
    group_permissions = Field(
        type=OCI.OutgoingCallingPlanDigitPatternCallMeNowPermissions,
        required=False,
    )
    #: OCI.OutgoingCallingPlanDigitPatternCallMeNowDepartmentPermissions: *Optional*
    #: departmentPermissions
    department_permissions = Field(
        type=OCI.OutgoingCallingPlanDigitPatternCallMeNowDepartmentPermissions,
        required=False,
    )


class GroupOutgoingCallingPlanDigitPlanOriginatingGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanDigitPlanOriginatingGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "group_permissions",
            "groupPermissions",
            OCI.OutgoingCallingPlanDigitPatternOriginatingPermissions,
            True,
            False,
            False,
        ),
        E(
            "department_permissions",
            "departmentPermissions",
            OCI.OutgoingCallingPlanDigitPatternOriginatingDepartmentPermissions,
            True,
            False,
            False,
        ),
    )
    #: OCI.OutgoingCallingPlanDigitPatternOriginatingPermissions: *Optional*
    #: groupPermissions
    group_permissions = Field(
        type=OCI.OutgoingCallingPlanDigitPatternOriginatingPermissions,
        required=False,
    )
    #: OCI.OutgoingCallingPlanDigitPatternOriginatingDepartmentPermissions: *Optional*
    #: departmentPermissions
    department_permissions = Field(
        type=OCI.OutgoingCallingPlanDigitPatternOriginatingDepartmentPermissions,
        required=False,
    )


class GroupOutgoingCallingPlanDigitPlanRedirectingGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanDigitPlanRedirectingGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "group_permissions",
            "groupPermissions",
            OCI.OutgoingCallingPlanDigitPatternRedirectingPermissions,
            True,
            False,
            False,
        ),
        E(
            "department_permissions",
            "departmentPermissions",
            OCI.OutgoingCallingPlanDigitPatternRedirectingDepartmentPermissions,
            True,
            False,
            False,
        ),
    )
    #: OCI.OutgoingCallingPlanDigitPatternRedirectingPermissions: *Optional*
    #: groupPermissions
    group_permissions = Field(
        type=OCI.OutgoingCallingPlanDigitPatternRedirectingPermissions,
        required=False,
    )
    #: OCI.OutgoingCallingPlanDigitPatternRedirectingDepartmentPermissions: *Optional*
    #: departmentPermissions
    department_permissions = Field(
        type=OCI.OutgoingCallingPlanDigitPatternRedirectingDepartmentPermissions,
        required=False,
    )


class GroupOutgoingCallingPlanPinholeDigitPlanCallMeNowGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanPinholeDigitPlanCallMeNowGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "group_permissions",
            "groupPermissions",
            OCI.OutgoingPinholeDigitPlanDigitPatternCallMeNowPermissions,
            True,
            False,
            False,
        ),
        E(
            "department_permissions",
            "departmentPermissions",
            OCI.OutgoingPinholeDigitPlanDigitPatternCallMeNowDepartmentPermissions,
            True,
            False,
            False,
        ),
    )
    #: OCI.OutgoingPinholeDigitPlanDigitPatternCallMeNowPermissions: *Optional*
    #: groupPermissions
    group_permissions = Field(
        type=OCI.OutgoingPinholeDigitPlanDigitPatternCallMeNowPermissions,
        required=False,
    )
    #: OCI.OutgoingPinholeDigitPlanDigitPatternCallMeNowDepartmentPermissions:
    #: *Optional* departmentPermissions
    department_permissions = Field(
        type=OCI.OutgoingPinholeDigitPlanDigitPatternCallMeNowDepartmentPermissions,
        required=False,
    )


class GroupOutgoingCallingPlanPinholeDigitPlanOriginatingGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanPinholeDigitPlanOriginatingGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "group_permissions",
            "groupPermissions",
            OCI.OutgoingPinholeDigitPlanDigitPatternOriginatingPermissions,
            True,
            False,
            False,
        ),
        E(
            "department_permissions",
            "departmentPermissions",
            OCI.OutgoingPinholeDigitPlanDigitPatternOriginatingDepartmentPermissions,
            True,
            False,
            False,
        ),
    )
    #: OCI.OutgoingPinholeDigitPlanDigitPatternOriginatingPermissions: *Optional*
    #: groupPermissions
    group_permissions = Field(
        type=OCI.OutgoingPinholeDigitPlanDigitPatternOriginatingPermissions,
        required=False,
    )
    #: OCI.OutgoingPinholeDigitPlanDigitPatternOriginatingDepartmentPermissions:
    #: *Optional* departmentPermissions
    department_permissions = Field(
        type=OCI.OutgoingPinholeDigitPlanDigitPatternOriginatingDepartmentPermissions,
        required=False,
    )


class GroupOutgoingCallingPlanPinholeDigitPlanRedirectingGetListResponse(OCIResponse):
    """
    Response to ``GroupOutgoingCallingPlanPinholeDigitPlanRedirectingGetListRequest()``.
    """

    _ELEMENTS = (
        E(
            "group_permissions",
            "groupPermissions",
            OCI.OutgoingPinholeDigitPlanDigitPatternRedirectingPermissions,
            True,
            False,
            False,
        ),
        E(
            "department_permissions",
            "departmentPermissions",
            OCI.OutgoingPinholeDigitPlanDigitPatternRedirectingDepartmentPermissions,
            True,
            False,
            False,
        ),
    )
    #: OCI.OutgoingPinholeDigitPlanDigitPatternRedirectingPermissions: *Optional*
    #: groupPermissions
    group_permissions = Field(
        type=OCI.OutgoingPinholeDigitPlanDigitPatternRedirectingPermissions,
        required=False,
    )
    #: OCI.OutgoingPinholeDigitPlanDigitPatternRedirectingDepartmentPermissions:
    #: *Optional* departmentPermissions
    department_permissions = Field(
        type=OCI.OutgoingPinholeDigitPlanDigitPatternRedirectingDepartmentPermissions,
        required=False,
    )


class GroupRoutePointGetAnnouncementResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointGetAnnouncementRequest()``.
    """

    _ELEMENTS = (
        E(
            "media_on_hold_source",
            "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead17,
            True,
            True,
            False,
        ),
    )
    #: OCI.CallCenterMediaOnHoldSourceRead17: *Required* mediaOnHoldSource
    media_on_hold_source = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead17,
        required=True,
    )


class GroupRoutePointGetAnnouncementResponse19(OCIResponse):
    """
    Response to the ``GroupRoutePointGetAnnouncementRequest19()``.
    """

    _ELEMENTS = (
        E(
            "media_on_hold_source",
            "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead19,
            True,
            True,
            False,
        ),
    )
    #: OCI.CallCenterMediaOnHoldSourceRead19: *Required* mediaOnHoldSource
    media_on_hold_source = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead19,
        required=True,
    )


class GroupRoutePointGetAnnouncementResponse20(OCIResponse):
    """
    Response to the ``GroupRoutePointGetAnnouncementRequest20()``.
    """

    _ELEMENTS = (
        E(
            "media_on_hold_source",
            "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead20,
            True,
            True,
            False,
        ),
    )
    #: OCI.CallCenterMediaOnHoldSourceRead20: *Required* mediaOnHoldSource
    media_on_hold_source = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead20,
        required=True,
    )


class GroupRoutePointGetDNISAnnouncementResponse(OCIResponse):
    """
    Response to the ``GroupRoutePointGetDNISAnnouncementRequest()``.
    """

    _ELEMENTS = (
        E(
            "media_on_hold_source",
            "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead17,
            True,
            True,
            False,
        ),
    )
    #: OCI.CallCenterMediaOnHoldSourceRead17: *Required* mediaOnHoldSource
    media_on_hold_source = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead17,
        required=True,
    )


class GroupRoutePointGetDNISAnnouncementResponse19(OCIResponse):
    """
    Response to the ``GroupRoutePointGetDNISAnnouncementRequest19()``.
    """

    _ELEMENTS = (
        E(
            "media_on_hold_source",
            "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead19,
            True,
            True,
            False,
        ),
    )
    #: OCI.CallCenterMediaOnHoldSourceRead19: *Required* mediaOnHoldSource
    media_on_hold_source = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead19,
        required=True,
    )


class GroupRoutePointGetDNISAnnouncementResponse20(OCIResponse):
    """
    Response to the ``GroupRoutePointGetDNISAnnouncementRequest20()``.
    """

    _ELEMENTS = (
        E(
            "media_on_hold_source",
            "mediaOnHoldSource",
            OCI.CallCenterMediaOnHoldSourceRead20,
            True,
            True,
            False,
        ),
    )
    #: OCI.CallCenterMediaOnHoldSourceRead20: *Required* mediaOnHoldSource
    media_on_hold_source = Field(
        type=OCI.CallCenterMediaOnHoldSourceRead20,
        required=True,
    )


class UserCallCenterEnhancedReportingScheduledReportGetResponse(OCIResponse):
    """
    Response to ``UserCallCenterEnhancedReportingScheduledReportGetRequest()``.
    """

    _ELEMENTS = (
        E(
            "description",
            "description",
            str,
            False,
            False,
            False,
        ),
        E(
            "report_template",
            "reportTemplate",
            OCI.CallCenterReportTemplateKey,
            True,
            True,
            False,
        ),
        E(
            "schedule",
            "schedule",
            OCI.CallCenterReportSchedule,
            True,
            True,
            False,
        ),
        E(
            "sampling_period",
            "samplingPeriod",
            str,
            False,
            False,
            False,
        ),
        E(
            "start_day_of_week",
            "startDayOfWeek",
            str,
            False,
            False,
            False,
        ),
        E(
            "report_time_zone",
            "reportTimeZone",
            str,
            False,
            True,
            False,
        ),
        E(
            "report_date_format",
            "reportDateFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "report_time_format",
            "reportTimeFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "report_interval",
            "reportInterval",
            OCI.CallCenterReportInterval,
            True,
            True,
            False,
        ),
        E(
            "report_format",
            "reportFormat",
            str,
            False,
            True,
            False,
        ),
        E(
            "agent",
            "agent",
            OCI.CallCenterScheduledReportAgentSelectionRead,
            True,
            False,
            False,
        ),
        E(
            "call_center",
            "callCenter",
            OCI.CallCenterScheduledReportCallCenterSelection,
            True,
            True,
            False,
        ),
        E(
            "dnis",
            "dnis",
            OCI.CallCenterScheduledReportDNISSelection,
            True,
            True,
            False,
        ),
        E(
            "call_completion_threshold_seconds",
            "callCompletionThresholdSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "short_duration_threshold_seconds",
            "shortDurationThresholdSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "service_level_threshold_seconds",
            "serviceLevelThresholdSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "service_level_inclusions",
            "serviceLevelInclusions",
            OCI.CallCenterScheduledReportServiceLevelInclusions,
            True,
            False,
            False,
        ),
        E(
            "service_level_objective_percentage",
            "serviceLevelObjectivePercentage",
            int,
            False,
            False,
            False,
        ),
        E(
            "abandoned_call_threshold_seconds",
            "abandonedCallThresholdSeconds",
            int,
            False,
            False,
            False,
        ),
        E(
            "email_address",
            "emailAddress",
            str,
            False,
            True,
            False,
        ),
    )
    #: str: *Optional* description
    description = Field(
        type=str,
        required=False,
    )
    #: OCI.CallCenterReportTemplateKey: *Required* reportTemplate
    report_template = Field(
        type=OCI.CallCenterReportTemplateKey,
        required=True,
    )
    #: OCI.CallCenterReportSchedule: *Required* schedule
    schedule = Field(
        type=OCI.CallCenterReportSchedule,
        required=True,
    )
    #: str: *Optional* samplingPeriod
    sampling_period = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* startDayOfWeek
    start_day_of_week = Field(
        type=str,
        required=False,
    )
    #: str: *Required* reportTimeZone
    report_time_zone = Field(
        type=str,
        required=True,
    )
    #: str: *Required* reportDateFormat
    report_date_format = Field(
        type=str,
        required=True,
    )
    #: str: *Required* reportTimeFormat
    report_time_format = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterReportInterval: *Required* reportInterval
    report_interval = Field(
        type=OCI.CallCenterReportInterval,
        required=True,
    )
    #: str: *Required* reportFormat
    report_format = Field(
        type=str,
        required=True,
    )
    #: OCI.CallCenterScheduledReportAgentSelectionRead: *Optional* agent
    agent = Field(
        type=OCI.CallCenterScheduledReportAgentSelectionRead,
        required=False,
    )
    #: OCI.CallCenterScheduledReportCallCenterSelection: *Required* callCenter
    call_center = Field(
        type=OCI.CallCenterScheduledReportCallCenterSelection,
        required=True,
    )
    #: OCI.CallCenterScheduledReportDNISSelection: *Required* dnis
    dnis = Field(
        type=OCI.CallCenterScheduledReportDNISSelection,
        required=True,
    )
    #: int: *Optional* callCompletionThresholdSeconds
    call_completion_threshold_seconds = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* shortDurationThresholdSeconds
    short_duration_threshold_seconds = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* serviceLevelThresholdSeconds
    service_level_threshold_seconds = Field(
        type=int,
        required=False,
    )
    #: OCI.CallCenterScheduledReportServiceLevelInclusions: *Optional*
    #: serviceLevelInclusions
    service_level_inclusions = Field(
        type=OCI.CallCenterScheduledReportServiceLevelInclusions,
        required=False,
    )
    #: int: *Optional* serviceLevelObjectivePercentage
    service_level_objective_percentage = Field(
        type=int,
        required=False,
    )
    #: int: *Optional* abandonedCallThresholdSeconds
    abandoned_call_threshold_seconds = Field(
        type=int,
        required=False,
    )
    #: str: *Required* emailAddress
    email_address = Field(
        type=str,
        required=True,
    )


class GroupAutoAttendantGetInstanceResponse14(OCIResponse):
    """
    Response to ``GroupAutoAttendantGetInstanceRequest14()``.
    Contains the service profile information.
    Replaced By ``GroupAutoAttendantGetInstanceResponse16()``
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile,
            True,
            True,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "business_hours",
            "businessHours",
            str,
            False,
            False,
            False,
        ),
        E(
            "holiday_schedule_name",
            "holidayScheduleName",
            str,
            False,
            False,
            False,
        ),
        E(
            "extension_dialing_scope",
            "extensionDialingScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "name_dialing_scope",
            "nameDialingScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "name_dialing_entries",
            "nameDialingEntries",
            str,
            False,
            True,
            False,
        ),
        E(
            "business_hours_menu",
            "businessHoursMenu",
            OCI.AutoAttendantReadMenu,
            True,
            True,
            False,
        ),
        E(
            "after_hours_menu",
            "afterHoursMenu",
            OCI.AutoAttendantReadMenu,
            True,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile,
        required=True,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* businessHours
    business_hours = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* holidayScheduleName
    holiday_schedule_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* extensionDialingScope
    extension_dialing_scope = Field(
        type=str,
        required=True,
    )
    #: str: *Required* nameDialingScope
    name_dialing_scope = Field(
        type=str,
        required=True,
    )
    #: str: *Required* nameDialingEntries
    name_dialing_entries = Field(
        type=str,
        required=True,
    )
    #: OCI.AutoAttendantReadMenu: *Required* businessHoursMenu
    business_hours_menu = Field(
        type=OCI.AutoAttendantReadMenu,
        required=True,
    )
    #: OCI.AutoAttendantReadMenu: *Required* afterHoursMenu
    after_hours_menu = Field(
        type=OCI.AutoAttendantReadMenu,
        required=True,
    )


class GroupAutoAttendantGetInstanceResponse16(OCIResponse):
    """
    Response to ``GroupAutoAttendantGetInstanceRequest16()``.
    Contains the service profile information.
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile,
            True,
            True,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "business_hours",
            "businessHours",
            str,
            False,
            False,
            False,
        ),
        E(
            "holiday_schedule_name",
            "holidayScheduleName",
            str,
            False,
            False,
            False,
        ),
        E(
            "extension_dialing_scope",
            "extensionDialingScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "name_dialing_scope",
            "nameDialingScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "name_dialing_entries",
            "nameDialingEntries",
            str,
            False,
            True,
            False,
        ),
        E(
            "business_hours_menu",
            "businessHoursMenu",
            OCI.AutoAttendantReadMenu16,
            True,
            True,
            False,
        ),
        E(
            "after_hours_menu",
            "afterHoursMenu",
            OCI.AutoAttendantReadMenu16,
            True,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile,
        required=True,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* businessHours
    business_hours = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* holidayScheduleName
    holiday_schedule_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* extensionDialingScope
    extension_dialing_scope = Field(
        type=str,
        required=True,
    )
    #: str: *Required* nameDialingScope
    name_dialing_scope = Field(
        type=str,
        required=True,
    )
    #: str: *Required* nameDialingEntries
    name_dialing_entries = Field(
        type=str,
        required=True,
    )
    #: OCI.AutoAttendantReadMenu16: *Required* businessHoursMenu
    business_hours_menu = Field(
        type=OCI.AutoAttendantReadMenu16,
        required=True,
    )
    #: OCI.AutoAttendantReadMenu16: *Required* afterHoursMenu
    after_hours_menu = Field(
        type=OCI.AutoAttendantReadMenu16,
        required=True,
    )


class GroupAutoAttendantGetInstanceResponse17(OCIResponse):
    """
    Response to ``GroupAutoAttendantGetInstanceRequest17()``.
    Contains the service profile information.
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17,
            True,
            True,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "business_hours",
            "businessHours",
            str,
            False,
            False,
            False,
        ),
        E(
            "holiday_schedule_name",
            "holidayScheduleName",
            str,
            False,
            False,
            False,
        ),
        E(
            "extension_dialing_scope",
            "extensionDialingScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "name_dialing_scope",
            "nameDialingScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "name_dialing_entries",
            "nameDialingEntries",
            str,
            False,
            True,
            False,
        ),
        E(
            "business_hours_menu",
            "businessHoursMenu",
            OCI.AutoAttendantReadMenu16,
            True,
            True,
            False,
        ),
        E(
            "after_hours_menu",
            "afterHoursMenu",
            OCI.AutoAttendantReadMenu16,
            True,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17,
        required=True,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: str: *Optional* businessHours
    business_hours = Field(
        type=str,
        required=False,
    )
    #: str: *Optional* holidayScheduleName
    holiday_schedule_name = Field(
        type=str,
        required=False,
    )
    #: str: *Required* extensionDialingScope
    extension_dialing_scope = Field(
        type=str,
        required=True,
    )
    #: str: *Required* nameDialingScope
    name_dialing_scope = Field(
        type=str,
        required=True,
    )
    #: str: *Required* nameDialingEntries
    name_dialing_entries = Field(
        type=str,
        required=True,
    )
    #: OCI.AutoAttendantReadMenu16: *Required* businessHoursMenu
    business_hours_menu = Field(
        type=OCI.AutoAttendantReadMenu16,
        required=True,
    )
    #: OCI.AutoAttendantReadMenu16: *Required* afterHoursMenu
    after_hours_menu = Field(
        type=OCI.AutoAttendantReadMenu16,
        required=True,
    )


class GroupAutoAttendantGetInstanceResponse17sp1(OCIResponse):
    """
    Response to ``GroupAutoAttendantGetInstanceRequest17sp1()``.
    Contains the service profile information.
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile17,
            True,
            True,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "business_hours",
            "businessHours",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "extension_dialing_scope",
            "extensionDialingScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "name_dialing_scope",
            "nameDialingScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "name_dialing_entries",
            "nameDialingEntries",
            str,
            False,
            True,
            False,
        ),
        E(
            "business_hours_menu",
            "businessHoursMenu",
            OCI.AutoAttendantReadMenu16,
            True,
            True,
            False,
        ),
        E(
            "after_hours_menu",
            "afterHoursMenu",
            OCI.AutoAttendantReadMenu16,
            True,
            True,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile17: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile17,
        required=True,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: OCI.TimeSchedule: *Optional* businessHours
    business_hours = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: str: *Required* extensionDialingScope
    extension_dialing_scope = Field(
        type=str,
        required=True,
    )
    #: str: *Required* nameDialingScope
    name_dialing_scope = Field(
        type=str,
        required=True,
    )
    #: str: *Required* nameDialingEntries
    name_dialing_entries = Field(
        type=str,
        required=True,
    )
    #: OCI.AutoAttendantReadMenu16: *Required* businessHoursMenu
    business_hours_menu = Field(
        type=OCI.AutoAttendantReadMenu16,
        required=True,
    )
    #: OCI.AutoAttendantReadMenu16: *Required* afterHoursMenu
    after_hours_menu = Field(
        type=OCI.AutoAttendantReadMenu16,
        required=True,
    )


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
    """

    _ELEMENTS = (
        E(
            "service_instance_profile",
            "serviceInstanceProfile",
            OCI.ServiceInstanceReadProfile19sp1,
            True,
            True,
            False,
        ),
        E(
            "type",
            "type",
            str,
            False,
            True,
            False,
        ),
        E(
            "first_digit_timeout_seconds",
            "firstDigitTimeoutSeconds",
            int,
            False,
            True,
            False,
        ),
        E(
            "enable_video",
            "enableVideo",
            bool,
            False,
            True,
            False,
        ),
        E(
            "business_hours",
            "businessHours",
            OCI.TimeSchedule,
            True,
            False,
            False,
        ),
        E(
            "holiday_schedule",
            "holidaySchedule",
            OCI.HolidaySchedule,
            True,
            False,
            False,
        ),
        E(
            "extension_dialing_scope",
            "extensionDialingScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "name_dialing_scope",
            "nameDialingScope",
            str,
            False,
            True,
            False,
        ),
        E(
            "name_dialing_entries",
            "nameDialingEntries",
            str,
            False,
            True,
            False,
        ),
        E(
            "business_hours_menu",
            "businessHoursMenu",
            OCI.AutoAttendantReadMenu20,
            True,
            True,
            False,
        ),
        E(
            "after_hours_menu",
            "afterHoursMenu",
            OCI.AutoAttendantReadMenu20,
            True,
            True,
            False,
        ),
        E(
            "holiday_menu",
            "holidayMenu",
            OCI.AutoAttendantReadMenu20,
            True,
            False,
            False,
        ),
        E(
            "network_class_of_service",
            "networkClassOfService",
            str,
            False,
            False,
            False,
        ),
    )
    #: OCI.ServiceInstanceReadProfile19sp1: *Required* serviceInstanceProfile
    service_instance_profile = Field(
        type=OCI.ServiceInstanceReadProfile19sp1,
        required=True,
    )
    #: str: *Required* type
    type = Field(
        type=str,
        required=True,
    )
    #: int: *Required* firstDigitTimeoutSeconds
    first_digit_timeout_seconds = Field(
        type=int,
        required=True,
    )
    #: bool: *Required* enableVideo
    enable_video = Field(
        type=bool,
        required=True,
    )
    #: OCI.TimeSchedule: *Optional* businessHours
    business_hours = Field(
        type=OCI.TimeSchedule,
        required=False,
    )
    #: OCI.HolidaySchedule: *Optional* holidaySchedule
    holiday_schedule = Field(
        type=OCI.HolidaySchedule,
        required=False,
    )
    #: str: *Required* extensionDialingScope
    extension_dialing_scope = Field(
        type=str,
        required=True,
    )
    #: str: *Required* nameDialingScope
    name_dialing_scope = Field(
        type=str,
        required=True,
    )
    #: str: *Required* nameDialingEntries
    name_dialing_entries = Field(
        type=str,
        required=True,
    )
    #: OCI.AutoAttendantReadMenu20: *Required* businessHoursMenu
    business_hours_menu = Field(
        type=OCI.AutoAttendantReadMenu20,
        required=True,
    )
    #: OCI.AutoAttendantReadMenu20: *Required* afterHoursMenu
    after_hours_menu = Field(
        type=OCI.AutoAttendantReadMenu20,
        required=True,
    )
    #: OCI.AutoAttendantReadMenu20: *Optional* holidayMenu
    holiday_menu = Field(
        type=OCI.AutoAttendantReadMenu20,
        required=False,
    )
    #: str: *Optional* networkClassOfService
    network_class_of_service = Field(
        type=str,
        required=False,
    )


class UserCommPilotExpressSRGetResponse13mp16(OCIResponse):
    """
    Response to the ``UserCommPilotExpressSRGetRequest13mp16()``.
    """

    _ELEMENTS = (
        E(
            "profile",
            "profile",
            str,
            False,
            False,
            False,
        ),
        E(
            "available_in_office",
            "availableInOffice",
            OCI.CommPilotExpressSRAvailableInOffice,
            True,
            True,
            False,
        ),
        E(
            "available_out_of_office",
            "availableOutOfOffice",
            OCI.CommPilotExpressSRAvailableOutOfOffice,
            True,
            True,
            False,
        ),
        E(
            "busy",
            "busy",
            OCI.CommPilotExpressSRBusy,
            True,
            True,
            False,
        ),
        E(
            "unavailable",
            "unavailable",
            OCI.CommPilotExpressSRUnavailable,
            True,
            True,
            False,
        ),
    )
    #: str: *Optional* profile
    profile = Field(
        type=str,
        required=False,
    )
    #: OCI.CommPilotExpressSRAvailableInOffice: *Required* availableInOffice
    available_in_office = Field(
        type=OCI.CommPilotExpressSRAvailableInOffice,
        required=True,
    )
    #: OCI.CommPilotExpressSRAvailableOutOfOffice: *Required* availableOutOfOffice
    available_out_of_office = Field(
        type=OCI.CommPilotExpressSRAvailableOutOfOffice,
        required=True,
    )
    #: OCI.CommPilotExpressSRBusy: *Required* busy
    busy = Field(
        type=OCI.CommPilotExpressSRBusy,
        required=True,
    )
    #: OCI.CommPilotExpressSRUnavailable: *Required* unavailable
    unavailable = Field(
        type=OCI.CommPilotExpressSRUnavailable,
        required=True,
    )


# end
