@@ -151,18 +151,17 @@ var UniversalBot = (function (_super) {
151151 text : '' ,
152152 user : user
153153 } ;
154- if ( msg . address . conversation ) {
155- delete msg . address . conversation ;
156- }
157154 _this . ensureConversation ( msg . address , function ( adr ) {
158155 msg . address = adr ;
156+ var conversationId = msg . address . conversation ? msg . address . conversation . id : null ;
159157 var storageCtx = {
160158 userId : msg . user . id ,
159+ conversationId : conversationId ,
161160 address : msg . address ,
162161 persistUserData : _this . settings . persistUserData ,
163162 persistConversationData : _this . settings . persistConversationData
164163 } ;
165- _this . route ( storageCtx , msg , dialogId , dialogArgs , _this . errorLogger ( done ) ) ;
164+ _this . route ( storageCtx , msg , dialogId , dialogArgs , _this . errorLogger ( done ) , true ) ;
166165 } , _this . errorLogger ( done ) ) ;
167166 } , this . errorLogger ( done ) ) ;
168167 } ;
@@ -226,8 +225,9 @@ var UniversalBot = (function (_super) {
226225 } , _this . errorLogger ( cb ) ) ;
227226 } , this . errorLogger ( cb ) ) ;
228227 } ;
229- UniversalBot . prototype . route = function ( storageCtx , message , dialogId , dialogArgs , done ) {
228+ UniversalBot . prototype . route = function ( storageCtx , message , dialogId , dialogArgs , done , newStack ) {
230229 var _this = this ;
230+ if ( newStack === void 0 ) { newStack = false ; }
231231 var loadedData ;
232232 this . getStorageData ( storageCtx , function ( data ) {
233233 var session = new ses . Session ( {
@@ -257,7 +257,7 @@ var UniversalBot = (function (_super) {
257257 session . conversationData = data . conversationData || { } ;
258258 session . privateConversationData = data . privateConversationData || { } ;
259259 if ( session . privateConversationData . hasOwnProperty ( consts . Data . SessionState ) ) {
260- sessionState = session . privateConversationData [ consts . Data . SessionState ] ;
260+ sessionState = newStack ? null : session . privateConversationData [ consts . Data . SessionState ] ;
261261 delete session . privateConversationData [ consts . Data . SessionState ] ;
262262 }
263263 loadedData = data ;
0 commit comments