Skip to content

GroupModifyRequest

Bases: OCIRequest

Modify the profile for a group. The response is either a SuccessResponse or an ErrorResponse. 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 data 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 only used in AS data mode and ignored in the XS data mode:
         extensionLengthSettings
         dialPlanAccessCode
         dialPlanPolicy

Attributes:

service_provider_id (str):

group_id (str):

default_domain (Optional[str]):

user_limit (Optional[int]):

group_name (Optional[Nillable[str]]):

calling_line_id_name (Optional[Nillable[str]]):

calling_line_id_phone_number (Optional[Nillable[str]]):

time_zone (Optional[str]):

location_dialing_code (Optional[Nillable[str]]):

contact (Optional[Contact]):

address (Optional[StreetAddress]):

service_policy (Optional[Nillable[str]]):

call_processing_slice_id (Optional[Nillable[str]]):

provisioning_slice_id (Optional[Nillable[str]]):

subscriber_partition (Optional[Nillable[str]]):

preferred_data_center (Optional[Nillable[str]]):

default_user_calling_line_id_phone_number (Optional[Nillable[str]]):

extension_length_settings (Optional[GroupExtensionLengthSettings]):

dial_plan_access_code (Optional[Nillable[DialPlanPolicyAccessCode]]):

dial_plan_policy (Optional[DialPlanPolicy]):
Source code in src/mercury_ocip/commands/commands.py
@dataclass(kw_only=True)
class GroupModifyRequest(OCIRequest):
    """Modify the profile for a group.
        The response is either a SuccessResponse or an ErrorResponse.
        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 data 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 only used in AS data mode and ignored in the XS data mode:
                 extensionLengthSettings
                 dialPlanAccessCode
                 dialPlanPolicy

    Attributes:

        service_provider_id (str):

        group_id (str):

        default_domain (Optional[str]):

        user_limit (Optional[int]):

        group_name (Optional[Nillable[str]]):

        calling_line_id_name (Optional[Nillable[str]]):

        calling_line_id_phone_number (Optional[Nillable[str]]):

        time_zone (Optional[str]):

        location_dialing_code (Optional[Nillable[str]]):

        contact (Optional[Contact]):

        address (Optional[StreetAddress]):

        service_policy (Optional[Nillable[str]]):

        call_processing_slice_id (Optional[Nillable[str]]):

        provisioning_slice_id (Optional[Nillable[str]]):

        subscriber_partition (Optional[Nillable[str]]):

        preferred_data_center (Optional[Nillable[str]]):

        default_user_calling_line_id_phone_number (Optional[Nillable[str]]):

        extension_length_settings (Optional[GroupExtensionLengthSettings]):

        dial_plan_access_code (Optional[Nillable[DialPlanPolicyAccessCode]]):

        dial_plan_policy (Optional[DialPlanPolicy]):

    """

    service_provider_id: str = field(metadata={"alias": "serviceProviderId"})

    group_id: str = field(metadata={"alias": "groupId"})

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

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

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

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

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

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

    location_dialing_code: Optional[Nillable[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[Nillable[str]] = field(
        default=None, metadata={"alias": "servicePolicy"}
    )

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

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

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

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

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

    extension_length_settings: Optional[GroupExtensionLengthSettings] = field(
        default=None, metadata={"alias": "extensionLengthSettings"}
    )

    dial_plan_access_code: Optional[Nillable[DialPlanPolicyAccessCode]] = field(
        default=None, metadata={"alias": "dialPlanAccessCode"}
    )

    dial_plan_policy: Optional[DialPlanPolicy] = field(
        default=None, metadata={"alias": "dialPlanPolicy"}
    )

    def __post_init__(self):
        nillable_fields = [
            "group_name",
            "calling_line_id_name",
            "calling_line_id_phone_number",
            "location_dialing_code",
            "service_policy",
            "call_processing_slice_id",
            "provisioning_slice_id",
            "subscriber_partition",
            "preferred_data_center",
            "default_user_calling_line_id_phone_number",
            "dial_plan_access_code",
        ]
        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

Example Usage

from mercury_ocip.client import Client
from mercury_ocip.commands import GroupModifyRequest

client = Client()

command = GroupModifyRequest(
    service_provider_id=...,
    group_id=...,
    default_domain=...,
    user_limit=...,
    group_name=...,
    calling_line_id_name=...,
    calling_line_id_phone_number=...,
    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=...,
    extension_length_settings=...,
    dial_plan_access_code=...,
    dial_plan_policy=...,
)

response = client.command(command)

print(response)

Example 2 with Raw Command

from mercury_ocip.client import Client

client = Client()

response = client.raw_command("GroupModifyRequest",
    service_provider_id=...,
    group_id=...,
    default_domain=...,
    user_limit=...,
    group_name=...,
    calling_line_id_name=...,
    calling_line_id_phone_number=...,
    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=...,
    extension_length_settings=...,
    dial_plan_access_code=...,
    dial_plan_policy=...,
)

print(response)