Describe Resources
Message to discover available resources in endpoints
Last updated
Was this helpful?
Message to discover available resources in endpoints
Last updated
Was this helpful?
This message enables discovering remote defined both in client and server. Resources can be defined dynamically by clients and servers. As described in the definition, a resource is basically like a function that can be executed like in RPC (Remote Procedure Call). As a "function" it can receive parameters, inputs, and provide an output.
This message allows discovering such resources, like its names, function type, if they support streaming, required parameters, etc.
Message Type
0x07
Describe Resources
Message Size
Remaining Message Length
Stream Id
0x01
Parameters
0x02
Params
Resource
0x03
If no resource is specified while sending the Describe Resources message, the target endpoint should list all available resources,
In such document each key represents the resource name
Function Type
fn
1 : function without parameters
2 : function with input
3: function with output
4: function with input and output
Provides information about the function type, i.e., if it requires and input, provides an output, none, or both of them.
Parameters
pr
true: requires parameters
false: no parameters required
Determines if the resource requires parameters to be executed. By default, if not specified, the resource does not require parameters to be executed.
Stream
st
true: support Stream
false: no stream support
Determines if the resource can be used with the Streams functionality. By default, if not specified, the stream support is enabled.
Resource identifier
id
varint
An alternative numeric resource identifier, instead of a name, that can be used to call this resource.
The resources cannot be described, i.e., no support for describing resources.
If a resource is specified while sending the Describe Resources message, the target endpoint should reply with the resource details.
The resource cannot be described, i.e, it does not exists.
.
. It should be a string or a resource identifier. If not sent, the target endpoint should report all available resources.
If the request succeed, the remote endpoint should return an with the following payload:
If the request succeed, the remote endpoint should return an with the following payload: