Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Added _exception opcode

...

qmf.opcode field

Message Body Data Type

Sent By

Sent To

Description

_exception

QMF_DATA

Agent

reply-to

This general-purpose message can be sent by an agent in response to any request (query, subscription, method) if the request could not be completed for any reason. The QMF_DATA in the message body contains details of why the failure occurred.

_agent_locate_request

QMF_QUERY_PREDICATE

Console

QMF Topic

A console may send an agent-locate-request in order to reach all available agents. The predicate may be used to limit the set of agents that will respond to the request.

_agent_locate_response

QMF_DATA

Agent

reply-to

This is a response to an agent-locate-request. An agent will send an agent-locate-response if it received an agent-locate-request with a predicate that matches its characteristics.

_agent_heartbeat_indication

QMF_DATA

Agent

Topic

Each agent periodically sends a heartbeat message to a topic to indicate that it is alive and connected. The content of the heartbeat message is the list of the agent's characteristics.

_query_request

QMF_QUERY

Console

Agent

A console sends a query to an agent to request that the agent send data to the requester.

_query_response

List of <qmf.content>

Agent

reply-to

The response to a query sent by a console.

_subscribe_request

QMF_SUBSCRIBE

Console

Agent

A console sends a subscribe-request to an agent to receive data matched by a query. A subscription differs from a query request in that it continues to send updated information to the console when the data changes.

_subscribe_response

QMF_SUBSCRIPTION

Agent

reply-to

When an agent receives a subscribe-request, it sends a subscribe-response granting (or refusing) the subscription.  Should the subscription succeed, the response will contain an identifier for the subscription assigned by the Agent. Thereafter, it will send data-indication messages on the same correlation-id with updates when they happen or periodically.  The first data-indication message sent by the agent will contain all matching data, subsequent data-indications will contain only those matching data that has changed since the last update.

_subscribe_cancel_indication

QMF_SUBSCRIPTION_ID

Console

Agent

A console can request that a subscription that it requested be immediately cancelled. This message must have the same correlation-id as the original request. 

_subscribe_refresh_request

QMF_SUBSCRIPTION_ID

Console

Agent

A console can keep a subscription alive by periodically refreshing it by sending a subscribe-refresh-request. This message must have the same correlation-id as the original request.  The QMF_SUBSCRIPTION must contain the subscription identifier assigned to the subscription by the Agent.

_subscribe_refresh_response

QMF_SUBSCRIPTION

Agent

reply-to

When an agent receives a subscribe-refresh-request, it sends a subscribe-refresh-response granting (or refusing) the subscription refresh.   

_data_indication

List of <qmf.content>

Agent

reply-to or topic

A data indication is sent by an Agent when 1) subscription data has changed and needs to be published, 2) an event has occurred and event data is being published, and 3) any other time an agent wants to send unsolicited data.

_method_request

QMF_METHOD_CALL

Console

Agent

A console may invoke a method on an object managed by an agent. It may also invoke a method directly on the agent if appropriate. This message contains the method call including the input arguments.

_method_response

QMF_METHOD_RESULT

Agent

reply-to

A method call always results in a single method result. This message carries either the output arguments from a successful method call or it holds an exception to describe a failure.

...

No Format
  QMF_METHOD_RESULT := { _exceptionarguments: QMF_DATA,
                         _arguments: { { EACH_KEY: VALUE },
                         _subtypes:  { EACH_KEY: STRING }
                       }
Data containing error information if the method call failed

Field

Optional

Description

_exception

yes

_arguments

yes

Output arguments from a successful method call, if any

_subtypes

yes

Subtype information for the output arguments, if any

...

No Format
  QMF_SUBSCRIPTION := { _subscription_id:     STRING,
                        _duration:  NUMBER,
                        _interval:  NUMBER,
                        _error: QMF_DATA
                      }

Field

Optional

Description

_subscription_id

yes

Assigned by the Agent when replying to a successful subscription request. Must be supplied by the Console when sending a subscription refresh or cancel to the Agent for this subscription. Should the request fail, the Agent should not supply this field, and may set the _error field.

_duration

no

The time (in seconds) after which this subscription will be automatically canceled.

_interval

no

The time (in milliseconds) between periodic updates of data in this subscription.

_error

yes

Set by the Agent in response to a failed subscription or refresh request. Contains error information indicating why the subscription request or refresh failed.

QMF_SUBSCRIPTION_ID

No Format
QMF_SUBSCRIPTION_ID := { _subscription_id:     STRING,
                         _duration:  NUMBER
                       }

...