@revrag-ai/embed-react-native 1.0.16 → 1.0.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -108
- package/dist/commonjs/api/api.js +6 -5
- package/dist/commonjs/api/api.js.map +1 -1
- package/dist/commonjs/components/Embed/EmbedButton.js +138 -345
- package/dist/commonjs/components/Embed/EmbedButton.js.map +1 -1
- package/dist/commonjs/components/Embed/EmbedVoice.js +16 -4
- package/dist/commonjs/components/Embed/EmbedVoice.js.map +1 -1
- package/dist/commonjs/context/EmbedProvider.js +638 -0
- package/dist/commonjs/context/EmbedProvider.js.map +1 -0
- package/dist/commonjs/events/embed.event.js +141 -54
- package/dist/commonjs/events/embed.event.js.map +1 -1
- package/dist/commonjs/hooks/EmbedButton.animations.js +181 -0
- package/dist/commonjs/hooks/EmbedButton.animations.js.map +1 -0
- package/dist/commonjs/hooks/EmbedButton.helpers.js +90 -0
- package/dist/commonjs/hooks/EmbedButton.helpers.js.map +1 -0
- package/dist/commonjs/hooks/EmbedButton.hooks.js +165 -0
- package/dist/commonjs/hooks/EmbedButton.hooks.js.map +1 -0
- package/dist/commonjs/hooks/initialize.js +65 -25
- package/dist/commonjs/hooks/initialize.js.map +1 -1
- package/dist/commonjs/hooks/voiceagent.js +1 -18
- package/dist/commonjs/hooks/voiceagent.js.map +1 -1
- package/dist/commonjs/index.js +16 -1
- package/dist/commonjs/index.js.map +1 -1
- package/dist/commonjs/index.types.js +1 -2
- package/dist/commonjs/index.types.js.map +1 -1
- package/dist/commonjs/utils/constant.js +88 -0
- package/dist/commonjs/utils/constant.js.map +1 -0
- package/dist/commonjs/utils/reanimated.helper.js +2 -3
- package/dist/commonjs/utils/reanimated.helper.js.map +1 -1
- package/dist/module/api/api.js +6 -6
- package/dist/module/api/api.js.map +1 -1
- package/dist/module/components/Embed/EmbedButton.js +140 -347
- package/dist/module/components/Embed/EmbedButton.js.map +1 -1
- package/dist/module/components/Embed/EmbedVoice.js +16 -4
- package/dist/module/components/Embed/EmbedVoice.js.map +1 -1
- package/dist/module/context/EmbedProvider.js +626 -0
- package/dist/module/context/EmbedProvider.js.map +1 -0
- package/dist/module/events/embed.event.js +143 -53
- package/dist/module/events/embed.event.js.map +1 -1
- package/dist/module/hooks/EmbedButton.animations.js +172 -0
- package/dist/module/hooks/EmbedButton.animations.js.map +1 -0
- package/dist/module/hooks/EmbedButton.helpers.js +80 -0
- package/dist/module/hooks/EmbedButton.helpers.js.map +1 -0
- package/dist/module/hooks/EmbedButton.hooks.js +160 -0
- package/dist/module/hooks/EmbedButton.hooks.js.map +1 -0
- package/dist/module/hooks/initialize.js +66 -26
- package/dist/module/hooks/initialize.js.map +1 -1
- package/dist/module/hooks/voiceagent.js +1 -17
- package/dist/module/hooks/voiceagent.js.map +1 -1
- package/dist/module/index.js +4 -2
- package/dist/module/index.js.map +1 -1
- package/dist/module/index.types.js +1 -2
- package/dist/module/index.types.js.map +1 -1
- package/dist/module/utils/constant.js +82 -0
- package/dist/module/utils/constant.js.map +1 -0
- package/dist/module/utils/reanimated.helper.js +2 -3
- package/dist/module/utils/reanimated.helper.js.map +1 -1
- package/dist/typescript/src/api/api.d.ts +4 -3
- package/dist/typescript/src/api/api.d.ts.map +1 -1
- package/dist/typescript/src/api/types/embed.api.types.d.ts +1 -1
- package/dist/typescript/src/api/types/embed.api.types.d.ts.map +1 -1
- package/dist/typescript/src/components/Embed/EmbedButton.d.ts +5 -25
- package/dist/typescript/src/components/Embed/EmbedButton.d.ts.map +1 -1
- package/dist/typescript/src/components/Embed/EmbedVoice.d.ts.map +1 -1
- package/dist/typescript/src/context/EmbedProvider.d.ts +306 -0
- package/dist/typescript/src/context/EmbedProvider.d.ts.map +1 -0
- package/dist/typescript/src/events/embed.event.d.ts +74 -10
- package/dist/typescript/src/events/embed.event.d.ts.map +1 -1
- package/dist/typescript/src/hooks/EmbedButton.animations.d.ts +38 -0
- package/dist/typescript/src/hooks/EmbedButton.animations.d.ts.map +1 -0
- package/dist/typescript/src/hooks/EmbedButton.helpers.d.ts +49 -0
- package/dist/typescript/src/hooks/EmbedButton.helpers.d.ts.map +1 -0
- package/dist/typescript/src/hooks/EmbedButton.hooks.d.ts +49 -0
- package/dist/typescript/src/hooks/EmbedButton.hooks.d.ts.map +1 -0
- package/dist/typescript/src/hooks/initialize.d.ts.map +1 -1
- package/dist/typescript/src/hooks/types/initialize.types.d.ts +1 -1
- package/dist/typescript/src/hooks/types/initialize.types.d.ts.map +1 -1
- package/dist/typescript/src/hooks/voiceagent.d.ts.map +1 -1
- package/dist/typescript/src/index.d.ts +10 -4
- package/dist/typescript/src/index.d.ts.map +1 -1
- package/dist/typescript/src/index.types.d.ts +2 -3
- package/dist/typescript/src/index.types.d.ts.map +1 -1
- package/dist/typescript/src/utils/constant.d.ts +45 -0
- package/dist/typescript/src/utils/constant.d.ts.map +1 -0
- package/dist/typescript/src/utils/reanimated.helper.d.ts.map +1 -1
- package/package.json +6 -3
- package/react-native.config.js +1 -0
- package/dist/commonjs/events/eventEmitter.js +0 -43
- package/dist/commonjs/events/eventEmitter.js.map +0 -1
- package/dist/module/events/eventEmitter.js +0 -39
- package/dist/module/events/eventEmitter.js.map +0 -1
- package/dist/typescript/src/events/eventEmitter.d.ts +0 -9
- package/dist/typescript/src/events/eventEmitter.d.ts.map +0 -1
package/README.md
CHANGED
|
@@ -308,24 +308,19 @@ function MyScreen() {
|
|
|
308
308
|
|
|
309
309
|
## Event System
|
|
310
310
|
|
|
311
|
-
The SDK provides a powerful event system for
|
|
311
|
+
The SDK provides a powerful event system for sending user context and application state to the AI agent.
|
|
312
312
|
|
|
313
313
|
### Available Events
|
|
314
314
|
|
|
315
315
|
The SDK exports the following event types:
|
|
316
316
|
|
|
317
317
|
```jsx
|
|
318
|
-
import { EventKeys
|
|
318
|
+
import { EventKeys } from '@revrag-ai/embed-react-native';
|
|
319
319
|
|
|
320
|
-
// Available event keys
|
|
320
|
+
// Available event keys:
|
|
321
321
|
EventKeys.USER_DATA // 'user_data' - User identity and profile
|
|
322
322
|
EventKeys.SCREEN_STATE // 'state_data' - Application state and context
|
|
323
323
|
|
|
324
|
-
// Available listener event keys for monitoring agent state:
|
|
325
|
-
ListenerEventKeys.AGENT_CONNECTED // 'agent_connected' - Agent connection established
|
|
326
|
-
ListenerEventKeys.AGENT_DISCONNECTED // 'agent_disconnected' - Agent disconnected
|
|
327
|
-
ListenerEventKeys.POPUP_MESSAGE_VISIBLE // 'popup_message_visible' - Popup visibility changes
|
|
328
|
-
|
|
329
324
|
```
|
|
330
325
|
|
|
331
326
|
### Event Usage Rules
|
|
@@ -340,25 +335,14 @@ ListenerEventKeys.POPUP_MESSAGE_VISIBLE // 'popup_message_visible' - Popup visib
|
|
|
340
335
|
### Event Methods
|
|
341
336
|
|
|
342
337
|
```jsx
|
|
343
|
-
import { embed, EventKeys
|
|
338
|
+
import { embed, EventKeys } from '@revrag-ai/embed-react-native';
|
|
344
339
|
|
|
345
|
-
// Send events
|
|
340
|
+
// Send events
|
|
346
341
|
await embed.Event(eventKey, data);
|
|
347
342
|
|
|
348
|
-
// Listen to
|
|
343
|
+
// Listen to events (optional)
|
|
349
344
|
embed.on(eventKey, callback);
|
|
350
345
|
|
|
351
|
-
// Listen to agent connection events
|
|
352
|
-
const unsubscribe = embed.addListener(ListenerEventKeys.AGENT_CONNECTED, (data) => {
|
|
353
|
-
console.log('Agent connected:', data);
|
|
354
|
-
});
|
|
355
|
-
|
|
356
|
-
// Remove listener
|
|
357
|
-
embed.removeListener(ListenerEventKeys.AGENT_CONNECTED, callback);
|
|
358
|
-
|
|
359
|
-
// Remove all listeners for an event
|
|
360
|
-
embed.removeAllListeners(ListenerEventKeys.AGENT_CONNECTED);
|
|
361
|
-
|
|
362
346
|
```
|
|
363
347
|
|
|
364
348
|
### How Events are Triggered
|
|
@@ -520,92 +504,6 @@ const styles = StyleSheet.create({
|
|
|
520
504
|
|
|
521
505
|
```
|
|
522
506
|
|
|
523
|
-
### Agent Connection Event Listeners
|
|
524
|
-
|
|
525
|
-
Monitor agent connection status with event listeners:
|
|
526
|
-
|
|
527
|
-
```jsx
|
|
528
|
-
import { embed, ListenerEventKeys } from '@revrag-ai/embed-react-native';
|
|
529
|
-
|
|
530
|
-
function VoiceAgentMonitor() {
|
|
531
|
-
useEffect(() => {
|
|
532
|
-
// Listen for agent connection
|
|
533
|
-
const unsubscribeConnected = embed.addListener(
|
|
534
|
-
ListenerEventKeys.AGENT_CONNECTED,
|
|
535
|
-
(data) => {
|
|
536
|
-
console.log('Agent connected at:', new Date(data.timestamp));
|
|
537
|
-
console.log('Connection state:', data.metadata.connectionState);
|
|
538
|
-
|
|
539
|
-
// Update UI to show agent is available
|
|
540
|
-
setAgentStatus('connected');
|
|
541
|
-
showNotification('Voice agent is ready!');
|
|
542
|
-
}
|
|
543
|
-
);
|
|
544
|
-
|
|
545
|
-
// Listen for agent disconnection
|
|
546
|
-
const unsubscribeDisconnected = embed.addListener(
|
|
547
|
-
ListenerEventKeys.AGENT_DISCONNECTED,
|
|
548
|
-
(data) => {
|
|
549
|
-
console.log('Agent disconnected at:', new Date(data.timestamp));
|
|
550
|
-
console.log('Disconnection trigger:', data.metadata.trigger);
|
|
551
|
-
|
|
552
|
-
// Update UI to show agent is unavailable
|
|
553
|
-
setAgentStatus('disconnected');
|
|
554
|
-
|
|
555
|
-
if (data.metadata.trigger === 'call_ended') {
|
|
556
|
-
showNotification('Call ended');
|
|
557
|
-
} else {
|
|
558
|
-
showNotification('Voice agent disconnected');
|
|
559
|
-
}
|
|
560
|
-
}
|
|
561
|
-
);
|
|
562
|
-
|
|
563
|
-
// Listen for popup visibility changes
|
|
564
|
-
const unsubscribePopup = embed.addListener(
|
|
565
|
-
ListenerEventKeys.POPUP_MESSAGE_VISIBLE,
|
|
566
|
-
(data) => {
|
|
567
|
-
console.log('Popup visibility changed:', data.value);
|
|
568
|
-
setPopupVisible(data.value);
|
|
569
|
-
}
|
|
570
|
-
);
|
|
571
|
-
|
|
572
|
-
// Cleanup listeners on unmount
|
|
573
|
-
return () => {
|
|
574
|
-
unsubscribeConnected();
|
|
575
|
-
unsubscribeDisconnected();
|
|
576
|
-
unsubscribePopup();
|
|
577
|
-
};
|
|
578
|
-
}, []);
|
|
579
|
-
|
|
580
|
-
return (
|
|
581
|
-
<View>
|
|
582
|
-
<Text>Agent Status: {agentStatus}</Text>
|
|
583
|
-
{popupVisible && <PopupMessage />}
|
|
584
|
-
</View>
|
|
585
|
-
);
|
|
586
|
-
}
|
|
587
|
-
|
|
588
|
-
```
|
|
589
|
-
|
|
590
|
-
#### Event Data Structure
|
|
591
|
-
|
|
592
|
-
All listener events receive data in the following format:
|
|
593
|
-
|
|
594
|
-
```jsx
|
|
595
|
-
interface EmbedEventData {
|
|
596
|
-
timestamp: number; // Unix timestamp when event occurred
|
|
597
|
-
value: boolean; // Boolean state (connected/visible = true)
|
|
598
|
-
metadata?: {
|
|
599
|
-
connectionState?: string; // LiveKit connection state
|
|
600
|
-
roomId?: string; // Voice room identifier
|
|
601
|
-
trigger?: 'user_interaction' | 'auto_open' | 'call_ended';
|
|
602
|
-
previousState?: boolean; // Previous state before change
|
|
603
|
-
[key: string]: any; // Additional context data
|
|
604
|
-
};
|
|
605
|
-
}
|
|
606
|
-
|
|
607
|
-
```
|
|
608
|
-
|
|
609
507
|
### Event Listening Example
|
|
610
508
|
|
|
611
509
|
```jsx
|
package/dist/commonjs/api/api.js
CHANGED
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.updateUserData = exports.registerOnInitialize = exports.initializeApi = exports.getTokenDetails = exports.getPopupDescription = exports.APIService = void 0;
|
|
7
7
|
var _storeKey = require("../store/store.key.js");
|
|
8
8
|
var _apiError = require("./api.error.js");
|
|
9
|
+
var _constant = require("../utils/constant.js");
|
|
9
10
|
/**
|
|
10
11
|
* APIService class that ensures proper initialization before API calls
|
|
11
12
|
*/
|
|
@@ -33,12 +34,12 @@ class APIService {
|
|
|
33
34
|
return; // Already initialized
|
|
34
35
|
}
|
|
35
36
|
const AgentData = await (0, _storeKey.getAgentData)();
|
|
36
|
-
if (AgentData
|
|
37
|
-
this.apiBaseUrl = AgentData.embedUrl;
|
|
38
|
-
this.isInitialized = true;
|
|
39
|
-
} else {
|
|
37
|
+
if (!AgentData) {
|
|
40
38
|
throw new Error('API base URL not found in keychain');
|
|
41
39
|
}
|
|
40
|
+
const resolvedEmbedUrl = AgentData.embedUrl && typeof AgentData.embedUrl === 'string' ? AgentData.embedUrl : _constant.DEFAULT_EMBED_URL;
|
|
41
|
+
this.apiBaseUrl = resolvedEmbedUrl;
|
|
42
|
+
this.isInitialized = true;
|
|
42
43
|
}
|
|
43
44
|
|
|
44
45
|
/**
|
|
@@ -106,7 +107,7 @@ class APIService {
|
|
|
106
107
|
method: 'PUT',
|
|
107
108
|
headers,
|
|
108
109
|
body: JSON.stringify({
|
|
109
|
-
[params.
|
|
110
|
+
[params.type]: params.data
|
|
110
111
|
})
|
|
111
112
|
});
|
|
112
113
|
if (!response.ok) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_storeKey","require","_apiError","APIService","instance","apiBaseUrl","isInitialized","constructor","getInstance","initialize","AgentData","getAgentData","embedUrl","
|
|
1
|
+
{"version":3,"names":["_storeKey","require","_apiError","_constant","APIService","instance","apiBaseUrl","isInitialized","constructor","getInstance","initialize","AgentData","getAgentData","Error","resolvedEmbedUrl","embedUrl","DEFAULT_EMBED_URL","ensureInitialized","getHeaders","apiKey","registerOnInitialize","response","headers","fetch","method","data","json","ok","processApiError","undefined","setAgentData","success","error","updateUserData","params","app_user_id","body","JSON","stringify","type","getTokenDetails","getPopupDescription","exports","initializeApi","apiService"],"sourceRoot":"../../../src","sources":["api/api.ts"],"mappings":"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","ignoreList":[]}
|