@talk2view/sdk 0.21.0 → 0.21.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.
@@ -34,6 +34,8 @@ export interface VoiceButtonProps {
34
34
  export declare function shouldShowVoice(features: Pick<Talk2ViewChatFeatures, 'voice'>, config: PartnerConfig | null): boolean;
35
35
  /** Two rising notes, about 200 ms, from the Web Audio API. Nothing is fetched. */
36
36
  export declare function playListeningEarcon(): void;
37
- export declare function voiceErrorMessage(error: VoiceError): string;
37
+ export declare function voiceErrorMessage(error: VoiceError, who?: {
38
+ anonymous?: boolean;
39
+ }): string;
38
40
  export declare const VoiceButton: FC<VoiceButtonProps>;
39
41
  //# sourceMappingURL=voice-button.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"voice-button.d.ts","sourceRoot":"","sources":["../../src/chat/voice-button.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAA4C,KAAK,EAAE,EAAkB,MAAM,OAAO,CAAC;AAE1F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EACV,aAAa,EAEb,UAAU,EAGX,MAAM,aAAa,CAAC;AAIrB,OAAO,EAA0B,KAAK,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEnF,MAAM,WAAW,gBAAgB;IAC/B,mEAAmE;IACnE,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,+FAA+F;AAC/F,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,IAAI,CAAC,qBAAqB,EAAE,OAAO,CAAC,EAC9C,MAAM,EAAE,aAAa,GAAG,IAAI,GAC3B,OAAO,CAET;AAED,kFAAkF;AAClF,wBAAgB,mBAAmB,IAAI,IAAI,CA0B1C;AAwBD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAE3D;AAYD,eAAO,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CAS5C,CAAC"}
1
+ {"version":3,"file":"voice-button.d.ts","sourceRoot":"","sources":["../../src/chat/voice-button.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAA4C,KAAK,EAAE,EAAkB,MAAM,OAAO,CAAC;AAE1F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EACV,aAAa,EAEb,UAAU,EAGX,MAAM,aAAa,CAAC;AAIrB,OAAO,EAA0B,KAAK,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEnF,MAAM,WAAW,gBAAgB;IAC/B,mEAAmE;IACnE,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,+FAA+F;AAC/F,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,IAAI,CAAC,qBAAqB,EAAE,OAAO,CAAC,EAC9C,MAAM,EAAE,aAAa,GAAG,IAAI,GAC3B,OAAO,CAET;AAED,kFAAkF;AAClF,wBAAgB,mBAAmB,IAAI,IAAI,CA0B1C;AA2BD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,GAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,MAAM,CAG9F;AAYD,eAAO,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CAS5C,CAAC"}
@@ -64,7 +64,7 @@ const ERROR_MESSAGES = {
64
64
  voice_disabled: 'Voice isn’t turned on for this app.',
65
65
  account_required: 'Sign in to use voice.',
66
66
  auth_expired: 'Your sign-in expired. Sign in again to use voice.',
67
- insufficient_credit: 'You’re out of credit for now.',
67
+ insufficient_credit: 'You’re out of credits. Upgrade your plan to keep going.',
68
68
  credit_check_unavailable: 'Couldn’t check your credit just now. Try again shortly.',
69
69
  service_unconfigured: 'Voice isn’t available right now.',
70
70
  service_unavailable: 'Voice isn’t available right now. Try again shortly.',
@@ -74,7 +74,11 @@ const ERROR_MESSAGES = {
74
74
  transport_error: 'The call couldn’t connect. Check your connection and try again.',
75
75
  mic_unavailable: 'Voice needs microphone access. Allow the microphone and try again.',
76
76
  };
77
- export function voiceErrorMessage(error) {
77
+ /** Out of credit as a guest: signing in or creating an account is the way on. */
78
+ const GUEST_OUT_OF_CREDIT = 'You’ve used your free credits. Sign in or create an account to keep going.';
79
+ export function voiceErrorMessage(error, who = {}) {
80
+ if (error.type === 'insufficient_credit' && who.anonymous)
81
+ return GUEST_OUT_OF_CREDIT;
78
82
  return ERROR_MESSAGES[error.type] ?? (error.message || 'Something went wrong with voice. Try again.');
79
83
  }
80
84
  /** Why a call ended, when it was not the end-user's own press. */
@@ -108,6 +112,10 @@ const VoiceControl = ({ client, standalone, className, label = 'Talk to Talk2Vie
108
112
  const [approval, setApproval] = useState(null);
109
113
  const [working, setWorking] = useState(false);
110
114
  const [endedNote, setEndedNote] = useState(null);
115
+ // Whether the end-user has spoken on this call. Until they do, the popover
116
+ // says "Say hi!": the bot does not greet, so a first-time user otherwise sits
117
+ // in silence not knowing the call is waiting on them.
118
+ const [heard, setHeard] = useState(false);
111
119
  // Read by the listeners, so changing the prop does not re-subscribe.
112
120
  const earconRef = useRef(earcon);
113
121
  earconRef.current = earcon;
@@ -123,12 +131,22 @@ const VoiceControl = ({ client, standalone, className, label = 'Talk to Talk2Vie
123
131
  setError(null);
124
132
  setEndedNote(null);
125
133
  }
134
+ if (next === 'connecting')
135
+ setHeard(false);
126
136
  if (next === 'listening' && earconRef.current)
127
137
  playListeningEarcon();
128
138
  }),
129
139
  voice.on('error', setError),
130
140
  voice.on('approvalChange', setApproval),
131
- voice.on('agentState', (agent) => setWorking(agent === 'working')),
141
+ voice.on('agentState', (agent) => {
142
+ setWorking(agent === 'working');
143
+ if (agent === 'working')
144
+ setHeard(true); // it only works on something they said
145
+ }),
146
+ voice.on('transcript', (t) => {
147
+ if (t.role === 'user' && t.text.trim())
148
+ setHeard(true);
149
+ }),
132
150
  voice.on('ended', (reason) => setEndedNote(ENDED_MESSAGES[reason] ?? null)),
133
151
  ];
134
152
  return () => offs.forEach((off) => off());
@@ -162,7 +180,9 @@ const VoiceControl = ({ client, standalone, className, label = 'Talk to Talk2Vie
162
180
  : state === 'listening'
163
181
  ? working
164
182
  ? 'Working…'
165
- : 'Listening'
183
+ : heard
184
+ ? 'Listening'
185
+ : 'Say hi!'
166
186
  : state === 'ended' && !error
167
187
  ? endedNote
168
188
  : null;
@@ -171,9 +191,9 @@ const VoiceControl = ({ client, standalone, className, label = 'Talk to Talk2Vie
171
191
  _jsx(BrandWaveform, { mode: working ? 'busy' : 'live', className: "h-[20px] w-[22px]" })) : (
172
192
  // The dictation mark at rest, the same face the composer's dictate button wears.
173
193
  _jsx(BrandWaveform, { mode: "rest", className: "h-[20px] w-[22px]" }));
174
- return (_jsxs("div", { className: cn('t2v-voice', standalone && 't2v-chat', className), "data-on": on ? '' : undefined, children: [error || approval || status ? (_jsxs("div", { className: "t2v-voice-popover", children: [error ? (_jsxs("div", { role: "alert", className: "t2v-voice-error", children: [_jsx("span", { children: voiceErrorMessage(error) }), _jsx("button", { type: "button", className: "t2v-voice-dismiss", "aria-label": "Dismiss", onClick: () => setError(null), children: _jsx(XIcon, { className: "size-4", "aria-hidden": "true" }) })] })) : null, approval ? (_jsx("div", { className: "t2v-voice-approval", children: _jsx(ApprovalCard
194
+ return (_jsxs("div", { className: cn('t2v-voice', standalone && 't2v-chat', className), "data-on": on ? '' : undefined, children: [error || approval || status ? (_jsxs("div", { className: "t2v-voice-popover", children: [error ? (_jsxs("div", { role: "alert", className: "t2v-voice-error", children: [_jsx("span", { children: voiceErrorMessage(error, { anonymous: client.auth?.isAnonymous?.() ?? false }) }), _jsx("button", { type: "button", className: "t2v-voice-dismiss", "aria-label": "Dismiss", onClick: () => setError(null), children: _jsx(XIcon, { className: "size-4", "aria-hidden": "true" }) })] })) : null, approval ? (_jsx("div", { className: "t2v-voice-approval", children: _jsx(ApprovalCard
175
195
  // A new card per call: a half-edited argument must not carry over.
176
- , { toolName: approval.toolName, toolCallId: approval.toolCallId, args: approval.arguments, description: approval.description, onDecision: (decision) => approval.decide(decision) }, approval.toolCallId) })) : null, status && !error ? (_jsx("div", { "aria-hidden": "true", className: "t2v-voice-status", children: status })) : null] })) : null, _jsx("span", { role: "status", className: "t2v-voice-sr", children: error ? '' : (status ?? '') }), _jsx("button", { type: "button", className: "t2v-voice-button", onClick: toggle,
196
+ , { toolName: approval.toolName, toolCallId: approval.toolCallId, args: approval.arguments, description: approval.description, onDecision: (decision) => approval.decide(decision) }, approval.toolCallId) })) : null, status && !error ? (_jsx("div", { "aria-hidden": "true", className: "t2v-voice-status", "data-hint": status === 'Say hi!' ? '' : undefined, children: status })) : null] })) : null, _jsx("span", { role: "status", className: "t2v-voice-sr", children: error ? '' : (status ?? '') }), _jsx("button", { type: "button", className: "t2v-voice-button", onClick: toggle,
177
197
  // Fetch the voice code while the pointer is on its way to a click.
178
198
  onPointerEnter: preload, onFocus: preload, "aria-label": label, title: on ? 'End the call' : label, "aria-pressed": on, "aria-busy": state === 'connecting' || undefined, "data-state": state, "data-busy": working ? 'true' : undefined, children: icon })] }));
179
199
  };
@@ -1 +1 @@
1
- {"version":3,"file":"voice-button.js","sourceRoot":"","sources":["../../src/chat/voice-button.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"voice-button.js","sourceRoot":"","sources":["../../src/chat/voice-button.tsx"],"names":[],"mappings":"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"}