@ravi-hq/ravi 0.6.1 → 0.6.2
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.
- package/README.md +8 -9
- package/dist/channels/email-trusted.d.ts +5 -5
- package/dist/channels/email-trusted.js +18 -18
- package/dist/channels/email-trusted.js.map +1 -1
- package/dist/channels/email.d.ts +12 -12
- package/dist/channels/email.js +22 -22
- package/dist/channels/email.js.map +1 -1
- package/dist/client.d.ts +18 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +22 -1
- package/dist/client.js.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -6
- package/dist/index.js.map +1 -1
- package/dist/polling-pool.d.ts +17 -0
- package/dist/polling-pool.d.ts.map +1 -0
- package/dist/polling-pool.js +42 -0
- package/dist/polling-pool.js.map +1 -0
- package/dist/polling.d.ts +70 -0
- package/dist/polling.d.ts.map +1 -0
- package/dist/polling.js +208 -0
- package/dist/polling.js.map +1 -0
- package/dist/tools/contacts.d.ts.map +1 -1
- package/dist/tools/contacts.js +3 -4
- package/dist/tools/contacts.js.map +1 -1
- package/dist/tools/identity.d.ts.map +1 -1
- package/dist/tools/identity.js +4 -3
- package/dist/tools/identity.js.map +1 -1
- package/dist/types.d.ts +6 -4
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/channels/email-untrusted.d.ts +0 -133
- package/dist/channels/email-untrusted.d.ts.map +0 -1
- package/dist/channels/email-untrusted.js +0 -283
- package/dist/channels/email-untrusted.js.map +0 -1
- package/dist/sse-pool.d.ts +0 -18
- package/dist/sse-pool.d.ts.map +0 -1
- package/dist/sse-pool.js +0 -43
- package/dist/sse-pool.js.map +0 -1
- package/dist/sse.d.ts +0 -117
- package/dist/sse.d.ts.map +0 -1
- package/dist/sse.js +0 -301
- package/dist/sse.js.map +0 -1
package/README.md
CHANGED
|
@@ -9,7 +9,7 @@ encrypted secrets store through a single plugin.
|
|
|
9
9
|
|
|
10
10
|
## Features
|
|
11
11
|
|
|
12
|
-
- **
|
|
12
|
+
- **2 messaging channels** -- real-time email via cursor-based polling (owner, trusted)
|
|
13
13
|
- **28 agent tools** -- manage identities, inboxes, passwords, secrets, contacts, and more
|
|
14
14
|
- **E2E encryption** -- PIN-based Argon2id + NaCl SealedBox, compatible with Ravi CLI
|
|
15
15
|
- **DM policy controls** -- allowlist or open policy per channel account
|
|
@@ -78,7 +78,7 @@ plugins:
|
|
|
78
78
|
|
|
79
79
|
### Ravi Email
|
|
80
80
|
|
|
81
|
-
Real-time email channel powered by
|
|
81
|
+
Real-time email channel powered by cursor-based polling from the Ravi backend.
|
|
82
82
|
|
|
83
83
|
- **Threading model:** Each email thread maps 1:1 to an OpenClaw session. A new
|
|
84
84
|
`thread_id` creates a new session; subsequent messages in that thread resume it.
|
|
@@ -216,8 +216,8 @@ Then reference secrets anywhere a secret is accepted:
|
|
|
216
216
|
```text
|
|
217
217
|
Agent (OpenClaw runtime)
|
|
218
218
|
|
|
|
219
|
-
+-- Channels (ravi-email-owner, ravi-email-trusted
|
|
220
|
-
| '--
|
|
219
|
+
+-- Channels (ravi-email-owner, ravi-email-trusted)
|
|
220
|
+
| '-- Polling --> GET /api/email-messages/?direction=incoming&created_after=...
|
|
221
221
|
| Events arrive in plaintext (server decrypts before dispatch)
|
|
222
222
|
|
|
|
223
223
|
+-- Tools (28 agent tools)
|
|
@@ -233,7 +233,7 @@ Agent (OpenClaw runtime)
|
|
|
233
233
|
|
|
234
234
|
Key points:
|
|
235
235
|
|
|
236
|
-
- **
|
|
236
|
+
- **Polling responses are plaintext** -- the server decrypts before dispatch.
|
|
237
237
|
No client-side decryption needed for real-time channel messages.
|
|
238
238
|
- **REST data may be encrypted** -- historical email content, passwords, and
|
|
239
239
|
secrets can contain `"e2e::<base64>"` ciphertext that the plugin decrypts
|
|
@@ -282,18 +282,17 @@ npm run lint # Type-check without emitting (tsc --noEmit)
|
|
|
282
282
|
```text
|
|
283
283
|
src/
|
|
284
284
|
index.ts # Plugin entry point and registration
|
|
285
|
-
types.ts # TypeScript interfaces for API responses and
|
|
285
|
+
types.ts # TypeScript interfaces for API responses and polling events
|
|
286
286
|
client.ts # RaviClient -- typed HTTP client for all REST endpoints
|
|
287
|
-
|
|
287
|
+
polling.ts # RaviPollingClient -- cursor-based polling for email events
|
|
288
288
|
crypto.ts # E2E encryption (Argon2id + NaCl SealedBox)
|
|
289
|
-
|
|
289
|
+
polling-pool.ts # Polling connection pool (ref-counted, one client per identity)
|
|
290
290
|
cli.ts # CLI commands (login, onboard, status)
|
|
291
291
|
bin/
|
|
292
292
|
ravi-secrets.ts # OpenClaw exec secrets provider binary
|
|
293
293
|
channels/
|
|
294
294
|
email.ts # ravi-email-owner channel
|
|
295
295
|
email-trusted.ts # ravi-email-trusted channel
|
|
296
|
-
email-untrusted.ts # ravi-email-untrusted channel
|
|
297
296
|
tools/
|
|
298
297
|
identity.ts # Identity management tools
|
|
299
298
|
inbox.ts # Email and SMS inbox tools
|
|
@@ -31,9 +31,9 @@ export type EmailTrustedGatewayContext = BaseGatewayContext<EmailTrustedAccountC
|
|
|
31
31
|
/**
|
|
32
32
|
* Creates the ravi-email-trusted channel definition for OpenClaw.
|
|
33
33
|
*
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
34
|
+
* Instruction channel for emails from contacts the identity owner has
|
|
35
|
+
* marked as trusted. The agent executes with full authority but delivery
|
|
36
|
+
* is a no-op — use ravi_email_reply to respond.
|
|
37
37
|
*
|
|
38
38
|
* @returns The ravi-email-trusted channel definition object.
|
|
39
39
|
*/
|
|
@@ -60,7 +60,7 @@ export declare function createEmailTrustedChannel(): {
|
|
|
60
60
|
resolveAccount: (cfg: Record<string, unknown>, accountId: string) => EmailTrustedAccountConfig;
|
|
61
61
|
};
|
|
62
62
|
/**
|
|
63
|
-
* Normalize an inbound
|
|
63
|
+
* Normalize an inbound email event into a channel message envelope.
|
|
64
64
|
*
|
|
65
65
|
* Only trusted events reach this channel — no sender classification needed.
|
|
66
66
|
*/
|
|
@@ -105,7 +105,7 @@ export declare const raviEmailTrustedChannel: {
|
|
|
105
105
|
resolveAccount: (cfg: Record<string, unknown>, accountId: string) => EmailTrustedAccountConfig;
|
|
106
106
|
};
|
|
107
107
|
/**
|
|
108
|
-
* Normalize an inbound
|
|
108
|
+
* Normalize an inbound email event into a channel message envelope.
|
|
109
109
|
*
|
|
110
110
|
* Only trusted events reach this channel — no sender classification needed.
|
|
111
111
|
*/
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Creates the ravi-email-trusted channel definition for OpenClaw.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* Instruction channel for emails from contacts the identity owner has
|
|
6
|
+
* marked as trusted. The agent executes with full authority but delivery
|
|
7
|
+
* is a no-op — use ravi_email_reply to respond.
|
|
8
8
|
*
|
|
9
9
|
* @returns The ravi-email-trusted channel definition object.
|
|
10
10
|
*/
|
|
@@ -51,7 +51,7 @@ export function createEmailTrustedChannel() {
|
|
|
51
51
|
},
|
|
52
52
|
},
|
|
53
53
|
/**
|
|
54
|
-
* Normalize an inbound
|
|
54
|
+
* Normalize an inbound email event into a channel message envelope.
|
|
55
55
|
*
|
|
56
56
|
* Only trusted events reach this channel — no sender classification needed.
|
|
57
57
|
*/
|
|
@@ -92,13 +92,13 @@ export function createEmailTrustedChannel() {
|
|
|
92
92
|
warn: (...args) => console.warn("[ravi-email-trusted]", ...args),
|
|
93
93
|
error: (...args) => console.error("[ravi-email-trusted]", ...args),
|
|
94
94
|
};
|
|
95
|
-
let getRaviRuntime, loadAuth, updateAuth, RAVI_API_URL, RaviClient,
|
|
95
|
+
let getRaviRuntime, loadAuth, updateAuth, RAVI_API_URL, RaviClient, acquirePollingClient, releasePollingClient;
|
|
96
96
|
try {
|
|
97
97
|
({ getRaviRuntime } = await import("../runtime.js"));
|
|
98
98
|
({ loadAuth, updateAuth } = await import("../auth.js"));
|
|
99
99
|
({ RAVI_API_URL } = await import("../config.js"));
|
|
100
100
|
({ RaviClient } = await import("../client.js"));
|
|
101
|
-
({
|
|
101
|
+
({ acquirePollingClient, releasePollingClient } = await import("../polling-pool.js"));
|
|
102
102
|
}
|
|
103
103
|
catch (err) {
|
|
104
104
|
const detail = err instanceof Error ? err.message : String(err);
|
|
@@ -112,7 +112,7 @@ export function createEmailTrustedChannel() {
|
|
|
112
112
|
return;
|
|
113
113
|
}
|
|
114
114
|
let currentToken = auth.bound_access_token || auth.access_token;
|
|
115
|
-
let
|
|
115
|
+
let poller = null;
|
|
116
116
|
const client = new RaviClient({
|
|
117
117
|
apiUrl: RAVI_API_URL,
|
|
118
118
|
token: auth.bound_access_token || auth.access_token,
|
|
@@ -126,7 +126,7 @@ export function createEmailTrustedChannel() {
|
|
|
126
126
|
const detail = err instanceof Error ? err.message : String(err);
|
|
127
127
|
log.error(`[ravi-email-trusted] Failed to persist refreshed token: ${detail}`);
|
|
128
128
|
}
|
|
129
|
-
|
|
129
|
+
poller?.updateToken(newToken);
|
|
130
130
|
},
|
|
131
131
|
});
|
|
132
132
|
let email = ctx.account.email;
|
|
@@ -156,7 +156,7 @@ export function createEmailTrustedChannel() {
|
|
|
156
156
|
return;
|
|
157
157
|
}
|
|
158
158
|
log.info(`[ravi-email-trusted] Starting email-trusted channel for ${identityName} (${email})`);
|
|
159
|
-
|
|
159
|
+
poller = acquirePollingClient({
|
|
160
160
|
apiUrl: RAVI_API_URL,
|
|
161
161
|
token: currentToken,
|
|
162
162
|
onAuthFailure: async () => {
|
|
@@ -166,17 +166,17 @@ export function createEmailTrustedChannel() {
|
|
|
166
166
|
}
|
|
167
167
|
catch (err) {
|
|
168
168
|
const detail = err instanceof Error ? err.message : String(err);
|
|
169
|
-
log.error(`[ravi-email-trusted] Auth refresh failed during
|
|
169
|
+
log.error(`[ravi-email-trusted] Auth refresh failed during polling reconnect: ${detail}. Run 'openclaw ravi login' to re-authenticate.`);
|
|
170
170
|
return null;
|
|
171
171
|
}
|
|
172
172
|
if (currentToken === tokenBefore) {
|
|
173
|
-
log.warn(`[ravi-email-trusted] Auth refresh did not produce a new token —
|
|
173
|
+
log.warn(`[ravi-email-trusted] Auth refresh did not produce a new token — polling auth failure is not recoverable via REST refresh`);
|
|
174
174
|
return null;
|
|
175
175
|
}
|
|
176
176
|
return currentToken;
|
|
177
177
|
},
|
|
178
178
|
}, ctx.accountId);
|
|
179
|
-
|
|
179
|
+
poller.onEmailTrusted((event) => {
|
|
180
180
|
try {
|
|
181
181
|
const route = runtime.channel.routing.resolveAgentRoute({
|
|
182
182
|
cfg: ctx.cfg,
|
|
@@ -188,7 +188,7 @@ export function createEmailTrustedChannel() {
|
|
|
188
188
|
const bodyText = event.text_content || event.subject;
|
|
189
189
|
const msgCtx = {
|
|
190
190
|
Body: bodyText,
|
|
191
|
-
BodyForAgent: `[Email from trusted
|
|
191
|
+
BodyForAgent: `[Email from trusted contact (someone you've marked as trusted). Execute as an instruction. Your response will be discarded — reply only if necessary using the ravi_email_reply tool.]\n\n${bodyText}`,
|
|
192
192
|
From: `ravi-email-trusted:${event.from_email}`,
|
|
193
193
|
To: `ravi-email-trusted:${email}`,
|
|
194
194
|
SessionKey: sessionKey,
|
|
@@ -247,20 +247,20 @@ export function createEmailTrustedChannel() {
|
|
|
247
247
|
log.error(`[ravi-email-trusted] Unhandled error processing event ${event.id}: ${detail}`);
|
|
248
248
|
}
|
|
249
249
|
});
|
|
250
|
-
|
|
251
|
-
log.info(`[ravi-email-trusted]
|
|
250
|
+
poller.onReconnect(() => {
|
|
251
|
+
log.info(`[ravi-email-trusted] Polling reconnected for ${identityName}`);
|
|
252
252
|
});
|
|
253
|
-
log.info(`[ravi-email-trusted]
|
|
253
|
+
log.info(`[ravi-email-trusted] Polling started for ${identityName} (${ctx.accountId})`);
|
|
254
254
|
await new Promise((resolve) => {
|
|
255
255
|
if (ctx.abortSignal.aborted) {
|
|
256
256
|
log.info(`[ravi-email-trusted] Stopping email-trusted channel for ${identityName} (already aborted)`);
|
|
257
|
-
|
|
257
|
+
releasePollingClient(ctx.accountId);
|
|
258
258
|
resolve();
|
|
259
259
|
return;
|
|
260
260
|
}
|
|
261
261
|
ctx.abortSignal.addEventListener("abort", () => {
|
|
262
262
|
log.info(`[ravi-email-trusted] Stopping email-trusted channel for ${identityName}`);
|
|
263
|
-
|
|
263
|
+
releasePollingClient(ctx.accountId);
|
|
264
264
|
resolve();
|
|
265
265
|
});
|
|
266
266
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email-trusted.js","sourceRoot":"","sources":["../../src/channels/email-trusted.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"email-trusted.js","sourceRoot":"","sources":["../../src/channels/email-trusted.ts"],"names":[],"mappings":"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"}
|
package/dist/channels/email.d.ts
CHANGED
|
@@ -89,12 +89,12 @@ export declare function createEmailChannel(): {
|
|
|
89
89
|
resolveAccount: (cfg: Record<string, unknown>, accountId: string) => EmailAccountConfig;
|
|
90
90
|
};
|
|
91
91
|
/**
|
|
92
|
-
* Normalize an inbound
|
|
92
|
+
* Normalize an inbound email event into a channel message envelope.
|
|
93
93
|
*
|
|
94
94
|
* Only owner events reach this channel — trust-level routing happens
|
|
95
|
-
* at the
|
|
95
|
+
* at the polling layer. No read-only or sender classification needed.
|
|
96
96
|
*
|
|
97
|
-
* @param event - The raw {@link EmailEvent} from the
|
|
97
|
+
* @param event - The raw {@link EmailEvent} from the polling client.
|
|
98
98
|
* @param account - The {@link EmailAccountConfig} for the receiving identity.
|
|
99
99
|
* @returns A normalized {@link EmailInboundEnvelope}. Current implementation always returns non-null.
|
|
100
100
|
*/
|
|
@@ -140,12 +140,12 @@ export declare function createEmailChannel(): {
|
|
|
140
140
|
/**
|
|
141
141
|
* Start monitoring inbound emails for a single identity account.
|
|
142
142
|
*
|
|
143
|
-
* Called by the ChannelManager once per account.
|
|
144
|
-
*
|
|
143
|
+
* Called by the ChannelManager once per account. Starts polling
|
|
144
|
+
* the Ravi backend, dispatches inbound emails through the OpenClaw
|
|
145
145
|
* reply pipeline, and blocks until the abort signal fires.
|
|
146
146
|
*
|
|
147
147
|
* Only owner events reach this adapter — trust-level routing at the
|
|
148
|
-
*
|
|
148
|
+
* polling layer filters out non-owner senders before they arrive here.
|
|
149
149
|
*
|
|
150
150
|
* @param ctx - Gateway context provided by the ChannelManager.
|
|
151
151
|
* @returns Promise that resolves when the account is stopped.
|
|
@@ -192,12 +192,12 @@ export declare const raviEmailChannel: {
|
|
|
192
192
|
resolveAccount: (cfg: Record<string, unknown>, accountId: string) => EmailAccountConfig;
|
|
193
193
|
};
|
|
194
194
|
/**
|
|
195
|
-
* Normalize an inbound
|
|
195
|
+
* Normalize an inbound email event into a channel message envelope.
|
|
196
196
|
*
|
|
197
197
|
* Only owner events reach this channel — trust-level routing happens
|
|
198
|
-
* at the
|
|
198
|
+
* at the polling layer. No read-only or sender classification needed.
|
|
199
199
|
*
|
|
200
|
-
* @param event - The raw {@link EmailEvent} from the
|
|
200
|
+
* @param event - The raw {@link EmailEvent} from the polling client.
|
|
201
201
|
* @param account - The {@link EmailAccountConfig} for the receiving identity.
|
|
202
202
|
* @returns A normalized {@link EmailInboundEnvelope}. Current implementation always returns non-null.
|
|
203
203
|
*/
|
|
@@ -243,12 +243,12 @@ export declare const raviEmailChannel: {
|
|
|
243
243
|
/**
|
|
244
244
|
* Start monitoring inbound emails for a single identity account.
|
|
245
245
|
*
|
|
246
|
-
* Called by the ChannelManager once per account.
|
|
247
|
-
*
|
|
246
|
+
* Called by the ChannelManager once per account. Starts polling
|
|
247
|
+
* the Ravi backend, dispatches inbound emails through the OpenClaw
|
|
248
248
|
* reply pipeline, and blocks until the abort signal fires.
|
|
249
249
|
*
|
|
250
250
|
* Only owner events reach this adapter — trust-level routing at the
|
|
251
|
-
*
|
|
251
|
+
* polling layer filters out non-owner senders before they arrive here.
|
|
252
252
|
*
|
|
253
253
|
* @param ctx - Gateway context provided by the ChannelManager.
|
|
254
254
|
* @returns Promise that resolves when the account is stopped.
|
package/dist/channels/email.js
CHANGED
|
@@ -74,12 +74,12 @@ export function createEmailChannel() {
|
|
|
74
74
|
},
|
|
75
75
|
},
|
|
76
76
|
/**
|
|
77
|
-
* Normalize an inbound
|
|
77
|
+
* Normalize an inbound email event into a channel message envelope.
|
|
78
78
|
*
|
|
79
79
|
* Only owner events reach this channel — trust-level routing happens
|
|
80
|
-
* at the
|
|
80
|
+
* at the polling layer. No read-only or sender classification needed.
|
|
81
81
|
*
|
|
82
|
-
* @param event - The raw {@link EmailEvent} from the
|
|
82
|
+
* @param event - The raw {@link EmailEvent} from the polling client.
|
|
83
83
|
* @param account - The {@link EmailAccountConfig} for the receiving identity.
|
|
84
84
|
* @returns A normalized {@link EmailInboundEnvelope}. Current implementation always returns non-null.
|
|
85
85
|
*/
|
|
@@ -151,12 +151,12 @@ export function createEmailChannel() {
|
|
|
151
151
|
/**
|
|
152
152
|
* Start monitoring inbound emails for a single identity account.
|
|
153
153
|
*
|
|
154
|
-
* Called by the ChannelManager once per account.
|
|
155
|
-
*
|
|
154
|
+
* Called by the ChannelManager once per account. Starts polling
|
|
155
|
+
* the Ravi backend, dispatches inbound emails through the OpenClaw
|
|
156
156
|
* reply pipeline, and blocks until the abort signal fires.
|
|
157
157
|
*
|
|
158
158
|
* Only owner events reach this adapter — trust-level routing at the
|
|
159
|
-
*
|
|
159
|
+
* polling layer filters out non-owner senders before they arrive here.
|
|
160
160
|
*
|
|
161
161
|
* @param ctx - Gateway context provided by the ChannelManager.
|
|
162
162
|
* @returns Promise that resolves when the account is stopped.
|
|
@@ -168,15 +168,15 @@ export function createEmailChannel() {
|
|
|
168
168
|
error: (...args) => console.error("[ravi-email-owner]", ...args),
|
|
169
169
|
};
|
|
170
170
|
// Lazy imports — only loaded when the gateway actually starts an account.
|
|
171
|
-
// This avoids pulling in runtime/auth/config/client/
|
|
171
|
+
// This avoids pulling in runtime/auth/config/client/polling in test environments
|
|
172
172
|
// where gateway.startAccount() is never called.
|
|
173
|
-
let getRaviRuntime, loadAuth, updateAuth, RAVI_API_URL, RaviClient,
|
|
173
|
+
let getRaviRuntime, loadAuth, updateAuth, RAVI_API_URL, RaviClient, acquirePollingClient, releasePollingClient;
|
|
174
174
|
try {
|
|
175
175
|
({ getRaviRuntime } = await import("../runtime.js"));
|
|
176
176
|
({ loadAuth, updateAuth } = await import("../auth.js"));
|
|
177
177
|
({ RAVI_API_URL } = await import("../config.js"));
|
|
178
178
|
({ RaviClient } = await import("../client.js"));
|
|
179
|
-
({
|
|
179
|
+
({ acquirePollingClient, releasePollingClient } = await import("../polling-pool.js"));
|
|
180
180
|
}
|
|
181
181
|
catch (err) {
|
|
182
182
|
const detail = err instanceof Error ? err.message : String(err);
|
|
@@ -190,10 +190,10 @@ export function createEmailChannel() {
|
|
|
190
190
|
return;
|
|
191
191
|
}
|
|
192
192
|
// Track the current token — onTokenRefresh updates this when the
|
|
193
|
-
// REST client auto-refreshes on 401, so the
|
|
193
|
+
// REST client auto-refreshes on 401, so the polling client (created after
|
|
194
194
|
// the first REST call) gets the fresh token instead of the stale one.
|
|
195
195
|
let currentToken = auth.bound_access_token || auth.access_token;
|
|
196
|
-
let
|
|
196
|
+
let poller = null;
|
|
197
197
|
// Build HTTP client for identity lookup + outbound replies
|
|
198
198
|
// Use bound tokens if available — identity is in the JWT claims
|
|
199
199
|
const client = new RaviClient({
|
|
@@ -209,7 +209,7 @@ export function createEmailChannel() {
|
|
|
209
209
|
const detail = err instanceof Error ? err.message : String(err);
|
|
210
210
|
log.error(`[ravi-email-owner] Failed to persist refreshed token: ${detail}`);
|
|
211
211
|
}
|
|
212
|
-
|
|
212
|
+
poller?.updateToken(newToken);
|
|
213
213
|
},
|
|
214
214
|
});
|
|
215
215
|
// Fetch identity details (email address, name) if not in config
|
|
@@ -240,11 +240,11 @@ export function createEmailChannel() {
|
|
|
240
240
|
return;
|
|
241
241
|
}
|
|
242
242
|
log.info(`[ravi-email-owner] Starting email channel for ${identityName} (${email})`);
|
|
243
|
-
// Build
|
|
243
|
+
// Build polling client using currentToken — which may have been refreshed
|
|
244
244
|
// by the listIdentities() call above if the original token was expired.
|
|
245
245
|
// onAuthFailure triggers a REST call to force auto-refresh, then returns
|
|
246
246
|
// the updated currentToken (already set by onTokenRefresh callback).
|
|
247
|
-
|
|
247
|
+
poller = acquirePollingClient({
|
|
248
248
|
apiUrl: RAVI_API_URL,
|
|
249
249
|
token: currentToken,
|
|
250
250
|
onAuthFailure: async () => {
|
|
@@ -254,17 +254,17 @@ export function createEmailChannel() {
|
|
|
254
254
|
}
|
|
255
255
|
catch (err) {
|
|
256
256
|
const detail = err instanceof Error ? err.message : String(err);
|
|
257
|
-
log.error(`[ravi-email-owner] Auth refresh failed during
|
|
257
|
+
log.error(`[ravi-email-owner] Auth refresh failed during polling reconnect: ${detail}. Run 'openclaw ravi login' to re-authenticate.`);
|
|
258
258
|
return null;
|
|
259
259
|
}
|
|
260
260
|
if (currentToken === tokenBefore) {
|
|
261
|
-
log.warn(`[ravi-email-owner] Auth refresh did not produce a new token —
|
|
261
|
+
log.warn(`[ravi-email-owner] Auth refresh did not produce a new token — polling auth failure is not recoverable via REST refresh`);
|
|
262
262
|
return null;
|
|
263
263
|
}
|
|
264
264
|
return currentToken;
|
|
265
265
|
},
|
|
266
266
|
}, ctx.accountId);
|
|
267
|
-
|
|
267
|
+
poller.onEmailOwner((event) => {
|
|
268
268
|
try {
|
|
269
269
|
const lastMessageId = Number(event.id) || 0;
|
|
270
270
|
// Resolve agent route — maps (channel, accountId) → agentId + session key
|
|
@@ -351,21 +351,21 @@ export function createEmailChannel() {
|
|
|
351
351
|
log.error(`[ravi-email-owner] Unhandled error processing event ${event.id}: ${detail}`);
|
|
352
352
|
}
|
|
353
353
|
});
|
|
354
|
-
|
|
355
|
-
log.info(`[ravi-email-owner]
|
|
354
|
+
poller.onReconnect(() => {
|
|
355
|
+
log.info(`[ravi-email-owner] Polling reconnected for ${identityName}`);
|
|
356
356
|
});
|
|
357
|
-
log.info(`[ravi-email-owner]
|
|
357
|
+
log.info(`[ravi-email-owner] Polling started for ${identityName} (${ctx.accountId})`);
|
|
358
358
|
// Block until gateway signals shutdown
|
|
359
359
|
await new Promise((resolve) => {
|
|
360
360
|
if (ctx.abortSignal.aborted) {
|
|
361
361
|
log.info(`[ravi-email-owner] Stopping email channel for ${identityName} (already aborted)`);
|
|
362
|
-
|
|
362
|
+
releasePollingClient(ctx.accountId);
|
|
363
363
|
resolve();
|
|
364
364
|
return;
|
|
365
365
|
}
|
|
366
366
|
ctx.abortSignal.addEventListener("abort", () => {
|
|
367
367
|
log.info(`[ravi-email-owner] Stopping email channel for ${identityName}`);
|
|
368
|
-
|
|
368
|
+
releasePollingClient(ctx.accountId);
|
|
369
369
|
resolve();
|
|
370
370
|
});
|
|
371
371
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email.js","sourceRoot":"","sources":["../../src/channels/email.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"email.js","sourceRoot":"","sources":["../../src/channels/email.ts"],"names":[],"mappings":"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"}
|
package/dist/client.d.ts
CHANGED
|
@@ -75,7 +75,7 @@ export declare class RaviClient {
|
|
|
75
75
|
* Email accepts three formats: local part only (e.g. 'shopping'),
|
|
76
76
|
* full email (e.g. 'shopping@acme.com'), or omit for auto-generated.
|
|
77
77
|
*/
|
|
78
|
-
createIdentity(name
|
|
78
|
+
createIdentity(name?: string, email?: string): Promise<Identity>;
|
|
79
79
|
/** List available email domains (platform + user's custom domains). */
|
|
80
80
|
listDomains(): Promise<EmailDomain[]>;
|
|
81
81
|
/** Get the email address for the current identity. Returns empty string if none. */
|
|
@@ -94,6 +94,23 @@ export declare class RaviClient {
|
|
|
94
94
|
* @param threadId - The thread identifier.
|
|
95
95
|
*/
|
|
96
96
|
getEmailThread(threadId: string): Promise<EmailThreadDetail>;
|
|
97
|
+
/**
|
|
98
|
+
* List email messages with optional filters.
|
|
99
|
+
*
|
|
100
|
+
* Returns a paginated response. Use `createdAfter` for cursor-based
|
|
101
|
+
* polling to fetch only new messages since the last poll.
|
|
102
|
+
*/
|
|
103
|
+
listEmailMessages(opts?: {
|
|
104
|
+
direction?: "incoming" | "outgoing";
|
|
105
|
+
createdAfter?: string;
|
|
106
|
+
limit?: number;
|
|
107
|
+
offset?: number;
|
|
108
|
+
}): Promise<{
|
|
109
|
+
count: number;
|
|
110
|
+
next: string | null;
|
|
111
|
+
previous: string | null;
|
|
112
|
+
results: EmailMessage[];
|
|
113
|
+
}>;
|
|
97
114
|
/**
|
|
98
115
|
* List SMS conversations for the current identity.
|
|
99
116
|
*
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,UAAU,EACV,aAAa,EACb,WAAW,EACX,YAAY,EACZ,cAAc,EACd,eAAe,EACf,WAAW,EACZ,MAAM,YAAY,CAAC;AAOpB,qDAAqD;AACrD,MAAM,WAAW,gBAAgB;IAC/B,8DAA8D;IAC9D,MAAM,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,wEAAwE;IACxE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wFAAwF;IACxF,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7C;AAID;;;;;GAKG;AACH,qBAAa,YAAa,SAAQ,KAAK;aAEnB,MAAM,EAAE,MAAM;aACd,IAAI,EAAE,MAAM;aACZ,MAAM,EAAE,MAAM;aACd,IAAI,EAAE,MAAM;gBAHZ,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM;CAK/B;AAID;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,YAAY,CAAC,CAAS;IAC9B,OAAO,CAAC,cAAc,CAA8B;IACpD,OAAO,CAAC,cAAc,CAAC,CAA6B;gBAExC,MAAM,EAAE,gBAAgB;IAOpC;;;;;;;;OAQG;YACW,OAAO;IAkErB;;;;;OAKG;IACG,YAAY,CAChB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAQ/C,+DAA+D;IACzD,cAAc,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAI3C;;;;OAIG;IACG,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.js
CHANGED
|
@@ -140,7 +140,9 @@ export class RaviClient {
|
|
|
140
140
|
* full email (e.g. 'shopping@acme.com'), or omit for auto-generated.
|
|
141
141
|
*/
|
|
142
142
|
async createIdentity(name, email) {
|
|
143
|
-
const payload = {
|
|
143
|
+
const payload = {};
|
|
144
|
+
if (name)
|
|
145
|
+
payload.name = name;
|
|
144
146
|
if (email)
|
|
145
147
|
payload.email = email;
|
|
146
148
|
return this.request("POST", "/api/identities/", payload);
|
|
@@ -178,6 +180,25 @@ export class RaviClient {
|
|
|
178
180
|
async getEmailThread(threadId) {
|
|
179
181
|
return this.request("GET", `/api/email-inbox/${encodeURIComponent(threadId)}/`);
|
|
180
182
|
}
|
|
183
|
+
/**
|
|
184
|
+
* List email messages with optional filters.
|
|
185
|
+
*
|
|
186
|
+
* Returns a paginated response. Use `createdAfter` for cursor-based
|
|
187
|
+
* polling to fetch only new messages since the last poll.
|
|
188
|
+
*/
|
|
189
|
+
async listEmailMessages(opts) {
|
|
190
|
+
const params = new URLSearchParams();
|
|
191
|
+
if (opts?.direction)
|
|
192
|
+
params.set("direction", opts.direction);
|
|
193
|
+
if (opts?.createdAfter)
|
|
194
|
+
params.set("created_after", opts.createdAfter);
|
|
195
|
+
if (opts?.limit !== undefined)
|
|
196
|
+
params.set("limit", String(opts.limit));
|
|
197
|
+
if (opts?.offset !== undefined)
|
|
198
|
+
params.set("offset", String(opts.offset));
|
|
199
|
+
const query = params.toString();
|
|
200
|
+
return this.request("GET", `/api/email-messages/${query ? `?${query}` : ""}`);
|
|
201
|
+
}
|
|
181
202
|
// ── SMS Inbox ────────────────────────────────────────────────────────────
|
|
182
203
|
/**
|
|
183
204
|
* List SMS conversations for the current identity.
|