Optionally sends count details about individual skill. This is only set when querying labels or our own current peer. For record requests, only returns the data about that record.
Minimal target query match score. For example, if min_match_score=2, it will return records that match at least two of the queries. If not set, it will return records that match at least one query.
Limit the number of results returned. If not set, it will return all discovered records. Note that this is a soft limit, as the search may return more results than the limit if there are multiple peers providing the same record.
Announce to the network that this peer is providing a given record. This enables other peers to discover this record and retrieve it from this peer. Listeners can use this event to perform custom operations, for example by cloning the record.
Items need to be periodically republished (eg. 24h) to the network to avoid stale data. Republication should be done in the background. |
| Unpublish | UnpublishRequest | .google.protobuf.Empty | Stop serving this record to the network. If other peers try to retrieve this record, the peer will refuse the request. |
| Search | SearchRequest | SearchResponse stream | Search records based on the request across the network. This will search the network for the record with the given parameters.
It is possible that the records are stale or that they do not exist. Some records may be provided by multiple peers.
Results from the search can be used as an input to Pull operation to retrieve the records. |
| List | ListRequest | ListResponse stream | List all records that this peer is currently providing that match the given parameters. This operation does not interact with the network. |
ID of a given peer, typically described by a protocol. For example: - SPIFFE: "spiffe://example.org/service/foo" - JWT: "jwt:sub=alice,iss=https://issuer.example.com" - Tor: "onion:abcdefghijklmno.onion" - DID: "did:example:123456789abcdefghi" - IPFS: "ipfs:QmYwAPJzv5CZsnAzt8auVZRn2E6sD1c4x8pN5o6d5cW4D5"
Sender does not have a connection to peer, and no extra information (default)
PEER_CONNECTION_TYPE_CONNECTED
1
Sender has a live connection to peer.
PEER_CONNECTION_TYPE_CAN_CONNECT
2
Sender recently connected to peer.
PEER_CONNECTION_TYPE_CANNOT_CONNECT
3
Sender made strong effort to connect to peer repeatedly but failed.
routing/v1/record_query.proto
RecordQuery
A query to match the record against during discovery.
For example:
{ type: RECORD_QUERY_TYPE_SKILL, value: "Natural Language Processing" }
{ type: RECORD_QUERY_TYPE_LOCATOR, value: "helm-chart" }