ensemble-client 2.0.0__tar.gz → 2.2.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {ensemble_client-2.0.0 → ensemble_client-2.2.0}/PKG-INFO +36 -1
- {ensemble_client-2.0.0 → ensemble_client-2.2.0}/README.md +35 -0
- {ensemble_client-2.0.0 → ensemble_client-2.2.0}/ensemble/__init__.py +15 -1
- ensemble_client-2.2.0/ensemble/_proto/ensemble_pb2.py +353 -0
- {ensemble_client-2.0.0 → ensemble_client-2.2.0}/ensemble/_proto/ensemble_pb2_grpc.py +939 -0
- ensemble_client-2.2.0/ensemble/attach.py +226 -0
- {ensemble_client-2.0.0 → ensemble_client-2.2.0}/ensemble/client.py +372 -3
- {ensemble_client-2.0.0 → ensemble_client-2.2.0}/ensemble/errors.py +13 -0
- {ensemble_client-2.0.0 → ensemble_client-2.2.0}/ensemble/events.py +63 -0
- {ensemble_client-2.0.0 → ensemble_client-2.2.0}/pyproject.toml +1 -1
- ensemble_client-2.0.0/ensemble/_proto/ensemble_pb2.py +0 -197
- {ensemble_client-2.0.0 → ensemble_client-2.2.0}/.gitignore +0 -0
- {ensemble_client-2.0.0 → ensemble_client-2.2.0}/ensemble/_proto/__init__.py +0 -0
- {ensemble_client-2.0.0 → ensemble_client-2.2.0}/ensemble/auth.py +0 -0
- {ensemble_client-2.0.0 → ensemble_client-2.2.0}/ensemble/node_events.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ensemble-client
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.2.0
|
|
4
4
|
Summary: Python client for the Ensemble peer-to-peer messaging daemon.
|
|
5
5
|
Project-URL: Homepage, https://github.com/boxsie/ensemble
|
|
6
6
|
Project-URL: Repository, https://github.com/boxsie/ensemble.git
|
|
@@ -146,6 +146,41 @@ There is no clean equivalent to the Go CLI's `--tls-insecure` flag in
|
|
|
146
146
|
grpc-python; the parameter exists for API parity but does not currently
|
|
147
147
|
disable verification.
|
|
148
148
|
|
|
149
|
+
### Supervised installs (`Client.from_env()`)
|
|
150
|
+
|
|
151
|
+
When the daemon installs and supervises a service, it execs the child with a
|
|
152
|
+
spawn contract in the environment and mints a per-spawn token. A supervised
|
|
153
|
+
service must present that token on `RegisterService` (admin-signed auth alone
|
|
154
|
+
is the registry/sidecar path, not the supervised one) — the daemon clamps the
|
|
155
|
+
manifest to the install-time capability ceiling and binds the token to the
|
|
156
|
+
installed name.
|
|
157
|
+
|
|
158
|
+
`Client.from_env()` builds the right client for either deployment, with this
|
|
159
|
+
precedence:
|
|
160
|
+
|
|
161
|
+
1. `ENSEMBLE_SERVICE_TOKEN` set → **supervised**: dial `ENSEMBLE_SOCKET` and
|
|
162
|
+
attach the token as `x-service-token` metadata on `RegisterService`. No
|
|
163
|
+
seed — the token is the auth.
|
|
164
|
+
2. otherwise → **standalone / sidecar**: dial `ENSEMBLE_SOCKET` and, if
|
|
165
|
+
`ENSEMBLE_AUTH_SEED` names a seed file, sign every RPC with it.
|
|
166
|
+
|
|
167
|
+
Read the name to register under (and the per-service data dir) from
|
|
168
|
+
`SpawnContext.from_env()`:
|
|
169
|
+
|
|
170
|
+
```python
|
|
171
|
+
from ensemble import Client, SpawnContext
|
|
172
|
+
|
|
173
|
+
ctx = SpawnContext.from_env() # socket / name / token / data_dir
|
|
174
|
+
async with Client.from_env() as client:
|
|
175
|
+
svc = await client.register(ctx.service_name or "my-service", ...)
|
|
176
|
+
# ctx.data_dir is the writable dir the daemon allocated for this service.
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
The spawn-contract env vars (`ENSEMBLE_SOCKET`, `ENSEMBLE_SERVICE_NAME`,
|
|
180
|
+
`ENSEMBLE_SERVICE_TOKEN`, `ENSEMBLE_DATA_DIR`) are set by the daemon's
|
|
181
|
+
supervisor — you don't set them yourself. Passing `service_token=...` to
|
|
182
|
+
`Client(...)` directly is the lower-level escape hatch `from_env()` wraps.
|
|
183
|
+
|
|
149
184
|
## Events
|
|
150
185
|
|
|
151
186
|
`ServiceHandle.events()` yields decoded dataclasses, not raw protobuf:
|
|
@@ -114,6 +114,41 @@ There is no clean equivalent to the Go CLI's `--tls-insecure` flag in
|
|
|
114
114
|
grpc-python; the parameter exists for API parity but does not currently
|
|
115
115
|
disable verification.
|
|
116
116
|
|
|
117
|
+
### Supervised installs (`Client.from_env()`)
|
|
118
|
+
|
|
119
|
+
When the daemon installs and supervises a service, it execs the child with a
|
|
120
|
+
spawn contract in the environment and mints a per-spawn token. A supervised
|
|
121
|
+
service must present that token on `RegisterService` (admin-signed auth alone
|
|
122
|
+
is the registry/sidecar path, not the supervised one) — the daemon clamps the
|
|
123
|
+
manifest to the install-time capability ceiling and binds the token to the
|
|
124
|
+
installed name.
|
|
125
|
+
|
|
126
|
+
`Client.from_env()` builds the right client for either deployment, with this
|
|
127
|
+
precedence:
|
|
128
|
+
|
|
129
|
+
1. `ENSEMBLE_SERVICE_TOKEN` set → **supervised**: dial `ENSEMBLE_SOCKET` and
|
|
130
|
+
attach the token as `x-service-token` metadata on `RegisterService`. No
|
|
131
|
+
seed — the token is the auth.
|
|
132
|
+
2. otherwise → **standalone / sidecar**: dial `ENSEMBLE_SOCKET` and, if
|
|
133
|
+
`ENSEMBLE_AUTH_SEED` names a seed file, sign every RPC with it.
|
|
134
|
+
|
|
135
|
+
Read the name to register under (and the per-service data dir) from
|
|
136
|
+
`SpawnContext.from_env()`:
|
|
137
|
+
|
|
138
|
+
```python
|
|
139
|
+
from ensemble import Client, SpawnContext
|
|
140
|
+
|
|
141
|
+
ctx = SpawnContext.from_env() # socket / name / token / data_dir
|
|
142
|
+
async with Client.from_env() as client:
|
|
143
|
+
svc = await client.register(ctx.service_name or "my-service", ...)
|
|
144
|
+
# ctx.data_dir is the writable dir the daemon allocated for this service.
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
The spawn-contract env vars (`ENSEMBLE_SOCKET`, `ENSEMBLE_SERVICE_NAME`,
|
|
148
|
+
`ENSEMBLE_SERVICE_TOKEN`, `ENSEMBLE_DATA_DIR`) are set by the daemon's
|
|
149
|
+
supervisor — you don't set them yourself. Passing `service_token=...` to
|
|
150
|
+
`Client(...)` directly is the lower-level escape hatch `from_env()` wraps.
|
|
151
|
+
|
|
117
152
|
## Events
|
|
118
153
|
|
|
119
154
|
`ServiceHandle.events()` yields decoded dataclasses, not raw protobuf:
|
|
@@ -5,6 +5,7 @@ subpackage contains generated gRPC stubs and is internal; consumers should
|
|
|
5
5
|
not import from it.
|
|
6
6
|
"""
|
|
7
7
|
|
|
8
|
+
from .attach import AttachedService
|
|
8
9
|
from .auth import pubkey_hex, signing_interceptors
|
|
9
10
|
from .client import (
|
|
10
11
|
ACL,
|
|
@@ -12,12 +13,15 @@ from .client import (
|
|
|
12
13
|
Command,
|
|
13
14
|
CommandHandler,
|
|
14
15
|
ConnectResult,
|
|
16
|
+
Metric,
|
|
15
17
|
PeerIntroductionHandler,
|
|
16
18
|
RpcMessageHandler,
|
|
17
19
|
ServiceHandle,
|
|
20
|
+
SpawnContext,
|
|
18
21
|
Transport,
|
|
19
22
|
)
|
|
20
23
|
from .errors import (
|
|
24
|
+
AttachError,
|
|
21
25
|
AuthError,
|
|
22
26
|
ConnectionError,
|
|
23
27
|
EnsembleError,
|
|
@@ -30,8 +34,11 @@ from .errors import (
|
|
|
30
34
|
from .events import (
|
|
31
35
|
ChatMessage,
|
|
32
36
|
CommandInvocation,
|
|
37
|
+
ConnectionClosed,
|
|
38
|
+
ConnectionEstablished,
|
|
33
39
|
ConnectionRequest,
|
|
34
40
|
FileOffer,
|
|
41
|
+
OperatorMessage,
|
|
35
42
|
PeerIntroduction,
|
|
36
43
|
RpcMessage,
|
|
37
44
|
ServiceEvent,
|
|
@@ -41,19 +48,25 @@ from .node_events import DaemonChatMessage, DaemonEvent
|
|
|
41
48
|
|
|
42
49
|
__all__ = [
|
|
43
50
|
"ACL",
|
|
51
|
+
"AttachedService",
|
|
52
|
+
"AttachError",
|
|
44
53
|
"AuthError",
|
|
45
54
|
"ChatMessage",
|
|
46
55
|
"Client",
|
|
47
56
|
"Command",
|
|
57
|
+
"Metric",
|
|
48
58
|
"CommandHandler",
|
|
49
59
|
"CommandInvocation",
|
|
60
|
+
"ConnectionClosed",
|
|
50
61
|
"ConnectionError",
|
|
62
|
+
"ConnectionEstablished",
|
|
51
63
|
"ConnectionRequest",
|
|
52
64
|
"ConnectResult",
|
|
53
65
|
"DaemonChatMessage",
|
|
54
66
|
"DaemonEvent",
|
|
55
67
|
"EnsembleError",
|
|
56
68
|
"FileOffer",
|
|
69
|
+
"OperatorMessage",
|
|
57
70
|
"PayloadTooLargeError",
|
|
58
71
|
"PeerIntroduction",
|
|
59
72
|
"PeerIntroductionHandler",
|
|
@@ -64,6 +77,7 @@ __all__ = [
|
|
|
64
77
|
"ServiceEvent",
|
|
65
78
|
"ServiceHandle",
|
|
66
79
|
"ServiceProtocolError",
|
|
80
|
+
"SpawnContext",
|
|
67
81
|
"Transport",
|
|
68
82
|
"TransportMismatchError",
|
|
69
83
|
"UnknownEvent",
|
|
@@ -71,4 +85,4 @@ __all__ = [
|
|
|
71
85
|
"signing_interceptors",
|
|
72
86
|
]
|
|
73
87
|
|
|
74
|
-
__version__ = "
|
|
88
|
+
__version__ = "2.2.0"
|
|
@@ -0,0 +1,353 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# NO CHECKED-IN PROTOBUF GENCODE
|
|
4
|
+
# source: ensemble.proto
|
|
5
|
+
# Protobuf Python Version: 6.31.1
|
|
6
|
+
"""Generated protocol buffer code."""
|
|
7
|
+
from google.protobuf import descriptor as _descriptor
|
|
8
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
9
|
+
from google.protobuf import runtime_version as _runtime_version
|
|
10
|
+
from google.protobuf import symbol_database as _symbol_database
|
|
11
|
+
from google.protobuf.internal import builder as _builder
|
|
12
|
+
_runtime_version.ValidateProtobufRuntimeVersion(
|
|
13
|
+
_runtime_version.Domain.PUBLIC,
|
|
14
|
+
6,
|
|
15
|
+
31,
|
|
16
|
+
1,
|
|
17
|
+
'',
|
|
18
|
+
'ensemble.proto'
|
|
19
|
+
)
|
|
20
|
+
# @@protoc_insertion_point(imports)
|
|
21
|
+
|
|
22
|
+
_sym_db = _symbol_database.Default()
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0e\x65nsemble.proto\x12\x0c\x65nsemble.api\"\x14\n\x12GetIdentityRequest\":\n\x13GetIdentityResponse\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12\x12\n\npublic_key\x18\x02 \x01(\x0c\"O\n\x14VerifyBindingRequest\x12\x0f\n\x07\x62inding\x18\x01 \x01(\x0c\x12\x15\n\rdilithium_pub\x18\x02 \x01(\x0c\x12\x0f\n\x07\x61\x64\x64ress\x18\x03 \x01(\t\"H\n\x15VerifyBindingResponse\x12\n\n\x02ok\x18\x01 \x01(\x08\x12\x13\n\x0b\x65\x64\x32\x35\x35\x31\x39_pub\x18\x02 \x01(\x0c\x12\x0e\n\x06reason\x18\x03 \x01(\t\"\x12\n\x10GetStatusRequest\"r\n\x11GetStatusResponse\x12\x11\n\ttor_state\x18\x01 \x01(\t\x12\x12\n\npeer_count\x18\x02 \x01(\x05\x12\x12\n\nonion_addr\x18\x03 \x01(\t\x12\x11\n\tuptime_ms\x18\x04 \x01(\x03\x12\x0f\n\x07rt_size\x18\x05 \x01(\x05\"\x15\n\x13ListContactsRequest\"C\n\x14ListContactsResponse\x12+\n\x08\x63ontacts\x18\x01 \x03(\x0b\x32\x19.ensemble.api.ContactInfo\"\x8d\x01\n\x0b\x43ontactInfo\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12\r\n\x05\x61lias\x18\x02 \x01(\t\x12\x12\n\npublic_key\x18\x03 \x01(\x0c\x12\x15\n\ronion_address\x18\x04 \x01(\t\x12\x10\n\x08\x61\x64\x64\x65\x64_at\x18\x05 \x01(\x03\x12\x11\n\tlast_seen\x18\x06 \x01(\x03\x12\x0e\n\x06online\x18\x07 \x01(\x08\"G\n\x11\x41\x64\x64\x43ontactRequest\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12\r\n\x05\x61lias\x18\x02 \x01(\t\x12\x12\n\npublic_key\x18\x03 \x01(\x0c\"\x14\n\x12\x41\x64\x64\x43ontactResponse\"\'\n\x14RemoveContactRequest\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\"\x17\n\x15RemoveContactResponse\"!\n\x0e\x43onnectRequest\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\"4\n\x0f\x43onnectResponse\x12\x10\n\x08\x61\x63\x63\x65pted\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\"*\n\x17\x41\x63\x63\x65ptConnectionRequest\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\"\x1a\n\x18\x41\x63\x63\x65ptConnectionResponse\"*\n\x17RejectConnectionRequest\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\"\x1a\n\x18RejectConnectionResponse\"\x12\n\x10ListPeersRequest\";\n\x11ListPeersResponse\x12&\n\x05peers\x18\x01 \x03(\x0b\x32\x17.ensemble.api.PeerEntry\"g\n\tPeerEntry\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12\r\n\x05\x61lias\x18\x02 \x01(\t\x12\r\n\x05saved\x18\x03 \x01(\x08\x12\r\n\x05state\x18\x04 \x01(\t\x12\x0e\n\x06online\x18\x05 \x01(\x08\x12\x0c\n\x04kind\x18\x06 \x01(\t\"$\n\x11\x44isconnectRequest\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\"\x14\n\x12\x44isconnectResponse\"3\n\x12SendMessageRequest\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12\x0c\n\x04text\x18\x02 \x01(\t\")\n\x13SendMessageResponse\x12\x12\n\nmessage_id\x18\x01 \x01(\t\"7\n\x15GetChatHistoryRequest\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12\r\n\x05limit\x18\x02 \x01(\x05\"\x87\x01\n\x0b\x43hatMessage\x12\n\n\x02id\x18\x01 \x01(\t\x12\x11\n\tfrom_addr\x18\x02 \x01(\t\x12\x0f\n\x07to_addr\x18\x03 \x01(\t\x12\x0c\n\x04text\x18\x04 \x01(\t\x12\x12\n\nsent_at_ms\x18\x05 \x01(\x03\x12\x13\n\x0b\x61\x63ked_at_ms\x18\x06 \x01(\x03\x12\x11\n\tdirection\x18\x07 \x01(\t\"E\n\x16GetChatHistoryResponse\x12+\n\x08messages\x18\x01 \x03(\x0b\x32\x19.ensemble.api.ChatMessage\"?\n\x18\x44\x65leteChatMessageRequest\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12\x12\n\nmessage_id\x18\x02 \x01(\t\",\n\x19\x44\x65leteChatMessageResponse\x12\x0f\n\x07\x64\x65leted\x18\x01 \x01(\x08\"*\n\x17\x43learChatHistoryRequest\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\"\x1a\n\x18\x43learChatHistoryResponse\"5\n\x0fSendFileRequest\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12\x11\n\tfile_path\x18\x02 \x01(\t\"\x94\x01\n\x10TransferProgress\x12\x13\n\x0btransfer_id\x18\x01 \x01(\t\x12\x10\n\x08\x66ilename\x18\x02 \x01(\t\x12\x13\n\x0btotal_bytes\x18\x03 \x01(\x04\x12\x12\n\nsent_bytes\x18\x04 \x01(\x04\x12\x0f\n\x07percent\x18\x05 \x01(\x02\x12\x10\n\x08\x63omplete\x18\x06 \x01(\x08\x12\r\n\x05\x65rror\x18\x07 \x01(\t\";\n\x11\x41\x63\x63\x65ptFileRequest\x12\x13\n\x0btransfer_id\x18\x01 \x01(\t\x12\x11\n\tsave_path\x18\x02 \x01(\t\"\x14\n\x12\x41\x63\x63\x65ptFileResponse\"(\n\x11RejectFileRequest\x12\x13\n\x0btransfer_id\x18\x01 \x01(\t\"\x14\n\x12RejectFileResponse\",\n\x15\x43\x61ncelTransferRequest\x12\x13\n\x0btransfer_id\x18\x01 \x01(\t\"\x18\n\x16\x43\x61ncelTransferResponse\"\'\n\x0e\x41\x64\x64NodeRequest\x12\x15\n\ronion_address\x18\x01 \x01(\t\"&\n\x0f\x41\x64\x64NodeResponse\x12\x13\n\x0bpeers_found\x18\x01 \x01(\x05\"\x15\n\x13GetDebugInfoRequest\"\x8e\x02\n\x14GetDebugInfoResponse\x12\x0f\n\x07rt_size\x18\x01 \x01(\x05\x12\'\n\x08rt_peers\x18\x02 \x03(\x0b\x32\x15.ensemble.api.DHTNode\x12,\n\x0b\x63onnections\x18\x03 \x03(\x0b\x32\x17.ensemble.api.PeerState\x12\x12\n\nonion_addr\x18\x04 \x01(\t\x12\x31\n\x08services\x18\x05 \x03(\x0b\x32\x1f.ensemble.api.RegisteredService\x12\x12\n\nseed_nodes\x18\x06 \x03(\t\x12\x33\n\nsupervised\x18\x07 \x03(\x0b\x32\x1f.ensemble.api.SupervisedService\"\x98\x01\n\x11SupervisedService\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t\x12\r\n\x05state\x18\x03 \x01(\t\x12\x0e\n\x06reason\x18\x04 \x01(\t\x12\x0b\n\x03pid\x18\x05 \x01(\x05\x12\x10\n\x08restarts\x18\x06 \x01(\x05\x12\x0f\n\x07\x65nabled\x18\x07 \x01(\x08\x12\x15\n\rstarted_at_ms\x18\x08 \x01(\x03\"L\n\x18StreamServiceLogsRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\ntail_lines\x18\x02 \x01(\x05\x12\x0e\n\x06\x66ollow\x18\x03 \x01(\x08\"-\n\x0eServiceLogLine\x12\x0c\n\x04line\x18\x01 \x01(\t\x12\r\n\x05ts_ms\x18\x02 \x01(\x03\"\xa3\x01\n\x15InstallServiceRequest\x12\x0e\n\x06source\x18\x01 \x01(\t\x12\x0e\n\x06sha256\x18\x02 \x01(\t\x12\x1b\n\x13\x61\x63\x63\x65pt_capabilities\x18\x03 \x01(\x08\x12\x11\n\tno_enable\x18\x04 \x01(\x08\x12\r\n\x05\x66orge\x18\x05 \x01(\t\x12\x12\n\nforge_kind\x18\x06 \x01(\t\x12\x17\n\x0f\x66rontend_choice\x18\x07 \x01(\t\"\x9e\x01\n\x15UpgradeServiceRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06source\x18\x02 \x01(\t\x12\x0e\n\x06sha256\x18\x03 \x01(\t\x12\x1b\n\x13\x61\x63\x63\x65pt_capabilities\x18\x04 \x01(\x08\x12\r\n\x05\x66orge\x18\x05 \x01(\t\x12\x12\n\nforge_kind\x18\x06 \x01(\t\x12\x17\n\x0f\x66rontend_choice\x18\x07 \x01(\t\"\xc5\x01\n\x0fInstallProgress\x12\r\n\x05stage\x18\x01 \x01(\t\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x12\n\nbytes_done\x18\x03 \x01(\x03\x12\x13\n\x0b\x62ytes_total\x18\x04 \x01(\x03\x12\x32\n\x06result\x18\x05 \x01(\x0b\x32\".ensemble.api.InstalledServiceInfo\x12\x35\n\x0c\x63\x61pabilities\x18\x06 \x01(\x0b\x32\x1f.ensemble.api.CapabilitySummary\"\xdf\x01\n\x11\x43\x61pabilitySummary\x12\x11\n\ttransport\x18\x01 \x01(\t\x12\x0b\n\x03\x61\x63l\x18\x02 \x01(\t\x12\x1b\n\x13\x64\x65\x63ides_connections\x18\x03 \x01(\x08\x12\x15\n\rhandles_files\x18\x04 \x01(\x08\x12\x10\n\x08\x63ommands\x18\x05 \x03(\t\x12\x19\n\x11max_payload_bytes\x18\x06 \x01(\x03\x12\x10\n\x08verified\x18\x07 \x01(\x08\x12\r\n\x05grown\x18\x08 \x03(\t\x12\x16\n\x0esub_identities\x18\t \x01(\x08\x12\x10\n\x08\x66rontend\x18\n \x01(\t\"&\n\x13\x44\x65scribeNodeRequest\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\"\xc5\x01\n\x0fNodeServiceCard\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x10\n\x08\x63\x61tegory\x18\x04 \x01(\t\x12\x0c\n\x04icon\x18\x05 \x01(\t\x12\x0b\n\x03\x61\x63l\x18\x06 \x01(\t\x12\x12\n\nbehaviours\x18\x07 \x03(\t\x12\x11\n\tplacement\x18\x08 \x01(\t\x12\x11\n\tlinked_to\x18\t \x01(\t\x12\x12\n\nis_service\x18\n \x01(\x08\"\xe2\x01\n\x08NodeCard\x12\x10\n\x08nickname\x18\x01 \x01(\t\x12\x18\n\x10protocol_version\x18\x02 \x01(\t\x12\x15\n\rbuild_version\x18\x03 \x01(\t\x12\x13\n\x0b\x61\x63l_posture\x18\x04 \x01(\t\x12\x15\n\raccepts_files\x18\x05 \x01(\x08\x12\x18\n\x10\x64irect_transport\x18\x06 \x01(\x08\x12\x15\n\rrelay_offered\x18\x07 \x01(\x08\x12\x36\n\x0fpublic_services\x18\x08 \x03(\x0b\x32\x1d.ensemble.api.NodeServiceCard\"}\n\x14\x44\x65scribeNodeResponse\x12\x0e\n\x06served\x18\x01 \x01(\x08\x12\x0e\n\x06\x64\x65tail\x18\x02 \x01(\t\x12$\n\x04\x63\x61rd\x18\x03 \x01(\x0b\x32\x16.ensemble.api.NodeCard\x12\x10\n\x08verified\x18\x04 \x01(\x08\x12\r\n\x05\x65rror\x18\x05 \x01(\t\"R\n\x17UninstallServiceRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x11\n\tkeep_data\x18\x02 \x01(\x08\x12\x16\n\x0epurge_identity\x18\x03 \x01(\x08\"\x1a\n\x18UninstallServiceResponse\"&\n\x16RollbackServiceRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\"M\n\x17RollbackServiceResponse\x12\x32\n\x06result\x18\x01 \x01(\x0b\x32\".ensemble.api.InstalledServiceInfo\"5\n\x1cListInstalledServicesRequest\x12\x15\n\rcheck_updates\x18\x01 \x01(\x08\"U\n\x1dListInstalledServicesResponse\x12\x34\n\x08services\x18\x01 \x03(\x0b\x32\".ensemble.api.InstalledServiceInfo\"\xbd\x02\n\x14InstalledServiceInfo\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t\x12\r\n\x05state\x18\x03 \x01(\t\x12\x0e\n\x06reason\x18\x04 \x01(\t\x12\x0b\n\x03pid\x18\x05 \x01(\x05\x12\x10\n\x08restarts\x18\x06 \x01(\x05\x12\x0f\n\x07\x65nabled\x18\x07 \x01(\x08\x12\x15\n\rstarted_at_ms\x18\x08 \x01(\x03\x12\x0e\n\x06source\x18\t \x01(\t\x12\x0e\n\x06sha256\x18\n \x01(\t\x12\x10\n\x08verified\x18\x0b \x01(\x08\x12\x18\n\x10previous_version\x18\x0c \x01(\t\x12\x15\n\rupgradable_to\x18\r \x01(\t\x12\x10\n\x08\x66rontend\x18\x0e \x01(\t\x12+\n\x04\x63\x61rd\x18\x0f \x01(\x0b\x32\x1d.ensemble.api.NodeServiceCard\",\n\x1cStartInstalledServiceRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\"\x1f\n\x1dStartInstalledServiceResponse\"#\n\x13\x42rokerLaunchRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\"\xc1\x01\n\x14\x42rokerLaunchResponse\x12\r\n\x05ready\x18\x01 \x01(\x08\x12\x0e\n\x06reason\x18\x02 \x01(\t\x12\x0f\n\x07\x63ommand\x18\x03 \x03(\t\x12\x38\n\x03\x65nv\x18\x04 \x03(\x0b\x32+.ensemble.api.BrokerLaunchResponse.EnvEntry\x12\x13\n\x0bworking_dir\x18\x05 \x01(\t\x1a*\n\x08\x45nvEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"+\n\x1bStopInstalledServiceRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\"\x1e\n\x1cStopInstalledServiceResponse\"\xaa\x01\n\x14SetServiceEnvRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x38\n\x03set\x18\x02 \x03(\x0b\x32+.ensemble.api.SetServiceEnvRequest.SetEntry\x12\r\n\x05unset\x18\x03 \x03(\t\x12\x0f\n\x07replace\x18\x04 \x01(\x08\x1a*\n\x08SetEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"8\n\x15SetServiceEnvResponse\x12\x0c\n\x04keys\x18\x01 \x03(\t\x12\x11\n\trestarted\x18\x02 \x01(\x08\"$\n\x14GetServiceEnvRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\"l\n\x15GetServiceEnvResponse\x12\x0c\n\x04keys\x18\x01 \x03(\t\x12+\n\x08settings\x18\x02 \x03(\x0b\x32\x19.ensemble.api.SettingDecl\x12\x18\n\x10missing_required\x18\x03 \x03(\t\"\xc8\x01\n\x0bSettingDecl\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05label\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x0c\n\x04type\x18\x04 \x01(\t\x12\x0f\n\x07\x64\x65\x66\x61ult\x18\x05 \x01(\t\x12\x10\n\x08required\x18\x06 \x01(\x08\x12\x0e\n\x06secret\x18\x07 \x01(\x08\x12\x13\n\x0b\x65num_values\x18\x08 \x03(\t\x12\x10\n\x03min\x18\t \x01(\x03H\x00\x88\x01\x01\x12\x10\n\x03max\x18\n \x01(\x03H\x01\x88\x01\x01\x42\x06\n\x04_minB\x06\n\x04_max\"_\n\x15SignedServiceDocument\x12\x0b\n\x03\x64oc\x18\x01 \x01(\x0c\x12\x15\n\rdilithium_pub\x18\x02 \x01(\x0c\x12\x0f\n\x07\x62inding\x18\x03 \x01(\x0c\x12\x11\n\tsignature\x18\x04 \x01(\x0c\"k\n\rRegistryIndex\x12\x17\n\x0fgenerated_at_ms\x18\x01 \x01(\x03\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12,\n\x07\x65ntries\x18\x03 \x03(\x0b\x32\x1b.ensemble.api.RegistryEntry\"c\n\rRegistryEntry\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12/\n\x08releases\x18\x03 \x03(\x0b\x32\x1d.ensemble.api.RegistryRelease\"\xec\x01\n\x0fRegistryRelease\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x35\n\x0c\x63\x61pabilities\x18\x02 \x01(\x0b\x32\x1f.ensemble.api.CapabilitySummary\x12?\n\tplatforms\x18\x03 \x03(\x0b\x32,.ensemble.api.RegistryRelease.PlatformsEntry\x1aP\n\x0ePlatformsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12-\n\x05value\x18\x02 \x01(\x0b\x32\x1e.ensemble.api.RegistryArtifact:\x02\x38\x01\"=\n\x10RegistryArtifact\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x0e\n\x06sha256\x18\x02 \x01(\t\x12\x0c\n\x04size\x18\x03 \x01(\x03\"%\n\x12\x41\x64\x64RegistryRequest\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\"C\n\x13\x41\x64\x64RegistryResponse\x12,\n\x08registry\x18\x01 \x01(\x0b\x32\x1a.ensemble.api.RegistryInfo\"(\n\x15RemoveRegistryRequest\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\"\x18\n\x16RemoveRegistryResponse\"(\n\x15ListRegistriesRequest\x12\x0f\n\x07refresh\x18\x01 \x01(\x08\"H\n\x16ListRegistriesResponse\x12.\n\nregistries\x18\x01 \x03(\x0b\x32\x1a.ensemble.api.RegistryInfo\"k\n\x0cRegistryInfo\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x0f\n\x07\x65ntries\x18\x03 \x01(\x05\x12\x15\n\rfetched_at_ms\x18\x04 \x01(\x03\x12\r\n\x05\x65rror\x18\x05 \x01(\t\"9\n\x17SearchRegistriesRequest\x12\r\n\x05query\x18\x01 \x01(\t\x12\x0f\n\x07refresh\x18\x02 \x01(\x08\"C\n\x18SearchRegistriesResponse\x12\'\n\x04hits\x18\x01 \x03(\x0b\x32\x19.ensemble.api.RegistryHit\"\xad\x01\n\x0bRegistryHit\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\t\x12\x18\n\x10registry_address\x18\x04 \x01(\t\x12\x35\n\x0c\x63\x61pabilities\x18\x05 \x01(\x0b\x32\x1f.ensemble.api.CapabilitySummary\x12\x19\n\x11installed_version\x18\x06 \x01(\t\"F\n\x11RegisteredService\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07\x61\x64\x64ress\x18\x02 \x01(\t\x12\x12\n\nonion_addr\x18\x03 \x01(\t\"$\n\x14\x44\x65leteServiceRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\"+\n\x15RotateAdminKeyRequest\x12\x12\n\npublic_key\x18\x01 \x01(\x0c\"\x18\n\x16RotateAdminKeyResponse\"\x17\n\x15\x44\x65leteServiceResponse\"A\n\x07\x44HTNode\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12\x12\n\nonion_addr\x18\x02 \x01(\t\x12\x11\n\tlast_seen\x18\x03 \x01(\x03\":\n\tPeerState\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12\r\n\x05state\x18\x02 \x01(\t\x12\r\n\x05\x65rror\x18\x03 \x01(\t\"\x12\n\x10SubscribeRequest\",\n\x0b\x44\x61\x65monEvent\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x0f\n\x07payload\x18\x02 \x01(\t\"\xcd\x06\n\x14ServiceClientMessage\x12\x31\n\x08manifest\x18\x01 \x01(\x0b\x32\x1d.ensemble.api.ServiceManifestH\x00\x12\x38\n\x0csend_message\x18\x02 \x01(\x0b\x32 .ensemble.api.ServiceSendMessageH\x00\x12\x37\n\x06\x61\x63\x63\x65pt\x18\x03 \x01(\x0b\x32%.ensemble.api.ServiceAcceptConnectionH\x00\x12\x37\n\x06reject\x18\x04 \x01(\x0b\x32%.ensemble.api.ServiceRejectConnectionH\x00\x12<\n\x0eintroduce_peer\x18\x05 \x01(\x0b\x32\".ensemble.api.ServiceIntroducePeerH\x00\x12\x38\n\x0c\x63onnect_peer\x18\x06 \x01(\x0b\x32 .ensemble.api.ServiceConnectPeerH\x00\x12\x36\n\x0b\x61\x63\x63\x65pt_file\x18\x07 \x01(\x0b\x32\x1f.ensemble.api.ServiceAcceptFileH\x00\x12\x36\n\x0breject_file\x18\x08 \x01(\x0b\x32\x1f.ensemble.api.ServiceRejectFileH\x00\x12<\n\x0e\x63ommand_result\x18\t \x01(\x0b\x32\".ensemble.api.ServiceCommandResultH\x00\x12\x33\n\rmetric_sample\x18\n \x01(\x0b\x32\x1a.ensemble.api.MetricSampleH\x00\x12:\n\rsign_document\x18\x0b \x01(\x0b\x32!.ensemble.api.ServiceSignDocumentH\x00\x12>\n\x0f\x64isconnect_peer\x18\x0c \x01(\x0b\x32#.ensemble.api.ServiceDisconnectPeerH\x00\x12@\n\x10update_allowlist\x18\r \x01(\x0b\x32$.ensemble.api.ServiceUpdateAllowlistH\x00\x12\x36\n\x0bto_operator\x18\x0e \x01(\x0b\x32\x1f.ensemble.api.ServiceToOperatorH\x00\x42\x05\n\x03msg\"\xae\x01\n\x14ServiceServerMessage\x12\x35\n\nregistered\x18\x01 \x01(\x0b\x32\x1f.ensemble.api.ServiceRegisteredH\x00\x12+\n\x05\x65vent\x18\x02 \x01(\x0b\x32\x1a.ensemble.api.ServiceEventH\x00\x12+\n\x05\x65rror\x18\x03 \x01(\x0b\x32\x1a.ensemble.api.ServiceErrorH\x00\x42\x05\n\x03msg\"?\n\x0b\x43ommandSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\r\n\x05usage\x18\x03 \x01(\t\"\xa4\x03\n\x0fServiceManifest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x1e\n\x03\x61\x63l\x18\x03 \x01(\x0e\x32\x11.ensemble.api.ACL\x12\x11\n\tallowlist\x18\x04 \x03(\t\x12\x14\n\x0ckeypair_seed\x18\x05 \x01(\x0c\x12\x31\n\ttransport\x18\x06 \x01(\x0e\x32\x1e.ensemble.api.ServiceTransport\x12\x19\n\x11max_payload_bytes\x18\x07 \x01(\x03\x12\x31\n\nrate_limit\x18\x08 \x01(\x0b\x32\x1d.ensemble.api.RateLimitPolicy\x12\x1b\n\x13\x64\x65\x63ides_connections\x18\t \x01(\x08\x12\x15\n\rhandles_files\x18\n \x01(\x08\x12+\n\x08\x63ommands\x18\x0b \x03(\x0b\x32\x19.ensemble.api.CommandSpec\x12\x18\n\x10handles_commands\x18\x0c \x01(\x08\x12)\n\x07metrics\x18\r \x03(\x0b\x32\x18.ensemble.api.MetricSpec\"i\n\nMetricSpec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04kind\x18\x02 \x01(\t\x12\x0c\n\x04unit\x18\x03 \x01(\t\x12\x12\n\nlabel_keys\x18\x04 \x03(\t\x12\x0c\n\x04help\x18\x05 \x01(\t\x12\x0f\n\x07\x62uckets\x18\x06 \x03(\x01\"\x9e\x01\n\x0cMetricSample\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x36\n\x06labels\x18\x02 \x03(\x0b\x32&.ensemble.api.MetricSample.LabelsEntry\x12\r\n\x05value\x18\x03 \x01(\x01\x12\n\n\x02ts\x18\x04 \x01(\x03\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"=\n\x0fRateLimitPolicy\x12\x1b\n\x13requests_per_minute\x18\x01 \x01(\x05\x12\r\n\x05\x62urst\x18\x02 \x01(\x05\"f\n\x11ServiceRegistered\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12\r\n\x05onion\x18\x02 \x01(\t\x12\x31\n\ttransport\x18\x03 \x01(\x0e\x32\x1e.ensemble.api.ServiceTransport\"-\n\x0cServiceEvent\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x0f\n\x07payload\x18\x02 \x01(\x0c\"F\n\x17ServiceChatMessageEvent\x12\x11\n\tfrom_addr\x18\x01 \x01(\t\x12\x0c\n\x04text\x18\x02 \x01(\t\x12\n\n\x02ts\x18\x03 \x01(\x03\"F\n\x1dServiceConnectionRequestEvent\x12\x12\n\nrequest_id\x18\x01 \x01(\t\x12\x11\n\tfrom_addr\x18\x02 \x01(\t\"6\n!ServiceConnectionEstablishedEvent\x12\x11\n\tfrom_addr\x18\x01 \x01(\t\"1\n\x1cServiceConnectionClosedEvent\x12\x11\n\tfrom_addr\x18\x01 \x01(\t\"H\n\x16ServiceRpcMessageEvent\x12\x11\n\tfrom_addr\x18\x01 \x01(\t\x12\x0f\n\x07payload\x18\x02 \x01(\x0c\x12\n\n\x02ts\x18\x03 \x01(\x03\"_\n\x15ServiceFileOfferEvent\x12\x13\n\x0btransfer_id\x18\x01 \x01(\t\x12\x11\n\tfrom_addr\x18\x02 \x01(\t\x12\x10\n\x08\x66ilename\x18\x03 \x01(\t\x12\x0c\n\x04size\x18\x04 \x01(\x04\"X\n\x13ServiceCommandEvent\x12\x12\n\ncommand_id\x18\x01 \x01(\t\x12\x11\n\tfrom_addr\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x0c\n\x04\x61rgs\x18\x04 \x01(\t\"D\n\x14ServiceCommandResult\x12\x12\n\ncommand_id\x18\x01 \x01(\t\x12\x0c\n\x04text\x18\x02 \x01(\t\x12\n\n\x02ok\x18\x03 \x01(\x08\"(\n\x11ServiceAcceptFile\x12\x13\n\x0btransfer_id\x18\x01 \x01(\t\"8\n\x11ServiceRejectFile\x12\x13\n\x0btransfer_id\x18\x01 \x01(\t\x12\x0e\n\x06reason\x18\x02 \x01(\t\"D\n\x12ServiceSendMessage\x12\x0f\n\x07to_addr\x18\x01 \x01(\t\x12\x0c\n\x04text\x18\x02 \x01(\t\x12\x0f\n\x07payload\x18\x03 \x01(\x0c\"-\n\x17ServiceAcceptConnection\x12\x12\n\nrequest_id\x18\x01 \x01(\t\"=\n\x17ServiceRejectConnection\x12\x12\n\nrequest_id\x18\x01 \x01(\t\x12\x0e\n\x06reason\x18\x02 \x01(\t\"\'\n\x12ServiceConnectPeer\x12\x11\n\tpeer_addr\x18\x01 \x01(\t\"*\n\x15ServiceDisconnectPeer\x12\x11\n\tpeer_addr\x18\x01 \x01(\t\"5\n\x16ServiceUpdateAllowlist\x12\x0b\n\x03\x61\x64\x64\x18\x01 \x03(\t\x12\x0e\n\x06remove\x18\x02 \x03(\t\"$\n\x11ServiceToOperator\x12\x0f\n\x07payload\x18\x01 \x01(\x0c\":\n\x1bServiceOperatorMessageEvent\x12\x0f\n\x07payload\x18\x01 \x01(\x0c\x12\n\n\x02ts\x18\x02 \x01(\x03\"i\n\x1aServiceAttachClientMessage\x12\x31\n\x05start\x18\x01 \x01(\x0b\x32 .ensemble.api.ServiceAttachStartH\x00\x12\x11\n\x07payload\x18\x02 \x01(\x0cH\x00\x42\x05\n\x03msg\"\x14\n\x12ServiceAttachStart\"\x96\x01\n\x1aServiceAttachServerMessage\x12\x31\n\x08\x61ttached\x18\x01 \x01(\x0b\x32\x1d.ensemble.api.ServiceAttachedH\x00\x12\x11\n\x07payload\x18\x02 \x01(\x0cH\x00\x12+\n\x05\x65rror\x18\x03 \x01(\x0b\x32\x1a.ensemble.api.ServiceErrorH\x00\x42\x05\n\x03msg\"\'\n\x0fServiceAttached\x12\x14\n\x0cservice_addr\x18\x01 \x01(\t\"\x87\x01\n\x14ServiceIntroducePeer\x12\x0f\n\x07to_addr\x18\x01 \x01(\t\x12\x12\n\nother_addr\x18\x02 \x01(\t\x12\x12\n\nsession_id\x18\x03 \x01(\t\x12\x12\n\nexpires_at\x18\x04 \x01(\x03\x12\x11\n\trole_hint\x18\x05 \x01(\t\x12\x0f\n\x07payload\x18\x06 \x01(\x0c\":\n\x13ServiceSignDocument\x12\x12\n\nrequest_id\x18\x01 \x01(\t\x12\x0f\n\x07payload\x18\x02 \x01(\x0c\"\x87\x01\n\x16ServiceSignResultEvent\x12\x12\n\nrequest_id\x18\x01 \x01(\t\x12\x11\n\tsignature\x18\x02 \x01(\x0c\x12\x15\n\rdilithium_pub\x18\x03 \x01(\x0c\x12\x0f\n\x07\x62inding\x18\x04 \x01(\x0c\x12\x0f\n\x07\x61\x64\x64ress\x18\x05 \x01(\t\x12\r\n\x05\x65rror\x18\x06 \x01(\t\"\x98\x01\n\x1cServicePeerIntroductionEvent\x12\x19\n\x11\x66rom_service_addr\x18\x01 \x01(\t\x12\x11\n\tpeer_addr\x18\x02 \x01(\t\x12\x12\n\nsession_id\x18\x03 \x01(\t\x12\x12\n\nexpires_at\x18\x04 \x01(\x03\x12\x11\n\trole_hint\x18\x05 \x01(\t\x12\x0f\n\x07payload\x18\x06 \x01(\x0c\"Z\n\x0cServiceError\x12\x0f\n\x07message\x18\x01 \x01(\t\x12\x13\n\x0blimit_bytes\x18\x02 \x01(\x03\x12\x0c\n\x04\x63ode\x18\x03 \x01(\t\x12\x16\n\x0eretry_after_ms\x18\x04 \x01(\x03\"-\n\x1aListServiceCommandsRequest\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\"J\n\x1bListServiceCommandsResponse\x12+\n\x08\x63ommands\x18\x01 \x03(\x0b\x32\x19.ensemble.api.CommandSpec\"A\n\x12SendCommandRequest\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0c\n\x04\x61rgs\x18\x03 \x01(\t\"P\n\x13SendCommandResponse\x12\x12\n\ncommand_id\x18\x01 \x01(\t\x12\x0c\n\x04text\x18\x02 \x01(\t\x12\n\n\x02ok\x18\x03 \x01(\x08\x12\x0b\n\x03leg\x18\x04 \x01(\t\"9\n\x11GetMetricsRequest\x12\x13\n\x0bname_prefix\x18\x01 \x01(\t\x12\x0f\n\x07service\x18\x02 \x01(\t\"o\n\x10MetricDescriptor\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04kind\x18\x02 \x01(\t\x12\x0c\n\x04unit\x18\x03 \x01(\t\x12\x12\n\nlabel_keys\x18\x04 \x03(\t\x12\x0c\n\x04help\x18\x05 \x01(\t\x12\x0f\n\x07\x62uckets\x18\x06 \x03(\x01\"(\n\x0bMetricPoint\x12\r\n\x05value\x18\x01 \x01(\x01\x12\n\n\x02ts\x18\x02 \x01(\x03\"2\n\x0cMetricBucket\x12\x13\n\x0bupper_bound\x18\x01 \x01(\x01\x12\r\n\x05\x63ount\x18\x02 \x01(\x04\"\x94\x02\n\x0cMetricSeries\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x36\n\x06labels\x18\x02 \x03(\x0b\x32&.ensemble.api.MetricSeries.LabelsEntry\x12)\n\x06points\x18\x03 \x03(\x0b\x32\x19.ensemble.api.MetricPoint\x12\r\n\x05value\x18\x04 \x01(\x01\x12\x0c\n\x04rate\x18\x05 \x01(\x01\x12\r\n\x05\x63ount\x18\x06 \x01(\x04\x12\x0b\n\x03sum\x18\x07 \x01(\x01\x12+\n\x07\x62uckets\x18\x08 \x03(\x0b\x32\x1a.ensemble.api.MetricBucket\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x9e\x01\n\x12GetMetricsResponse\x12\x33\n\x0b\x64\x65scriptors\x18\x01 \x03(\x0b\x32\x1e.ensemble.api.MetricDescriptor\x12*\n\x06series\x18\x02 \x03(\x0b\x32\x1a.ensemble.api.MetricSeries\x12\x16\n\x0e\x64ropped_series\x18\x03 \x01(\x04\x12\x0f\n\x07\x65nabled\x18\x04 \x01(\x08\"Q\n\x14StreamMetricsRequest\x12\x13\n\x0bname_prefix\x18\x01 \x01(\t\x12\x0f\n\x07service\x18\x02 \x01(\t\x12\x13\n\x0binterval_ms\x18\x03 \x01(\r\"\x98\x01\n\x0cMetricUpdate\x12\x33\n\x0b\x64\x65scriptors\x18\x01 \x03(\x0b\x32\x1e.ensemble.api.MetricDescriptor\x12*\n\x06series\x18\x02 \x03(\x0b\x32\x1a.ensemble.api.MetricSeries\x12\x16\n\x0e\x64ropped_series\x18\x03 \x01(\x04\x12\x0f\n\x07\x65nabled\x18\x04 \x01(\x08*O\n\x03\x41\x43L\x12\x13\n\x0f\x41\x43L_UNSPECIFIED\x10\x00\x12\x10\n\x0c\x41\x43L_CONTACTS\x10\x01\x12\x11\n\rACL_ALLOWLIST\x10\x02\x12\x0e\n\nACL_PUBLIC\x10\x03*\x88\x01\n\x10ServiceTransport\x12!\n\x1dSERVICE_TRANSPORT_UNSPECIFIED\x10\x00\x12\x1a\n\x16SERVICE_TRANSPORT_CHAT\x10\x01\x12\x1a\n\x16SERVICE_TRANSPORT_HTTP\x10\x02\x12\x19\n\x15SERVICE_TRANSPORT_RPC\x10\x03\x32\xc6 \n\x0f\x45nsembleService\x12R\n\x0bGetIdentity\x12 .ensemble.api.GetIdentityRequest\x1a!.ensemble.api.GetIdentityResponse\x12L\n\tGetStatus\x12\x1e.ensemble.api.GetStatusRequest\x1a\x1f.ensemble.api.GetStatusResponse\x12X\n\rVerifyBinding\x12\".ensemble.api.VerifyBindingRequest\x1a#.ensemble.api.VerifyBindingResponse\x12U\n\x0cListContacts\x12!.ensemble.api.ListContactsRequest\x1a\".ensemble.api.ListContactsResponse\x12O\n\nAddContact\x12\x1f.ensemble.api.AddContactRequest\x1a .ensemble.api.AddContactResponse\x12X\n\rRemoveContact\x12\".ensemble.api.RemoveContactRequest\x1a#.ensemble.api.RemoveContactResponse\x12\x46\n\x07\x43onnect\x12\x1c.ensemble.api.ConnectRequest\x1a\x1d.ensemble.api.ConnectResponse\x12\x61\n\x10\x41\x63\x63\x65ptConnection\x12%.ensemble.api.AcceptConnectionRequest\x1a&.ensemble.api.AcceptConnectionResponse\x12\x61\n\x10RejectConnection\x12%.ensemble.api.RejectConnectionRequest\x1a&.ensemble.api.RejectConnectionResponse\x12L\n\tListPeers\x12\x1e.ensemble.api.ListPeersRequest\x1a\x1f.ensemble.api.ListPeersResponse\x12O\n\nDisconnect\x12\x1f.ensemble.api.DisconnectRequest\x1a .ensemble.api.DisconnectResponse\x12R\n\x0bSendMessage\x12 .ensemble.api.SendMessageRequest\x1a!.ensemble.api.SendMessageResponse\x12[\n\x0eGetChatHistory\x12#.ensemble.api.GetChatHistoryRequest\x1a$.ensemble.api.GetChatHistoryResponse\x12\x64\n\x11\x44\x65leteChatMessage\x12&.ensemble.api.DeleteChatMessageRequest\x1a\'.ensemble.api.DeleteChatMessageResponse\x12\x61\n\x10\x43learChatHistory\x12%.ensemble.api.ClearChatHistoryRequest\x1a&.ensemble.api.ClearChatHistoryResponse\x12K\n\x08SendFile\x12\x1d.ensemble.api.SendFileRequest\x1a\x1e.ensemble.api.TransferProgress0\x01\x12O\n\nAcceptFile\x12\x1f.ensemble.api.AcceptFileRequest\x1a .ensemble.api.AcceptFileResponse\x12O\n\nRejectFile\x12\x1f.ensemble.api.RejectFileRequest\x1a .ensemble.api.RejectFileResponse\x12[\n\x0e\x43\x61ncelTransfer\x12#.ensemble.api.CancelTransferRequest\x1a$.ensemble.api.CancelTransferResponse\x12\x46\n\x07\x41\x64\x64Node\x12\x1c.ensemble.api.AddNodeRequest\x1a\x1d.ensemble.api.AddNodeResponse\x12U\n\x0cGetDebugInfo\x12!.ensemble.api.GetDebugInfoRequest\x1a\".ensemble.api.GetDebugInfoResponse\x12U\n\x0c\x44\x65scribeNode\x12!.ensemble.api.DescribeNodeRequest\x1a\".ensemble.api.DescribeNodeResponse\x12H\n\tSubscribe\x12\x1e.ensemble.api.SubscribeRequest\x1a\x19.ensemble.api.DaemonEvent0\x01\x12]\n\x0fRegisterService\x12\".ensemble.api.ServiceClientMessage\x1a\".ensemble.api.ServiceServerMessage(\x01\x30\x01\x12g\n\rAttachService\x12(.ensemble.api.ServiceAttachClientMessage\x1a(.ensemble.api.ServiceAttachServerMessage(\x01\x30\x01\x12X\n\rDeleteService\x12\".ensemble.api.DeleteServiceRequest\x1a#.ensemble.api.DeleteServiceResponse\x12[\n\x0eRotateAdminKey\x12#.ensemble.api.RotateAdminKeyRequest\x1a$.ensemble.api.RotateAdminKeyResponse\x12j\n\x13ListServiceCommands\x12(.ensemble.api.ListServiceCommandsRequest\x1a).ensemble.api.ListServiceCommandsResponse\x12T\n\x0bSendCommand\x12 .ensemble.api.SendCommandRequest\x1a!.ensemble.api.SendCommandResponse0\x01\x12O\n\nGetMetrics\x12\x1f.ensemble.api.GetMetricsRequest\x1a .ensemble.api.GetMetricsResponse\x12Q\n\rStreamMetrics\x12\".ensemble.api.StreamMetricsRequest\x1a\x1a.ensemble.api.MetricUpdate0\x01\x12[\n\x11StreamServiceLogs\x12&.ensemble.api.StreamServiceLogsRequest\x1a\x1c.ensemble.api.ServiceLogLine0\x01\x12V\n\x0eInstallService\x12#.ensemble.api.InstallServiceRequest\x1a\x1d.ensemble.api.InstallProgress0\x01\x12V\n\x0eUpgradeService\x12#.ensemble.api.UpgradeServiceRequest\x1a\x1d.ensemble.api.InstallProgress0\x01\x12\x61\n\x10UninstallService\x12%.ensemble.api.UninstallServiceRequest\x1a&.ensemble.api.UninstallServiceResponse\x12^\n\x0fRollbackService\x12$.ensemble.api.RollbackServiceRequest\x1a%.ensemble.api.RollbackServiceResponse\x12p\n\x15ListInstalledServices\x12*.ensemble.api.ListInstalledServicesRequest\x1a+.ensemble.api.ListInstalledServicesResponse\x12p\n\x15StartInstalledService\x12*.ensemble.api.StartInstalledServiceRequest\x1a+.ensemble.api.StartInstalledServiceResponse\x12m\n\x14StopInstalledService\x12).ensemble.api.StopInstalledServiceRequest\x1a*.ensemble.api.StopInstalledServiceResponse\x12U\n\x0c\x42rokerLaunch\x12!.ensemble.api.BrokerLaunchRequest\x1a\".ensemble.api.BrokerLaunchResponse\x12X\n\rSetServiceEnv\x12\".ensemble.api.SetServiceEnvRequest\x1a#.ensemble.api.SetServiceEnvResponse\x12X\n\rGetServiceEnv\x12\".ensemble.api.GetServiceEnvRequest\x1a#.ensemble.api.GetServiceEnvResponse\x12R\n\x0b\x41\x64\x64Registry\x12 .ensemble.api.AddRegistryRequest\x1a!.ensemble.api.AddRegistryResponse\x12[\n\x0eRemoveRegistry\x12#.ensemble.api.RemoveRegistryRequest\x1a$.ensemble.api.RemoveRegistryResponse\x12[\n\x0eListRegistries\x12#.ensemble.api.ListRegistriesRequest\x1a$.ensemble.api.ListRegistriesResponse\x12\x61\n\x10SearchRegistries\x12%.ensemble.api.SearchRegistriesRequest\x1a&.ensemble.api.SearchRegistriesResponseB#Z!github.com/boxsie/ensemble/api/pbb\x06proto3')
|
|
28
|
+
|
|
29
|
+
_globals = globals()
|
|
30
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
31
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'ensemble_pb2', _globals)
|
|
32
|
+
if not _descriptor._USE_C_DESCRIPTORS:
|
|
33
|
+
_globals['DESCRIPTOR']._loaded_options = None
|
|
34
|
+
_globals['DESCRIPTOR']._serialized_options = b'Z!github.com/boxsie/ensemble/api/pb'
|
|
35
|
+
_globals['_BROKERLAUNCHRESPONSE_ENVENTRY']._loaded_options = None
|
|
36
|
+
_globals['_BROKERLAUNCHRESPONSE_ENVENTRY']._serialized_options = b'8\001'
|
|
37
|
+
_globals['_SETSERVICEENVREQUEST_SETENTRY']._loaded_options = None
|
|
38
|
+
_globals['_SETSERVICEENVREQUEST_SETENTRY']._serialized_options = b'8\001'
|
|
39
|
+
_globals['_REGISTRYRELEASE_PLATFORMSENTRY']._loaded_options = None
|
|
40
|
+
_globals['_REGISTRYRELEASE_PLATFORMSENTRY']._serialized_options = b'8\001'
|
|
41
|
+
_globals['_METRICSAMPLE_LABELSENTRY']._loaded_options = None
|
|
42
|
+
_globals['_METRICSAMPLE_LABELSENTRY']._serialized_options = b'8\001'
|
|
43
|
+
_globals['_METRICSERIES_LABELSENTRY']._loaded_options = None
|
|
44
|
+
_globals['_METRICSERIES_LABELSENTRY']._serialized_options = b'8\001'
|
|
45
|
+
_globals['_ACL']._serialized_start=12851
|
|
46
|
+
_globals['_ACL']._serialized_end=12930
|
|
47
|
+
_globals['_SERVICETRANSPORT']._serialized_start=12933
|
|
48
|
+
_globals['_SERVICETRANSPORT']._serialized_end=13069
|
|
49
|
+
_globals['_GETIDENTITYREQUEST']._serialized_start=32
|
|
50
|
+
_globals['_GETIDENTITYREQUEST']._serialized_end=52
|
|
51
|
+
_globals['_GETIDENTITYRESPONSE']._serialized_start=54
|
|
52
|
+
_globals['_GETIDENTITYRESPONSE']._serialized_end=112
|
|
53
|
+
_globals['_VERIFYBINDINGREQUEST']._serialized_start=114
|
|
54
|
+
_globals['_VERIFYBINDINGREQUEST']._serialized_end=193
|
|
55
|
+
_globals['_VERIFYBINDINGRESPONSE']._serialized_start=195
|
|
56
|
+
_globals['_VERIFYBINDINGRESPONSE']._serialized_end=267
|
|
57
|
+
_globals['_GETSTATUSREQUEST']._serialized_start=269
|
|
58
|
+
_globals['_GETSTATUSREQUEST']._serialized_end=287
|
|
59
|
+
_globals['_GETSTATUSRESPONSE']._serialized_start=289
|
|
60
|
+
_globals['_GETSTATUSRESPONSE']._serialized_end=403
|
|
61
|
+
_globals['_LISTCONTACTSREQUEST']._serialized_start=405
|
|
62
|
+
_globals['_LISTCONTACTSREQUEST']._serialized_end=426
|
|
63
|
+
_globals['_LISTCONTACTSRESPONSE']._serialized_start=428
|
|
64
|
+
_globals['_LISTCONTACTSRESPONSE']._serialized_end=495
|
|
65
|
+
_globals['_CONTACTINFO']._serialized_start=498
|
|
66
|
+
_globals['_CONTACTINFO']._serialized_end=639
|
|
67
|
+
_globals['_ADDCONTACTREQUEST']._serialized_start=641
|
|
68
|
+
_globals['_ADDCONTACTREQUEST']._serialized_end=712
|
|
69
|
+
_globals['_ADDCONTACTRESPONSE']._serialized_start=714
|
|
70
|
+
_globals['_ADDCONTACTRESPONSE']._serialized_end=734
|
|
71
|
+
_globals['_REMOVECONTACTREQUEST']._serialized_start=736
|
|
72
|
+
_globals['_REMOVECONTACTREQUEST']._serialized_end=775
|
|
73
|
+
_globals['_REMOVECONTACTRESPONSE']._serialized_start=777
|
|
74
|
+
_globals['_REMOVECONTACTRESPONSE']._serialized_end=800
|
|
75
|
+
_globals['_CONNECTREQUEST']._serialized_start=802
|
|
76
|
+
_globals['_CONNECTREQUEST']._serialized_end=835
|
|
77
|
+
_globals['_CONNECTRESPONSE']._serialized_start=837
|
|
78
|
+
_globals['_CONNECTRESPONSE']._serialized_end=889
|
|
79
|
+
_globals['_ACCEPTCONNECTIONREQUEST']._serialized_start=891
|
|
80
|
+
_globals['_ACCEPTCONNECTIONREQUEST']._serialized_end=933
|
|
81
|
+
_globals['_ACCEPTCONNECTIONRESPONSE']._serialized_start=935
|
|
82
|
+
_globals['_ACCEPTCONNECTIONRESPONSE']._serialized_end=961
|
|
83
|
+
_globals['_REJECTCONNECTIONREQUEST']._serialized_start=963
|
|
84
|
+
_globals['_REJECTCONNECTIONREQUEST']._serialized_end=1005
|
|
85
|
+
_globals['_REJECTCONNECTIONRESPONSE']._serialized_start=1007
|
|
86
|
+
_globals['_REJECTCONNECTIONRESPONSE']._serialized_end=1033
|
|
87
|
+
_globals['_LISTPEERSREQUEST']._serialized_start=1035
|
|
88
|
+
_globals['_LISTPEERSREQUEST']._serialized_end=1053
|
|
89
|
+
_globals['_LISTPEERSRESPONSE']._serialized_start=1055
|
|
90
|
+
_globals['_LISTPEERSRESPONSE']._serialized_end=1114
|
|
91
|
+
_globals['_PEERENTRY']._serialized_start=1116
|
|
92
|
+
_globals['_PEERENTRY']._serialized_end=1219
|
|
93
|
+
_globals['_DISCONNECTREQUEST']._serialized_start=1221
|
|
94
|
+
_globals['_DISCONNECTREQUEST']._serialized_end=1257
|
|
95
|
+
_globals['_DISCONNECTRESPONSE']._serialized_start=1259
|
|
96
|
+
_globals['_DISCONNECTRESPONSE']._serialized_end=1279
|
|
97
|
+
_globals['_SENDMESSAGEREQUEST']._serialized_start=1281
|
|
98
|
+
_globals['_SENDMESSAGEREQUEST']._serialized_end=1332
|
|
99
|
+
_globals['_SENDMESSAGERESPONSE']._serialized_start=1334
|
|
100
|
+
_globals['_SENDMESSAGERESPONSE']._serialized_end=1375
|
|
101
|
+
_globals['_GETCHATHISTORYREQUEST']._serialized_start=1377
|
|
102
|
+
_globals['_GETCHATHISTORYREQUEST']._serialized_end=1432
|
|
103
|
+
_globals['_CHATMESSAGE']._serialized_start=1435
|
|
104
|
+
_globals['_CHATMESSAGE']._serialized_end=1570
|
|
105
|
+
_globals['_GETCHATHISTORYRESPONSE']._serialized_start=1572
|
|
106
|
+
_globals['_GETCHATHISTORYRESPONSE']._serialized_end=1641
|
|
107
|
+
_globals['_DELETECHATMESSAGEREQUEST']._serialized_start=1643
|
|
108
|
+
_globals['_DELETECHATMESSAGEREQUEST']._serialized_end=1706
|
|
109
|
+
_globals['_DELETECHATMESSAGERESPONSE']._serialized_start=1708
|
|
110
|
+
_globals['_DELETECHATMESSAGERESPONSE']._serialized_end=1752
|
|
111
|
+
_globals['_CLEARCHATHISTORYREQUEST']._serialized_start=1754
|
|
112
|
+
_globals['_CLEARCHATHISTORYREQUEST']._serialized_end=1796
|
|
113
|
+
_globals['_CLEARCHATHISTORYRESPONSE']._serialized_start=1798
|
|
114
|
+
_globals['_CLEARCHATHISTORYRESPONSE']._serialized_end=1824
|
|
115
|
+
_globals['_SENDFILEREQUEST']._serialized_start=1826
|
|
116
|
+
_globals['_SENDFILEREQUEST']._serialized_end=1879
|
|
117
|
+
_globals['_TRANSFERPROGRESS']._serialized_start=1882
|
|
118
|
+
_globals['_TRANSFERPROGRESS']._serialized_end=2030
|
|
119
|
+
_globals['_ACCEPTFILEREQUEST']._serialized_start=2032
|
|
120
|
+
_globals['_ACCEPTFILEREQUEST']._serialized_end=2091
|
|
121
|
+
_globals['_ACCEPTFILERESPONSE']._serialized_start=2093
|
|
122
|
+
_globals['_ACCEPTFILERESPONSE']._serialized_end=2113
|
|
123
|
+
_globals['_REJECTFILEREQUEST']._serialized_start=2115
|
|
124
|
+
_globals['_REJECTFILEREQUEST']._serialized_end=2155
|
|
125
|
+
_globals['_REJECTFILERESPONSE']._serialized_start=2157
|
|
126
|
+
_globals['_REJECTFILERESPONSE']._serialized_end=2177
|
|
127
|
+
_globals['_CANCELTRANSFERREQUEST']._serialized_start=2179
|
|
128
|
+
_globals['_CANCELTRANSFERREQUEST']._serialized_end=2223
|
|
129
|
+
_globals['_CANCELTRANSFERRESPONSE']._serialized_start=2225
|
|
130
|
+
_globals['_CANCELTRANSFERRESPONSE']._serialized_end=2249
|
|
131
|
+
_globals['_ADDNODEREQUEST']._serialized_start=2251
|
|
132
|
+
_globals['_ADDNODEREQUEST']._serialized_end=2290
|
|
133
|
+
_globals['_ADDNODERESPONSE']._serialized_start=2292
|
|
134
|
+
_globals['_ADDNODERESPONSE']._serialized_end=2330
|
|
135
|
+
_globals['_GETDEBUGINFOREQUEST']._serialized_start=2332
|
|
136
|
+
_globals['_GETDEBUGINFOREQUEST']._serialized_end=2353
|
|
137
|
+
_globals['_GETDEBUGINFORESPONSE']._serialized_start=2356
|
|
138
|
+
_globals['_GETDEBUGINFORESPONSE']._serialized_end=2626
|
|
139
|
+
_globals['_SUPERVISEDSERVICE']._serialized_start=2629
|
|
140
|
+
_globals['_SUPERVISEDSERVICE']._serialized_end=2781
|
|
141
|
+
_globals['_STREAMSERVICELOGSREQUEST']._serialized_start=2783
|
|
142
|
+
_globals['_STREAMSERVICELOGSREQUEST']._serialized_end=2859
|
|
143
|
+
_globals['_SERVICELOGLINE']._serialized_start=2861
|
|
144
|
+
_globals['_SERVICELOGLINE']._serialized_end=2906
|
|
145
|
+
_globals['_INSTALLSERVICEREQUEST']._serialized_start=2909
|
|
146
|
+
_globals['_INSTALLSERVICEREQUEST']._serialized_end=3072
|
|
147
|
+
_globals['_UPGRADESERVICEREQUEST']._serialized_start=3075
|
|
148
|
+
_globals['_UPGRADESERVICEREQUEST']._serialized_end=3233
|
|
149
|
+
_globals['_INSTALLPROGRESS']._serialized_start=3236
|
|
150
|
+
_globals['_INSTALLPROGRESS']._serialized_end=3433
|
|
151
|
+
_globals['_CAPABILITYSUMMARY']._serialized_start=3436
|
|
152
|
+
_globals['_CAPABILITYSUMMARY']._serialized_end=3659
|
|
153
|
+
_globals['_DESCRIBENODEREQUEST']._serialized_start=3661
|
|
154
|
+
_globals['_DESCRIBENODEREQUEST']._serialized_end=3699
|
|
155
|
+
_globals['_NODESERVICECARD']._serialized_start=3702
|
|
156
|
+
_globals['_NODESERVICECARD']._serialized_end=3899
|
|
157
|
+
_globals['_NODECARD']._serialized_start=3902
|
|
158
|
+
_globals['_NODECARD']._serialized_end=4128
|
|
159
|
+
_globals['_DESCRIBENODERESPONSE']._serialized_start=4130
|
|
160
|
+
_globals['_DESCRIBENODERESPONSE']._serialized_end=4255
|
|
161
|
+
_globals['_UNINSTALLSERVICEREQUEST']._serialized_start=4257
|
|
162
|
+
_globals['_UNINSTALLSERVICEREQUEST']._serialized_end=4339
|
|
163
|
+
_globals['_UNINSTALLSERVICERESPONSE']._serialized_start=4341
|
|
164
|
+
_globals['_UNINSTALLSERVICERESPONSE']._serialized_end=4367
|
|
165
|
+
_globals['_ROLLBACKSERVICEREQUEST']._serialized_start=4369
|
|
166
|
+
_globals['_ROLLBACKSERVICEREQUEST']._serialized_end=4407
|
|
167
|
+
_globals['_ROLLBACKSERVICERESPONSE']._serialized_start=4409
|
|
168
|
+
_globals['_ROLLBACKSERVICERESPONSE']._serialized_end=4486
|
|
169
|
+
_globals['_LISTINSTALLEDSERVICESREQUEST']._serialized_start=4488
|
|
170
|
+
_globals['_LISTINSTALLEDSERVICESREQUEST']._serialized_end=4541
|
|
171
|
+
_globals['_LISTINSTALLEDSERVICESRESPONSE']._serialized_start=4543
|
|
172
|
+
_globals['_LISTINSTALLEDSERVICESRESPONSE']._serialized_end=4628
|
|
173
|
+
_globals['_INSTALLEDSERVICEINFO']._serialized_start=4631
|
|
174
|
+
_globals['_INSTALLEDSERVICEINFO']._serialized_end=4948
|
|
175
|
+
_globals['_STARTINSTALLEDSERVICEREQUEST']._serialized_start=4950
|
|
176
|
+
_globals['_STARTINSTALLEDSERVICEREQUEST']._serialized_end=4994
|
|
177
|
+
_globals['_STARTINSTALLEDSERVICERESPONSE']._serialized_start=4996
|
|
178
|
+
_globals['_STARTINSTALLEDSERVICERESPONSE']._serialized_end=5027
|
|
179
|
+
_globals['_BROKERLAUNCHREQUEST']._serialized_start=5029
|
|
180
|
+
_globals['_BROKERLAUNCHREQUEST']._serialized_end=5064
|
|
181
|
+
_globals['_BROKERLAUNCHRESPONSE']._serialized_start=5067
|
|
182
|
+
_globals['_BROKERLAUNCHRESPONSE']._serialized_end=5260
|
|
183
|
+
_globals['_BROKERLAUNCHRESPONSE_ENVENTRY']._serialized_start=5218
|
|
184
|
+
_globals['_BROKERLAUNCHRESPONSE_ENVENTRY']._serialized_end=5260
|
|
185
|
+
_globals['_STOPINSTALLEDSERVICEREQUEST']._serialized_start=5262
|
|
186
|
+
_globals['_STOPINSTALLEDSERVICEREQUEST']._serialized_end=5305
|
|
187
|
+
_globals['_STOPINSTALLEDSERVICERESPONSE']._serialized_start=5307
|
|
188
|
+
_globals['_STOPINSTALLEDSERVICERESPONSE']._serialized_end=5337
|
|
189
|
+
_globals['_SETSERVICEENVREQUEST']._serialized_start=5340
|
|
190
|
+
_globals['_SETSERVICEENVREQUEST']._serialized_end=5510
|
|
191
|
+
_globals['_SETSERVICEENVREQUEST_SETENTRY']._serialized_start=5468
|
|
192
|
+
_globals['_SETSERVICEENVREQUEST_SETENTRY']._serialized_end=5510
|
|
193
|
+
_globals['_SETSERVICEENVRESPONSE']._serialized_start=5512
|
|
194
|
+
_globals['_SETSERVICEENVRESPONSE']._serialized_end=5568
|
|
195
|
+
_globals['_GETSERVICEENVREQUEST']._serialized_start=5570
|
|
196
|
+
_globals['_GETSERVICEENVREQUEST']._serialized_end=5606
|
|
197
|
+
_globals['_GETSERVICEENVRESPONSE']._serialized_start=5608
|
|
198
|
+
_globals['_GETSERVICEENVRESPONSE']._serialized_end=5716
|
|
199
|
+
_globals['_SETTINGDECL']._serialized_start=5719
|
|
200
|
+
_globals['_SETTINGDECL']._serialized_end=5919
|
|
201
|
+
_globals['_SIGNEDSERVICEDOCUMENT']._serialized_start=5921
|
|
202
|
+
_globals['_SIGNEDSERVICEDOCUMENT']._serialized_end=6016
|
|
203
|
+
_globals['_REGISTRYINDEX']._serialized_start=6018
|
|
204
|
+
_globals['_REGISTRYINDEX']._serialized_end=6125
|
|
205
|
+
_globals['_REGISTRYENTRY']._serialized_start=6127
|
|
206
|
+
_globals['_REGISTRYENTRY']._serialized_end=6226
|
|
207
|
+
_globals['_REGISTRYRELEASE']._serialized_start=6229
|
|
208
|
+
_globals['_REGISTRYRELEASE']._serialized_end=6465
|
|
209
|
+
_globals['_REGISTRYRELEASE_PLATFORMSENTRY']._serialized_start=6385
|
|
210
|
+
_globals['_REGISTRYRELEASE_PLATFORMSENTRY']._serialized_end=6465
|
|
211
|
+
_globals['_REGISTRYARTIFACT']._serialized_start=6467
|
|
212
|
+
_globals['_REGISTRYARTIFACT']._serialized_end=6528
|
|
213
|
+
_globals['_ADDREGISTRYREQUEST']._serialized_start=6530
|
|
214
|
+
_globals['_ADDREGISTRYREQUEST']._serialized_end=6567
|
|
215
|
+
_globals['_ADDREGISTRYRESPONSE']._serialized_start=6569
|
|
216
|
+
_globals['_ADDREGISTRYRESPONSE']._serialized_end=6636
|
|
217
|
+
_globals['_REMOVEREGISTRYREQUEST']._serialized_start=6638
|
|
218
|
+
_globals['_REMOVEREGISTRYREQUEST']._serialized_end=6678
|
|
219
|
+
_globals['_REMOVEREGISTRYRESPONSE']._serialized_start=6680
|
|
220
|
+
_globals['_REMOVEREGISTRYRESPONSE']._serialized_end=6704
|
|
221
|
+
_globals['_LISTREGISTRIESREQUEST']._serialized_start=6706
|
|
222
|
+
_globals['_LISTREGISTRIESREQUEST']._serialized_end=6746
|
|
223
|
+
_globals['_LISTREGISTRIESRESPONSE']._serialized_start=6748
|
|
224
|
+
_globals['_LISTREGISTRIESRESPONSE']._serialized_end=6820
|
|
225
|
+
_globals['_REGISTRYINFO']._serialized_start=6822
|
|
226
|
+
_globals['_REGISTRYINFO']._serialized_end=6929
|
|
227
|
+
_globals['_SEARCHREGISTRIESREQUEST']._serialized_start=6931
|
|
228
|
+
_globals['_SEARCHREGISTRIESREQUEST']._serialized_end=6988
|
|
229
|
+
_globals['_SEARCHREGISTRIESRESPONSE']._serialized_start=6990
|
|
230
|
+
_globals['_SEARCHREGISTRIESRESPONSE']._serialized_end=7057
|
|
231
|
+
_globals['_REGISTRYHIT']._serialized_start=7060
|
|
232
|
+
_globals['_REGISTRYHIT']._serialized_end=7233
|
|
233
|
+
_globals['_REGISTEREDSERVICE']._serialized_start=7235
|
|
234
|
+
_globals['_REGISTEREDSERVICE']._serialized_end=7305
|
|
235
|
+
_globals['_DELETESERVICEREQUEST']._serialized_start=7307
|
|
236
|
+
_globals['_DELETESERVICEREQUEST']._serialized_end=7343
|
|
237
|
+
_globals['_ROTATEADMINKEYREQUEST']._serialized_start=7345
|
|
238
|
+
_globals['_ROTATEADMINKEYREQUEST']._serialized_end=7388
|
|
239
|
+
_globals['_ROTATEADMINKEYRESPONSE']._serialized_start=7390
|
|
240
|
+
_globals['_ROTATEADMINKEYRESPONSE']._serialized_end=7414
|
|
241
|
+
_globals['_DELETESERVICERESPONSE']._serialized_start=7416
|
|
242
|
+
_globals['_DELETESERVICERESPONSE']._serialized_end=7439
|
|
243
|
+
_globals['_DHTNODE']._serialized_start=7441
|
|
244
|
+
_globals['_DHTNODE']._serialized_end=7506
|
|
245
|
+
_globals['_PEERSTATE']._serialized_start=7508
|
|
246
|
+
_globals['_PEERSTATE']._serialized_end=7566
|
|
247
|
+
_globals['_SUBSCRIBEREQUEST']._serialized_start=7568
|
|
248
|
+
_globals['_SUBSCRIBEREQUEST']._serialized_end=7586
|
|
249
|
+
_globals['_DAEMONEVENT']._serialized_start=7588
|
|
250
|
+
_globals['_DAEMONEVENT']._serialized_end=7632
|
|
251
|
+
_globals['_SERVICECLIENTMESSAGE']._serialized_start=7635
|
|
252
|
+
_globals['_SERVICECLIENTMESSAGE']._serialized_end=8480
|
|
253
|
+
_globals['_SERVICESERVERMESSAGE']._serialized_start=8483
|
|
254
|
+
_globals['_SERVICESERVERMESSAGE']._serialized_end=8657
|
|
255
|
+
_globals['_COMMANDSPEC']._serialized_start=8659
|
|
256
|
+
_globals['_COMMANDSPEC']._serialized_end=8722
|
|
257
|
+
_globals['_SERVICEMANIFEST']._serialized_start=8725
|
|
258
|
+
_globals['_SERVICEMANIFEST']._serialized_end=9145
|
|
259
|
+
_globals['_METRICSPEC']._serialized_start=9147
|
|
260
|
+
_globals['_METRICSPEC']._serialized_end=9252
|
|
261
|
+
_globals['_METRICSAMPLE']._serialized_start=9255
|
|
262
|
+
_globals['_METRICSAMPLE']._serialized_end=9413
|
|
263
|
+
_globals['_METRICSAMPLE_LABELSENTRY']._serialized_start=9368
|
|
264
|
+
_globals['_METRICSAMPLE_LABELSENTRY']._serialized_end=9413
|
|
265
|
+
_globals['_RATELIMITPOLICY']._serialized_start=9415
|
|
266
|
+
_globals['_RATELIMITPOLICY']._serialized_end=9476
|
|
267
|
+
_globals['_SERVICEREGISTERED']._serialized_start=9478
|
|
268
|
+
_globals['_SERVICEREGISTERED']._serialized_end=9580
|
|
269
|
+
_globals['_SERVICEEVENT']._serialized_start=9582
|
|
270
|
+
_globals['_SERVICEEVENT']._serialized_end=9627
|
|
271
|
+
_globals['_SERVICECHATMESSAGEEVENT']._serialized_start=9629
|
|
272
|
+
_globals['_SERVICECHATMESSAGEEVENT']._serialized_end=9699
|
|
273
|
+
_globals['_SERVICECONNECTIONREQUESTEVENT']._serialized_start=9701
|
|
274
|
+
_globals['_SERVICECONNECTIONREQUESTEVENT']._serialized_end=9771
|
|
275
|
+
_globals['_SERVICECONNECTIONESTABLISHEDEVENT']._serialized_start=9773
|
|
276
|
+
_globals['_SERVICECONNECTIONESTABLISHEDEVENT']._serialized_end=9827
|
|
277
|
+
_globals['_SERVICECONNECTIONCLOSEDEVENT']._serialized_start=9829
|
|
278
|
+
_globals['_SERVICECONNECTIONCLOSEDEVENT']._serialized_end=9878
|
|
279
|
+
_globals['_SERVICERPCMESSAGEEVENT']._serialized_start=9880
|
|
280
|
+
_globals['_SERVICERPCMESSAGEEVENT']._serialized_end=9952
|
|
281
|
+
_globals['_SERVICEFILEOFFEREVENT']._serialized_start=9954
|
|
282
|
+
_globals['_SERVICEFILEOFFEREVENT']._serialized_end=10049
|
|
283
|
+
_globals['_SERVICECOMMANDEVENT']._serialized_start=10051
|
|
284
|
+
_globals['_SERVICECOMMANDEVENT']._serialized_end=10139
|
|
285
|
+
_globals['_SERVICECOMMANDRESULT']._serialized_start=10141
|
|
286
|
+
_globals['_SERVICECOMMANDRESULT']._serialized_end=10209
|
|
287
|
+
_globals['_SERVICEACCEPTFILE']._serialized_start=10211
|
|
288
|
+
_globals['_SERVICEACCEPTFILE']._serialized_end=10251
|
|
289
|
+
_globals['_SERVICEREJECTFILE']._serialized_start=10253
|
|
290
|
+
_globals['_SERVICEREJECTFILE']._serialized_end=10309
|
|
291
|
+
_globals['_SERVICESENDMESSAGE']._serialized_start=10311
|
|
292
|
+
_globals['_SERVICESENDMESSAGE']._serialized_end=10379
|
|
293
|
+
_globals['_SERVICEACCEPTCONNECTION']._serialized_start=10381
|
|
294
|
+
_globals['_SERVICEACCEPTCONNECTION']._serialized_end=10426
|
|
295
|
+
_globals['_SERVICEREJECTCONNECTION']._serialized_start=10428
|
|
296
|
+
_globals['_SERVICEREJECTCONNECTION']._serialized_end=10489
|
|
297
|
+
_globals['_SERVICECONNECTPEER']._serialized_start=10491
|
|
298
|
+
_globals['_SERVICECONNECTPEER']._serialized_end=10530
|
|
299
|
+
_globals['_SERVICEDISCONNECTPEER']._serialized_start=10532
|
|
300
|
+
_globals['_SERVICEDISCONNECTPEER']._serialized_end=10574
|
|
301
|
+
_globals['_SERVICEUPDATEALLOWLIST']._serialized_start=10576
|
|
302
|
+
_globals['_SERVICEUPDATEALLOWLIST']._serialized_end=10629
|
|
303
|
+
_globals['_SERVICETOOPERATOR']._serialized_start=10631
|
|
304
|
+
_globals['_SERVICETOOPERATOR']._serialized_end=10667
|
|
305
|
+
_globals['_SERVICEOPERATORMESSAGEEVENT']._serialized_start=10669
|
|
306
|
+
_globals['_SERVICEOPERATORMESSAGEEVENT']._serialized_end=10727
|
|
307
|
+
_globals['_SERVICEATTACHCLIENTMESSAGE']._serialized_start=10729
|
|
308
|
+
_globals['_SERVICEATTACHCLIENTMESSAGE']._serialized_end=10834
|
|
309
|
+
_globals['_SERVICEATTACHSTART']._serialized_start=10836
|
|
310
|
+
_globals['_SERVICEATTACHSTART']._serialized_end=10856
|
|
311
|
+
_globals['_SERVICEATTACHSERVERMESSAGE']._serialized_start=10859
|
|
312
|
+
_globals['_SERVICEATTACHSERVERMESSAGE']._serialized_end=11009
|
|
313
|
+
_globals['_SERVICEATTACHED']._serialized_start=11011
|
|
314
|
+
_globals['_SERVICEATTACHED']._serialized_end=11050
|
|
315
|
+
_globals['_SERVICEINTRODUCEPEER']._serialized_start=11053
|
|
316
|
+
_globals['_SERVICEINTRODUCEPEER']._serialized_end=11188
|
|
317
|
+
_globals['_SERVICESIGNDOCUMENT']._serialized_start=11190
|
|
318
|
+
_globals['_SERVICESIGNDOCUMENT']._serialized_end=11248
|
|
319
|
+
_globals['_SERVICESIGNRESULTEVENT']._serialized_start=11251
|
|
320
|
+
_globals['_SERVICESIGNRESULTEVENT']._serialized_end=11386
|
|
321
|
+
_globals['_SERVICEPEERINTRODUCTIONEVENT']._serialized_start=11389
|
|
322
|
+
_globals['_SERVICEPEERINTRODUCTIONEVENT']._serialized_end=11541
|
|
323
|
+
_globals['_SERVICEERROR']._serialized_start=11543
|
|
324
|
+
_globals['_SERVICEERROR']._serialized_end=11633
|
|
325
|
+
_globals['_LISTSERVICECOMMANDSREQUEST']._serialized_start=11635
|
|
326
|
+
_globals['_LISTSERVICECOMMANDSREQUEST']._serialized_end=11680
|
|
327
|
+
_globals['_LISTSERVICECOMMANDSRESPONSE']._serialized_start=11682
|
|
328
|
+
_globals['_LISTSERVICECOMMANDSRESPONSE']._serialized_end=11756
|
|
329
|
+
_globals['_SENDCOMMANDREQUEST']._serialized_start=11758
|
|
330
|
+
_globals['_SENDCOMMANDREQUEST']._serialized_end=11823
|
|
331
|
+
_globals['_SENDCOMMANDRESPONSE']._serialized_start=11825
|
|
332
|
+
_globals['_SENDCOMMANDRESPONSE']._serialized_end=11905
|
|
333
|
+
_globals['_GETMETRICSREQUEST']._serialized_start=11907
|
|
334
|
+
_globals['_GETMETRICSREQUEST']._serialized_end=11964
|
|
335
|
+
_globals['_METRICDESCRIPTOR']._serialized_start=11966
|
|
336
|
+
_globals['_METRICDESCRIPTOR']._serialized_end=12077
|
|
337
|
+
_globals['_METRICPOINT']._serialized_start=12079
|
|
338
|
+
_globals['_METRICPOINT']._serialized_end=12119
|
|
339
|
+
_globals['_METRICBUCKET']._serialized_start=12121
|
|
340
|
+
_globals['_METRICBUCKET']._serialized_end=12171
|
|
341
|
+
_globals['_METRICSERIES']._serialized_start=12174
|
|
342
|
+
_globals['_METRICSERIES']._serialized_end=12450
|
|
343
|
+
_globals['_METRICSERIES_LABELSENTRY']._serialized_start=9368
|
|
344
|
+
_globals['_METRICSERIES_LABELSENTRY']._serialized_end=9413
|
|
345
|
+
_globals['_GETMETRICSRESPONSE']._serialized_start=12453
|
|
346
|
+
_globals['_GETMETRICSRESPONSE']._serialized_end=12611
|
|
347
|
+
_globals['_STREAMMETRICSREQUEST']._serialized_start=12613
|
|
348
|
+
_globals['_STREAMMETRICSREQUEST']._serialized_end=12694
|
|
349
|
+
_globals['_METRICUPDATE']._serialized_start=12697
|
|
350
|
+
_globals['_METRICUPDATE']._serialized_end=12849
|
|
351
|
+
_globals['_ENSEMBLESERVICE']._serialized_start=13072
|
|
352
|
+
_globals['_ENSEMBLESERVICE']._serialized_end=17238
|
|
353
|
+
# @@protoc_insertion_point(module_scope)
|