Skip to content

GroupConsolidatedAddRequest

Bases: OCIRequest

Add a group. The response is either a SuccessResponse or an ErrorResponse.

The following elements are only used in AS data mode and ignored in XS data mode:
  serviceProviderExternalId
  groupExternalId

The following elements are ignored in AS and XS data mode:
servicePolicy,
callProcessingSliceId,
provisioningSliceId,
subscriberPartition.

The following elements are only used in XS data mode and ignored in AS mode:
preferredDataCenter.
Only Provisioning admin and above can change the preferredDataCenter.

The following elements are only used in XS data mode and ignored in AS data mode:
defaultUserCallingLineIdPhoneNumber.

The following elements are optional for the group. If the elements are included,
they will be either added, authorized, or modified on the group. Should any of the
following elements be rejected to due existing system or service provider settings,
the group will not be added and the response will be an ErrorResponse:
  domain
  admin
  minExtensionLength
  maxExtensionLength
  defaultExtensionLength
  servicePackAuthorization
  groupServiceAuthorizationAndAssignment
  userServiceAuthorization
  servicePack
  activatablePhoneNumber
  activatableDNRange
  routingProfile
  trunkGroupMaxActiveCalls
  trunkGroupBurstingMaxActiveCalls
  meetMeConferencingAllocatedPorts


When a group or user service is included that is not activated, is not licensed,
or not authorized to the service provider, the response will be an ErrorResponse.

If the group service authorized quantity is not included it will default to Unlimited.

If activatablePhoneNumber and activatableDNRange elements are included, when
activate element is present, this value overrides the system group default
activatable settings.

Attributes:

service_provider_id (Optional[str]):

service_provider_external_id (Optional[str]):

group_id (Optional[str]):

group_external_id (Optional[str]):

default_domain (str):

user_limit (int):

group_name (Optional[str]):

calling_line_id_name (Optional[str]):

time_zone (Optional[str]):

location_dialing_code (Optional[str]):

contact (Optional[Contact]):

address (Optional[StreetAddress]):

service_policy (Optional[str]):

call_processing_slice_id (Optional[str]):

provisioning_slice_id (Optional[str]):

subscriber_partition (Optional[str]):

preferred_data_center (Optional[str]):

default_user_calling_line_id_phone_number (Optional[str]):

domain (Optional[List[str]]):

admin (Optional[List[GroupAdmin]]):

min_extension_length (Optional[int]):

max_extension_length (Optional[int]):

default_extension_length (Optional[int]):

group_service_authorization_and_assignment (Optional[List[GroupServiceAuthorizationAndAssignment]]):

user_service_authorization (Optional[List[UserServiceAuthorization]]):

service_pack_authorization (Optional[List[ServicePackAuthorization]]):

activatable_phone_number (Optional[List[ActivatableDN]]):

activatable_dn_range (Optional[List[ActivatableDNRange]]):

routing_profile (Optional[Nillable[str]]):

meet_me_conferencing_allocated_ports (Optional[MeetMeConferencingConferencePorts]):

trunk_group_max_active_calls (Optional[int]):

trunk_group_bursting_max_active_calls (Optional[UnboundedNonNegativeInt]):
Source code in src/mercury_ocip/commands/commands.py
@dataclass(kw_only=True)
class GroupConsolidatedAddRequest(OCIRequest):
    """Add a group.
        The response is either a SuccessResponse or an ErrorResponse.

        The following elements are only used in AS data mode and ignored in XS data mode:
          serviceProviderExternalId
          groupExternalId

        The following elements are ignored in AS and XS data mode:
        servicePolicy,
        callProcessingSliceId,
        provisioningSliceId,
        subscriberPartition.

        The following elements are only used in XS data mode and ignored in AS mode:
        preferredDataCenter.
        Only Provisioning admin and above can change the preferredDataCenter.

        The following elements are only used in XS data mode and ignored in AS data mode:
        defaultUserCallingLineIdPhoneNumber.

        The following elements are optional for the group. If the elements are included,
        they will be either added, authorized, or modified on the group. Should any of the
        following elements be rejected to due existing system or service provider settings,
        the group will not be added and the response will be an ErrorResponse:
          domain
          admin
          minExtensionLength
          maxExtensionLength
          defaultExtensionLength
          servicePackAuthorization
          groupServiceAuthorizationAndAssignment
          userServiceAuthorization
          servicePack
          activatablePhoneNumber
          activatableDNRange
          routingProfile
          trunkGroupMaxActiveCalls
          trunkGroupBurstingMaxActiveCalls
          meetMeConferencingAllocatedPorts


        When a group or user service is included that is not activated, is not licensed,
        or not authorized to the service provider, the response will be an ErrorResponse.

        If the group service authorized quantity is not included it will default to Unlimited.

        If activatablePhoneNumber and activatableDNRange elements are included, when
        activate element is present, this value overrides the system group default
        activatable settings.

    Attributes:

        service_provider_id (Optional[str]):

        service_provider_external_id (Optional[str]):

        group_id (Optional[str]):

        group_external_id (Optional[str]):

        default_domain (str):

        user_limit (int):

        group_name (Optional[str]):

        calling_line_id_name (Optional[str]):

        time_zone (Optional[str]):

        location_dialing_code (Optional[str]):

        contact (Optional[Contact]):

        address (Optional[StreetAddress]):

        service_policy (Optional[str]):

        call_processing_slice_id (Optional[str]):

        provisioning_slice_id (Optional[str]):

        subscriber_partition (Optional[str]):

        preferred_data_center (Optional[str]):

        default_user_calling_line_id_phone_number (Optional[str]):

        domain (Optional[List[str]]):

        admin (Optional[List[GroupAdmin]]):

        min_extension_length (Optional[int]):

        max_extension_length (Optional[int]):

        default_extension_length (Optional[int]):

        group_service_authorization_and_assignment (Optional[List[GroupServiceAuthorizationAndAssignment]]):

        user_service_authorization (Optional[List[UserServiceAuthorization]]):

        service_pack_authorization (Optional[List[ServicePackAuthorization]]):

        activatable_phone_number (Optional[List[ActivatableDN]]):

        activatable_dn_range (Optional[List[ActivatableDNRange]]):

        routing_profile (Optional[Nillable[str]]):

        meet_me_conferencing_allocated_ports (Optional[MeetMeConferencingConferencePorts]):

        trunk_group_max_active_calls (Optional[int]):

        trunk_group_bursting_max_active_calls (Optional[UnboundedNonNegativeInt]):

    """

    service_provider_id: Optional[str] = field(
        default=None, metadata={"alias": "serviceProviderId"}
    )

    service_provider_external_id: Optional[str] = field(
        default=None, metadata={"alias": "serviceProviderExternalId"}
    )

    group_id: Optional[str] = field(default=None, metadata={"alias": "groupId"})

    group_external_id: Optional[str] = field(
        default=None, metadata={"alias": "groupExternalId"}
    )

    default_domain: str = field(metadata={"alias": "defaultDomain"})

    user_limit: int = field(metadata={"alias": "userLimit"})

    group_name: Optional[str] = field(default=None, metadata={"alias": "groupName"})

    calling_line_id_name: Optional[str] = field(
        default=None, metadata={"alias": "callingLineIdName"}
    )

    time_zone: Optional[str] = field(default=None, metadata={"alias": "timeZone"})

    location_dialing_code: Optional[str] = field(
        default=None, metadata={"alias": "locationDialingCode"}
    )

    contact: Optional[Contact] = field(default=None, metadata={"alias": "contact"})

    address: Optional[StreetAddress] = field(
        default=None, metadata={"alias": "address"}
    )

    service_policy: Optional[str] = field(
        default=None, metadata={"alias": "servicePolicy"}
    )

    call_processing_slice_id: Optional[str] = field(
        default=None, metadata={"alias": "callProcessingSliceId"}
    )

    provisioning_slice_id: Optional[str] = field(
        default=None, metadata={"alias": "provisioningSliceId"}
    )

    subscriber_partition: Optional[str] = field(
        default=None, metadata={"alias": "subscriberPartition"}
    )

    preferred_data_center: Optional[str] = field(
        default=None, metadata={"alias": "preferredDataCenter"}
    )

    default_user_calling_line_id_phone_number: Optional[str] = field(
        default=None, metadata={"alias": "defaultUserCallingLineIdPhoneNumber"}
    )

    domain: Optional[List[str]] = field(default=None, metadata={"alias": "domain"})

    admin: Optional[List[GroupAdmin]] = field(default=None, metadata={"alias": "admin"})

    min_extension_length: Optional[int] = field(
        default=None, metadata={"alias": "minExtensionLength"}
    )

    max_extension_length: Optional[int] = field(
        default=None, metadata={"alias": "maxExtensionLength"}
    )

    default_extension_length: Optional[int] = field(
        default=None, metadata={"alias": "defaultExtensionLength"}
    )

    group_service_authorization_and_assignment: Optional[
        List[GroupServiceAuthorizationAndAssignment]
    ] = field(
        default=None, metadata={"alias": "groupServiceAuthorizationAndAssignment"}
    )

    user_service_authorization: Optional[List[UserServiceAuthorization]] = field(
        default=None, metadata={"alias": "userServiceAuthorization"}
    )

    service_pack_authorization: Optional[List[ServicePackAuthorization]] = field(
        default=None, metadata={"alias": "servicePackAuthorization"}
    )

    activatable_phone_number: Optional[List[ActivatableDN]] = field(
        default=None, metadata={"alias": "activatablePhoneNumber"}
    )

    activatable_dn_range: Optional[List[ActivatableDNRange]] = field(
        default=None, metadata={"alias": "activatableDNRange"}
    )

    routing_profile: Optional[Nillable[str]] = field(
        default=None, metadata={"alias": "routingProfile"}
    )

    meet_me_conferencing_allocated_ports: Optional[
        MeetMeConferencingConferencePorts
    ] = field(default=None, metadata={"alias": "meetMeConferencingAllocatedPorts"})

    trunk_group_max_active_calls: Optional[int] = field(
        default=None, metadata={"alias": "trunkGroupMaxActiveCalls"}
    )

    trunk_group_bursting_max_active_calls: Optional[UnboundedNonNegativeInt] = field(
        default=None, metadata={"alias": "trunkGroupBurstingMaxActiveCalls"}
    )

    def __post_init__(self):
        nillable_fields = ["routing_profile"]
        for field_name in nillable_fields:
            value = getattr(self, field_name)
            if value == "" or value == "None":
                object.__setattr__(self, field_name, OCINil)

Responses

Bases: OCIResponse

Source code in src/mercury_ocip/commands/base_command.py
class SuccessResponse(OCIResponse):
    pass

Bases: OCIResponse

Source code in src/mercury_ocip/commands/base_command.py
class ErrorResponse(OCIResponse):
    errorCode: Optional[int] = None
    summary: str
    summaryEnglish: str
    detail: Optional[str] = None

Bases: OCIResponse

Source code in src/mercury_ocip/commands/base_command.py
class ErrorResponse(OCIResponse):
    errorCode: Optional[int] = None
    summary: str
    summaryEnglish: str
    detail: Optional[str] = None

Bases: OCIResponse

Source code in src/mercury_ocip/commands/base_command.py
class ErrorResponse(OCIResponse):
    errorCode: Optional[int] = None
    summary: str
    summaryEnglish: str
    detail: Optional[str] = None

Example Usage

from mercury_ocip.client import Client
from mercury_ocip.commands import GroupConsolidatedAddRequest

client = Client()

command = GroupConsolidatedAddRequest(
    service_provider_id=...,
    service_provider_external_id=...,
    group_id=...,
    group_external_id=...,
    default_domain=...,
    user_limit=...,
    group_name=...,
    calling_line_id_name=...,
    time_zone=...,
    location_dialing_code=...,
    contact=...,
    address=...,
    service_policy=...,
    call_processing_slice_id=...,
    provisioning_slice_id=...,
    subscriber_partition=...,
    preferred_data_center=...,
    default_user_calling_line_id_phone_number=...,
    domain=...,
    admin=...,
    min_extension_length=...,
    max_extension_length=...,
    default_extension_length=...,
    group_service_authorization_and_assignment=...,
    user_service_authorization=...,
    service_pack_authorization=...,
    activatable_phone_number=...,
    activatable_dn_range=...,
    routing_profile=...,
    meet_me_conferencing_allocated_ports=...,
    trunk_group_max_active_calls=...,
    trunk_group_bursting_max_active_calls=...,
)

response = client.command(command)

print(response)

Example 2 with Raw Command

from mercury_ocip.client import Client

client = Client()

response = client.raw_command("GroupConsolidatedAddRequest",
    service_provider_id=...,
    service_provider_external_id=...,
    group_id=...,
    group_external_id=...,
    default_domain=...,
    user_limit=...,
    group_name=...,
    calling_line_id_name=...,
    time_zone=...,
    location_dialing_code=...,
    contact=...,
    address=...,
    service_policy=...,
    call_processing_slice_id=...,
    provisioning_slice_id=...,
    subscriber_partition=...,
    preferred_data_center=...,
    default_user_calling_line_id_phone_number=...,
    domain=...,
    admin=...,
    min_extension_length=...,
    max_extension_length=...,
    default_extension_length=...,
    group_service_authorization_and_assignment=...,
    user_service_authorization=...,
    service_pack_authorization=...,
    activatable_phone_number=...,
    activatable_dn_range=...,
    routing_profile=...,
    meet_me_conferencing_allocated_ports=...,
    trunk_group_max_active_calls=...,
    trunk_group_bursting_max_active_calls=...,
)

print(response)