Commit 1c57efab authored by grahamj's avatar grahamj
Browse files

Not done yet

parent 74f0f51f
Loading
Loading
Loading
Loading
Loading
+374 −3
Original line number Diff line number Diff line
@@ -167,7 +167,21 @@ XIRIEvent ::= CHOICE

    -- HR LI Events, see clause 7.10.3.3
    n9HRPDUSessionInfo                                  [100] N9HRPDUSessionInfo,
    s8HRBearerInfo                                      [101] S8HRBearerInfo
    s8HRBearerInfo                                      [101] S8HRBearerInfo,

    --RCS Events, see clause 7.X.3
    rCSRegistration                                     [2761] RCSRegistration,
    rCSMessage                                          [2762] RCSMessage,
    rCSSessionEstablishment                             [2763] RCSSessionEstablishment
    
    -- The tag numbers [2764-2769] are reserved for future RCS xIRI Messages.
    -- rCSSessionModification                           [2764] RCSSessionModification,
    -- rCSSessionRelease                                [2765] RCSSessionRelease,
    -- rCSStartOfInterceptionWithAlreadyRegisteredUE    [2766] RCSStartOfInterceptionWithAlreadyRegisteredUE,
    -- rCSStartOfInterceptionWithAlreadyEstablishedSession [2767] RCSStartOfInterceptionWithAlreadyEstablishedSession,
    -- rCSUnsuccessfulProcedure                         [2768] RCSUnsuccessfulProcedure,
    -- rCSCapabilityDiscovery                           [2769] rCSCapabilityDiscovery

}

-- ==============
@@ -324,10 +338,23 @@ IRIEvent ::= CHOICE
    aFAKMAApplicationKeyRefresh                         [96] AFAKMAApplicationKeyRefresh,
    aFStartOfInterceptWithEstablishedAKMAApplicationKey [97] AFStartOfInterceptWithEstablishedAKMAApplicationKey,
    aFAuxiliarySecurityParameterEstablishment           [98] AFAuxiliarySecurityParameterEstablishment,
    aFApplicationKeyRemoval                             [99] AFApplicationKeyRemoval
    aFApplicationKeyRemoval                             [99] AFApplicationKeyRemoval,

    -- tag 100 is reserved because there is no equivalent n9HRPDUSessionInfo in IRIEvent.
    -- tag 101 is reserved because there is no equivalent S8HRBearerInfo in IRIEvent.

        --RCS Events, see clause 7.X.3
    rCSRegistration                                     [2761] RCSRegistration,
    rCSMessage                                          [2762] RCSMessage,
    rCSSessionEstablishment                             [2763] RCSSessionEstablishment
    
    -- The tag numbers [2764-2769] are reserved for future RCS xIRI Messages.
    -- rCSSessionModification                           [2764] RCSSessionModification,
    -- rCSSessionRelease                                [2765] RCSSessionRelease,
    -- rCSStartOfInterceptionWithAlreadyRegisteredUE    [2766] RCSStartOfInterceptionWithAlreadyRegisteredUE,
    -- rCSStartOfInterceptionWithAlreadyEstablishedSession [2767] RCSStartOfInterceptionWithAlreadyEstablishedSession,
    -- rCSUnsuccessfulProcedure                         [2768] RCSUnsuccessfulProcedure,
    -- rCSCapabilityDiscovery                           [2769] rCSCapabilityDiscovery
}

IRITargetIdentifier ::= SEQUENCE
@@ -3032,6 +3059,350 @@ FiveGMMStatus ::= ENUMERATED
    uENot5GMMRegistered(2)
}

-- ============
-- RCS definitions
-- ============

RCSRegistration ::= SEQUENCE
{
    rCSTargetIdentities        [1] RCSTargetIdentities,
    rCSRegistrationRequestType [2] RCSRegistrationRequestType,
    rCSTargetCapabilities      [3] SEQUENCE SIZE(1..MAX) OF RCSCapabilities,
    location                   [4] Location OPTIONAL
}

RCSMessage ::= SEQUENCE
{
     rCSTargetIdentities   [1] RCSTargetIdentities, 
     rCSServerURI          [2] RCSServerURI,
     originatingRCSParty   [3] RCSParty,
     destinationRCSParties [4] RCSParties,
     rCSMessageType        [5] RCSMessageType,
     direction             [6] Direction,
     conversationID        [7] CPMConversationID OPTIONAL,
     contributionID        [8] CPMContributionID OPTIONAL,
     messageID             [9] CPMMessageID,
     locaton               [10] Location OPTIONAL,
     groupChatSessionID    [11] RCSGroupChatSessionID OPTIONAL,
     rCSEvent              [12] RCSEvent OPTIONAL,
     iMDNInfo              [13] IMDNInfo OPTIONAL,
     chatSubject           [14] ChatSubject OPTIONAL  
}

RCSSessionEstablishment ::= SEQUENCE
{
    rCSTargetIdentities   [1] RCSTargetIdentities,
    rCSServerURI          [2] RCSServerURI,
    originatingRCSParty   [3] RCSParty,
    destinationRCSParties [4] RCSParties,
    rCSSessionType        [5] RCSSessionType,
    direction             [6] Direction,
    conversationID        [7] CPMConversationID,
    contributionID        [8] CPMContributionID,
    sDPOffer              [9] SDPInfo,
    sDPAnswer             [10] SDPInfo,
    location              [11] Location OPTIONAL,
    groupChatSessionID    [12] RCSGroupChatSessionID OPTIONAL,
    chatSubject           [13] ChatSubject OPTIONAL,
    rCSFileTransferFlag   [14] RCSFileTransferFlag OPTIONAL
}

-- ===========
-- RCS parameters
-- ===========

ChatSubject ::= UTF8String

CPIMAddress ::= UTF8String

CPMContributionID ::= UTF8String

CPMConversationID ::= UTF8String

CPMMessageID ::= UTF8String

FullCPIMAddress ::= SEQUENCE
{
    address       [1] CPIMAddress,
    uRIParameters [2] SEQUENCE OF URIParameter OPTIONAL
}

FullMSRPAddress ::= SEQUENCE
{
    address       [1] MSRPAddress,
    uRIParameters [2] SEQUENCE OF URIParameter OPTIONAL
}

IMDNInfo ::= OCTET STRING

IMPUList ::= SEQUENCE
{
    iMPU           [1] IMPU,
    additionalIMPU [2] SEQUENCE OF IMPU OPTIONAL
}

MSRPAddress ::= UTF8String

RCSCapabilities ::= ENUMERATED
{
    standaloneMessaging(1),
    oneToOneChat(2),
    groupChat(3),
    fileTransfer(4),
    fileTransferViaSMS(5),
    geolocationPush(6),
    geoLocationPushViaSMS(7),
    chatbotCommunicationSessions(8),
    chatbotCommunicationStandaloneMessages(9)
}

RCSEvent ::= ENUMERATED
{
    messageDelivery(1),
    deliveryNotification(2),
    displayNotification(3)
}

RCSFileTransferFlag ::= ENUMERATED
{
    msrpFileTransfer(1),
    httpFileTransfer(2)
}

RCSGroupChatSessionID ::= UTF8String

RCSMessageType ::= ENUMERATED
{
    oneToOneChat(1),
    groupChat(2),
    standalonePagerModeMessage(3),
    standaloneLargeModeMessage(4)
}

RCSParties ::= SEQUENCE OF RCSParty

RCSParty ::= SEQUENCE
{
    iMPI          [1] IMPI OPTIONAL,
    sIPAddresses  [2] SEQUENCE OF SIPAddress OPTIONAL,
    mSRPAddresses [3] SEQUENCE OF FullMSRPAddress OPTIONAL,
    cPIMAddress   [4] SEQUENCE OF FullCPIMAddress OPTIONAL
}

RCSRegistrationRequestType ::= ENUMERATED
{
    initialRegistration(1),
    reRegistration(2),
    deRegistration(3)
}

RCSSessionType ::= ENUMERATED
{
    oneToOneChat(1),
    groupChat(2),
    standalonePagerModeMessage(3),
    standaloneLargeModeMessage(4)
}

RCSServerURI ::= UTF8String

RCSTargetIdentities ::= SEQUENCE
{
    iMPUs [1] IMPUList OPTIONAL,
    iMPI  [2] IMPI OPTIONAL,
    iMEI  [3] IMEI OPTIONAL
}

SDPInfo ::= SEQUENCE
{
    sessionInfo [1] SDPSessionInfo,
    timingInfo [2] SEQUENCE OF SDPTimingInfo,
    mediaInfo [3] SEQUENCE OF SDPMediaInfo
}

SDPSessionInfo ::= SEQUENCE
{
    version [1] SDPVersion,
    originator [2] SDPOriginator,
    sessionName [3] SDPSessionName,
    sessionInformation [4] SDPSessionDescription OPTIONAL,
    descriptionURI [5] SDPURI OPTIONAL,
    email [6] EmailAddress OPTIONAL,
    phone [7] SDPPhoneNumber OPTIONAL,
    connection [8] SDPConnection OPTIONAL,
    bandwidth [9] SDPBandwidth OPTIONAL,
    timeZone [10] SDPTimeZoneAdjustments OPTIONAL,
    key [11] SDPKey OPTIONAL,
    attributes [12] SEQUENCE OF SDPAttributes OPTIONAL
}

SDPAttributes ::= UTF8String

SDPTimingInfo ::= SEQUENCE
{
    time [1] SDPTime,
    repeatTime [2] SEQUENCE OF SDPRepeatTimes OPTIONAL
}

SDPMediaInfo ::= SEQUENCE
{
    media      [1] SDPMedia,
    mediaTitle [2] SDPMediaTitle OPTIONAL,
    connection [3] SDPConnection OPTIONAL,
    bandwidth  [4] SDPBandwidth OPTIONAL,
    key        [5] SDPKey OPTIONAL,
    attributes [6] SDPAttributes OPTIONAL 
}

SDPMedia ::= UTF8String

SDPMediaTitle ::= UTF8String

SDPRepeatTimes ::= UTF8String

SDPVersion ::= CHOICE
{
    definedVersion [1] SDPDefinedVersion,
    otherVersion [2] UTF8String
}

SDPDefinedVersion ::= ENUMERATED
{
    zero(1)
}

SDPOriginator ::= SEQUENCE
{
    username  [1] SDPUserName,
    sessionID [2] SDPSessionID,
    sessionVersion [3] SDPSessionVersion,
    netType [4] SDPNetType,
    addrType [5] SDPAddrType,
    unicastAddress [6] SEQUENCE SIZE (1..MAX) OF SDPAddress
}

SDPAddress ::= CHOICE
{
    iPv6Address [1] IPv6Address,
    iPv4Address [2] iPv4Address,
    fQDN        [3] FQDN
} 

SDPAddrType ::= CHOICE
{
    definedAddrType [1] SDPDefinedAddrType,
    otherAddrType [2] UTF8String
}

SDPDefinedAddrType ::= ENUMERATED
{
    iP4(1),
    iP6(2)
}

SDPNetType ::= CHOICE
{
    definedNetType [1] SDPDefinedNetType,
    otherNetType   [2] UTF8String
}

SDPDefinedNetType ::= ENUMERATED
{
    iN(1)
}

SDPUserName ::= UTF8String

SDPSessionID ::= UTF8String

SDPSessionName ::= UTF8String

SDPSessionVersion ::= UTF8String

SDPSessionDescription ::= UTF8String

SDPURI ::= UTF8String

SDPPhoneNumber ::= SEQUENCE
{
    phoneNumber [1] E164Number,
    displayName [2] UTF8String OPTIONAL
}

SDPEmailAddress ::= SEQUENCE
{
    eMailAddress [1] EmailAddress,
    displayName  [2] UTF8String OPTIONAL
}

SDPConnection ::= SEQUENCE
{
    netType           [1] SDPNetType,
    addrType          [2] SDPAddrType,
    connectionAddress [3] SDPConnectionAddress
}

SDPConnectionAddress ::= SEQUENCE
{
    address           [1] SDPAddress,
    tTL               [2] SDPTTL OPTIONAL,
    numberOfAddresses [3] SDPNumberOfAddresses OPTIONAL
}

SDPTTL ::= INTEGER

SDPNumberOfAddresses ::= INTEGER

SDPBandwidth ::= SEQUENCE
{
    bWType    [1] SDPBWType,
    bandwidth [2] INTEGER
}

SDPBWType ::= CHOICE
{
    definedBWType [1] SDPDefinedBWType,
    otherBWType   [2] UTF8String
}

SDPDefinedBWType ::= ENUMERATED
{
    cT(1),
    aS(2)
}

SDPTimeZoneAdjustments ::= UTF8String

SDPKey ::= UTF8String

SDPAttributes ::= UTF8String

SDPTime ::= SEQUENCE
{
    startTime [1] INTEGER,
    stopTime  [2] INTEGER
}

SDPRepeatTimes ::= SEQUENCE
{
    repeatInterval [1] SDPRepeatInterval,
    activeDuration [2] SDPActiveDuration, 
    offsets        [3] SEQUENCE SIZE(1..MAX) OF SDPTimeOffset
}



SIPAddress ::= SEQUENCE
{
    displayName   [1] SIPDisplayName OPTIONAL,
    address       [2] IMPU OPTIONAL,
    uRIParameters [3] SEQUENCE OF URIParameter OPTIONAL
}

SIPDisplayName ::= UTF8String

URIParameter ::= UTF8String

-- =================
-- Common Parameters
-- =================