Skip to content

GroupAutoAttendantConsolidatedModifyInstanceRequest

Bases: OCIRequest

Request to modify an Auto Attendant instance and assign services to the Auto Attendant. Only Group and Enterprise level schedules are accepted. The response is either SuccessResponse or ErrorResponse.

When phone numbers are un-assigned from the user, the unused numbers may be un-assigned from the group and service provider. If UnassignPhoneNumbersLevel is set to 'Group', the user's primary phone number, fax number and any alternate numbers, will be un-assigned from the group if the command is executed by a service provider administrator or above.
When set to 'Service Provider', they will be un-assigned from the group and service provider if the command is executed by a provisioning administrator or above.
When omitted, the number(s) will be left assigned to the group.
An ErrorResponse will be returned if any number cannot be unassigned because of insufficient privilege.

If the phoneNumber has not been assigned to the group and addPhoneNumberToGroup is set to true, it will be added to group if needed if the command is executed by a service provider administrator and above. The command will fail otherwise.

The following elements are only used in AS data mode:
  holidayMenu.
The following elements are only valid for Standard Auto
Attendants:
  holidayMenu

Attributes:

service_user_id (str):

unassign_phone_numbers (Optional[str]):

add_phone_number_to_group (Optional[bool]):

service_instance_profile (Optional[ServiceInstanceModifyProfile]):

first_digit_timeout_seconds (Optional[int]):

transfer_to_operator_announcement_selection (Optional[str]):

transfer_to_operator_audio_file (Optional[Nillable[AnnouncementFileLevelKey]]):

transfer_to_operator_video_file (Optional[Nillable[AnnouncementFileLevelKey]]):

enable_video (Optional[bool]):

business_hours (Optional[Nillable[TimeSchedule]]):

holiday_schedule (Optional[Nillable[HolidaySchedule]]):

extension_dialing_scope (Optional[str]):

name_dialing_scope (Optional[str]):

name_dialing_entries (Optional[str]):

business_hours_menu (Optional[AutoAttendantModifyMenu20]):

after_hours_menu (Optional[AutoAttendantModifyMenu20]):

holiday_menu (Optional[AutoAttendantModifyMenu20]):

network_class_of_service (Optional[str]):

service_list (Optional[Nillable[ReplacementConsolidatedUserServiceAssignmentList]]):

is_active (Optional[bool]):
Source code in src/mercury_ocip/commands/commands.py
@dataclass(kw_only=True)
class GroupAutoAttendantConsolidatedModifyInstanceRequest(OCIRequest):
    """Request to modify an Auto Attendant instance and assign services to the Auto Attendant.
        Only Group and Enterprise level schedules are accepted.
        The response is either SuccessResponse or ErrorResponse.

        When phone numbers are un-assigned from the user, the unused numbers may be un-assigned from the group and service provider. If UnassignPhoneNumbersLevel is set to 'Group', the user's primary phone number, fax number and any alternate numbers, will be un-assigned from the group if the command is executed by a service provider administrator or above.
        When set to 'Service Provider', they will be un-assigned from the group and service provider if the command is executed by a provisioning administrator or above.
        When omitted, the number(s) will be left assigned to the group.
        An ErrorResponse will be returned if any number cannot be unassigned because of insufficient privilege.

        If the phoneNumber has not been assigned to the group and addPhoneNumberToGroup is set to true, it will be added to group if needed if the command is executed by a service provider administrator and above. The command will fail otherwise.

        The following elements are only used in AS data mode:
          holidayMenu.
        The following elements are only valid for Standard Auto
        Attendants:
          holidayMenu

    Attributes:

        service_user_id (str):

        unassign_phone_numbers (Optional[str]):

        add_phone_number_to_group (Optional[bool]):

        service_instance_profile (Optional[ServiceInstanceModifyProfile]):

        first_digit_timeout_seconds (Optional[int]):

        transfer_to_operator_announcement_selection (Optional[str]):

        transfer_to_operator_audio_file (Optional[Nillable[AnnouncementFileLevelKey]]):

        transfer_to_operator_video_file (Optional[Nillable[AnnouncementFileLevelKey]]):

        enable_video (Optional[bool]):

        business_hours (Optional[Nillable[TimeSchedule]]):

        holiday_schedule (Optional[Nillable[HolidaySchedule]]):

        extension_dialing_scope (Optional[str]):

        name_dialing_scope (Optional[str]):

        name_dialing_entries (Optional[str]):

        business_hours_menu (Optional[AutoAttendantModifyMenu20]):

        after_hours_menu (Optional[AutoAttendantModifyMenu20]):

        holiday_menu (Optional[AutoAttendantModifyMenu20]):

        network_class_of_service (Optional[str]):

        service_list (Optional[Nillable[ReplacementConsolidatedUserServiceAssignmentList]]):

        is_active (Optional[bool]):

    """

    service_user_id: str = field(metadata={"alias": "serviceUserId"})

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

    add_phone_number_to_group: Optional[bool] = field(
        default=None, metadata={"alias": "addPhoneNumberToGroup"}
    )

    service_instance_profile: Optional[ServiceInstanceModifyProfile] = field(
        default=None, metadata={"alias": "serviceInstanceProfile"}
    )

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

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

    transfer_to_operator_audio_file: Optional[Nillable[AnnouncementFileLevelKey]] = (
        field(default=None, metadata={"alias": "transferToOperatorAudioFile"})
    )

    transfer_to_operator_video_file: Optional[Nillable[AnnouncementFileLevelKey]] = (
        field(default=None, metadata={"alias": "transferToOperatorVideoFile"})
    )

    enable_video: Optional[bool] = field(
        default=None, metadata={"alias": "enableVideo"}
    )

    business_hours: Optional[Nillable[TimeSchedule]] = field(
        default=None, metadata={"alias": "businessHours"}
    )

    holiday_schedule: Optional[Nillable[HolidaySchedule]] = field(
        default=None, metadata={"alias": "holidaySchedule"}
    )

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

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

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

    business_hours_menu: Optional[AutoAttendantModifyMenu20] = field(
        default=None, metadata={"alias": "businessHoursMenu"}
    )

    after_hours_menu: Optional[AutoAttendantModifyMenu20] = field(
        default=None, metadata={"alias": "afterHoursMenu"}
    )

    holiday_menu: Optional[AutoAttendantModifyMenu20] = field(
        default=None, metadata={"alias": "holidayMenu"}
    )

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

    service_list: Optional[
        Nillable[ReplacementConsolidatedUserServiceAssignmentList]
    ] = field(default=None, metadata={"alias": "serviceList"})

    is_active: Optional[bool] = field(default=None, metadata={"alias": "isActive"})

    def __post_init__(self):
        nillable_fields = [
            "transfer_to_operator_audio_file",
            "transfer_to_operator_video_file",
            "business_hours",
            "holiday_schedule",
            "service_list",
        ]
        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

Example Usage

from mercury_ocip.client import Client
from mercury_ocip.commands import GroupAutoAttendantConsolidatedModifyInstanceRequest

client = Client()

command = GroupAutoAttendantConsolidatedModifyInstanceRequest(
    service_user_id=...,
    unassign_phone_numbers=...,
    add_phone_number_to_group=...,
    service_instance_profile=...,
    first_digit_timeout_seconds=...,
    transfer_to_operator_announcement_selection=...,
    transfer_to_operator_audio_file=...,
    transfer_to_operator_video_file=...,
    enable_video=...,
    business_hours=...,
    holiday_schedule=...,
    extension_dialing_scope=...,
    name_dialing_scope=...,
    name_dialing_entries=...,
    business_hours_menu=...,
    after_hours_menu=...,
    holiday_menu=...,
    network_class_of_service=...,
    service_list=...,
    is_active=...,
)

response = client.command(command)

print(response)

Example 2 with Raw Command

from mercury_ocip.client import Client

client = Client()

response = client.raw_command("GroupAutoAttendantConsolidatedModifyInstanceRequest",
    service_user_id=...,
    unassign_phone_numbers=...,
    add_phone_number_to_group=...,
    service_instance_profile=...,
    first_digit_timeout_seconds=...,
    transfer_to_operator_announcement_selection=...,
    transfer_to_operator_audio_file=...,
    transfer_to_operator_video_file=...,
    enable_video=...,
    business_hours=...,
    holiday_schedule=...,
    extension_dialing_scope=...,
    name_dialing_scope=...,
    name_dialing_entries=...,
    business_hours_menu=...,
    after_hours_menu=...,
    holiday_menu=...,
    network_class_of_service=...,
    service_list=...,
    is_active=...,
)

print(response)