| /* | 
 | /////////////////////////////////////////////////////////////////////////////// | 
 | // | 
 | // Copyright (c) 2000-2016 Ericsson Telecom AB | 
 | // | 
 | // All rights reserved. This program and the accompanying materials | 
 | // are made available under the terms of the Eclipse Public License v2.0 | 
 | // which accompanies this distribution, and is available at | 
 | // https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html | 
 | /////////////////////////////////////////////////////////////////////////////// | 
 | // | 
 | //  File:          Revised_Diversion_Operations.asn | 
 | //  Description:   Functional protocol for ISDN | 
 | // | 
 | //  References:    ETSI EN 300 207-1  | 
 | //                 Integrated Services Digital Network (ISDN); | 
 | //                 Generic functional protocol for the support | 
 | //                 of supplementary services; | 
 | //  Rev:          R3C | 
 | //  Prodnr:       CNL 113 435 | 
 | //  Updated:      2012.04.19. | 
 | //  Contact:      http://ttcn.ericsson.se | 
 | */ | 
 |  | 
 | Revised-Diversion-Operations {itu-t identified-organization etsi (0) 207 operations-and-errors (1)} | 
 |  | 
 | DEFINITIONS EXPLICIT TAGS ::= | 
 |  | 
 | BEGIN | 
 |  | 
 |   EXPORTS | 
 |       activationDiversion, | 
 |       deactivationDiversion, | 
 |       activationStatusNotificationDiv, | 
 |       deactivationStatusNotificationDiv, | 
 |       interrogationDiversion, | 
 |       interrogateServedUserNumbers, | 
 |       diversionInformation, | 
 |       callDeflection, | 
 |       callRerouting, | 
 |       divertingLegInformation1, | 
 |       divertingLegInformation2, | 
 |       divertingLegInformation3, | 
 |       invalidDivertedToNr, | 
 |       specialServiceNr, | 
 |       diversionToServedUserNr, | 
 |       incomingCallAccepted, | 
 |       numberOfDiversionsExceeded, | 
 |       requestAlreadyAccepted, | 
 |       notActivated; | 
 |        | 
 |   IMPORTS | 
 |       OPERATION, | 
 |       ERROR | 
 |     FROM Remote-Operations-Information-Objects | 
 |     {joint-iso-itu-t remote-operations (4) notation (0)} | 
 |  | 
 |   | 
 |       PartyNumber, | 
 |       PartySubaddress, | 
 |       Address, | 
 |       PresentationAllowedIndicator, | 
 |       PresentedAddressScreened, | 
 |       PresentedNumberUnscreened | 
 |     FROM Revised-Addressing-Data-Elements | 
 |     {itu-t identified-organization etsi (0) 196 addressing-data-elements (6)} | 
 |  | 
 |   | 
 |       BasicService | 
 |     FROM Revised-Basic-Service-Elements | 
 |     {itu-t identified-organization etsi (0) 196 basic-service-elements (8)}    | 
 |      | 
 |       notSubscribed, | 
 |       notAvailable, | 
 |       supplementaryServiceInteractionNotAllowed, | 
 |       basicServiceNotProvided, | 
 |       invalidServedUserNr, | 
 |       resourceUnavailable | 
 |     FROM Revised-General-Errors | 
 |     {itu-t identified-organization etsi (0) 196 general-errors (2)} | 
 |      | 
 |       Service, | 
 |       Preferred | 
 |     FROM Revised-UUS-Operations | 
 |     {itu-t identified-organization etsi (0) 286 operations-and-errors (1)} | 
 |  | 
 |   | 
 |       Q931InformationElement | 
 |     FROM Revised-Embedded-Q931-Types | 
 |     {itu-t identified-organization etsi (0) 196 embedded-q931-types (7)};    | 
 |      | 
 |   activationDiversion OPERATION::= | 
 |     {     | 
 |      ARGUMENT SEQUENCE { | 
 |           procedure          Procedure, | 
 |           basicService       BasicService, | 
 |           forwardedToAddress Address, | 
 |           servedUserNr       ServedUserNr } | 
 |  | 
 |       ERRORS { | 
 |         notSubscribed | | 
 |         notAvailable | | 
 |         invalidServedUserNr | | 
 |         supplementaryServiceInteractionNotAllowed | | 
 |         basicServiceNotProvided | | 
 |         resourceUnavailable | | 
 |         invalidDivertedToNr | | 
 |         specialServiceNr | | 
 |         diversionToServedUserNr } | 
 |          | 
 |       CODE local:7   | 
 |     } | 
 |      | 
 |   | 
 |   -- End of ActivationDiversion operation definition | 
 |  | 
 |   | 
 |   deactivationDiversion OPERATION::= | 
 |     { | 
 |       ARGUMENT SEQUENCE { | 
 |           procedure          Procedure, | 
 |           basicService       BasicService, | 
 |           servedUserNr       ServedUserNr } | 
 |  | 
 |       ERRORS { | 
 |         notSubscribed | | 
 |         notAvailable | | 
 |         invalidServedUserNr | | 
 |         notActivated }      | 
 |          | 
 |       CODE local:8     | 
 |      } | 
 |  | 
 |   | 
 |   -- End of DeactivationDiversion operation definition | 
 |  | 
 |   | 
 |   activationStatusNotificationDiv OPERATION::= | 
 |     {     | 
 |       ARGUMENT SEQUENCE { | 
 |           procedure          Procedure, | 
 |           basicService       BasicService, | 
 |           forwardedToAddress Address, | 
 |           servedUserNr       ServedUserNr } | 
 |            | 
 |       CODE local:9     | 
 |     } | 
 |   | 
 |   -- End of ActivationStatusNotificationDiv operation definition | 
 |  | 
 |   | 
 |   deactivationStatusNotificationDiv OPERATION::= | 
 |     { | 
 |       ARGUMENT SEQUENCE { | 
 |           procedure          Procedure, | 
 |           basicService       BasicService, | 
 |           servedUserNr       ServedUserNr }    | 
 |            | 
 |       CODE local:10                  | 
 |     } | 
 |  | 
 |   | 
 |   -- End of DeactivationStatusNotificationDiv operation definition | 
 |  | 
 |   | 
 |   interrogationDiversion OPERATION::= | 
 |    { | 
 |       ARGUMENT SEQUENCE { | 
 |           procedure          Procedure, | 
 |           basicService       BasicService DEFAULT allServices, | 
 |           servedUserNr       ServedUserNr }    | 
 |     | 
 |       RESULT | 
 |         IntResultList | 
 |   | 
 |       ERRORS { | 
 |         notSubscribed | | 
 |         notAvailable | | 
 |         invalidServedUserNr }       | 
 |          | 
 |       CODE local:11           | 
 |    } | 
 |  | 
 |   | 
 |   -- End of InterrogationDiversion operation definition | 
 |  | 
 |   | 
 |   interrogateServedUserNumbers OPERATION::= | 
 |     {    | 
 |       RESULT | 
 |         ServedUserNumberList | 
 |  | 
 |   | 
 |       ERRORS { | 
 |         notSubscribed | | 
 |         notAvailable }     | 
 |          | 
 |       CODE local:17             | 
 |     } | 
 |  | 
 |   | 
 |   -- End of InterrogateServedUserNumbers operation definition | 
 |  | 
 |   | 
 |   diversionInformation OPERATION::= | 
 |     {   | 
 |       ARGUMENT SEQUENCE { | 
 |           diversionReason      DiversionReason, | 
 |           basicService         BasicService, | 
 |           servedUserSubaddress PartySubaddress OPTIONAL, | 
 |           callingAddress       [0] PresentedAddressScreened OPTIONAL, | 
 |           originalCalledNr     [1] PresentedNumberUnscreened OPTIONAL, | 
 |           lastDivertingNr      [2] PresentedNumberUnscreened OPTIONAL, | 
 |           lastDivertingReason  [3] DiversionReason OPTIONAL, | 
 |           userInfo             Q931InformationElement OPTIONAL } | 
 |           -- The User-user information element, as specified in the DSS1 L3 | 
 |           -- protocol FS shall be embedded in the userInfo parameter | 
 |            | 
 |       CODE local:12           | 
 |   | 
 |    } | 
 |   -- End of DiversionInformation operation definition | 
 |  | 
 |   | 
 |   callDeflection OPERATION::= | 
 |     {       | 
 |       ARGUMENT SEQUENCE { | 
 |           deflectionAddress                 Address, | 
 |           presentationAllowedDivertedToUser PresentationAllowedIndicator | 
 |            OPTIONAL } | 
 |             | 
 |              | 
 |       ERRORS { | 
 |         notSubscribed | | 
 |         notAvailable | | 
 |         invalidDivertedToNr | | 
 |         specialServiceNr | | 
 |         diversionToServedUserNr | | 
 |         incomingCallAccepted | | 
 |         numberOfDiversionsExceeded | | 
 |         supplementaryServiceInteractionNotAllowed | | 
 |         requestAlreadyAccepted }       | 
 |          | 
 |       CODE local:13     | 
 |     } | 
 |  | 
 |   | 
 |   -- End of CallDeflection operation definition | 
 |  | 
 |   | 
 |   callRerouting OPERATION::= | 
 |     {     | 
 |       ARGUMENT SEQUENCE { | 
 |           reroutingReason        DiversionReason, | 
 |           calledAddress          Address, | 
 |           reroutingCounter       DiversionCounter, | 
 |           q931InfoElement        Q931InformationElement, | 
 |           lastReroutingNr        [1] PresentedNumberUnscreened, | 
 |           subscriptionOption     [2] SubscriptionOption DEFAULT noNotification, | 
 |           callingPartySubaddress [3] PartySubaddress OPTIONAL } | 
 |           -- The User-user information element (optional), High layer | 
 |           -- compatibility information element (optional), Bearer capability | 
 |           -- information element and Low layer compatibility information | 
 |           -- element (optional) as specified in the DSS1 L3 protocol FS shall be | 
 |           -- embedded in the q931InfoElement | 
 |   | 
 |       ERRORS { | 
 |         notSubscribed | | 
 |         notAvailable | | 
 |         supplementaryServiceInteractionNotAllowed | | 
 |         resourceUnavailable | | 
 |         invalidDivertedToNr | | 
 |         specialServiceNr | | 
 |         diversionToServedUserNr | | 
 |         numberOfDiversionsExceeded }   | 
 |          | 
 |       CODE local:14         | 
 |     } | 
 |  | 
 |   | 
 |   -- End of CallRerouting operation definition | 
 |  | 
 |   | 
 |   divertingLegInformation1 OPERATION::= | 
 |     {   | 
 |       ARGUMENT SEQUENCE { | 
 |           diversionReason    DiversionReason, | 
 |           subscriptionOption SubscriptionOption, | 
 |           divertedToNumber   PresentedNumberUnscreened OPTIONAL }    | 
 |            | 
 |       CODE local:18            | 
 |     } | 
 |  | 
 |   | 
 |   -- End of DivertingLegInformation1 operation definition | 
 |  | 
 |   | 
 |   divertingLegInformation2 OPERATION::= | 
 |     { | 
 |         ARGUMENT SEQUENCE { | 
 |           diversionCounter   DiversionCounter, | 
 |           diversionReason    DiversionReason, | 
 |           divertingNr        [1] PresentedNumberUnscreened OPTIONAL, | 
 |           originalCalledNr   [2] PresentedNumberUnscreened OPTIONAL }    | 
 |            | 
 |         CODE local:15          | 
 |     } | 
 |  | 
 |   | 
 |   -- End of DivertingLegInformation2 operation definition | 
 |  | 
 |   divertingLegInformation3 OPERATION::= | 
 |     { | 
 |         ARGUMENT PresentationAllowedIndicator | 
 |          | 
 |         CODE local:19 | 
 |     } | 
 |      | 
 |   uUSRequest OPERATION::= | 
 |     { | 
 |       ARGUMENT SEQUENCE { | 
 |           service   [1] IMPLICIT Service, | 
 |           preferred [2] IMPLICIT Preferred } | 
 |            | 
 |       CODE local:66     | 
 |     }   | 
 |   | 
 |   -- End of DivertingLegInformation3 operation definition | 
 |  | 
 |   | 
 |   -- The ETS specifies SIZE (0..29) | 
 |   -- Buffer implementation only supports SIZE (0..10) | 
 |   -- IntResultList ::= SET SIZE (0..29) OF IntResult | 
 |   IntResultList ::= SET SIZE (0..10) OF IntResult | 
 |  | 
 |   | 
 |   IntResult ::= | 
 |       SEQUENCE { | 
 |         servedUserNr       ServedUserNr, | 
 |         basicService       BasicService, | 
 |         procedure          Procedure, | 
 |         forwardedToAddress Address } | 
 |  | 
 |   | 
 |   ServedUserNr ::= | 
 |       CHOICE { | 
 |         individualNumbers PartyNumber, | 
 |         allNumbers        NULL } | 
 |  | 
 |   | 
 |   DiversionCounter ::= INTEGER (1..5) | 
 |  | 
 |   | 
 |   SubscriptionOption ::= | 
 |       ENUMERATED { | 
 |         noNotification                  (0), | 
 |         notificationWithoutDivertedToNr (1), | 
 |         notificationWithDivertedToNr    (2) } | 
 |  | 
 |   | 
 |   Procedure ::= | 
 |       ENUMERATED { | 
 |         cfu  (0), | 
 |         cfb  (1), | 
 |         cfnr (2) } | 
 |  | 
 |   | 
 |   -- The ETS specifies SIZE (0..99) | 
 |   -- Buffer implementation only supports SIZE (0..31) | 
 |   -- ServedUserNumberList ::= SET SIZE (0..99) OF PartyNumber | 
 |   ServedUserNumberList ::= SET SIZE (0..31) OF PartyNumber | 
 |  | 
 |   | 
 |   DiversionReason ::= | 
 |       ENUMERATED { | 
 |         unknown     (0), | 
 |         cfu         (1), | 
 |         cfb         (2), | 
 |         cfnr        (3), | 
 |         cdAlerting  (4), | 
 |         cdImmediate (5) } | 
 |  | 
 |   | 
 |   invalidDivertedToNr         ERROR  ::= {CODE local:12} | 
 |   specialServiceNr            ERROR  ::= {CODE local:14} | 
 |   diversionToServedUserNr     ERROR  ::= {CODE local:15} | 
 |   incomingCallAccepted        ERROR  ::= {CODE local:23} | 
 |   numberOfDiversionsExceeded  ERROR  ::= {CODE local:24} | 
 |   requestAlreadyAccepted      ERROR  ::= {CODE local:48} | 
 |   notActivated                ERROR  ::= {CODE local:46} | 
 |  | 
 |  | 
 |   | 
 | END -- of diversion operation definitions | 
 |     |