3.1.4.2.1 Remote Shells

To read the properties of an active Shell, a wst:Get message MAY be sent by using the ShellID selector in the wsa:EndpointReference returned in the wst:ResourceCreated message, when the Shell was first created.

This message MAY be sent asynchronously to any outstanding messages in progress to the specified Shell.<102>

The value of Resource URI will be different for the Text-based Command Shell and the Custom Remote Shell.<103>

In case of Text-based Command Shell, the value of Resource URI MUST be as follows.

 http://schemas.microsoft.com/wbem/wsman/1/windows/shell/cmd 
  

An example of Resource URI for Custom Remote Shell scenario is as follows.

 http://schemas.microsoft.com/wbem/wsman/1/windows/shell/CustomShell 
  

On successful processing of a wst:Get request message, a processor MUST return a wst:GetResponse message in the form, as specified in [DMTF-DSP0226], with the only difference being that in the case of the Custom Remote Shell scenario, CommandLine element is absent. The body of the GetResponse message is described by the Shell data type.

The following elements MUST be present in the rsp:Shell element in the GetResponse message:

  • ShellID

  • InputStreams

  • OutputStreams

The following elements SHOULD<104>be present in the rsp:Shell element in the GetResponse message:

  • ResourceUri

  • Owner

  • ClientIP

  • IdleTimeout

  • ShellRunTime

  • ShellInactivity

The following additional fields SHOULD be returned by shell instances of plugins that support the Disconnected Shell capability:

  • Name

  • ProcessId

  • MaxTimeout

  • Locale

  • DataLocale

  • CompressionMode

  • ProfileLoaded

  • Encoding

  • BufferMode

  • State

The Lifetime element MAY<105>be present in the rsp:Shell element in the GetResponse message. If the Lifetime element is present, its value SHOULD be equal to the value specified for the Lifetime element in the initial wst:Create message or the default value (as specified in section 2.2.4.37) minus the amount of time that has elapsed since the shell was created. This value MUST be expressed in seconds.

The CommandLine element MUST be present in the rsp:Shell element in the in the Text-based Command Shell scenario, and MUST NOT be present in the rsp:Shell element in the case of Custom Remote Shell scenario.

The WS-Management specification defines the FragmentTransfer SOAP header, which is used to retrieve and update fragments or individual elements of a CIM object. More details are specified in [DMTF-DSP0226] section 7.7.

Web Services Management Protocol Extensions for Windows Vista Service does not support the FragmentTransfer SOAP header for Shell operations and the clients SHOULD NOT use it. If a Web Services Management Protocol Extensions for Windows Vista Service receives a Get request that contains a FragmentTransfer SOAP header and a Resource URI that represents either a Text-based Command Shell or a Custom Remote Shell, it MUST return a wsman:UnsupportedFeature fault.