@@ -76,7 +76,9 @@ class SessionController implements SLWebSocketEventListener {
76
76
}
77
77
78
78
sendChatMessage ( message : string ) {
79
- if ( ! this . authToken ) { return ; }
79
+ if ( ! this . authToken ) { return console . error ( "Couldn't send chat message due to missing auth token." ) ; }
80
+ if ( this . sessionState != 'ready' ) { return console . error ( "Couldn't send chat message due to session state not being ready." ) ; }
81
+ if ( this . assistantState != 'idle' ) { return console . error ( "Couldn't send chat message due to assistant state not being idle." ) ; }
80
82
this . getWebSocket ( ) . slSend ( 'send-message' , this . authToken , { message : message } ) ;
81
83
this . addChatMessage ( {
82
84
id : UUIDUtilities . unsecureUUID ( ) ,
@@ -89,11 +91,11 @@ class SessionController implements SLWebSocketEventListener {
89
91
}
90
92
91
93
getTablePage ( tableID : string , offset : number , count : number ) {
92
- if ( ! this . authToken ) { return ; }
94
+ if ( ! this . authToken ) { return console . error ( "Couldn't get table page due to missing auth token." ) ; }
93
95
this . getWebSocket ( ) . slSend ( 'get-table-page' , this . authToken , { table_id : tableID , offset : offset , count : count } ) ;
94
96
}
95
97
96
- getWebSocket ( ) : SLWebSocket {
98
+ private getWebSocket ( ) : SLWebSocket {
97
99
if ( SLWebSocket . instance ) {
98
100
return SLWebSocket . instance ;
99
101
} else {
@@ -115,7 +117,7 @@ class SessionController implements SLWebSocketEventListener {
115
117
}
116
118
}
117
119
118
- onMessageReceived ( json : any ) {
120
+ private onMessageReceived ( json : any ) {
119
121
const id = json [ 'id' ] ;
120
122
const content = json [ 'content' ] ;
121
123
const sender = json [ 'sender' ] ;
@@ -126,7 +128,7 @@ class SessionController implements SLWebSocketEventListener {
126
128
this . addChatMessage ( { id : id , sender : sender , content : content , isEphemeral : false } ) ;
127
129
}
128
130
129
- onSessionStateUpdated ( json : any ) {
131
+ private onSessionStateUpdated ( json : any ) {
130
132
const sessionState : SessionState = json [ 'session_state' ] ;
131
133
const error : string | null = json [ 'error' ] ;
132
134
if ( ! sessionState ) { return ; }
@@ -136,6 +138,7 @@ class SessionController implements SLWebSocketEventListener {
136
138
this . listeners . forEach ( ( listener ) => listener . onSessionStateUpdated ?.( sessionState , error ) ) ;
137
139
}
138
140
141
+ private onAssistantStateUpdated ( json : any ) {
139
142
const assistantState : AssistantState = json [ 'assistant_reply_state' ] ;
140
143
if ( ! assistantState ) { return ; }
141
144
this . assistantState = assistantState ;
@@ -163,19 +166,19 @@ class SessionController implements SLWebSocketEventListener {
163
166
} ) ;
164
167
}
165
168
166
- onTablePageReceived ( json : any) {
169
+ private onTablePageReceived ( json : any ) {
167
170
const page = json . page
168
171
if ( ! isTablePage ( page ) ) { return }
169
172
this . listeners . forEach ( ( listener ) => listener . onTablePageReceived ?.( page ) ) ;
170
173
}
171
174
172
- addChatMessage ( message : ChatMessage ) {
175
+ private addChatMessage ( message : ChatMessage ) {
173
176
this . chatMessages = this . chatMessages . filter ( ( chatMessage ) => ! chatMessage . isEphemeral ) ;
174
177
this . chatMessages . push ( message ) ;
175
178
this . listeners . forEach ( ( listener ) => listener . onChatMessagesUpdated ?.( this . chatMessages ) ) ;
176
179
}
177
180
178
- onReconnectWebSocket ( ) : Promise < void > {
181
+ private onReconnectWebSocket ( ) : Promise < void > {
179
182
return Promise . resolve ( ) ; // TODO: Implement
180
183
}
181
184
}
0 commit comments