-- Module Call-Hold-Operations (H.450.4:05/1999)
-- See also ITU-T H.450.4 (05/1999)
-- See also the index of all ASN.1 assignments needed in this document

Call-Hold-Operations {itu-t recommendation h 450 4 version1(0)
  call-hold-operations(0)} DEFINITIONS AUTOMATIC TAGS ::=
BEGIN

IMPORTS
  OPERATION, ERROR
    FROM Remote-Operations-Information-Objects {joint-iso-itu-t
      remote-operations(4) informationObjects(5) version1(0)}
  EXTENSION, Extension{}
    FROM Manufacturer-specific-service-extension-definition {itu-t
      recommendation h 450 1 version1(0) msi-definition(18)}
  notAvailable, invalidCallState, resourceUnavailable,
    supplementaryServiceInteractionNotAllowed
    FROM H4501-General-Error-List {itu-t recommendation h 450 1 version1(0)
      general-error-list(1)}
  NonStandardParameter
    FROM H323-MESSAGES; -- see H.225.0

CallHoldOperations OPERATION ::=
  {holdNotific | retrieveNotific | remoteHold | remoteRetrieve}

holdNotific OPERATION ::=
  { -- sent from holding to held H.323 endpoint to invoke near-end call hold feature

  ARGUMENT         HoldNotificArg
  OPTIONAL         TRUE
  RETURN RESULT    FALSE
  ALWAYS RESPONDS  FALSE
  CODE             local:101
}

HoldNotificArg ::= SEQUENCE {
  extensionArg  SEQUENCE SIZE (0..255) OF MixedExtension OPTIONAL,
  ...
}

retrieveNotific OPERATION ::=
  { -- sent from holding to held H.323 endpoint to invoke retrieval of near-end call hold feature

  ARGUMENT         RetrieveNotificArg
  OPTIONAL         TRUE
  RETURN RESULT    FALSE
  ALWAYS RESPONDS  FALSE
  CODE             local:102
}

RetrieveNotificArg ::= SEQUENCE {
  extensionArg  SEQUENCE SIZE (0..255) OF MixedExtension OPTIONAL,
  ...
}

remoteHold OPERATION ::=
  { -- sent from holding to held H.323 endpoint to invoke remote-end call hold feature

  ARGUMENT  RemoteHoldArg
  OPTIONAL  TRUE
  RESULT    RemoteHoldRes
  OPTIONAL  TRUE
  ERRORS
    {notAvailable
      | -- feature not available in combination with the basic service
       invalidCallState | --hold not possible in current call state
       resourceUnavailable | -- maximum number of calls on hold reached
       supplementaryServiceInteractionNotAllowed |
      
      -- other supplementary service prohibits hold
      undefined -- undefined reason--}
  CODE      local:103
}

RemoteHoldArg ::= SEQUENCE {
  extensionArg  SEQUENCE SIZE (0..255) OF MixedExtension OPTIONAL,
  ...
}

RemoteHoldRes ::= SEQUENCE {
  extensionRes  SEQUENCE SIZE (0..255) OF MixedExtension OPTIONAL,
  ...
}

remoteRetrieve OPERATION ::=
  { -- sent from holding to held H.323 endpoint to invoke retrieval of remote-end call hold feature

  ARGUMENT  RemoteRetrieveArg
  OPTIONAL  TRUE
  RESULT    RemoteRetrieveRes
  OPTIONAL  TRUE
  ERRORS
    {invalidCallState |
      
      -- Call to which retrieve request applies is not in state Hold_RE_Held
      undefined -- undefined reason--}
  CODE      local:104
}

RemoteRetrieveArg ::= SEQUENCE {
  extensionArg  SEQUENCE SIZE (0..255) OF MixedExtension OPTIONAL,
  ...
}

RemoteRetrieveRes ::= SEQUENCE {
  extensionRes  SEQUENCE SIZE (0..255) OF MixedExtension OPTIONAL,
  ...
}

MixedExtension ::= CHOICE {
  extension        Extension{{ExtensionSet}},
  nonStandardData  NonStandardParameter
}

ExtensionSet EXTENSION ::=
  {...}

-- Actual values defined by individual manufacturers
undefined ERROR ::= {
  PARAMETER  SEQUENCE SIZE (0..255) OF MixedExtension
  OPTIONAL   TRUE
  CODE       local:2002
}

END -- of Call-Hold-Operations
-- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D