Skip to content

OCIMessage

Bases: OCIType

A message contains a list of requests or responses. The server processes all the requests and returns a message with a corresponding list of responses.

Attributes:

session_id (Optional[str]): The session id identifies a logged-in user. The client is responsible to ensure the uniqueness of the session id.

user_id (Optional[str]): The user id identifies a preauthenticated user performing a session-less OCI request. The source of the request

must be in the external authentication access control list.

phone_number (Optional[str]): The phone number identifies a preauthenticated user performing a session-less OCI request. The source of the request

must be in the external authentication access control list.

The phone number must be in E.164 format. Any DN associated with the user may be used.

BroadSoft recommends only using this element in the rare case when the userId is not known.

line_port (Optional[str]): The lineport identifies a preauthenticated user performing a session-less OCI request. The source of the request must be in the external authentication access control list.

The lineport may be any lineport associated with a user.

BroadSoft recommends only using this element in the rare case when the userId is not known.

external_user_identity (Optional[ExternalUserIdentity]): The external user identity identifies a preauthenticated user/admin performing a session-less OCI request. The source of the request must have a valid CI access token.

tracking_id (Optional[str]): The client can send the trackingId attribute in any request and the server will return the trackingId attribute in the response.

command (List[OCICommand]): List of requests or responses.
Source code in src/mercury_ocip_fast/commands/commands.py
@dataclass(kw_only=True)
class OCIMessage(OCIType):
    """A message contains a list of requests or responses. The server processes all the requests
        and returns a message with a corresponding list of responses.

    Attributes:

        session_id (Optional[str]): The session id identifies a logged-in user. The client is responsible to ensure the uniqueness of the session id.

        user_id (Optional[str]): The user id identifies a preauthenticated user performing a session-less OCI request. The source of the request
    # must be in the external authentication access control list.

        phone_number (Optional[str]): The phone number identifies a preauthenticated user performing a session-less OCI request. The source of the request
    # must be in the external authentication access control list.
    # The phone number must be in E.164 format.  Any DN associated with the user may be used.
    # BroadSoft recommends only using this element in the rare case when the userId is not known.

        line_port (Optional[str]): The lineport identifies a preauthenticated user performing a session-less OCI request. The source of the request must be in the external authentication access control list.
    # The lineport may be any lineport associated with a user.
    # BroadSoft recommends only using this element in the rare case when the userId is not known.

        external_user_identity (Optional[ExternalUserIdentity]): The external user identity identifies a preauthenticated user/admin performing a session-less OCI request. The source of the request must have a valid CI access token.

        tracking_id (Optional[str]): The client can send the trackingId attribute in any request and the server will return the trackingId attribute in the response.

        command (List[OCICommand]): List of requests or responses.

    """

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

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

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

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

    external_user_identity: Optional[ExternalUserIdentity] = field(
        default=None, metadata={"alias": "externalUserIdentity"}
    )

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

    command: List[OCICommand] = field(metadata={"alias": "command"})