@wildix/wim-voicebots-client 1.0.9 → 1.0.10

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.
@@ -114,6 +114,71 @@ export interface VoiceBotEmbeddedTool {
114
114
  */
115
115
  parameters?: __DocumentType;
116
116
  }
117
+ /**
118
+ * @public
119
+ */
120
+ export interface VoiceBotFunctionIntegrationWebhookAuthorizationBasic {
121
+ username: string;
122
+ password: string;
123
+ }
124
+ /**
125
+ * @public
126
+ */
127
+ export interface VoiceBotFunctionIntegrationWebhookAuthorizationBearer {
128
+ token: string;
129
+ }
130
+ /**
131
+ * @public
132
+ */
133
+ export interface VoiceBotFunctionIntegrationWebhookAuthorizationOAuth {
134
+ clientId: string;
135
+ clientSecret: string;
136
+ endpointUrl: string;
137
+ scope?: string;
138
+ }
139
+ /**
140
+ * @public
141
+ */
142
+ export type VoiceBotFunctionIntegrationWebhookAuthorization = VoiceBotFunctionIntegrationWebhookAuthorization.BasicMember | VoiceBotFunctionIntegrationWebhookAuthorization.BearerMember | VoiceBotFunctionIntegrationWebhookAuthorization.OauthMember | VoiceBotFunctionIntegrationWebhookAuthorization.$UnknownMember;
143
+ /**
144
+ * @public
145
+ */
146
+ export declare namespace VoiceBotFunctionIntegrationWebhookAuthorization {
147
+ interface BearerMember {
148
+ bearer: VoiceBotFunctionIntegrationWebhookAuthorizationBearer;
149
+ basic?: never;
150
+ oauth?: never;
151
+ $unknown?: never;
152
+ }
153
+ interface BasicMember {
154
+ bearer?: never;
155
+ basic: VoiceBotFunctionIntegrationWebhookAuthorizationBasic;
156
+ oauth?: never;
157
+ $unknown?: never;
158
+ }
159
+ interface OauthMember {
160
+ bearer?: never;
161
+ basic?: never;
162
+ oauth: VoiceBotFunctionIntegrationWebhookAuthorizationOAuth;
163
+ $unknown?: never;
164
+ }
165
+ /**
166
+ * @public
167
+ */
168
+ interface $UnknownMember {
169
+ bearer?: never;
170
+ basic?: never;
171
+ oauth?: never;
172
+ $unknown: [string, any];
173
+ }
174
+ interface Visitor<T> {
175
+ bearer: (value: VoiceBotFunctionIntegrationWebhookAuthorizationBearer) => T;
176
+ basic: (value: VoiceBotFunctionIntegrationWebhookAuthorizationBasic) => T;
177
+ oauth: (value: VoiceBotFunctionIntegrationWebhookAuthorizationOAuth) => T;
178
+ _: (name: string, value: any) => T;
179
+ }
180
+ const visit: <T>(value: VoiceBotFunctionIntegrationWebhookAuthorization, visitor: Visitor<T>) => T;
181
+ }
117
182
  /**
118
183
  * @public
119
184
  */
@@ -127,8 +192,7 @@ export interface VoiceBotFunctionIntegrationWebhookHeader {
127
192
  export interface VoiceBotFunctionIntegrationWebhook {
128
193
  url: string;
129
194
  async?: boolean;
130
- timeout?: number;
131
- authorization?: __DocumentType;
195
+ authorization?: VoiceBotFunctionIntegrationWebhookAuthorization;
132
196
  headers?: (VoiceBotFunctionIntegrationWebhookHeader)[];
133
197
  parameters?: __DocumentType;
134
198
  }
@@ -476,6 +540,78 @@ export interface PlaybackWebsocketEvent {
476
540
  type: string;
477
541
  event: PlaybackEvent;
478
542
  }
543
+ /**
544
+ * @public
545
+ */
546
+ export interface TraceErrorResult {
547
+ internal: boolean;
548
+ message: string;
549
+ }
550
+ /**
551
+ * @public
552
+ */
553
+ export type TraceActivityResult = TraceActivityResult.ErrorMember | TraceActivityResult.TextMember | TraceActivityResult.$UnknownMember;
554
+ /**
555
+ * @public
556
+ */
557
+ export declare namespace TraceActivityResult {
558
+ interface ErrorMember {
559
+ error: TraceErrorResult;
560
+ text?: never;
561
+ $unknown?: never;
562
+ }
563
+ interface TextMember {
564
+ error?: never;
565
+ text: string;
566
+ $unknown?: never;
567
+ }
568
+ /**
569
+ * @public
570
+ */
571
+ interface $UnknownMember {
572
+ error?: never;
573
+ text?: never;
574
+ $unknown: [string, any];
575
+ }
576
+ interface Visitor<T> {
577
+ error: (value: TraceErrorResult) => T;
578
+ text: (value: string) => T;
579
+ _: (name: string, value: any) => T;
580
+ }
581
+ const visit: <T>(value: TraceActivityResult, visitor: Visitor<T>) => T;
582
+ }
583
+ /**
584
+ * @public
585
+ * @enum
586
+ */
587
+ export declare const TraceActivityStatus: {
588
+ readonly CANCELLED: "cancelled";
589
+ readonly COMPLETE: "complete";
590
+ readonly ERROR: "error";
591
+ readonly PENDING: "pending";
592
+ };
593
+ /**
594
+ * @public
595
+ */
596
+ export type TraceActivityStatus = typeof TraceActivityStatus[keyof typeof TraceActivityStatus];
597
+ /**
598
+ * @public
599
+ */
600
+ export interface TraceConnectEventTrigger {
601
+ parameters?: __DocumentType;
602
+ }
603
+ /**
604
+ * @public
605
+ */
606
+ export interface TraceDisconnectEventTrigger {
607
+ parameters?: __DocumentType;
608
+ }
609
+ /**
610
+ * @public
611
+ */
612
+ export interface TraceDurationTimeoutTaskTrigger {
613
+ parameters?: __DocumentType;
614
+ }
479
615
  /**
480
616
  * @public
481
617
  */
@@ -486,16 +622,6 @@ export interface ReplyEvent {
486
622
  startTime: number;
487
623
  endTime: number;
488
624
  }
489
- /**
490
- * @public
491
- */
492
- export interface ReplyWebhookEvent {
493
- sessionId: string;
494
- botId: string;
495
- callId: string;
496
- flowIndex: number;
497
- event: ReplyEvent;
498
- }
499
625
  /**
500
626
  * @public
501
627
  */
@@ -522,83 +648,707 @@ export interface SayWebsocketCommand {
522
648
  /**
523
649
  * @public
524
650
  */
525
- export interface SessionEndedEvent {
651
+ export interface TraceSilenceTimeoutTaskTrigger {
652
+ parameters?: __DocumentType;
653
+ }
654
+ /**
655
+ * @public
656
+ */
657
+ export interface TranscriptionEvent {
526
658
  type: VoiceBotEventType;
527
- error?: string;
659
+ id: string;
660
+ text: string;
528
661
  time: number;
529
662
  }
530
663
  /**
531
664
  * @public
532
665
  */
533
- export interface SessionEndedWebhookEvent {
666
+ export interface TranscriptionWebsocketEvent {
667
+ type: string;
668
+ event: TranscriptionEvent;
669
+ }
670
+ /**
671
+ * @public
672
+ */
673
+ export interface TransferWebsocketCommandData {
674
+ context: string;
675
+ extension: string;
676
+ type: VoiceBotCommandType;
677
+ }
678
+ /**
679
+ * @public
680
+ */
681
+ export interface TransferWebsocketCommand {
682
+ type: string;
683
+ command: TransferWebsocketCommandData;
684
+ }
685
+ /**
686
+ * @public
687
+ */
688
+ export type TraceActivityTrigger = TraceActivityTrigger.CompleteEventMember | TraceActivityTrigger.ConnectEventMember | TraceActivityTrigger.DisconnectEventMember | TraceActivityTrigger.DurationTimeoutTaskMember | TraceActivityTrigger.HangupCommandMember | TraceActivityTrigger.InterruptionEventMember | TraceActivityTrigger.PlaybackEventMember | TraceActivityTrigger.ReplyEventMember | TraceActivityTrigger.SayCommandMember | TraceActivityTrigger.SilenceTimeoutTaskMember | TraceActivityTrigger.TranscriptionEventMember | TraceActivityTrigger.TransferCommandMember | TraceActivityTrigger.$UnknownMember;
689
+ /**
690
+ * @public
691
+ */
692
+ export declare namespace TraceActivityTrigger {
693
+ interface ConnectEventMember {
694
+ connectEvent: TraceConnectEventTrigger;
695
+ disconnectEvent?: never;
696
+ replyEvent?: never;
697
+ completeEvent?: never;
698
+ interruptionEvent?: never;
699
+ playbackEvent?: never;
700
+ transcriptionEvent?: never;
701
+ sayCommand?: never;
702
+ hangupCommand?: never;
703
+ transferCommand?: never;
704
+ silenceTimeoutTask?: never;
705
+ durationTimeoutTask?: never;
706
+ $unknown?: never;
707
+ }
708
+ interface DisconnectEventMember {
709
+ connectEvent?: never;
710
+ disconnectEvent: TraceDisconnectEventTrigger;
711
+ replyEvent?: never;
712
+ completeEvent?: never;
713
+ interruptionEvent?: never;
714
+ playbackEvent?: never;
715
+ transcriptionEvent?: never;
716
+ sayCommand?: never;
717
+ hangupCommand?: never;
718
+ transferCommand?: never;
719
+ silenceTimeoutTask?: never;
720
+ durationTimeoutTask?: never;
721
+ $unknown?: never;
722
+ }
723
+ interface ReplyEventMember {
724
+ connectEvent?: never;
725
+ disconnectEvent?: never;
726
+ replyEvent: ReplyWebsocketEvent;
727
+ completeEvent?: never;
728
+ interruptionEvent?: never;
729
+ playbackEvent?: never;
730
+ transcriptionEvent?: never;
731
+ sayCommand?: never;
732
+ hangupCommand?: never;
733
+ transferCommand?: never;
734
+ silenceTimeoutTask?: never;
735
+ durationTimeoutTask?: never;
736
+ $unknown?: never;
737
+ }
738
+ interface CompleteEventMember {
739
+ connectEvent?: never;
740
+ disconnectEvent?: never;
741
+ replyEvent?: never;
742
+ completeEvent: CompleteWebsocketEvent;
743
+ interruptionEvent?: never;
744
+ playbackEvent?: never;
745
+ transcriptionEvent?: never;
746
+ sayCommand?: never;
747
+ hangupCommand?: never;
748
+ transferCommand?: never;
749
+ silenceTimeoutTask?: never;
750
+ durationTimeoutTask?: never;
751
+ $unknown?: never;
752
+ }
753
+ interface InterruptionEventMember {
754
+ connectEvent?: never;
755
+ disconnectEvent?: never;
756
+ replyEvent?: never;
757
+ completeEvent?: never;
758
+ interruptionEvent: InterruptionWebsocketEvent;
759
+ playbackEvent?: never;
760
+ transcriptionEvent?: never;
761
+ sayCommand?: never;
762
+ hangupCommand?: never;
763
+ transferCommand?: never;
764
+ silenceTimeoutTask?: never;
765
+ durationTimeoutTask?: never;
766
+ $unknown?: never;
767
+ }
768
+ interface PlaybackEventMember {
769
+ connectEvent?: never;
770
+ disconnectEvent?: never;
771
+ replyEvent?: never;
772
+ completeEvent?: never;
773
+ interruptionEvent?: never;
774
+ playbackEvent: PlaybackWebsocketEvent;
775
+ transcriptionEvent?: never;
776
+ sayCommand?: never;
777
+ hangupCommand?: never;
778
+ transferCommand?: never;
779
+ silenceTimeoutTask?: never;
780
+ durationTimeoutTask?: never;
781
+ $unknown?: never;
782
+ }
783
+ interface TranscriptionEventMember {
784
+ connectEvent?: never;
785
+ disconnectEvent?: never;
786
+ replyEvent?: never;
787
+ completeEvent?: never;
788
+ interruptionEvent?: never;
789
+ playbackEvent?: never;
790
+ transcriptionEvent: TranscriptionWebsocketEvent;
791
+ sayCommand?: never;
792
+ hangupCommand?: never;
793
+ transferCommand?: never;
794
+ silenceTimeoutTask?: never;
795
+ durationTimeoutTask?: never;
796
+ $unknown?: never;
797
+ }
798
+ interface SayCommandMember {
799
+ connectEvent?: never;
800
+ disconnectEvent?: never;
801
+ replyEvent?: never;
802
+ completeEvent?: never;
803
+ interruptionEvent?: never;
804
+ playbackEvent?: never;
805
+ transcriptionEvent?: never;
806
+ sayCommand: SayWebsocketCommand;
807
+ hangupCommand?: never;
808
+ transferCommand?: never;
809
+ silenceTimeoutTask?: never;
810
+ durationTimeoutTask?: never;
811
+ $unknown?: never;
812
+ }
813
+ interface HangupCommandMember {
814
+ connectEvent?: never;
815
+ disconnectEvent?: never;
816
+ replyEvent?: never;
817
+ completeEvent?: never;
818
+ interruptionEvent?: never;
819
+ playbackEvent?: never;
820
+ transcriptionEvent?: never;
821
+ sayCommand?: never;
822
+ hangupCommand: HangupWebsocketCommand;
823
+ transferCommand?: never;
824
+ silenceTimeoutTask?: never;
825
+ durationTimeoutTask?: never;
826
+ $unknown?: never;
827
+ }
828
+ interface TransferCommandMember {
829
+ connectEvent?: never;
830
+ disconnectEvent?: never;
831
+ replyEvent?: never;
832
+ completeEvent?: never;
833
+ interruptionEvent?: never;
834
+ playbackEvent?: never;
835
+ transcriptionEvent?: never;
836
+ sayCommand?: never;
837
+ hangupCommand?: never;
838
+ transferCommand: TransferWebsocketCommand;
839
+ silenceTimeoutTask?: never;
840
+ durationTimeoutTask?: never;
841
+ $unknown?: never;
842
+ }
843
+ interface SilenceTimeoutTaskMember {
844
+ connectEvent?: never;
845
+ disconnectEvent?: never;
846
+ replyEvent?: never;
847
+ completeEvent?: never;
848
+ interruptionEvent?: never;
849
+ playbackEvent?: never;
850
+ transcriptionEvent?: never;
851
+ sayCommand?: never;
852
+ hangupCommand?: never;
853
+ transferCommand?: never;
854
+ silenceTimeoutTask: TraceSilenceTimeoutTaskTrigger;
855
+ durationTimeoutTask?: never;
856
+ $unknown?: never;
857
+ }
858
+ interface DurationTimeoutTaskMember {
859
+ connectEvent?: never;
860
+ disconnectEvent?: never;
861
+ replyEvent?: never;
862
+ completeEvent?: never;
863
+ interruptionEvent?: never;
864
+ playbackEvent?: never;
865
+ transcriptionEvent?: never;
866
+ sayCommand?: never;
867
+ hangupCommand?: never;
868
+ transferCommand?: never;
869
+ silenceTimeoutTask?: never;
870
+ durationTimeoutTask: TraceDurationTimeoutTaskTrigger;
871
+ $unknown?: never;
872
+ }
873
+ /**
874
+ * @public
875
+ */
876
+ interface $UnknownMember {
877
+ connectEvent?: never;
878
+ disconnectEvent?: never;
879
+ replyEvent?: never;
880
+ completeEvent?: never;
881
+ interruptionEvent?: never;
882
+ playbackEvent?: never;
883
+ transcriptionEvent?: never;
884
+ sayCommand?: never;
885
+ hangupCommand?: never;
886
+ transferCommand?: never;
887
+ silenceTimeoutTask?: never;
888
+ durationTimeoutTask?: never;
889
+ $unknown: [string, any];
890
+ }
891
+ interface Visitor<T> {
892
+ connectEvent: (value: TraceConnectEventTrigger) => T;
893
+ disconnectEvent: (value: TraceDisconnectEventTrigger) => T;
894
+ replyEvent: (value: ReplyWebsocketEvent) => T;
895
+ completeEvent: (value: CompleteWebsocketEvent) => T;
896
+ interruptionEvent: (value: InterruptionWebsocketEvent) => T;
897
+ playbackEvent: (value: PlaybackWebsocketEvent) => T;
898
+ transcriptionEvent: (value: TranscriptionWebsocketEvent) => T;
899
+ sayCommand: (value: SayWebsocketCommand) => T;
900
+ hangupCommand: (value: HangupWebsocketCommand) => T;
901
+ transferCommand: (value: TransferWebsocketCommand) => T;
902
+ silenceTimeoutTask: (value: TraceSilenceTimeoutTaskTrigger) => T;
903
+ durationTimeoutTask: (value: TraceDurationTimeoutTaskTrigger) => T;
904
+ _: (name: string, value: any) => T;
905
+ }
906
+ const visit: <T>(value: TraceActivityTrigger, visitor: Visitor<T>) => T;
907
+ }
908
+ /**
909
+ * @public
910
+ */
911
+ export interface TraceActivity {
912
+ id: string;
913
+ version: number;
914
+ status: TraceActivityStatus;
915
+ trigger: TraceActivityTrigger;
916
+ result?: TraceActivityResult;
917
+ start: number;
918
+ duration?: number;
919
+ }
920
+ /**
921
+ * @public
922
+ */
923
+ export type TraceSegmentCompletionMessageItem = TraceSegmentCompletionMessageItem.BotMember | TraceSegmentCompletionMessageItem.UserMember | TraceSegmentCompletionMessageItem.$UnknownMember;
924
+ /**
925
+ * @public
926
+ */
927
+ export declare namespace TraceSegmentCompletionMessageItem {
928
+ interface UserMember {
929
+ user: string;
930
+ bot?: never;
931
+ $unknown?: never;
932
+ }
933
+ interface BotMember {
934
+ user?: never;
935
+ bot: string;
936
+ $unknown?: never;
937
+ }
938
+ /**
939
+ * @public
940
+ */
941
+ interface $UnknownMember {
942
+ user?: never;
943
+ bot?: never;
944
+ $unknown: [string, any];
945
+ }
946
+ interface Visitor<T> {
947
+ user: (value: string) => T;
948
+ bot: (value: string) => T;
949
+ _: (name: string, value: any) => T;
950
+ }
951
+ const visit: <T>(value: TraceSegmentCompletionMessageItem, visitor: Visitor<T>) => T;
952
+ }
953
+ /**
954
+ * @public
955
+ */
956
+ export interface TraceSegmentCompletionInput {
957
+ messages: TraceSegmentCompletionMessageItem;
958
+ }
959
+ /**
960
+ * @public
961
+ */
962
+ export type TraceToolCall = TraceToolCall.DelegationMember | TraceToolCall.FunctionMember | TraceToolCall.HangupMember | TraceToolCall.TransferMember | TraceToolCall.$UnknownMember;
963
+ /**
964
+ * @public
965
+ */
966
+ export declare namespace TraceToolCall {
967
+ interface TransferMember {
968
+ transfer: string;
969
+ hangup?: never;
970
+ delegation?: never;
971
+ function?: never;
972
+ $unknown?: never;
973
+ }
974
+ interface HangupMember {
975
+ transfer?: never;
976
+ hangup: string;
977
+ delegation?: never;
978
+ function?: never;
979
+ $unknown?: never;
980
+ }
981
+ interface DelegationMember {
982
+ transfer?: never;
983
+ hangup?: never;
984
+ delegation: string;
985
+ function?: never;
986
+ $unknown?: never;
987
+ }
988
+ interface FunctionMember {
989
+ transfer?: never;
990
+ hangup?: never;
991
+ delegation?: never;
992
+ function: string;
993
+ $unknown?: never;
994
+ }
995
+ /**
996
+ * @public
997
+ */
998
+ interface $UnknownMember {
999
+ transfer?: never;
1000
+ hangup?: never;
1001
+ delegation?: never;
1002
+ function?: never;
1003
+ $unknown: [string, any];
1004
+ }
1005
+ interface Visitor<T> {
1006
+ transfer: (value: string) => T;
1007
+ hangup: (value: string) => T;
1008
+ delegation: (value: string) => T;
1009
+ function: (value: string) => T;
1010
+ _: (name: string, value: any) => T;
1011
+ }
1012
+ const visit: <T>(value: TraceToolCall, visitor: Visitor<T>) => T;
1013
+ }
1014
+ /**
1015
+ * @public
1016
+ */
1017
+ export type TraceSegmentInput = TraceSegmentInput.CompletionMember | TraceSegmentInput.ToolMember | TraceSegmentInput.$UnknownMember;
1018
+ /**
1019
+ * @public
1020
+ */
1021
+ export declare namespace TraceSegmentInput {
1022
+ interface CompletionMember {
1023
+ completion: TraceSegmentCompletionInput;
1024
+ tool?: never;
1025
+ $unknown?: never;
1026
+ }
1027
+ interface ToolMember {
1028
+ completion?: never;
1029
+ tool: TraceToolCall;
1030
+ $unknown?: never;
1031
+ }
1032
+ /**
1033
+ * @public
1034
+ */
1035
+ interface $UnknownMember {
1036
+ completion?: never;
1037
+ tool?: never;
1038
+ $unknown: [string, any];
1039
+ }
1040
+ interface Visitor<T> {
1041
+ completion: (value: TraceSegmentCompletionInput) => T;
1042
+ tool: (value: TraceToolCall) => T;
1043
+ _: (name: string, value: any) => T;
1044
+ }
1045
+ const visit: <T>(value: TraceSegmentInput, visitor: Visitor<T>) => T;
1046
+ }
1047
+ /**
1048
+ * @public
1049
+ */
1050
+ export type TraceToolResult = TraceToolResult.DelegationMember | TraceToolResult.FunctionMember | TraceToolResult.HangupMember | TraceToolResult.TransferMember | TraceToolResult.$UnknownMember;
1051
+ /**
1052
+ * @public
1053
+ */
1054
+ export declare namespace TraceToolResult {
1055
+ interface TransferMember {
1056
+ transfer: string;
1057
+ hangup?: never;
1058
+ delegation?: never;
1059
+ function?: never;
1060
+ $unknown?: never;
1061
+ }
1062
+ interface HangupMember {
1063
+ transfer?: never;
1064
+ hangup: string;
1065
+ delegation?: never;
1066
+ function?: never;
1067
+ $unknown?: never;
1068
+ }
1069
+ interface DelegationMember {
1070
+ transfer?: never;
1071
+ hangup?: never;
1072
+ delegation: string;
1073
+ function?: never;
1074
+ $unknown?: never;
1075
+ }
1076
+ interface FunctionMember {
1077
+ transfer?: never;
1078
+ hangup?: never;
1079
+ delegation?: never;
1080
+ function: string;
1081
+ $unknown?: never;
1082
+ }
1083
+ /**
1084
+ * @public
1085
+ */
1086
+ interface $UnknownMember {
1087
+ transfer?: never;
1088
+ hangup?: never;
1089
+ delegation?: never;
1090
+ function?: never;
1091
+ $unknown: [string, any];
1092
+ }
1093
+ interface Visitor<T> {
1094
+ transfer: (value: string) => T;
1095
+ hangup: (value: string) => T;
1096
+ delegation: (value: string) => T;
1097
+ function: (value: string) => T;
1098
+ _: (name: string, value: any) => T;
1099
+ }
1100
+ const visit: <T>(value: TraceToolResult, visitor: Visitor<T>) => T;
1101
+ }
1102
+ /**
1103
+ * @public
1104
+ */
1105
+ export type TraceSegmentResult = TraceSegmentResult.ErrorMember | TraceSegmentResult.JsonMember | TraceSegmentResult.TextMember | TraceSegmentResult.ToolsMember | TraceSegmentResult.$UnknownMember;
1106
+ /**
1107
+ * @public
1108
+ */
1109
+ export declare namespace TraceSegmentResult {
1110
+ interface ErrorMember {
1111
+ error: TraceErrorResult;
1112
+ tools?: never;
1113
+ text?: never;
1114
+ json?: never;
1115
+ $unknown?: never;
1116
+ }
1117
+ interface ToolsMember {
1118
+ error?: never;
1119
+ tools: (TraceToolResult)[];
1120
+ text?: never;
1121
+ json?: never;
1122
+ $unknown?: never;
1123
+ }
1124
+ interface TextMember {
1125
+ error?: never;
1126
+ tools?: never;
1127
+ text: string;
1128
+ json?: never;
1129
+ $unknown?: never;
1130
+ }
1131
+ interface JsonMember {
1132
+ error?: never;
1133
+ tools?: never;
1134
+ text?: never;
1135
+ json: __DocumentType;
1136
+ $unknown?: never;
1137
+ }
1138
+ /**
1139
+ * @public
1140
+ */
1141
+ interface $UnknownMember {
1142
+ error?: never;
1143
+ tools?: never;
1144
+ text?: never;
1145
+ json?: never;
1146
+ $unknown: [string, any];
1147
+ }
1148
+ interface Visitor<T> {
1149
+ error: (value: TraceErrorResult) => T;
1150
+ tools: (value: (TraceToolResult)[]) => T;
1151
+ text: (value: string) => T;
1152
+ json: (value: __DocumentType) => T;
1153
+ _: (name: string, value: any) => T;
1154
+ }
1155
+ const visit: <T>(value: TraceSegmentResult, visitor: Visitor<T>) => T;
1156
+ }
1157
+ /**
1158
+ * @public
1159
+ * @enum
1160
+ */
1161
+ export declare const TraceSegmentStatus: {
1162
+ readonly COMPLETE: "complete";
1163
+ readonly ERROR: "error";
1164
+ readonly PENDING: "pending";
1165
+ };
1166
+ /**
1167
+ * @public
1168
+ */
1169
+ export type TraceSegmentStatus = typeof TraceSegmentStatus[keyof typeof TraceSegmentStatus];
1170
+ /**
1171
+ * @public
1172
+ */
1173
+ export interface TraceSegment {
1174
+ id: string;
1175
+ activityId: string;
1176
+ version: number;
1177
+ status: TraceSegmentStatus;
1178
+ input: TraceSegmentInput;
1179
+ result?: TraceSegmentResult;
1180
+ start: number;
1181
+ duration?: number;
1182
+ }
1183
+ /**
1184
+ * @public
1185
+ * @enum
1186
+ */
1187
+ export declare const TraceSessionStatus: {
1188
+ readonly COMPLETE: "complete";
1189
+ readonly COMPLETE_WITH_ERROR: "complete_with_error";
1190
+ readonly PENDING: "pending";
1191
+ };
1192
+ /**
1193
+ * @public
1194
+ */
1195
+ export type TraceSessionStatus = typeof TraceSessionStatus[keyof typeof TraceSessionStatus];
1196
+ /**
1197
+ * @public
1198
+ */
1199
+ export interface TraceSession {
534
1200
  sessionId: string;
1201
+ connectionId: string;
1202
+ company: string;
535
1203
  botId: string;
1204
+ botName: string;
536
1205
  callId: string;
537
1206
  flowIndex: number;
538
- event: SessionEndedEvent;
1207
+ language?: string;
1208
+ callerName?: string;
1209
+ callerNumber?: string;
1210
+ status: TraceSessionStatus;
1211
+ start: number;
1212
+ duration?: number;
539
1213
  }
540
1214
  /**
541
1215
  * @public
542
1216
  */
543
- export interface SessionStartedEvent {
544
- type: VoiceBotEventType;
1217
+ export type PubSubBroadcastItem = PubSubBroadcastItem.ActivityMember | PubSubBroadcastItem.SegmentMember | PubSubBroadcastItem.SessionMember | PubSubBroadcastItem.$UnknownMember;
1218
+ /**
1219
+ * @public
1220
+ */
1221
+ export declare namespace PubSubBroadcastItem {
1222
+ interface SessionMember {
1223
+ session: TraceSession;
1224
+ activity?: never;
1225
+ segment?: never;
1226
+ $unknown?: never;
1227
+ }
1228
+ interface ActivityMember {
1229
+ session?: never;
1230
+ activity: TraceActivity;
1231
+ segment?: never;
1232
+ $unknown?: never;
1233
+ }
1234
+ interface SegmentMember {
1235
+ session?: never;
1236
+ activity?: never;
1237
+ segment: TraceSegment;
1238
+ $unknown?: never;
1239
+ }
545
1240
  /**
546
- * The language code that represents the language spoken in the session.
547
1241
  * @public
548
1242
  */
549
- language: string;
550
- time: number;
1243
+ interface $UnknownMember {
1244
+ session?: never;
1245
+ activity?: never;
1246
+ segment?: never;
1247
+ $unknown: [string, any];
1248
+ }
1249
+ interface Visitor<T> {
1250
+ session: (value: TraceSession) => T;
1251
+ activity: (value: TraceActivity) => T;
1252
+ segment: (value: TraceSegment) => T;
1253
+ _: (name: string, value: any) => T;
1254
+ }
1255
+ const visit: <T>(value: PubSubBroadcastItem, visitor: Visitor<T>) => T;
551
1256
  }
552
1257
  /**
553
1258
  * @public
554
1259
  */
555
- export interface SessionStartedWebhookEvent {
1260
+ export interface PubSubBroadcastWebsocketEvent {
1261
+ event: string;
1262
+ topic: string;
1263
+ items: (PubSubBroadcastItem)[];
1264
+ }
1265
+ /**
1266
+ * @public
1267
+ */
1268
+ export interface PubSubSubscribedWebsocketEvent {
1269
+ event: string;
1270
+ topic: string;
1271
+ }
1272
+ /**
1273
+ * @public
1274
+ */
1275
+ export interface PubSubSubscribeWebsocketCommand {
1276
+ action: string;
1277
+ topic: string;
1278
+ }
1279
+ /**
1280
+ * @public
1281
+ */
1282
+ export interface PubSubUnsubscribedWebsocketEvent {
1283
+ event: string;
1284
+ topic: string;
1285
+ }
1286
+ /**
1287
+ * @public
1288
+ */
1289
+ export interface PubSubUnsubscribeWebsocketCommand {
1290
+ action: string;
1291
+ topic: string;
1292
+ }
1293
+ /**
1294
+ * @public
1295
+ */
1296
+ export interface ReplyWebhookEvent {
556
1297
  sessionId: string;
557
1298
  botId: string;
558
1299
  callId: string;
559
1300
  flowIndex: number;
560
- event: SessionStartedEvent;
1301
+ event: ReplyEvent;
561
1302
  }
562
1303
  /**
563
1304
  * @public
564
1305
  */
565
- export interface TranscriptionEvent {
1306
+ export interface SessionEndedEvent {
566
1307
  type: VoiceBotEventType;
567
- id: string;
568
- text: string;
1308
+ error?: string;
569
1309
  time: number;
570
1310
  }
571
1311
  /**
572
1312
  * @public
573
1313
  */
574
- export interface TranscriptionWebhookEvent {
1314
+ export interface SessionEndedWebhookEvent {
575
1315
  sessionId: string;
576
1316
  botId: string;
577
1317
  callId: string;
578
1318
  flowIndex: number;
579
- event: TranscriptionEvent;
1319
+ event: SessionEndedEvent;
580
1320
  }
581
1321
  /**
582
1322
  * @public
583
1323
  */
584
- export interface TranscriptionWebsocketEvent {
585
- type: string;
586
- event: TranscriptionEvent;
1324
+ export interface SessionStartedEvent {
1325
+ type: VoiceBotEventType;
1326
+ /**
1327
+ * The language code that represents the language spoken in the session.
1328
+ * @public
1329
+ */
1330
+ language: string;
1331
+ time: number;
587
1332
  }
588
1333
  /**
589
1334
  * @public
590
1335
  */
591
- export interface TransferWebsocketCommandData {
592
- context: string;
593
- extension: string;
594
- type: VoiceBotCommandType;
1336
+ export interface SessionStartedWebhookEvent {
1337
+ sessionId: string;
1338
+ botId: string;
1339
+ callId: string;
1340
+ flowIndex: number;
1341
+ event: SessionStartedEvent;
595
1342
  }
596
1343
  /**
597
1344
  * @public
598
1345
  */
599
- export interface TransferWebsocketCommand {
600
- type: string;
601
- command: TransferWebsocketCommandData;
1346
+ export interface TranscriptionWebhookEvent {
1347
+ sessionId: string;
1348
+ botId: string;
1349
+ callId: string;
1350
+ flowIndex: number;
1351
+ event: TranscriptionEvent;
602
1352
  }
603
1353
  /**
604
1354
  * @public
@@ -619,19 +1369,32 @@ export interface DescribeEventOutput {
619
1369
  PlaybackWebhookEvent?: PlaybackWebhookEvent;
620
1370
  InterruptionWebhookEvent?: InterruptionWebhookEvent;
621
1371
  CompleteWebhookEvent?: CompleteWebhookEvent;
1372
+ PubSubBroadcastWebsocketEvent?: PubSubBroadcastWebsocketEvent;
1373
+ PubSubSubscribeWebsocketCommand?: PubSubSubscribeWebsocketCommand;
1374
+ PubSubSubscribedWebsocketEvent?: PubSubSubscribedWebsocketEvent;
1375
+ PubSubUnsubscribeWebsocketCommand?: PubSubUnsubscribeWebsocketCommand;
1376
+ PubSubUnsubscribedWebsocketEvent?: PubSubUnsubscribedWebsocketEvent;
622
1377
  }
623
1378
  /**
624
1379
  * @public
625
1380
  */
626
- export interface GetVoiceBotInput {
1381
+ export interface GetTraceInput {
627
1382
  company?: string;
628
- botId: string;
1383
+ sessionId: string;
629
1384
  }
630
1385
  /**
631
1386
  * @public
632
1387
  */
633
- export interface GetVoiceBotOutput {
634
- bot: VoiceBot;
1388
+ export interface Trace {
1389
+ session: TraceSession;
1390
+ activities: (TraceActivity)[];
1391
+ segments: (TraceSegment)[];
1392
+ }
1393
+ /**
1394
+ * @public
1395
+ */
1396
+ export interface GetTraceOutput {
1397
+ trace: Trace;
635
1398
  }
636
1399
  /**
637
1400
  * @public
@@ -645,6 +1408,31 @@ export declare class VoiceBotNotFoundException extends __BaseException {
645
1408
  */
646
1409
  constructor(opts: __ExceptionOptionType<VoiceBotNotFoundException, __BaseException>);
647
1410
  }
1411
+ /**
1412
+ * @public
1413
+ */
1414
+ export interface GetVoiceBotInput {
1415
+ company?: string;
1416
+ botId: string;
1417
+ }
1418
+ /**
1419
+ * @public
1420
+ */
1421
+ export interface GetVoiceBotOutput {
1422
+ bot: VoiceBot;
1423
+ }
1424
+ /**
1425
+ * @public
1426
+ */
1427
+ export interface ListTracesInput {
1428
+ company?: string;
1429
+ }
1430
+ /**
1431
+ * @public
1432
+ */
1433
+ export interface ListTracesOutput {
1434
+ traces: (TraceSession)[];
1435
+ }
648
1436
  /**
649
1437
  * @public
650
1438
  */