@@ -150,16 +150,26 @@ function sepiaFW_build_offline(){
150150 }
151151 //console.log(serviceResult); //DEBUG
152152 }
153+ var senderUiIdOrName = undefined ; //default
153154 if ( ! serviceResult || ! serviceResult . result == "success" ) {
154- //just repeat input
155+ //just repeat input for demo-mode
156+ var command = "chat" ;
157+ var answerText = message . text ;
158+ var lang = message . data . parameters . lang ;
159+ serviceResult = SepiaFW . embedded . services . buildServiceResult (
160+ userId , lang , command , answerText , '' , '' , ''
161+ ) ;
162+ senderUiIdOrName = 'Parrot' ; //overwrite (to make clear this is no real answer ... and for fun)
163+ /* Old version that lacks e.g. TTS:
155164 var dataOut = { sender: 'Parrot', senderType: 'assistant' };
156165 SepiaFW.ui.showCustomChatMessage(message.text, dataOut);
157- } else {
158- //build a message-object and send it to 'real' message handler (as if we got a server reply)
159- var id = message . msgId ;
160- var resultMessage = Offline . buildAssistAnswerMessageForHandler ( id , serviceResult ) ;
161- Offline . sendToClienMessagetHandler ( resultMessage ) ;
166+ return;
167+ */
162168 }
169+ //build a message-object and send it to 'real' message handler (as if we got a server reply)
170+ var id = message . msgId ;
171+ var resultMessage = Offline . buildAssistAnswerMessageForHandler ( id , serviceResult , senderUiIdOrName ) ;
172+ Offline . sendToClienMessagetHandler ( resultMessage ) ;
163173 } , 600 ) ;
164174 }
165175
@@ -169,9 +179,9 @@ function sepiaFW_build_offline(){
169179 }
170180
171181 //Message builder
172- Offline . buildAssistAnswerMessageForHandler = function ( msgId , serviceResult ) {
173- var receiver = 'userid' ; //e.g. uid1010
174- var sender = 'UI' ; //e.g. uid1005 (assistant usually)
182+ Offline . buildAssistAnswerMessageForHandler = function ( msgId , serviceResult , assistantIdOrName ) {
183+ var receiver = 'userid' ; //e.g. uid1010
184+ var sender = assistantIdOrName || 'UI' ; //e.g. uid1005 (assistant usually)
175185 var senderType = 'assistant' ;
176186 var channelId = SepiaFW . client . getActiveChannel ( ) ; //TODO: does this work with an empty channel?
177187 var timeUnix = new Date ( ) . getTime ( ) ;
0 commit comments