@@ -50,6 +50,9 @@ export class TypebotService {
5050 url : findData . url ,
5151 typebot : findData . typebot ,
5252 expire : findData . expire ,
53+ keyword_finish : findData . keyword_finish ,
54+ delay_message : findData . delay_message ,
55+ unknown_message : findData . unknown_message ,
5356 sessions : findData . sessions ,
5457 } ;
5558
@@ -70,6 +73,9 @@ export class TypebotService {
7073 url : findData . url ,
7174 typebot : findData . typebot ,
7275 expire : findData . expire ,
76+ keyword_finish : findData . keyword_finish ,
77+ delay_message : findData . delay_message ,
78+ unknown_message : findData . unknown_message ,
7379 sessions : findData . sessions ,
7480 } ;
7581
@@ -143,6 +149,9 @@ export class TypebotService {
143149 url : data . url ,
144150 typebot : data . typebot ,
145151 expire : data . expire ,
152+ keyword_finish : data . keyword_finish ,
153+ delay_message : data . delay_message ,
154+ unknown_message : data . unknown_message ,
146155 sessions : data . sessions ,
147156 } ;
148157
@@ -285,6 +294,9 @@ export class TypebotService {
285294 const typebot = ( await this . find ( instance ) ) . typebot ;
286295 const sessions = ( ( await this . find ( instance ) ) . sessions as Session [ ] ) ?? [ ] ;
287296 const expire = ( await this . find ( instance ) ) . expire ;
297+ const keyword_finish = ( await this . find ( instance ) ) . keyword_finish ;
298+ const delay_message = ( await this . find ( instance ) ) . delay_message ;
299+ const unknown_message = ( await this . find ( instance ) ) . unknown_message ;
288300
289301 const session = sessions . find ( ( session ) => session . remoteJid === remoteJid ) ;
290302
@@ -302,6 +314,9 @@ export class TypebotService {
302314 url : url ,
303315 typebot : typebot ,
304316 expire : expire ,
317+ keyword_finish : keyword_finish ,
318+ delay_message : delay_message ,
319+ unknown_message : unknown_message ,
305320 sessions : sessions ,
306321 remoteJid : remoteJid ,
307322 pushName : msg . pushName ,
@@ -322,6 +337,9 @@ export class TypebotService {
322337 url : url ,
323338 typebot : typebot ,
324339 expire : expire ,
340+ keyword_finish : keyword_finish ,
341+ delay_message : delay_message ,
342+ unknown_message : unknown_message ,
325343 sessions : sessions ,
326344 remoteJid : remoteJid ,
327345 pushName : msg . pushName ,
@@ -343,6 +361,9 @@ export class TypebotService {
343361 url : url ,
344362 typebot : typebot ,
345363 expire : expire ,
364+ keyword_finish : keyword_finish ,
365+ delay_message : delay_message ,
366+ unknown_message : unknown_message ,
346367 sessions,
347368 } ;
348369
@@ -351,21 +372,40 @@ export class TypebotService {
351372 const content = this . getConversationMessage ( msg . message ) ;
352373
353374 if ( ! content ) {
354- if ( this . waMonitor . waInstances [ instance . instanceName ] . localTypebot . unknown_message ) {
375+ if ( unknown_message ) {
355376 this . waMonitor . waInstances [ instance . instanceName ] . textMessage ( {
356377 number : remoteJid . split ( '@' ) [ 0 ] ,
357378 options : {
358- delay : this . waMonitor . waInstances [ instance . instanceName ] . localTypebot . delay_message || 1000 ,
379+ delay : delay_message || 1000 ,
359380 presence : 'composing' ,
360381 } ,
361382 textMessage : {
362- text : this . waMonitor . waInstances [ instance . instanceName ] . localTypebot . unknown_message ,
383+ text : unknown_message ,
363384 } ,
364385 } ) ;
365386 }
366387 return ;
367388 }
368389
390+ if ( content . toLowerCase ( ) === keyword_finish . toLowerCase ( ) ) {
391+ sessions . splice ( sessions . indexOf ( session ) , 1 ) ;
392+
393+ const typebotData = {
394+ enabled : true ,
395+ url : url ,
396+ typebot : typebot ,
397+ expire : expire ,
398+ keyword_finish : keyword_finish ,
399+ delay_message : delay_message ,
400+ unknown_message : unknown_message ,
401+ sessions,
402+ } ;
403+
404+ this . create ( instance , typebotData ) ;
405+
406+ return ;
407+ }
408+
369409 const reqData = {
370410 message : content ,
371411 sessionId : session . sessionId . split ( '-' ) [ 1 ] ,
0 commit comments