@robono/server 0.23.0 → 0.24.0

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/CHANGELOG.md CHANGED
@@ -1,4 +1,14 @@
1
- ## 0.23.0 — unreleased
1
+ ## 0.24.0
2
+
3
+ Add explicit Robono-managed membership permissions to the supplied Messenger server and installer. Preserve existing custom authorization during upgrades. Register native incoming-call devices and deliver genuine Apple VoIP / Android data call invitations separately from message notifications.
4
+
5
+ # Changelog
6
+
7
+ ## 0.23.1 — 2026-11-04
8
+
9
+ - Preserve the required 15-minute timer when forwarding chat tracking starts through the customer server.
10
+
11
+ ## 0.23.0 — 2026-11-04
2
12
 
3
13
  Connect messaging, Maps, chat extras and supplied calling through one authenticated route. Synchronize contacts once; retain caller controls on the server. Add managed call alerts, read-only setup checks, Maps/native registration guidance and screen-sharing build configuration. Preserve customer permissions and explicit plugin choices during upgrades.
4
14
 
package/README.md CHANGED
@@ -473,3 +473,20 @@ npx --package @robono/server robono-messenger-install --upgrade
473
473
  The installer records the hashes of generated files. Upgrades replace verified unchanged files, back up replacements privately under `.robono/backups`, and preserve customer edits and deletions. A changed file needing review gets a proposed version under `.robono/updates`; `.robono/upgrade-report.json` lists exact paths and reasons, without file contents or secrets. Permission changes are never guessed or merged automatically. Apply reviewed changes yourself and run the upgrade again. Pending review uses exit code 2; command/install errors use exit code 1.
474
474
 
475
475
  Installations from 0.21.0 are compared against bundled copies of that published generator. Older files that cannot be verified are preserved for review. An installation that did not save its company name needs `--company` with its existing name. Package commands are reconstructed, never executed from metadata. `--resume` finishes interrupted dependencies; it does not replace integration code. Keep `.robono/setup.json` with your project for future comparisons. The upgrade checks for edits made after planning before it writes files.
476
+
477
+
478
+ ### Standard Messenger permissions
479
+
480
+ Use `createRobonoMessengerServer({apiKey, authenticate, permissions: 'robono',
481
+ allowedOrigins})` to use Robono's stored contacts, group memberships, feature
482
+ permissions and directed Maps grants. This is the generated installer's default.
483
+ `authenticate` must verify your existing session and current account eligibility.
484
+ Supply contacts with `synchronizeContact`, group membership with `robono.setGroup`,
485
+ and Maps viewers with the location server APIs. Keep removals and suspensions
486
+ current. Signing in grants no membership, location consent or ability to administer
487
+ another user. Names/avatars remain customer-supplied display data.
488
+
489
+ Add `authorize` only when you need extra company-specific restrictions. Existing
490
+ custom callbacks remain supported and can only restrict Robono's own checks.
491
+ Omitting both `permissions` and `authorize` is rejected; the SDK does not silently
492
+ change an existing customer's security policy.
package/SBOM.spdx.json CHANGED
@@ -2,22 +2,22 @@
2
2
  "spdxVersion": "SPDX-2.3",
3
3
  "dataLicense": "CC0-1.0",
4
4
  "SPDXID": "SPDXRef-DOCUMENT",
5
- "name": "@robono/server@0.23.0",
6
- "documentNamespace": "http://spdx.org/spdxdocs/@robono%2fserver-0.23.0-***",
5
+ "name": "@robono/server@0.24.0",
6
+ "documentNamespace": "http://spdx.org/spdxdocs/@robono%2fserver-0.24.0-***",
7
7
  "creationInfo": {
8
- "created": "2026-11-04T11:34:55.911Z",
8
+ "created": "2026-11-04T14:48:55.080Z",
9
9
  "creators": [
10
10
  "Tool: npm/cli-11.6.2"
11
11
  ]
12
12
  },
13
13
  "documentDescribes": [
14
- "SPDXRef-Package-robono.server-0.23.0"
14
+ "SPDXRef-Package-robono.server-0.24.0"
15
15
  ],
16
16
  "packages": [
17
17
  {
18
18
  "name": "@robono/server",
19
- "SPDXID": "SPDXRef-Package-robono.server-0.23.0",
20
- "versionInfo": "0.23.0",
19
+ "SPDXID": "SPDXRef-Package-robono.server-0.24.0",
20
+ "versionInfo": "0.24.0",
21
21
  "packageFileName": "",
22
22
  "description": "Provider-neutral server SDK for the Robono Bridge API.",
23
23
  "primaryPackagePurpose": "LIBRARY",
@@ -29,7 +29,7 @@
29
29
  {
30
30
  "referenceCategory": "PACKAGE-MANAGER",
31
31
  "referenceType": "purl",
32
- "referenceLocator": "pkg:npm/%40robono/server@0.23.0"
32
+ "referenceLocator": "pkg:npm/%40robono/server@0.24.0"
33
33
  }
34
34
  ]
35
35
  },
@@ -175,12 +175,12 @@
175
175
  "relationships": [
176
176
  {
177
177
  "spdxElementId": "SPDXRef-DOCUMENT",
178
- "relatedSpdxElement": "SPDXRef-Package-robono.server-0.23.0",
178
+ "relatedSpdxElement": "SPDXRef-Package-robono.server-0.24.0",
179
179
  "relationshipType": "DESCRIBES"
180
180
  },
181
181
  {
182
182
  "spdxElementId": "SPDXRef-Package-cross-spawn-7.0.6",
183
- "relatedSpdxElement": "SPDXRef-Package-robono.server-0.23.0",
183
+ "relatedSpdxElement": "SPDXRef-Package-robono.server-0.24.0",
184
184
  "relationshipType": "DEPENDENCY_OF"
185
185
  },
186
186
  {
@@ -1 +1 @@
1
- {"version":3,"file":"messaging-extras-contract.d.ts","sourceRoot":"","sources":["../src/messaging-extras-contract.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,yBAAyB,8JAAqJ,CAAC;AAC5L,MAAM,MAAM,wBAAwB,GAAC,OAAO,yBAAyB,CAAC,MAAM,CAAC,CAAC;AAG9E,4FAA4F;AAC5F,wBAAgB,8BAA8B,CAAC,KAAK,EAAC,OAAO,EAAC,GAAG,SAAW;;WAOY,MAAM,CAAC,MAAM,EAAC,OAAO,CAAC;;;;;;;EAoC5G"}
1
+ {"version":3,"file":"messaging-extras-contract.d.ts","sourceRoot":"","sources":["../src/messaging-extras-contract.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,yBAAyB,8JAAqJ,CAAC;AAC5L,MAAM,MAAM,wBAAwB,GAAC,OAAO,yBAAyB,CAAC,MAAM,CAAC,CAAC;AAG9E,4FAA4F;AAC5F,wBAAgB,8BAA8B,CAAC,KAAK,EAAC,OAAO,EAAC,GAAG,SAAW;;WAOY,MAAM,CAAC,MAAM,EAAC,OAAO,CAAC;;;;;;;EAuC5G"}
@@ -74,8 +74,11 @@ export function validateMessagingExtrasRequest(value, now = Date.now()) {
74
74
  throw Error('A request ID is required.');
75
75
  input.requestId = v.requestId;
76
76
  }
77
- if (operation === 'tracking-start' && v.durationMinutes !== 15)
78
- throw Error('Chat tracking lasts 15 minutes.');
77
+ if (operation === 'tracking-start') {
78
+ if (v.durationMinutes !== 15)
79
+ throw Error('Chat tracking lasts 15 minutes.');
80
+ input.durationMinutes = 15;
81
+ }
79
82
  if (operation === 'tracking-stop' && v.sessionId === undefined) {
80
83
  if (!identifier(v.requestId))
81
84
  throw Error('Choose a sharing request.');
@@ -1 +1 @@
1
- {"version":3,"file":"messaging-extras-contract.js","sourceRoot":"","sources":["../src/messaging-extras-contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messaging-extras-contract.js","sourceRoot":"","sources":["../src/messaging-extras-contract.ts"],"names":[],"mappings":"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"}
@@ -16,10 +16,13 @@ export interface CallingPushData {
16
16
  event_id: string;
17
17
  call_id: string;
18
18
  connection_id: string;
19
+ conversation_id?: string;
19
20
  kind: 'voice' | 'video';
20
21
  sequence: string;
21
22
  ring_expires_at: string;
22
23
  accountScope: string;
24
+ reason?: string;
25
+ decline_grant?: string;
23
26
  }
24
27
  export type CommunicationPushData = MessagingPushData | CallingPushData;
25
28
  export declare function notificationPresentation(data: CommunicationPushData, now?: number): {
@@ -30,7 +33,54 @@ export declare function notificationPresentation(data: CommunicationPushData, no
30
33
  ttl: number;
31
34
  channel: string;
32
35
  };
33
- type SendResult = Awaited<ReturnType<MessagingNotificationOptions['send']>>;
36
+ type SendResult = Awaited<ReturnType<MessagingNotificationOptions['send']>> & {
37
+ invalidVoipToken?: boolean;
38
+ };
39
+ /** Keep Apple's call-only transport separate from ordinary notifications. */
40
+ export declare function applePushEnvelope(device: MessagingPushDevice, data: CommunicationPushData, bundleId: string, title: string, now?: number): {
41
+ voip: boolean;
42
+ token: string;
43
+ topic: string;
44
+ pushType: string;
45
+ priority: string;
46
+ expiration: string;
47
+ payload: {
48
+ aps: {
49
+ 'content-available': number;
50
+ alert?: never;
51
+ sound?: never;
52
+ 'thread-id'?: never;
53
+ } | {
54
+ alert: {
55
+ title: string;
56
+ body: string;
57
+ };
58
+ sound: string;
59
+ 'thread-id': string;
60
+ 'content-available'?: never;
61
+ };
62
+ body: CommunicationPushData;
63
+ };
64
+ };
65
+ export declare function googlePushEnvelope(device: MessagingPushDevice, data: CommunicationPushData, title: string, now?: number): {
66
+ message: {
67
+ data: CommunicationPushData;
68
+ android: {
69
+ notification?: {
70
+ tag: string;
71
+ channel_id: string;
72
+ };
73
+ priority: string;
74
+ ttl: string;
75
+ collapse_key: string;
76
+ };
77
+ notification?: {
78
+ title: string;
79
+ body: string;
80
+ };
81
+ token: string;
82
+ };
83
+ };
34
84
  /** Uses only fixed Apple/Google endpoints. Private keys never enter notification payloads. */
35
85
  export declare function createMessagingPushSender(options: {
36
86
  apple?: AppleMessagingCredentials;
@@ -1 +1 @@
1
- {"version":3,"file":"messaging-notification-providers.d.ts","sourceRoot":"","sources":["../src/messaging-notification-providers.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,mBAAmB,EAAC,iBAAiB,EAAC,4BAA4B,EAAC,MAAM,8BAA8B,CAAC;AAErH,MAAM,WAAW,yBAAyB;IAAE,MAAM,EAAC,MAAM,CAAC;IAAA,KAAK,EAAC,MAAM,CAAC;IAAA,UAAU,EAAC,MAAM,CAAC;IAAA,QAAQ,EAAC,MAAM,CAAC;IAAA,OAAO,CAAC,EAAC,OAAO,CAAA;CAAC;AAC1H,MAAM,WAAW,0BAA0B;IAAE,SAAS,EAAC,MAAM,CAAC;IAAA,WAAW,EAAC,MAAM,CAAC;IAAA,UAAU,EAAC,MAAM,CAAA;CAAC;AACnG,MAAM,WAAW,eAAe;IAAE,KAAK,EAAC,kBAAkB,GAAC,mBAAmB,GAAC,wBAAwB,GAAC,yBAAyB,CAAC;IAAA,QAAQ,EAAC,MAAM,CAAC;IAAA,OAAO,EAAC,MAAM,CAAC;IAAA,aAAa,EAAC,MAAM,CAAC;IAAA,IAAI,EAAC,OAAO,GAAC,OAAO,CAAC;IAAA,QAAQ,EAAC,MAAM,CAAC;IAAA,eAAe,EAAC,MAAM,CAAC;IAAA,YAAY,EAAC,MAAM,CAAA;CAAC;AACtQ,MAAM,MAAM,qBAAqB,GAAC,iBAAiB,GAAC,eAAe,CAAC;AACpE,wBAAgB,wBAAwB,CAAC,IAAI,EAAC,qBAAqB,EAAC,GAAG,SAAW;;;;;;;EAIjF;AACD,KAAK,UAAU,GAAC,OAAO,CAAC,UAAU,CAAC,4BAA4B,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAS1E,8FAA8F;AAC9F,wBAAgB,yBAAyB,CAAC,OAAO,EAAC;IAAC,KAAK,CAAC,EAAC,yBAAyB,CAAC;IAAA,MAAM,CAAC,EAAC,0BAA0B,CAAC;IAAA,KAAK,CAAC,EAAC,MAAM,CAAC;IAAA,KAAK,CAAC,EAAC,OAAO,KAAK,CAAA;CAAC;;iBAwDrI,mBAAmB,QAAM,qBAAqB,GAAE,OAAO,CAAC,UAAU,CAAC;EAKtF"}
1
+ {"version":3,"file":"messaging-notification-providers.d.ts","sourceRoot":"","sources":["../src/messaging-notification-providers.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,mBAAmB,EAAC,iBAAiB,EAAC,4BAA4B,EAAC,MAAM,8BAA8B,CAAC;AAErH,MAAM,WAAW,yBAAyB;IAAE,MAAM,EAAC,MAAM,CAAC;IAAA,KAAK,EAAC,MAAM,CAAC;IAAA,UAAU,EAAC,MAAM,CAAC;IAAA,QAAQ,EAAC,MAAM,CAAC;IAAA,OAAO,CAAC,EAAC,OAAO,CAAA;CAAC;AAC1H,MAAM,WAAW,0BAA0B;IAAE,SAAS,EAAC,MAAM,CAAC;IAAA,WAAW,EAAC,MAAM,CAAC;IAAA,UAAU,EAAC,MAAM,CAAA;CAAC;AACnG,MAAM,WAAW,eAAe;IAAE,KAAK,EAAC,kBAAkB,GAAC,mBAAmB,GAAC,wBAAwB,GAAC,yBAAyB,CAAC;IAAA,QAAQ,EAAC,MAAM,CAAC;IAAA,OAAO,EAAC,MAAM,CAAC;IAAA,aAAa,EAAC,MAAM,CAAC;IAAA,eAAe,CAAC,EAAC,MAAM,CAAC;IAAA,IAAI,EAAC,OAAO,GAAC,OAAO,CAAC;IAAA,QAAQ,EAAC,MAAM,CAAC;IAAA,eAAe,EAAC,MAAM,CAAC;IAAA,YAAY,EAAC,MAAM,CAAC;IAAA,MAAM,CAAC,EAAC,MAAM,CAAC;IAAA,aAAa,CAAC,EAAC,MAAM,CAAA;CAAC;AACnU,MAAM,MAAM,qBAAqB,GAAC,iBAAiB,GAAC,eAAe,CAAC;AACpE,wBAAgB,wBAAwB,CAAC,IAAI,EAAC,qBAAqB,EAAC,GAAG,SAAW;;;;;;;EAIjF;AACD,KAAK,UAAU,GAAC,OAAO,CAAC,UAAU,CAAC,4BAA4B,CAAC,MAAM,CAAC,CAAC,CAAC,GAAC;IAAC,gBAAgB,CAAC,EAAC,OAAO,CAAA;CAAC,CAAC;AAStG,6EAA6E;AAC7E,wBAAgB,iBAAiB,CAAC,MAAM,EAAC,mBAAmB,EAAC,IAAI,EAAC,qBAAqB,EAAC,QAAQ,EAAC,MAAM,EAAC,KAAK,EAAC,MAAM,EAAC,GAAG,SAAW;;;;;;;;;;;;;;;;;;;;;;;;EAOlI;AACD,wBAAgB,kBAAkB,CAAC,MAAM,EAAC,mBAAmB,EAAC,IAAI,EAAC,qBAAqB,EAAC,KAAK,EAAC,MAAM,EAAC,GAAG,SAAW;;;;;;;;;;;;;;;;;;EAInH;AAED,8FAA8F;AAC9F,wBAAgB,yBAAyB,CAAC,OAAO,EAAC;IAAC,KAAK,CAAC,EAAC,yBAAyB,CAAC;IAAA,MAAM,CAAC,EAAC,0BAA0B,CAAC;IAAA,KAAK,CAAC,EAAC,MAAM,CAAC;IAAA,KAAK,CAAC,EAAC,OAAO,KAAK,CAAA;CAAC;;iBAyDrI,mBAAmB,QAAM,qBAAqB,GAAE,OAAO,CAAC,UAAU,CAAC;EAKtF"}
@@ -12,6 +12,21 @@ function jwt(header, claims, key, algorithm, p1363 = false) {
12
12
  return body + '.' + signature.toString('base64url');
13
13
  }
14
14
  function collapse(data) { return createHash('sha256').update(data.accountScope + ':' + (data.event === 'robono.messaging' ? data.conversationId : data.call_id)).digest('hex'); }
15
+ /** Keep Apple's call-only transport separate from ordinary notifications. */
16
+ export function applePushEnvelope(device, data, bundleId, title, now = Date.now()) {
17
+ const p = notificationPresentation(data, now), voip = p.call && !p.dismissed && device.systemCalling === true;
18
+ if (voip && !/^[a-f\d]{64,200}$/i.test(device.voipToken ?? ''))
19
+ throw Error('voip_token_missing');
20
+ return { voip, token: voip ? device.voipToken : device.token,
21
+ topic: bundleId + (voip ? '.voip' : ''), pushType: voip ? 'voip' : p.dismissed ? 'background' : 'alert',
22
+ priority: p.dismissed ? '5' : '10', expiration: voip ? '0' : String(p.expires),
23
+ payload: { aps: voip || p.dismissed ? { 'content-available': 1 } : { alert: { title: p.call ? 'Incoming call' : title, body: p.body }, sound: 'default', 'thread-id': collapse(data) }, body: data } };
24
+ }
25
+ export function googlePushEnvelope(device, data, title, now = Date.now()) {
26
+ const p = notificationPresentation(data, now), visible = !p.dismissed && !(p.call && device.systemCalling);
27
+ return { message: { token: device.token, ...(visible ? { notification: { title: p.call ? 'Incoming call' : title, body: p.body } } : {}), data,
28
+ android: { priority: 'high', ttl: p.ttl + 's', collapse_key: collapse(data), ...(visible ? { notification: { tag: collapse(data), channel_id: p.channel } } : {}) } } };
29
+ }
15
30
  /** Uses only fixed Apple/Google endpoints. Private keys never enter notification payloads. */
16
31
  export function createMessagingPushSender(options) {
17
32
  const title = options.title?.trim() || 'New message';
@@ -59,7 +74,14 @@ export function createMessagingPushSender(options) {
59
74
  const p = notificationPresentation(data);
60
75
  if (p.call && !p.dismissed && p.ttl <= 0)
61
76
  return { accepted: false, retryable: false, code: 'call_expired' };
62
- const payload = JSON.stringify({ aps: p.dismissed ? { 'content-available': 1 } : { alert: { title: p.call ? 'Incoming call' : title, body: p.body }, sound: 'default', 'thread-id': collapse(data) }, body: data });
77
+ let envelope;
78
+ try {
79
+ envelope = applePushEnvelope(device, data, apple.bundleId, title);
80
+ }
81
+ catch {
82
+ return { accepted: false, retryable: false, invalidVoipToken: true, code: 'voip_token_missing' };
83
+ }
84
+ const payload = JSON.stringify(envelope.payload);
63
85
  return new Promise(resolve => {
64
86
  const session = connect(apple.sandbox ? 'https://api.sandbox.push.apple.com' : 'https://api.push.apple.com');
65
87
  let finished = false;
@@ -67,7 +89,7 @@ export function createMessagingPushSender(options) {
67
89
  return; finished = true; clearTimeout(timer); session.destroy(); resolve(result); };
68
90
  const timer = setTimeout(() => finish({ accepted: false, retryable: true, code: 'apple_timeout' }), 15000);
69
91
  session.on('error', () => finish({ accepted: false, retryable: true, code: 'apple_connection_failed' }));
70
- const stream = session.request({ ':method': 'POST', ':path': '/3/device/' + device.token, authorization: 'bearer ' + appleToken.value, 'apns-topic': apple.bundleId, 'apns-push-type': p.dismissed ? 'background' : 'alert', 'apns-priority': p.dismissed ? '5' : '10', 'apns-expiration': String(p.expires), 'apns-collapse-id': collapse(data), 'content-type': 'application/json' });
92
+ const stream = session.request({ ':method': 'POST', ':path': '/3/device/' + envelope.token, authorization: 'bearer ' + appleToken.value, 'apns-topic': envelope.topic, 'apns-push-type': envelope.pushType, 'apns-priority': envelope.priority, 'apns-expiration': envelope.expiration, 'apns-collapse-id': collapse(data), 'content-type': 'application/json' });
71
93
  let status = 0, body = '';
72
94
  stream.setEncoding('utf8');
73
95
  stream.on('response', headers => { status = Number(headers[':status']); });
@@ -82,7 +104,8 @@ export function createMessagingPushSender(options) {
82
104
  catch { }
83
105
  if (status === 403)
84
106
  appleToken = { value: '', expires: 0 };
85
- finish({ accepted: status === 200, invalidDevice: status === 410 || reason === 'BadDeviceToken', retryable: reason === 'ExpiredProviderToken' || status === 429 || status >= 500, code: status === 200 ? 'accepted' : status === 403 ? 'apple_credentials_rejected' : 'apple_rejected' });
107
+ const invalidToken = status === 410 || reason === 'BadDeviceToken';
108
+ finish({ accepted: status === 200, invalidDevice: !envelope.voip && invalidToken, invalidVoipToken: envelope.voip && invalidToken, retryable: reason === 'ExpiredProviderToken' || status === 429 || status >= 500, code: status === 200 ? 'accepted' : status === 403 ? 'apple_credentials_rejected' : 'apple_rejected' });
86
109
  });
87
110
  stream.end(payload);
88
111
  });
@@ -95,8 +118,7 @@ export function createMessagingPushSender(options) {
95
118
  return { accepted: false, retryable: false, code: 'call_expired' };
96
119
  const response = await request('https://fcm.googleapis.com/v1/projects/' + encodeURIComponent(google.projectId) + '/messages:send', {
97
120
  method: 'POST', redirect: 'error', signal: AbortSignal.timeout(15000), headers: { authorization: 'Bearer ' + await googleAccess(), 'content-type': 'application/json' },
98
- body: JSON.stringify({ message: { token: device.token, ...(!p.dismissed ? { notification: { title: p.call ? 'Incoming call' : title, body: p.body } } : {}), data,
99
- android: { priority: 'high', ttl: p.ttl + 's', collapse_key: collapse(data), ...(!p.dismissed ? { notification: { tag: collapse(data), channel_id: p.channel } } : {}) } } }),
121
+ body: JSON.stringify(googlePushEnvelope(device, data, title)),
100
122
  });
101
123
  const result = await response.json().catch(() => null);
102
124
  if (response.status === 401)
@@ -1 +1 @@
1
- {"version":3,"file":"messaging-notification-providers.js","sourceRoot":"","sources":["../src/messaging-notification-providers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messaging-notification-providers.js","sourceRoot":"","sources":["../src/messaging-notification-providers.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,8 @@ export interface MessagingPushDevice {
11
11
  userId: string;
12
12
  provider: 'apns' | 'fcm';
13
13
  token: string;
14
+ systemCalling?: boolean;
15
+ voipToken?: string | null;
14
16
  }
15
17
  export interface MessagingPushJob {
16
18
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"messaging-notifications.d.ts","sourceRoot":"","sources":["../src/messaging-notifications.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messaging-notifications.d.ts","sourceRoot":"","sources":["../src/messaging-notifications.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"messenger-connected-templates.d.ts","sourceRoot":"","sources":["../src/messenger-connected-templates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,uBAAuB,EAAC,MAAM,qBAAqB,CAAC;AAEjE,MAAM,MAAM,qBAAqB,GAAC,QAAQ,GAAC,UAAU,GAAC,UAAU,CAAC;AACjE,wBAAgB,uBAAuB,CAAC,KAAK,EAAC,MAAM,CAAC,MAAM,EAAC,MAAM,CAAC,EAAC,OAAO,EAAC,uBAAuB,0BAuIlG"}
1
+ {"version":3,"file":"messenger-connected-templates.d.ts","sourceRoot":"","sources":["../src/messenger-connected-templates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,uBAAuB,EAAC,MAAM,qBAAqB,CAAC;AAEjE,MAAM,MAAM,qBAAqB,GAAC,QAAQ,GAAC,UAAU,GAAC,UAAU,CAAC;AACjE,wBAAgB,uBAAuB,CAAC,KAAK,EAAC,MAAM,CAAC,MAAM,EAAC,MAAM,CAAC,EAAC,OAAO,EAAC,uBAAuB,0BAoIlG"}
@@ -26,14 +26,11 @@ const provider=getApps().find(app=>app.name==='robono-auth')??initializeApp({cre
26
26
  verify=firebaseMessengerAuthentication(getAuth(provider));
27
27
  return verify(request);
28
28
  }`;
29
- files['server/robono-access.ts'] = `import type {MessengerAccess} from '@robono/server';\n${setup}\n\n// Keep YOUR current eligibility, suspension and membership checks here.
30
- // Signing in does not grant permission to every conversation.
31
- // Account-level settings and calling.session/calling.setup have no conversation ID.
32
- // Chat calls, media and extras need their own current permissions; location uses
33
- // directed viewer grants. Do not treat every operation as sending a text.
34
- export async function authorize(access:MessengerAccess):Promise<boolean>{
35
- throw Error('Connect your existing messaging permission check in robono-access.ts');
36
- }
29
+ files['server/robono-access.ts'] = `${setup}\n
30
+ // Robono checks your server-supplied contacts, group memberships and location
31
+ // grants. Add extra customer-specific restrictions with authorize in robono.ts
32
+ // only when your application needs them. Keep suspended accounts revoked.
33
+ export const authorize = undefined;
37
34
  `;
38
35
  files['.env.example'] += provider === 'supabase' ? '# Existing NEXT_PUBLIC_SUPABASE_URL and NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY\n# (or NEXT_PUBLIC_SUPABASE_ANON_KEY) are reused when present. Otherwise set:\n# SUPABASE_URL=\n# SUPABASE_PUBLISHABLE_KEY=\n' : '# Server only: path to your existing Firebase service-account file, or workload identity.\nGOOGLE_APPLICATION_CREDENTIALS=\n';
39
36
  }
@@ -134,7 +131,7 @@ export function robonoAccounts(auth:Auth):RobonoAccounts{
134
131
  }}:null),()=>listener(null));},signOut:()=>signOut(auth)};
135
132
  }
136
133
  `;
137
- files['ROBONO-SETUP.md'] += `\n## Connected accounts\n${provider === 'custom' ? 'Implement the small RobonoAccounts interface using your existing verified sign-in client.' : 'Import CustomerMessenger and pass your existing ' + (provider === 'supabase' ? 'Supabase client' : 'Firebase Auth instance') + ' as auth. The account wrapper is included.'} Pass your current contact dictionary as contacts; names and avatars update without restarting the chat. The connected screen listens for sign-in, sign-out and account switching. It uses a fresh token for each request and never substitutes one account’s token for another.\n\nKeep CustomerMessenger mounted in your signed-in application. Add setupChecks during development for a connection check using your existing login; no copied tokens are needed. The panel is hidden in production. Keep your own account suspension and permission checks in robono-access.ts; provider identity verification does not replace them. Missing permission code intentionally denies access. For explicit host sign-out, unregister messaging before revoking your session when possible. If the provider session has already expired, local content is still cleared; synchronize revoked account access on the server so notifications are also blocked.\n`;
134
+ files['ROBONO-SETUP.md'] += `\n## Connected accounts\n${provider === 'custom' ? 'Implement the small RobonoAccounts interface using your existing verified sign-in client.' : 'Import CustomerMessenger and pass your existing ' + (provider === 'supabase' ? 'Supabase client' : 'Firebase Auth instance') + ' as auth. The account wrapper is included.'} Pass your current contact dictionary as contacts; names and avatars update without restarting the chat. The connected screen listens for sign-in, sign-out and account switching. It uses a fresh token for each request and never substitutes one account’s token for another.\n\nKeep CustomerMessenger mounted in your signed-in application. Add setupChecks during development for a connection check using your existing login; no copied tokens are needed. The panel is hidden in production. The standard permissions:'robono' mode enforces the contacts, group membership, feature permissions and Maps sharing grants you synchronize with Robono. No per-button permission handler is needed. Keep your sign-in account suspension current. Add authorize in robono.ts only for additional business restrictions. For explicit host sign-out, unregister messaging before revoking your session when possible. If the provider session has already expired, local content is still cleared; synchronize revoked account access on the server so notifications are also blocked.\n`;
138
135
  Object.assign(files, customerMessengerTemplates(options));
139
136
  return files;
140
137
  }
@@ -1 +1 @@
1
- {"version":3,"file":"messenger-connected-templates.js","sourceRoot":"","sources":["../src/messenger-connected-templates.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,0BAA0B,EAAC,MAAM,mCAAmC,CAAC;AAE7E,MAAM,UAAU,uBAAuB,CAAC,KAA2B,EAAC,OAA+B;IAClG,MAAM,QAAQ,GAAC,OAAO,CAAC,IAAI,IAAE,QAAQ,EAAC,GAAG,GAAC,OAAO,CAAC,QAAQ,KAAG,KAAK,EAAC,CAAC,GAAC,IAAI,CAAC,SAAS,CAAC;IACpF,IAAG,CAAC,CAAC,QAAQ,EAAC,UAAU,EAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAC,MAAM,KAAK,CAAC,8CAA8C,CAAC,CAAC;IACpH,IAAG,QAAQ,KAAG,QAAQ,EAAC,CAAC;QACvB,MAAM,KAAK,GAAC,QAAQ,KAAG,UAAU,CAAA,CAAC,CAAA;;;;;;;;;;;EAWlC,CAAA,CAAC,CAAA;;;;;;;;;;EAUD,CAAC;QACD,KAAK,CAAC,yBAAyB,CAAC,GAAC,yDAAyD,KAAK;;;;;;;;CAQhG,CAAC;QACA,KAAK,CAAC,cAAc,CAAC,IAAE,QAAQ,KAAG,UAAU,CAAA,CAAC,CAAA,4MAA4M,CAAA,CAAC,CAAA,8HAA8H,CAAC;IAC1X,CAAC;IACD,KAAK,CAAC,uBAAuB,CAAC,GAAC,GAAG,CAAA,CAAC,CAAA;;;;;;;;;;;wFAWoD,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;;;;;;;CAO7G,CAAA,CAAC,CAAA;;;;;;;;mDAQiD,CAAC,CAAC,OAAO,CAAC,MAAM,GAAC,aAAa,CAAC;;;;;6EAKL,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;;CAElG,CAAC;IACD,KAAK,CAAC,gCAAgC,CAAC,GAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgCxC,CAAC;IACD,IAAG,QAAQ,KAAG,UAAU;QAAC,KAAK,CAAC,2BAA2B,CAAC,GAAC;;;;;;;;;;;;;;;;CAgB5D,CAAC;IACD,IAAG,QAAQ,KAAG,UAAU;QAAC,KAAK,CAAC,2BAA2B,CAAC,GAAC;;;;;;;;;;CAU5D,CAAC;IACD,KAAK,CAAC,iBAAiB,CAAC,IAAE,4BAA4B,QAAQ,KAAG,QAAQ,CAAA,CAAC,CAAA,2FAA2F,CAAA,CAAC,CAAA,kDAAkD,GAAC,CAAC,QAAQ,KAAG,UAAU,CAAA,CAAC,CAAA,iBAAiB,CAAA,CAAC,CAAA,wBAAwB,CAAC,GAAC,4CAA4C,+5BAA+5B,CAAC;IACxuC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,CAAC;IACzD,OAAO,KAAK,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"messenger-connected-templates.js","sourceRoot":"","sources":["../src/messenger-connected-templates.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,0BAA0B,EAAC,MAAM,mCAAmC,CAAC;AAE7E,MAAM,UAAU,uBAAuB,CAAC,KAA2B,EAAC,OAA+B;IAClG,MAAM,QAAQ,GAAC,OAAO,CAAC,IAAI,IAAE,QAAQ,EAAC,GAAG,GAAC,OAAO,CAAC,QAAQ,KAAG,KAAK,EAAC,CAAC,GAAC,IAAI,CAAC,SAAS,CAAC;IACpF,IAAG,CAAC,CAAC,QAAQ,EAAC,UAAU,EAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAC,MAAM,KAAK,CAAC,8CAA8C,CAAC,CAAC;IACpH,IAAG,QAAQ,KAAG,QAAQ,EAAC,CAAC;QACvB,MAAM,KAAK,GAAC,QAAQ,KAAG,UAAU,CAAA,CAAC,CAAA;;;;;;;;;;;EAWlC,CAAA,CAAC,CAAA;;;;;;;;;;EAUD,CAAC;QACD,KAAK,CAAC,yBAAyB,CAAC,GAAC,GAAG,KAAK;;;;;CAK1C,CAAC;QACA,KAAK,CAAC,cAAc,CAAC,IAAE,QAAQ,KAAG,UAAU,CAAA,CAAC,CAAA,4MAA4M,CAAA,CAAC,CAAA,8HAA8H,CAAC;IAC1X,CAAC;IACD,KAAK,CAAC,uBAAuB,CAAC,GAAC,GAAG,CAAA,CAAC,CAAA;;;;;;;;;;;wFAWoD,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;;;;;;;CAO7G,CAAA,CAAC,CAAA;;;;;;;;mDAQiD,CAAC,CAAC,OAAO,CAAC,MAAM,GAAC,aAAa,CAAC;;;;;6EAKL,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;;CAElG,CAAC;IACD,KAAK,CAAC,gCAAgC,CAAC,GAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgCxC,CAAC;IACD,IAAG,QAAQ,KAAG,UAAU;QAAC,KAAK,CAAC,2BAA2B,CAAC,GAAC;;;;;;;;;;;;;;;;CAgB5D,CAAC;IACD,IAAG,QAAQ,KAAG,UAAU;QAAC,KAAK,CAAC,2BAA2B,CAAC,GAAC;;;;;;;;;;CAU5D,CAAC;IACD,KAAK,CAAC,iBAAiB,CAAC,IAAE,4BAA4B,QAAQ,KAAG,QAAQ,CAAA,CAAC,CAAA,2FAA2F,CAAA,CAAC,CAAA,kDAAkD,GAAC,CAAC,QAAQ,KAAG,UAAU,CAAA,CAAC,CAAA,iBAAiB,CAAA,CAAC,CAAA,wBAAwB,CAAC,GAAC,4CAA4C,iiCAAiiC,CAAC;IAC12C,MAAM,CAAC,MAAM,CAAC,KAAK,EAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,CAAC;IACzD,OAAO,KAAK,CAAC;AACd,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"messenger-init.d.ts","sourceRoot":"","sources":["../src/messenger-init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,qBAAqB,EAAC,MAAM,oCAAoC,CAAC;AAGtG,MAAM,WAAW,uBAAuB;IAAE,QAAQ,EAAC,KAAK,GAAC,MAAM,CAAC;IAAA,SAAS,EAAC,MAAM,GAAC,OAAO,CAAC;IAAA,MAAM,EAAC,MAAM,CAAC;IAAA,WAAW,EAAC,MAAM,CAAC;IAAA,IAAI,CAAC,EAAC,qBAAqB,CAAA;CAAC;AACtJ,4FAA4F;AAC5F,wBAAgB,qBAAqB,CAAC,OAAO,EAAC,uBAAuB,GAAE,MAAM,CAAC,MAAM,EAAC,MAAM,CAAC,CAoF3F;AACD,uFAAuF;AACvF,wBAAsB,qBAAqB,CAAC,WAAW,EAAC,MAAM,EAAC,OAAO,EAAC,uBAAuB,qBAc7F"}
1
+ {"version":3,"file":"messenger-init.d.ts","sourceRoot":"","sources":["../src/messenger-init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,qBAAqB,EAAC,MAAM,oCAAoC,CAAC;AAGtG,MAAM,WAAW,uBAAuB;IAAE,QAAQ,EAAC,KAAK,GAAC,MAAM,CAAC;IAAA,SAAS,EAAC,MAAM,GAAC,OAAO,CAAC;IAAA,MAAM,EAAC,MAAM,CAAC;IAAA,WAAW,EAAC,MAAM,CAAC;IAAA,IAAI,CAAC,EAAC,qBAAqB,CAAA;CAAC;AACtJ,4FAA4F;AAC5F,wBAAgB,qBAAqB,CAAC,OAAO,EAAC,uBAAuB,GAAE,MAAM,CAAC,MAAM,EAAC,MAAM,CAAC,CA8E3F;AACD,uFAAuF;AACvF,wBAAsB,qBAAqB,CAAC,WAAW,EAAC,MAAM,EAAC,OAAO,EAAC,uBAAuB,qBAc7F"}
@@ -11,21 +11,15 @@ export function messengerStarterFiles(options) {
11
11
  if (options.platform === 'expo' && origin.protocol !== 'https:')
12
12
  throw Error('Phone apps need an HTTPS server address reachable from the phone.');
13
13
  const q = JSON.stringify, route = options.framework === 'next' ? 'app/api/robono/route.ts' : 'server/robono-route.ts';
14
- const auth = `import type {MessengerAccess} from '@robono/server';
15
- // Replace ONLY these two functions with your existing account/permission service.
16
- // Do not read a user ID from the request body. Verify expiry and suspension.
14
+ const auth = `// Verify your existing account session, including expiry and suspension.
15
+ // Return its stable user ID. Never trust a user ID from a request body.
17
16
  export async function authenticate(request:Request):Promise<string|null>{
18
17
  throw Error('Connect your existing session verification in robono-access.ts');
19
18
  }
20
- // Account operations such as settings, conversations, calling.session/calling.setup,
21
- // location.settings and notifications.register-device
22
- // have no conversation ID. Allow them only for active, eligible accounts.
23
- // Chat operations (including calling.*, extras.* and media.*) also need current
24
- // membership and the operation-specific read/write/call permission. Location viewers
25
- // must follow your directed sharing grants. Do not treat all operations as message sends.
26
- export async function authorize(access:MessengerAccess):Promise<boolean>{
27
- throw Error('Connect your existing messaging permission check in robono-access.ts');
28
- }
19
+ // Robono enforces the contacts, group members and Maps sharing grants you supply
20
+ // through its server APIs. You do not need a second permission function for each
21
+ // chat button. Replace this optional callback only for additional business rules.
22
+ export const authorize = undefined;
29
23
  `;
30
24
  const files = {
31
25
  '.gitignore': '.env\n.env.local\nnode_modules/\n',
@@ -39,7 +33,7 @@ export function getMessenger(){
39
33
  const apiKey=process.env.ROBONO_API_KEY;
40
34
  if(!apiKey)throw Error('Set ROBONO_API_KEY on your server.');
41
35
  const allowedOrigins=process.env.ROBONO_ALLOWED_ORIGINS?.split(',').map((value:string)=>value.trim()).filter(Boolean)??[${q(options.origin)}];
42
- return messenger=createRobonoMessengerServer({apiKey,authenticate,authorize,allowedOrigins});
36
+ return messenger=createRobonoMessengerServer({apiKey,authenticate,authorize,permissions:'robono',allowedOrigins});
43
37
  }
44
38
  `,
45
39
  [route]: `import {getMessenger} from ${q(options.framework === 'next' ? '../../../server/robono' : './robono')};
@@ -53,7 +47,7 @@ export async function synchronizeFriendship(messenger:import('@robono/server').R
53
47
  return messenger.synchronizeContact({externalUserIds:[friendship.userA,friendship.userB],allowed:friendship.canCommunicate,revision:friendship.revision});
54
48
  }
55
49
  `,
56
- 'ROBONO-SETUP.md': `# Connect ${options.companyName.replace(/[\r\n]/g, ' ')} to Robono\n\nThese are prepared integration files, not a replacement for your app. No existing files were changed.\n\n1. Install the packages listed below in the corresponding server and client projects.\n2. Copy the generated files into your app. Put the Robono key only in the server's environment.\n3. Connect the two functions in robono-access.ts to your existing sign-in and permission checks. They reject access until connected.\n4. When your app permits or removes a friendship, call synchronizeFriendship with its current revision. Supply current contact names/avatars to the client. Group memberships use messenger.robono.setGroup.\n5. Mount GET and POST at /api/robono. Add the client screen, pass your signed-in account and token-refresh function, and call its signOut() before ending a session.\n6. Run robono-messenger-check against your own route with a disposable test-user token. Then exchange a message between two authorized users.\n\nServer: npm install @robono/server\nTypeScript server: npm install --save-dev typescript @types/node\nClient: npm install @robono/messaging @robono/${options.platform === 'web' ? 'messaging-web react react-dom' : 'messaging-react-native'}\n\n${options.platform === 'expo' ? 'For React Native, follow the native dependency and Expo configuration instructions in the package README before rebuilding iPhone and Android. Your app needs its own Apple/Google notification credentials; upload private keys only in Robono’s notification setup.' : 'For website alerts, enter your HTTPS origin and chat page in Robono’s notification setup. The supplied messenger handles the browser helper. No Apple/Google private key is needed.'}\n\nKeep feature choices in Robono’s Features & preview. Do not duplicate them in frontend permission switches. Your server remains responsible for who may use the service. Never return true for every permission request.\n\n## Local connection check\nSet ROBONO_MESSENGER_URL, ROBONO_TEST_USER_TOKEN and ROBONO_WEBSITE_ORIGIN in your local environment. Then run:\n\n\`\`\`sh\nnpx --package @robono/server robono-messenger-check\n# Shareable diagnostic output; contains no token or message content:\nnpx --package @robono/server robono-messenger-check --json\n\`\`\`\n\n## Assistance\nAn AI coding assistant may use these files and package documentation to connect your existing account service. It must preserve authentication, expiry, suspension, current memberships and server-only keys. It must not replace them with a demo password or an always-allow function. Do not send credentials or customer messages to support chat.\n`,
50
+ 'ROBONO-SETUP.md': `# Connect ${options.companyName.replace(/[\r\n]/g, ' ')} to Robono\n\nThese are prepared integration files, not a replacement for your app. No existing files were changed.\n\n1. Install the packages listed below in the corresponding server and client projects.\n2. Copy the generated files into your app. Put the Robono key only in the server's environment.\n3. Connect authenticate in robono-access.ts to your existing sign-in. The supplied Supabase/Firebase adapter already does this when selected. Robono enforces the contacts, memberships and Maps grants supplied by your server.\n4. When your app permits or removes a friendship, call synchronizeFriendship with its current revision. Supply current contact names/avatars to the client. Group memberships use messenger.robono.setGroup.\n5. Mount GET and POST at /api/robono. Add the client screen, pass your signed-in account and token-refresh function, and call its signOut() before ending a session.\n6. Run robono-messenger-check against your own route with a disposable test-user token. Then exchange a message between two authorized users.\n\nServer: npm install @robono/server\nTypeScript server: npm install --save-dev typescript @types/node\nClient: npm install @robono/messaging @robono/${options.platform === 'web' ? 'messaging-web react react-dom' : 'messaging-react-native'}\n\n${options.platform === 'expo' ? 'For React Native, follow the native dependency and Expo configuration instructions in the package README before rebuilding iPhone and Android. Your app needs its own Apple/Google notification credentials; upload private keys only in Robono’s notification setup.' : 'For website alerts, enter your HTTPS origin and chat page in Robono’s notification setup. The supplied messenger handles the browser helper. No Apple/Google private key is needed.'}\n\nKeep feature choices in Robono’s Features & preview. Do not duplicate them in frontend permission switches. Your server decides who may use the service and supplies contacts, group membership and Maps grants. Robono checks those records on each operation. Add an authorize callback only for extra business rules; keep using the supplied membership synchronization.\n\n## Local connection check\nSet ROBONO_MESSENGER_URL, ROBONO_TEST_USER_TOKEN and ROBONO_WEBSITE_ORIGIN in your local environment. Then run:\n\n\`\`\`sh\nnpx --package @robono/server robono-messenger-check\n# Shareable diagnostic output; contains no token or message content:\nnpx --package @robono/server robono-messenger-check --json\n\`\`\`\n\n## Assistance\nAn AI coding assistant may use these files and package documentation to connect your existing account service. It must preserve authentication, expiry, suspension, current memberships and server-only keys. It must not replace them with a demo password or an always-allow function. Do not send credentials or customer messages to support chat.\n`,
57
51
  };
58
52
  if (options.platform === 'web')
59
53
  files['client/RobonoChat.tsx'] = `'use client';
@@ -1 +1 @@
1
- {"version":3,"file":"messenger-init.js","sourceRoot":"","sources":["../src/messenger-init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messenger-init.js","sourceRoot":"","sources":["../src/messenger-init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,uBAAuB,EAA4B,MAAM,oCAAoC,CAAC;AACtG,OAAO,EAAC,KAAK,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,KAAK,EAAC,EAAE,EAAC,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,UAAU,EAAC,IAAI,EAAC,MAAM,WAAW,CAAC;AAEnE,4FAA4F;AAC5F,MAAM,UAAU,qBAAqB,CAAC,OAA+B;IACpE,MAAM,MAAM,GAAC,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACrC,IAAG,MAAM,CAAC,MAAM,KAAG,OAAO,CAAC,MAAM,IAAE,MAAM,CAAC,QAAQ,IAAE,MAAM,CAAC,QAAQ,IAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,KAAG,QAAQ,IAAE,MAAM,CAAC,QAAQ,KAAG,OAAO,IAAE,CAAC,WAAW,EAAC,WAAW,EAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAAC,MAAM,KAAK,CAAC,oEAAoE,CAAC,CAAC;IAC7Q,IAAG,CAAC,CAAC,KAAK,EAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAE,CAAC,CAAC,MAAM,EAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,IAAE,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,IAAE,OAAO,CAAC,WAAW,CAAC,MAAM,GAAC,GAAG;QAAC,MAAM,KAAK,CAAC,4EAA4E,CAAC,CAAC;IACpP,IAAG,OAAO,CAAC,QAAQ,KAAG,MAAM,IAAE,MAAM,CAAC,QAAQ,KAAG,QAAQ;QAAC,MAAM,KAAK,CAAC,mEAAmE,CAAC,CAAC;IAC1I,MAAM,CAAC,GAAC,IAAI,CAAC,SAAS,EAAC,KAAK,GAAC,OAAO,CAAC,SAAS,KAAG,MAAM,CAAA,CAAC,CAAA,yBAAyB,CAAA,CAAC,CAAA,wBAAwB,CAAC;IAC3G,MAAM,IAAI,GAAC;;;;;;;;;CASX,CAAC;IACD,MAAM,KAAK,GAAuB;QACjC,YAAY,EAAC,mCAAmC;QAChD,cAAc,EAAC,sMAAsM,OAAO,CAAC,MAAM,IAAI;QACvO,yBAAyB,EAAC,IAAI;QAC9B,kBAAkB,EAAC;;;;;;;2HAOsG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;;;CAG3I;QACC,CAAC,KAAK,CAAC,EAAC,8BAA8B,CAAC,CAAC,OAAO,CAAC,SAAS,KAAG,MAAM,CAAA,CAAC,CAAA,wBAAwB,CAAA,CAAC,CAAA,UAAU,CAAC;EACvG,OAAO,CAAC,SAAS,KAAG,MAAM,CAAA,CAAC,CAAA,oCAAoC,CAAA,CAAC,CAAA,EAAE;;CAEnE;QACC,gCAAgC,EAAC;;;;;;CAMlC;QACC,iBAAiB,EAAC,aAAa,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,EAAC,GAAG,CAAC,6qCAA6qC,OAAO,CAAC,QAAQ,KAAG,KAAK,CAAA,CAAC,CAAA,+BAA+B,CAAA,CAAC,CAAA,wBAAwB,OAAO,OAAO,CAAC,QAAQ,KAAG,MAAM,CAAA,CAAC,CAAA,uQAAuQ,CAAA,CAAC,CAAA,qLAAqL,sjCAAsjC;KAC31F,CAAC;IACF,IAAG,OAAO,CAAC,QAAQ,KAAG,KAAK;QAAC,KAAK,CAAC,uBAAuB,CAAC,GAAC;;;;;;;;;wFAS4B,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;;;;;;CAM7G,CAAC;;QACI,KAAK,CAAC,uBAAuB,CAAC,GAAC;;;;;;mDAMc,CAAC,CAAC,OAAO,CAAC,MAAM,GAAC,aAAa,CAAC;;;;;6EAKL,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;;;;CAIlG,CAAC;IAED,OAAO,uBAAuB,CAAC,KAAK,EAAC,OAAO,CAAC,CAAC;AAC/C,CAAC;AACD,uFAAuF;AACvF,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,WAAkB,EAAC,OAA+B;IAC7F,MAAM,KAAK,GAAC,qBAAqB,CAAC,OAAO,CAAC,EAAC,MAAM,GAAC,OAAO,CAAC,WAAW,CAAC,EAAC,MAAM,GAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9G,IAAG,IAAI,CAAC,MAAM,EAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,GAAC,CAAC,CAAC,CAAC,KAAG,MAAM;QAAC,MAAM,KAAK,CAAC,kDAAkD,CAAC,CAAC;IAChI,IAAG,CAAC;QAAA,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;QAAA,MAAM,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAAA,CAAC;IAAA,OAAM,CAAC,EAAC,CAAC;QAAA,IAAI,CAA2B,CAAC,IAAI,KAAG,QAAQ;YAAC,MAAM,CAAC,CAAC;IAAA,CAAC;IAClK,MAAM,KAAK,CAAC,MAAM,EAAC,EAAC,IAAI,EAAC,KAAK,EAAC,CAAC,CAAC;IACjC,IAAG,CAAC;QACH,KAAI,MAAM,CAAC,IAAI,EAAC,OAAO,CAAC,IAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAC,CAAC;YACjD,MAAM,IAAI,GAAC,OAAO,CAAC,MAAM,EAAC,IAAI,CAAC,EAAC,KAAK,GAAC,QAAQ,CAAC,MAAM,EAAC,IAAI,CAAC,CAAC;YAAA,IAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAE,UAAU,CAAC,KAAK,CAAC;gBAAC,MAAM,KAAK,CAAC,uBAAuB,CAAC,CAAC;YAC9I,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAC,EAAC,SAAS,EAAC,IAAI,EAAC,IAAI,EAAC,KAAK,EAAC,CAAC,CAAC;YACvD,IAAG,CAAC,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE;gBAAC,MAAM,KAAK,CAAC,0BAA0B,CAAC,CAAC;YACzF,MAAM,SAAS,CAAC,IAAI,EAAC,OAAO,EAAC,EAAC,IAAI,EAAC,IAAI,EAAC,IAAI,EAAC,KAAK,EAAC,CAAC,CAAC;QACtD,CAAC;IACF,CAAC;IAAA,OAAM,CAAC,EAAC,CAAC;QAAA,MAAM,EAAE,CAAC,MAAM,EAAC,EAAC,SAAS,EAAC,IAAI,EAAC,KAAK,EAAC,IAAI,EAAC,CAAC,CAAC;QAAA,MAAM,CAAC,CAAC;IAAA,CAAC;IAChE,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC3B,CAAC"}
@@ -25,7 +25,7 @@ export interface MessengerInstallPlan {
25
25
  notes: string[];
26
26
  setupFile?: string;
27
27
  }
28
- export declare const messengerInstallerVersion = "0.23.0";
28
+ export declare const messengerInstallerVersion = "0.24.0";
29
29
  export declare const generatedHash: (content: string) => string;
30
30
  export declare function generatedKey(file: string, client: string, server: string): string;
31
31
  export declare function exists(file: string): Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"messenger-install.d.ts","sourceRoot":"","sources":["../src/messenger-install.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,uBAAuB;IAAE,OAAO,EAAC,MAAM,CAAC;IAAA,aAAa,CAAC,EAAC,MAAM,CAAC;IAAA,MAAM,EAAC,MAAM,CAAC;IAAA,WAAW,EAAC,MAAM,CAAC;IAAA,IAAI,CAAC,EAAC,QAAQ,GAAC,UAAU,GAAC,UAAU,CAAA;CAAC;AAErJ,MAAM,WAAW,oBAAoB;IAAE,QAAQ,EAAC,KAAK,GAAC,MAAM,CAAC;IAAA,IAAI,EAAC,QAAQ,GAAC,UAAU,GAAC,UAAU,CAAC;IAAA,KAAK,EAAC;QAAC,IAAI,EAAC,MAAM,CAAC;QAAA,OAAO,EAAC,MAAM,CAAA;KAAC,EAAE,CAAC;IAAA,YAAY,EAAC;QAAC,IAAI,EAAC,MAAM,CAAC;QAAA,MAAM,EAAC,MAAM,CAAC;QAAA,KAAK,EAAC,MAAM,CAAA;KAAC,EAAE,CAAC;IAAA,QAAQ,EAAC;QAAC,GAAG,EAAC,MAAM,CAAC;QAAA,OAAO,EAAC,MAAM,CAAC;QAAA,IAAI,EAAC,MAAM,EAAE,CAAA;KAAC,EAAE,CAAC;IAAA,KAAK,EAAC,MAAM,EAAE,CAAC;IAAA,SAAS,CAAC,EAAC,MAAM,CAAA;CAAC;AACpR,eAAO,MAAM,yBAAyB,WAAS,CAAC;AAChD,eAAO,MAAM,aAAa,GAAE,SAAQ,MAAM,WAAqD,CAAC;AAChG,wBAAgB,YAAY,CAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,UAInE;AAOD,wBAAsB,MAAM,CAAC,IAAI,EAAC,MAAM,oBAAqH;AAO7J,wBAAsB,QAAQ,CAAC,IAAI,EAAC,MAAM,iBAGzC;AACD,wBAAsB,kBAAkB,CAAC,IAAI,EAAC,MAAM;;;GAMnD;AAkBD,wBAAsB,yBAAyB,CAAC,OAAO,EAAC,uBAAuB,GAAE,OAAO,CAAC,oBAAoB,CAAC,CAE7G;AACD,wBAAsB,0BAA0B,CAAC,OAAO,EAAC,uBAAuB,EAAC,IAAI,EAAC,KAAK,GAAC,QAAQ,GAAC,SAAS,GAAE,OAAO,CAAC,oBAAoB,CAAC,CAsF5I;AACD,wFAAwF;AACxF,wBAAsB,+BAA+B,CAAC,SAAS,EAAC,MAAM,GAAE,OAAO,CAAC,oBAAoB,CAAC,CAYpG;AAaD,yFAAyF;AACzF,wBAAsB,0BAA0B,CAAC,IAAI,EAAC,oBAAoB,EAAC,OAAO,UAAK,iBAoCtF;AACD,wBAAsB,8BAA8B,CAAC,SAAS,EAAC,MAAM;;;;KAoBpE"}
1
+ {"version":3,"file":"messenger-install.d.ts","sourceRoot":"","sources":["../src/messenger-install.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,uBAAuB;IAAE,OAAO,EAAC,MAAM,CAAC;IAAA,aAAa,CAAC,EAAC,MAAM,CAAC;IAAA,MAAM,EAAC,MAAM,CAAC;IAAA,WAAW,EAAC,MAAM,CAAC;IAAA,IAAI,CAAC,EAAC,QAAQ,GAAC,UAAU,GAAC,UAAU,CAAA;CAAC;AAErJ,MAAM,WAAW,oBAAoB;IAAE,QAAQ,EAAC,KAAK,GAAC,MAAM,CAAC;IAAA,IAAI,EAAC,QAAQ,GAAC,UAAU,GAAC,UAAU,CAAC;IAAA,KAAK,EAAC;QAAC,IAAI,EAAC,MAAM,CAAC;QAAA,OAAO,EAAC,MAAM,CAAA;KAAC,EAAE,CAAC;IAAA,YAAY,EAAC;QAAC,IAAI,EAAC,MAAM,CAAC;QAAA,MAAM,EAAC,MAAM,CAAC;QAAA,KAAK,EAAC,MAAM,CAAA;KAAC,EAAE,CAAC;IAAA,QAAQ,EAAC;QAAC,GAAG,EAAC,MAAM,CAAC;QAAA,OAAO,EAAC,MAAM,CAAC;QAAA,IAAI,EAAC,MAAM,EAAE,CAAA;KAAC,EAAE,CAAC;IAAA,KAAK,EAAC,MAAM,EAAE,CAAC;IAAA,SAAS,CAAC,EAAC,MAAM,CAAA;CAAC;AACpR,eAAO,MAAM,yBAAyB,WAAS,CAAC;AAChD,eAAO,MAAM,aAAa,GAAE,SAAQ,MAAM,WAAqD,CAAC;AAChG,wBAAgB,YAAY,CAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,UAInE;AAOD,wBAAsB,MAAM,CAAC,IAAI,EAAC,MAAM,oBAAqH;AAO7J,wBAAsB,QAAQ,CAAC,IAAI,EAAC,MAAM,iBAGzC;AACD,wBAAsB,kBAAkB,CAAC,IAAI,EAAC,MAAM;;;GAMnD;AAkBD,wBAAsB,yBAAyB,CAAC,OAAO,EAAC,uBAAuB,GAAE,OAAO,CAAC,oBAAoB,CAAC,CAE7G;AACD,wBAAsB,0BAA0B,CAAC,OAAO,EAAC,uBAAuB,EAAC,IAAI,EAAC,KAAK,GAAC,QAAQ,GAAC,SAAS,GAAE,OAAO,CAAC,oBAAoB,CAAC,CAsF5I;AACD,wFAAwF;AACxF,wBAAsB,+BAA+B,CAAC,SAAS,EAAC,MAAM,GAAE,OAAO,CAAC,oBAAoB,CAAC,CAYpG;AAaD,yFAAyF;AACzF,wBAAsB,0BAA0B,CAAC,IAAI,EAAC,oBAAoB,EAAC,OAAO,UAAK,iBAoCtF;AACD,wBAAsB,8BAA8B,CAAC,SAAS,EAAC,MAAM;;;;KAuBpE"}
@@ -5,7 +5,7 @@ import { readFile, writeFile, mkdir, lstat, realpath, unlink, rename } from 'nod
5
5
  import { resolve, join, dirname, relative, isAbsolute } from 'node:path';
6
6
  import spawn from 'cross-spawn';
7
7
  import { messengerStarterFiles } from './messenger-init.js';
8
- export const messengerInstallerVersion = '0.23.0';
8
+ export const messengerInstallerVersion = '0.24.0';
9
9
  export const generatedHash = (content) => createHash('sha256').update(content).digest('hex');
10
10
  export function generatedKey(file, client, server) {
11
11
  const local = relative(server, file);
@@ -139,16 +139,16 @@ export async function buildMessengerInstallation(options, mode) {
139
139
  files.push({ path: join(server.root, serverBase, 'app/robono-preview/page.tsx'), content: preview.page }, { path: join(server.root, serverBase, 'robono/client/RobonoPreview.tsx'), content: preview.client });
140
140
  const notes = [`Detected ${platform === 'web' ? 'Next.js website' : 'Expo phone app'} and ${auth} sign-in.`,
141
141
  'Start your Next.js development server and open /robono-preview for the two-person local example. It returns 404 in production.',
142
- 'Connect your current messaging permission check in robono/server/robono-access.ts. Access stays blocked until then.',
142
+ 'Use your existing verified sign-in. Robono checks the contacts, memberships and Maps grants supplied by your server; additional business rules are optional.',
143
143
  'Keep provider credentials and the Robono key on the server. The installer never reads or edits your .env files.',
144
144
  'Mount CustomerMessenger with your existing sign-in client and contacts. Account wiring is included.',
145
145
  'Connect website alerts or Apple/Google credentials in Robono → Your app → Message notifications. Chat works before alerts are configured.'];
146
- const setup = { schema: 3, installerVersion: '0.23.0', layout: platform === 'web' ? 'next' : 'expo', clientBase, serverBase, platform, auth, companyName: options.companyName, origin: options.origin, serverProject: relative(client.root, server.root) || '.', dependencies: 'pending', checks: { files: 'installed', permissions: 'needs-connection', serverKey: 'needs-server-environment', contacts: 'needs-connection', notifications: 'needs-configuration', liveConnection: 'not-tested' } };
146
+ const setup = { schema: 3, installerVersion: '0.24.0', layout: platform === 'web' ? 'next' : 'expo', clientBase, serverBase, platform, auth, companyName: options.companyName, origin: options.origin, serverProject: relative(client.root, server.root) || '.', dependencies: 'pending', checks: { files: 'installed', permissions: 'robono-managed', serverKey: 'needs-server-environment', contacts: 'needs-connection', notifications: 'needs-configuration', liveConnection: 'not-tested' } };
147
147
  files.push({ path: join(client.root, '.robono/setup.json'), content: JSON.stringify(setup, null, 2) + '\n' });
148
- files.push({ path: join(client.root, '.robono/SETUP.md'), content: '# Connect your messenger\n\n' + notes.map(x => '- ' + x).join('\n') + '\n\n## Connect your screen\n' + (auth === 'custom' ? 'Implement RobonoAccounts from client/ConnectedRobonoChat.tsx using your existing sign-in. Render <CustomerMessenger accounts={yourAccounts} contacts={yourContacts}/>.' : 'Import CustomerMessenger from the generated client/CustomerMessenger.tsx. Render <CustomerMessenger auth={yourExistingSignInClient} contacts={yourContacts}/>.') + ' Give the messenger an area with a height. Keep it mounted in your signed-in application. It follows account changes; names and avatars update without restarting chat. For Supabase use its client; for Firebase use its Auth instance.\n\n## Allow the right people\nConnect authorize in robono-access.ts to current account eligibility, suspension and conversation permissions. It denies access until implemented. When a friendship changes, call synchronizeFriendship(getMessenger(), friendship) on your server. Use revisions from your database; group membership uses getMessenger().robono.setGroup. Never use an always-allow function.\n\n## Sign-out\nThe messenger account menu clears local content and unregisters notifications before provider sign-out. If your own account menu signs out first, provider events still clear the visible chat. Keep account suspension and relationship revocation synchronized with Robono; an expired session cannot reliably unregister a remote device. Never substitute another account’s token.\n\n## Check the connection\nDuring development, add setupChecks to CustomerMessenger and press Check connection after signing in to your app. It uses your current login; no copied tokens are needed. It checks settings, available chats and notification configuration without sending a message. This optional panel is hidden in production.\n\nRun robono-messenger-install --check for the local checklist. For additional command-line security checks, set ROBONO_MESSENGER_URL, ROBONO_WEBSITE_ORIGIN and ROBONO_TEST_USER_TOKEN locally. Add --json for a shareable report without secrets. No local checker can prove your complete permission rules; test denied accounts and cross-account access too.\n\n## Safe upgrades\nRun robono-messenger-install --upgrade --dry-run to review, then --upgrade to apply. Unchanged generated files are backed up and updated. Edited files stay untouched; review .robono/upgrade-report.json for proposed changes.\n\n## Interrupted installation\nRun robono-messenger-install --resume from the same project. It reinstalls the required packages without replacing your integration code, screens or environment files.\n\n## Server configuration\nSet ROBONO_API_KEY privately on the server. Use ROBONO_ALLOWED_ORIGINS for your production website addresses instead of editing generated code. Never use a wildcard. Existing Next.js Supabase public settings are reused; see server.env.example.\n\n## Notifications\nFor website alerts configure your HTTPS origin and chat path. For iPhone, upload your APNs .p8 key, key ID, Team ID and Bundle ID in Robono. For Android, configure google-services.json in your app and upload the Firebase messaging service account privately in Robono. Never put private keys in client code. Build both apps after native dependency changes.\n\n## Maps, weather and tracking\nThe supplied Messenger connects these through the same signed-in backend. Choose Maps placement in Robono: inside messaging, a separate Maps page, or both. Standalone Maps appears in the main menu when selected. Permissions for sharing still come from your server; never create grants in phone or browser code.\n\nFor web map display, register the exact HTTPS origin in Robono Maps. For phones, register the iPhone Bundle ID and Android package plus signing fingerprint. Download each registration to .robono/maps-ios.json and .robono/maps-android.json in the phone project, run --upgrade, and rebuild both apps. Keep these platform-restricted map keys out of public examples. Provider billing and private provider keys remain managed by Robono. Your users choose when to share location; background sharing asks for the phone permission. Browser sharing ends when the page is hidden. Movement is independent of location: iPhone movement requires the app open, Android supports its visible service, and browser movement requires a supported device and visible page. Ordinary messaging and weather do not require map registration.\n\n## Local preview\nOpen /robono-preview on your Next.js development server. It uses the actual web messenger with fictional Alice and Bob and local text only. It sends no customer requests and returns 404 in production.\n' });
148
+ files.push({ path: join(client.root, '.robono/SETUP.md'), content: '# Connect your messenger\n\n' + notes.map(x => '- ' + x).join('\n') + '\n\n## Connect your screen\n' + (auth === 'custom' ? 'Implement RobonoAccounts from client/ConnectedRobonoChat.tsx using your existing sign-in. Render <CustomerMessenger accounts={yourAccounts} contacts={yourContacts}/>.' : 'Import CustomerMessenger from the generated client/CustomerMessenger.tsx. Render <CustomerMessenger auth={yourExistingSignInClient} contacts={yourContacts}/>.') + ' Give the messenger an area with a height. Keep it mounted in your signed-in application. It follows account changes; names and avatars update without restarting chat. For Supabase use its client; for Firebase use its Auth instance.\n\n## Allow the right people\nThe generated server uses Robono-managed permissions. Your sign-in supplies the verified account; Robono checks the contacts, groups and Maps viewer grants supplied by your server. An optional authorize callback in robono-access.ts can add extra business restrictions. When a friendship changes, call synchronizeFriendship(getMessenger(), friendship) on your server. Use revisions from your database; group membership uses getMessenger().robono.setGroup. You do not need to write a permission handler for each action. Existing custom authorize functions remain connected during safe upgrades.\n\n## Sign-out\nThe messenger account menu clears local content and unregisters notifications before provider sign-out. If your own account menu signs out first, provider events still clear the visible chat. Keep account suspension and relationship revocation synchronized with Robono; an expired session cannot reliably unregister a remote device. Never substitute another account’s token.\n\n## Check the connection\nDuring development, add setupChecks to CustomerMessenger and press Check connection after signing in to your app. It uses your current login; no copied tokens are needed. It checks settings, available chats and notification configuration without sending a message. This optional panel is hidden in production.\n\nRun robono-messenger-install --check for the local checklist. For additional command-line security checks, set ROBONO_MESSENGER_URL, ROBONO_WEBSITE_ORIGIN and ROBONO_TEST_USER_TOKEN locally. Add --json for a shareable report without secrets. No local checker can prove your complete permission rules; test denied accounts and cross-account access too.\n\n## Safe upgrades\nRun robono-messenger-install --upgrade --dry-run to review, then --upgrade to apply. Unchanged generated files are backed up and updated. Edited files stay untouched; review .robono/upgrade-report.json for proposed changes.\n\n## Interrupted installation\nRun robono-messenger-install --resume from the same project. It reinstalls the required packages without replacing your integration code, screens or environment files.\n\n## Server configuration\nSet ROBONO_API_KEY privately on the server. Use ROBONO_ALLOWED_ORIGINS for your production website addresses instead of editing generated code. Never use a wildcard. Existing Next.js Supabase public settings are reused; see server.env.example.\n\n## Notifications\nFor website alerts configure your HTTPS origin and chat path. For iPhone, upload your APNs .p8 key, key ID, Team ID and Bundle ID in Robono. For Android, configure google-services.json in your app and upload the Firebase messaging service account privately in Robono. Never put private keys in client code. The supplied phone Messenger automatically registers system incoming calls using these credentials; there is no additional push database or background sign-in service to build. The Apple key must permit the app’s VoIP topic. Build both apps after native dependency changes.\n\n## Maps, weather and tracking\nThe supplied Messenger connects these through the same signed-in backend. Choose Maps placement in Robono: inside messaging, a separate Maps page, or both. Standalone Maps appears in the main menu when selected. Permissions for sharing still come from your server; never create grants in phone or browser code.\n\nFor web map display, register the exact HTTPS origin in Robono Maps. For phones, register the iPhone Bundle ID and Android package plus signing fingerprint. Download each registration to .robono/maps-ios.json and .robono/maps-android.json in the phone project, run --upgrade, and rebuild both apps. Keep these platform-restricted map keys out of public examples. Provider billing and private provider keys remain managed by Robono. Your users choose when to share location; background sharing asks for the phone permission. Browser sharing ends when the page is hidden. Movement is independent of location: iPhone movement requires the app open, Android supports its visible service, and browser movement requires a supported device and visible page. Ordinary messaging and weather do not require map registration.\n\n## Local preview\nOpen /robono-preview on your Next.js development server. It uses the actual web messenger with fictional Alice and Bob and local text only. It sends no customer requests and returns 404 in production.\n' });
149
149
  files.push({ path: join(server.root, '.robono/server.env.example'), content: templates['.env.example'] });
150
- const serverPackages = ['@robono/server@^0.23.0', ...(platform === 'expo' ? ['@robono/location@^0.2.0', '@robono/messaging@^0.5.0', '@robono/messaging-web@^0.7.0'] : []), ...(auth === 'supabase' ? ['@supabase/supabase-js@^2'] : auth === 'firebase' ? ['firebase-admin@^14'] : [])];
151
- const clientPackages = ['@robono/location@^0.2.0', ...(platform === 'expo' ? ['@robono/location-react-native@^0.2.0', '@robono/calling@^0.4.0', '@robono/calling-react-native@^0.5.0', 'react-native-webrtc@^124.0.8', 'react-native-incall-manager@^4.3.0'] : []), '@robono/messaging@^0.5.0', `@robono/messaging-${platform === 'web' ? 'web' : 'react-native'}@^0.7.0`, ...(auth === 'supabase' ? ['@supabase/supabase-js@^2'] : auth === 'firebase' ? ['firebase@^13'] : [])];
150
+ const serverPackages = ['@robono/server@^0.24.0', ...(platform === 'expo' ? ['@robono/location@^0.2.0', '@robono/messaging@^0.5.0', '@robono/messaging-web@^0.7.0'] : []), ...(auth === 'supabase' ? ['@supabase/supabase-js@^2'] : auth === 'firebase' ? ['firebase-admin@^14'] : [])];
151
+ const clientPackages = ['@robono/location@^0.2.0', ...(platform === 'expo' ? ['@robono/location-react-native@^0.2.0', '@robono/calling@^0.4.0', '@robono/calling-react-native@^0.6.0', 'react-native-webrtc@^124.0.8', 'react-native-incall-manager@^4.3.0'] : []), '@robono/messaging@^0.5.0', `@robono/messaging-${platform === 'web' ? 'web' : 'react-native'}@^${platform === 'web' ? '0.7.0' : '0.8.0'}`, ...(auth === 'supabase' ? ['@supabase/supabase-js@^2'] : auth === 'firebase' ? ['firebase@^13'] : [])];
152
152
  const packageName = (spec) => spec.slice(0, spec.lastIndexOf('@'));
153
153
  const keepExistingProvider = (spec, deps) => !['firebase', 'firebase-admin', '@supabase/supabase-js'].includes(packageName(spec)) || !deps[packageName(spec)];
154
154
  const serverInstall = serverPackages.filter(spec => keepExistingProvider(spec, server.deps)), clientInstall = clientPackages.filter(spec => keepExistingProvider(spec, client.deps));
@@ -354,13 +354,16 @@ export async function messengerInstallationChecklist(directory) {
354
354
  const permissionFile = setup.layout === 'vite' ? join(root, '.robono/server/robono-access.ts') : join(server, base, 'robono/server/robono-access.ts');
355
355
  const permission = await readFile(permissionFile, 'utf8').catch(() => 'Connect your existing messaging permission');
356
356
  const missingPermission = permission.includes('Connect your existing messaging permission');
357
+ const managedPermission = permission.includes('export const authorize = undefined');
358
+ const missingAuthentication = permission.includes('Connect your existing session verification') || missingPermission;
357
359
  const clientBase = setup.layout === 'vite' ? setup.clientBase : setup.platform === 'web' ? base : (await exists(join(root, 'src')) ? 'src' : '');
358
360
  const complete = await exists(join(root, clientBase, 'robono/client/ConnectedRobonoChat.tsx')) && await exists(setup.layout === 'vite' ? join(root, '.robono/server/robono.ts') : join(server, base, 'app/api/robono/route.ts'));
359
361
  return [
360
362
  { name: 'Prepared files', status: complete ? 'passed' : 'failed', detail: `${setup.platform === 'expo' ? 'Expo' : setup.layout === 'vite' ? 'React + Vite' : 'Next.js'}; ${setup.auth} sign-in.` },
361
363
  ...(Array.isArray(setup.pendingReview) && setup.pendingReview.length ? [{ name: 'Upgrade review', status: 'needs-action', detail: 'Your edited files were preserved. Review .robono/upgrade-report.json and its proposed changes, then rerun --upgrade.' }] : []),
362
364
  { name: 'Package installation', status: setup.dependencies === 'installed' ? 'configured' : 'needs-action', detail: setup.dependencies === 'installed' ? 'The package manager completed. Use the in-app connection check next.' : 'Run robono-messenger-install --resume to finish installing packages without replacing your integration files.' },
363
- { name: 'Account permissions', status: missingPermission ? 'needs-action' : 'configured', detail: missingPermission ? 'Connect robono-access.ts to your current permission rules. The live checker verifies a test account.' : 'Permission code was edited. Verify allowed and denied accounts; file inspection cannot prove your rules.' },
365
+ { name: 'Account sign-in', status: missingAuthentication ? 'needs-action' : 'configured', detail: missingAuthentication ? 'Connect authenticate in robono-access.ts to your existing sign-in.' : 'Your sign-in connection is present; account status remains your server’s responsibility.' },
366
+ { name: 'Account permissions', status: missingPermission ? 'needs-action' : 'configured', detail: missingPermission ? 'Connect your existing permission function, or explicitly choose Robono-managed membership.' : managedPermission ? 'Robono checks the contacts, groups and Maps sharing grants you supply. No additional per-action permission handler is required.' : 'Your custom permission function remains connected in addition to Robono membership checks.' },
364
367
  { name: 'Server key', status: 'needs-action', detail: 'Set ROBONO_API_KEY on the server. This command does not read or print secrets.' },
365
368
  { name: 'Contacts', status: 'needs-action', detail: 'Synchronize permitted friendships and group membership; pass names/avatars to ConnectedRobonoChat.' },
366
369
  { name: 'Notifications', status: 'needs-action', detail: setup.platform === 'expo' ? 'Add Apple/Google credentials in Robono and rebuild both apps with the installed Expo plugins.' : 'Connect your website origin and chat path in Robono.' },
@@ -406,7 +409,7 @@ async function planViteInstallation(options, client, mode) {
406
409
  files.push({ path: join(client.root, name), content });
407
410
  const notes = [`Detected React + Vite and ${auth} sign-in. Your app entry points and Vite configuration are preserved.`,
408
411
  'Start both your existing website and the messaging route with npm --prefix .robono run dev. Open /robono-preview for the local two-person example.',
409
- 'Connect current account permissions in .robono/server/robono-access.ts. Missing permission code denies access.',
412
+ 'Use your existing verified sign-in and synchronize allowed contacts/groups. Robono enforces those permissions; extra business restrictions are optional.',
410
413
  'Keep ROBONO_API_KEY and provider credentials in the server environment or your private root .env.local. Never prefix private keys with VITE_.',
411
414
  'Mount CustomerMessenger with your existing sign-in client and contacts. Add setupChecks during development to check your signed-in connection.',
412
415
  'Build: npm --prefix .robono run build. Production: npm --prefix .robono start. Deploy the project on a Node host with HTTPS; a static-only host cannot run the private server.',
@@ -414,9 +417,9 @@ async function planViteInstallation(options, client, mode) {
414
417
  const setup = { schema: 3, installerVersion: messengerInstallerVersion, layout: 'vite', platform: 'web', auth, companyName: options.companyName, origin: options.origin, serverProject: '.', clientBase, serverBase: '.robono', dependencies: 'pending' };
415
418
  files.push({ path: join(client.root, '.robono/setup.json'), content: JSON.stringify(setup, null, 2) + '\n' });
416
419
  files.push({ path: join(client.root, '.robono/server.env.example'), content: templates['.env.example'] + 'ROBONO_PUBLIC_ORIGIN=' + options.origin + '\n' });
417
- files.push({ path: join(client.root, '.robono/SETUP.md'), content: '# Connect your React website\n\n' + notes.map(note => '- ' + note).join('\n') + '\n\n## Connect accounts and conversations\n' + (auth === 'custom' ? 'Implement authenticate and authorize in .robono/server/robono-access.ts and the RobonoAccounts interface using your existing sign-in. Pass accounts to CustomerMessenger.' : 'Identity checks are supplied. Pass your existing sign-in client as auth to CustomerMessenger. Connect authorize in .robono/server/robono-access.ts to your current eligibility, suspension and conversation rules.') + ' Synchronize permitted friendships and group membership from your server using synchronizeFriendship and getMessenger().robono.setGroup. Give the component your contact names and avatars. Provider credentials and the Robono key remain server-only. Browser notifications are configured in Your app → Message notifications. No Apple/Google private key is required for browser alerts.\n' + '\n\n## Safe upgrades\nRun robono-messenger-install --upgrade. Unchanged generated files update automatically. Edited files are preserved and proposed updates are listed in .robono/upgrade-report.json. Review proposed changes before applying them. --resume finishes interrupted dependency installation; it does not overwrite your code.\n' });
420
+ files.push({ path: join(client.root, '.robono/SETUP.md'), content: '# Connect your React website\n\n' + notes.map(note => '- ' + note).join('\n') + '\n\n## Connect accounts and conversations\n' + (auth === 'custom' ? 'Implement authenticate in .robono/server/robono-access.ts and the RobonoAccounts interface using your existing sign-in. Pass accounts to CustomerMessenger.' : 'Identity checks are supplied. Pass your existing sign-in client as auth to CustomerMessenger. The generated server uses Robono-managed contacts, memberships and sharing permissions. Add authorize in .robono/server/robono-access.ts only for additional business rules.') + ' Synchronize permitted friendships and group membership from your server using synchronizeFriendship and getMessenger().robono.setGroup. Give the component your contact names and avatars. Provider credentials and the Robono key remain server-only. Browser notifications are configured in Your app → Message notifications. No Apple/Google private key is required for browser alerts.\n' + '\n\n## Safe upgrades\nRun robono-messenger-install --upgrade. Unchanged generated files update automatically. Edited files are preserved and proposed updates are listed in .robono/upgrade-report.json. Review proposed changes before applying them. --resume finishes interrupted dependency installation; it does not overwrite your code.\n' });
418
421
  const managerName = await manager(client.root, client.pkg);
419
- const runtime = ['@robono/location@^0.2.0', '@robono/server@^0.23.0', '@robono/messaging@^0.5.0', '@robono/messaging-web@^0.7.0', ...(auth === 'supabase' && !client.deps['@supabase/supabase-js'] ? ['@supabase/supabase-js@^2'] : []), ...(auth === 'firebase' ? [...(!client.deps.firebase ? ['firebase@^13'] : []), ...(!client.deps['firebase-admin'] ? ['firebase-admin@^14'] : [])] : [])];
422
+ const runtime = ['@robono/location@^0.2.0', '@robono/server@^0.24.0', '@robono/messaging@^0.5.0', '@robono/messaging-web@^0.7.0', ...(auth === 'supabase' && !client.deps['@supabase/supabase-js'] ? ['@supabase/supabase-js@^2'] : []), ...(auth === 'firebase' ? [...(!client.deps.firebase ? ['firebase@^13'] : []), ...(!client.deps['firebase-admin'] ? ['firebase-admin@^14'] : [])] : [])];
420
423
  const dev = ['tsx@^4.23.15', 'typescript@^6', '@types/node@^22'].filter(spec => !client.deps[spec.slice(0, spec.lastIndexOf('@'))]);
421
424
  if (updateVite) {
422
425
  (client.pkg.dependencies?.vite ? runtime : dev).push('vite@^' + patched);
@@ -1 +1 @@
1
- {"version":3,"file":"messenger-install.js","sourceRoot":"","sources":["../src/messenger-install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messenger-install.js","sourceRoot":"","sources":["../src/messenger-install.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,11 @@ export interface RobonoMessengerServerOptions {
16
16
  /** Validate your existing session, including expiry and account suspension. */
17
17
  authenticate: (request: Request) => Promise<string | null>;
18
18
  /** Your current app permissions; Robono independently enforces membership and feature access. */
19
- authorize: (access: MessengerAccess) => Promise<boolean>;
19
+ authorize?: (access: MessengerAccess) => Promise<boolean>;
20
+ /** Use Robono's server-enforced contacts, group membership, feature permissions
21
+ * and directed location grants. Keep those records current through server APIs.
22
+ * An optional authorize callback can add customer-specific restrictions. */
23
+ permissions?: 'robono';
20
24
  /** Managed private attachments are the default. False deliberately disables them. */
21
25
  storage?: (MessagingPrivateStorage & {
22
26
  resolve: (input: {
@@ -1 +1 @@
1
- {"version":3,"file":"messenger.d.ts","sourceRoot":"","sources":["../src/messenger.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,qBAAqB,EAA8B,MAAM,eAAe,CAAC;AAIjF,OAAO,EAAC,sBAAsB,EAAgC,MAAM,gBAAgB,CAAC;AAErF,OAAO,EAAqC,KAAK,uBAAuB,EAAE,KAAK,oBAAoB,EAAC,MAAM,sBAAsB,CAAC;AAGjI,OAAO,EAA2B,KAAK,yBAAyB,EAAC,KAAK,0BAA0B,EAAC,MAAM,uCAAuC,CAAC;AAC/I,OAAO,EAA0C,KAAK,0BAA0B,EAAC,MAAM,sCAAsC,CAAC;AAE9H,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAC,MAAM,CAAC;IACf,SAAS,EAAC,MAAM,CAAC;IACjB,cAAc,CAAC,EAAC,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAC,MAAM,CAAC;IACjB,KAAK,EAAC,MAAM,CAAC,MAAM,EAAC,OAAO,CAAC,CAAC;IAC7B,OAAO,EAAC,OAAO,CAAC;CACjB;AACD,MAAM,WAAW,4BAA4B;IAC3C,MAAM,EAAC,MAAM,CAAC;IACd,+EAA+E;IAC/E,YAAY,EAAC,CAAC,OAAO,EAAC,OAAO,KAAG,OAAO,CAAC,MAAM,GAAC,IAAI,CAAC,CAAC;IACrD,iGAAiG;IACjG,SAAS,EAAC,CAAC,MAAM,EAAC,eAAe,KAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrD,qFAAqF;IACrF,OAAO,CAAC,EAAC,CAAC,uBAAuB,GAAG;QAAC,OAAO,EAAC,CAAC,KAAK,EAAC;YAAC,OAAO,EAAC,MAAM,CAAC;YAAA,cAAc,EAAC,MAAM,CAAC;YAAA,OAAO,EAAC,MAAM,CAAA;SAAC,KAAG,OAAO,CAAC,oBAAoB,GAAC,IAAI,CAAC,CAAA;KAAC,CAAC,GAAC,KAAK,CAAC;IACvJ,YAAY,CAAC,EAAC,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAC,MAAM,CAAC;IACjB,qEAAqE;IACrE,SAAS,CAAC,EAAC,MAAM,CAAC;IAClB,WAAW,CAAC,EAAC,MAAM,CAAC;IACpB,cAAc,CAAC,EAAC,MAAM,CAAC;IACvB,kFAAkF;IAClF,OAAO,CAAC,EAAC,KAAK,GAAC;QAAC,YAAY,CAAC,EAAC,MAAM,CAAC;QAAA,UAAU,CAAC,EAAC,MAAM,CAAA;KAAC,CAAC;IACzD,KAAK,CAAC,EAAC,OAAO,KAAK,CAAC;IACpB,6EAA6E;IAC7E,cAAc,CAAC,EAAC,SAAS,MAAM,EAAE,CAAC;IAClC,wFAAwF;IACxF,aAAa,CAAC,EAAC,KAAK,GAAC;QAAC,OAAO,EAAC,IAAI,CAAC;QAAA,GAAG,CAAC,EAAC,MAAM,CAAA;KAAC,GAAC;QAC9C,KAAK,EAAC,MAAM,CAAC;QAAA,aAAa,EAAC,MAAM,CAAC;QAAA,YAAY,EAAC,MAAM,CAAC;QAAA,KAAK,EAAC,0BAA0B,CAAC;QACvF,KAAK,CAAC,EAAC,yBAAyB,CAAC;QAAA,MAAM,CAAC,EAAC,0BAA0B,CAAC;QAAA,KAAK,CAAC,EAAC,MAAM,CAAC;QAClF,qFAAqF;QACrF,kBAAkB,EAAC,CAAC,KAAK,EAAC;YAAC,MAAM,EAAC,MAAM,CAAC;YAAA,cAAc,EAAC,MAAM,CAAA;SAAC,KAAG,OAAO,CAAC,OAAO,CAAC,CAAC;KACpF,CAAC;CACH;AAED,gGAAgG;AAChG,wBAAgB,2BAA2B,CAAC,OAAO,EAAC,4BAA4B;IAoD5E,iEAAiE;;;;;;;;oBAG5C,OAAO,GAAE,OAAO,CAAC,QAAQ,CAAC;EA6BlD;AAED,MAAM,MAAM,qBAAqB,GAAC,UAAU,CAAC,OAAO,2BAA2B,CAAC,CAAC"}
1
+ {"version":3,"file":"messenger.d.ts","sourceRoot":"","sources":["../src/messenger.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,qBAAqB,EAA8B,MAAM,eAAe,CAAC;AAIjF,OAAO,EAAC,sBAAsB,EAAgC,MAAM,gBAAgB,CAAC;AAErF,OAAO,EAAqC,KAAK,uBAAuB,EAAE,KAAK,oBAAoB,EAAC,MAAM,sBAAsB,CAAC;AAGjI,OAAO,EAA2B,KAAK,yBAAyB,EAAC,KAAK,0BAA0B,EAAC,MAAM,uCAAuC,CAAC;AAC/I,OAAO,EAA0C,KAAK,0BAA0B,EAAC,MAAM,sCAAsC,CAAC;AAE9H,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAC,MAAM,CAAC;IACf,SAAS,EAAC,MAAM,CAAC;IACjB,cAAc,CAAC,EAAC,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAC,MAAM,CAAC;IACjB,KAAK,EAAC,MAAM,CAAC,MAAM,EAAC,OAAO,CAAC,CAAC;IAC7B,OAAO,EAAC,OAAO,CAAC;CACjB;AACD,MAAM,WAAW,4BAA4B;IAC3C,MAAM,EAAC,MAAM,CAAC;IACd,+EAA+E;IAC/E,YAAY,EAAC,CAAC,OAAO,EAAC,OAAO,KAAG,OAAO,CAAC,MAAM,GAAC,IAAI,CAAC,CAAC;IACrD,iGAAiG;IACjG,SAAS,CAAC,EAAC,CAAC,MAAM,EAAC,eAAe,KAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACtD;;gFAE4E;IAC5E,WAAW,CAAC,EAAC,QAAQ,CAAC;IACtB,qFAAqF;IACrF,OAAO,CAAC,EAAC,CAAC,uBAAuB,GAAG;QAAC,OAAO,EAAC,CAAC,KAAK,EAAC;YAAC,OAAO,EAAC,MAAM,CAAC;YAAA,cAAc,EAAC,MAAM,CAAC;YAAA,OAAO,EAAC,MAAM,CAAA;SAAC,KAAG,OAAO,CAAC,oBAAoB,GAAC,IAAI,CAAC,CAAA;KAAC,CAAC,GAAC,KAAK,CAAC;IACvJ,YAAY,CAAC,EAAC,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAC,MAAM,CAAC;IACjB,qEAAqE;IACrE,SAAS,CAAC,EAAC,MAAM,CAAC;IAClB,WAAW,CAAC,EAAC,MAAM,CAAC;IACpB,cAAc,CAAC,EAAC,MAAM,CAAC;IACvB,kFAAkF;IAClF,OAAO,CAAC,EAAC,KAAK,GAAC;QAAC,YAAY,CAAC,EAAC,MAAM,CAAC;QAAA,UAAU,CAAC,EAAC,MAAM,CAAA;KAAC,CAAC;IACzD,KAAK,CAAC,EAAC,OAAO,KAAK,CAAC;IACpB,6EAA6E;IAC7E,cAAc,CAAC,EAAC,SAAS,MAAM,EAAE,CAAC;IAClC,wFAAwF;IACxF,aAAa,CAAC,EAAC,KAAK,GAAC;QAAC,OAAO,EAAC,IAAI,CAAC;QAAA,GAAG,CAAC,EAAC,MAAM,CAAA;KAAC,GAAC;QAC9C,KAAK,EAAC,MAAM,CAAC;QAAA,aAAa,EAAC,MAAM,CAAC;QAAA,YAAY,EAAC,MAAM,CAAC;QAAA,KAAK,EAAC,0BAA0B,CAAC;QACvF,KAAK,CAAC,EAAC,yBAAyB,CAAC;QAAA,MAAM,CAAC,EAAC,0BAA0B,CAAC;QAAA,KAAK,CAAC,EAAC,MAAM,CAAC;QAClF,qFAAqF;QACrF,kBAAkB,EAAC,CAAC,KAAK,EAAC;YAAC,MAAM,EAAC,MAAM,CAAC;YAAA,cAAc,EAAC,MAAM,CAAA;SAAC,KAAG,OAAO,CAAC,OAAO,CAAC,CAAC;KACpF,CAAC;CACH;AAED,gGAAgG;AAChG,wBAAgB,2BAA2B,CAAC,OAAO,EAAC,4BAA4B;IAyD5E,iEAAiE;;;;;;;;oBAG5C,OAAO,GAAE,OAAO,CAAC,QAAQ,CAAC;EA6BlD;AAED,MAAM,MAAM,qBAAqB,GAAC,UAAU,CAAC,OAAO,2BAA2B,CAAC,CAAC"}
package/dist/messenger.js CHANGED
@@ -14,16 +14,22 @@ import { createMessagingPushSender } from './messaging-notification-providers.js
14
14
  import { createPostgresMessagingNotificationStore } from './messaging-notification-postgres.js';
15
15
  /** One authenticated route for messaging and managed media. No account or permission bypass. */
16
16
  export function createRobonoMessengerServer(options) {
17
- if (typeof options.authenticate !== 'function' || typeof options.authorize !== 'function')
18
- throw Error('Connect your existing sign-in and permission checks. Both are required.');
17
+ if (typeof options.authenticate !== 'function' || typeof options.authorize !== 'function' && options.permissions !== 'robono')
18
+ throw Error('Connect your sign-in and choose permissions: robono, or supply your current permission check.');
19
+ if (options.permissions !== undefined && options.permissions !== 'robono')
20
+ throw Error('Unknown permission source.');
21
+ // This gate adds host restrictions. Every route still validates its allowed
22
+ // operations, derives the actor from authentication, and uses Robono's private
23
+ // membership/feature/consent checks. It never grants membership or sharing.
24
+ const authorize = options.authorize ?? (async () => true);
19
25
  const common = { apiKey: options.apiKey, ...(options.fetch ? { fetch: options.fetch } : {}) };
20
26
  const robono = new RobonoMessagingBackend({ ...common, ...(options.messagingUrl ? { baseUrl: options.messagingUrl } : {}) });
21
- const extras = createMessagingExtrasBackendAdapter({ robono: createMessagingExtrasBackend({ ...common, ...(options.extrasUrl ? { baseUrl: options.extrasUrl } : {}) }), authenticate: request => authenticate(request), authorize: options.authorize });
27
+ const extras = createMessagingExtrasBackendAdapter({ robono: createMessagingExtrasBackend({ ...common, ...(options.extrasUrl ? { baseUrl: options.extrasUrl } : {}) }), authenticate: request => authenticate(request), authorize });
22
28
  const locationBackend = new RobonoLocationBackend({ ...common, ...(options.locationUrl ? { baseUrl: options.locationUrl } : {}) });
23
- const location = createLocationBackendAdapter({ robono: locationBackend, authenticate: request => authenticate(request), authorize: access => options.authorize({ ...access, operation: 'location.' + access.operation }) });
29
+ const location = createLocationBackendAdapter({ robono: locationBackend, authenticate: request => authenticate(request), authorize: access => authorize({ ...access, operation: 'location.' + access.operation }) });
24
30
  const connections = new RobonoMessengerConnections({ ...common, ...(options.connectionsUrl ? { baseUrl: options.connectionsUrl } : {}) });
25
31
  const callingBackend = options.calling === false ? null : new RobonoCallingBackend({ ...common, ...(options.calling ?? {}), serviceUrl: options.calling?.serviceUrl ?? 'https://transcode.robono.com/calling/v1', admissionUrl: options.calling?.admissionUrl ?? 'https://api.robono.com/v1/calling' });
26
- const calling = options.calling === false ? null : createMessengerCallingAdapter({ ...common, ...(options.calling ?? {}), ...(options.connectionsUrl ? { connectionsUrl: options.connectionsUrl } : {}), authenticate: request => authenticate(request), authorize: options.authorize });
32
+ const calling = options.calling === false ? null : createMessengerCallingAdapter({ ...common, ...(options.calling ?? {}), ...(options.connectionsUrl ? { connectionsUrl: options.connectionsUrl } : {}), authenticate: request => authenticate(request), authorize });
27
33
  const storage = options.storage === false ? null : options.storage ?? new RobonoManagedMedia({ ...common, ...(options.mediaUrl ? { baseUrl: options.mediaUrl } : {}) });
28
34
  const origins = new Set((options.allowedOrigins ?? []).map(value => {
29
35
  const url = new URL(value);
@@ -46,7 +52,7 @@ export function createRobonoMessengerServer(options) {
46
52
  mayNotify: async (event) => await legacy.authorizeRecipient({ userId: event.recipient_external_user_id, conversationId: event.conversation_id }) &&
47
53
  await robono.canNotify({ userId: event.recipient_external_user_id, conversationId: event.conversation_id, messageId: event.message_id }),
48
54
  }) : null;
49
- const managed = options.notifications === false || legacy ? null : createManagedMessagingNotifications({ ...common, authenticate, authorize: options.authorize, ...(options.notifications && 'managed' in options.notifications && options.notifications.url ? { baseUrl: options.notifications.url } : {}) });
55
+ const managed = options.notifications === false || legacy ? null : createManagedMessagingNotifications({ ...common, authenticate, authorize, ...(options.notifications && 'managed' in options.notifications && options.notifications.url ? { baseUrl: options.notifications.url } : {}) });
50
56
  const messages = createMessagingBackendAdapter({ robono, authenticate,
51
57
  ...(callingBackend ? { resolveUnansweredCall: async ({ actorId, conversationId, callId }) => {
52
58
  const call = await callingBackend.unansweredCall(actorId, callId);
@@ -57,12 +63,12 @@ export function createRobonoMessengerServer(options) {
57
63
  const maySend = page.conversation?.canSend === true;
58
64
  return { ...call, conversationId, callerId: actorId, permissions: { voiceCalling: call.voiceCalling, videoCalling: call.videoCalling, voiceMessages: maySend && page.settings?.features?.voice === true, videoMessages: maySend && page.settings?.features?.video === true } };
59
65
  } } : {}),
60
- authorize: access => options.storage === false && access.operation === 'schedule-batch' && Array.isArray(access.input.items) && access.input.items.some((item) => !['text', 'poll'].includes(item?.kind)) ? Promise.resolve(false) : options.storage === false && ['send', 'schedule', 'send-call-message', 'edit'].includes(access.operation) && access.input.kind !== undefined && !['text', 'poll'].includes(String(access.input.kind)) ? Promise.resolve(false) : options.authorize({ ...access,
66
+ authorize: access => options.storage === false && access.operation === 'schedule-batch' && Array.isArray(access.input.items) && access.input.items.some((item) => !['text', 'poll'].includes(item?.kind)) ? Promise.resolve(false) : options.storage === false && ['send', 'schedule', 'send-call-message', 'edit'].includes(access.operation) && access.input.kind !== undefined && !['text', 'poll'].includes(String(access.input.kind)) ? Promise.resolve(false) : authorize({ ...access,
61
67
  ...(typeof access.input.conversationId === 'string' ? { conversationId: access.input.conversationId } : {}),
62
68
  }), ...(storage ? { resolveMedia: (input) => storage.resolve(input) } : {}),
63
69
  });
64
70
  const media = storage ? createMessagingMediaBackendAdapter({ robono, storage, authenticate,
65
- authorize: ({ actorId, operation, conversationId, uploadId, request }) => options.authorize({ actorId,
71
+ authorize: ({ actorId, operation, conversationId, uploadId, request }) => authorize({ actorId,
66
72
  operation: 'media.' + operation, ...(conversationId ? { conversationId } : {}), ...(uploadId ? { uploadId } : {}),
67
73
  input: { ...(conversationId ? { conversationId } : {}), ...(uploadId ? { uploadId } : {}) }, request,
68
74
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"messenger.js","sourceRoot":"","sources":["../src/messenger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messenger.js","sourceRoot":"","sources":["../src/messenger.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@robono/server",
3
- "version": "0.23.0",
3
+ "version": "0.24.0",
4
4
  "description": "Provider-neutral server SDK for the Robono Bridge API.",
5
5
  "keywords": [
6
6
  "robono",