@ -333,6 +333,7 @@ NS_ASSUME_NONNULL_BEGIN
 
		
	
		
			
				                    TSErrorMessage  * errorMessage  = 
 
		
	
		
			
				                        [ TSErrorMessage  missingSessionWithEnvelope : messageEnvelope  withTransaction : transaction ] ; 
 
		
	
		
			
				                    [ errorMessage  saveWithTransaction : transaction ] ; 
 
		
	
		
			
				                    [ self  notififyForErrorMessage : errorMessage  withEnvelope : messageEnvelope ] ; 
 
		
	
		
			
				                } ] ; 
 
		
	
		
			
				                DDLogError ( @ "Skipping  message  envelope  for  unknown  session . ") ; 
 
		
	
		
			
				                completion ( nil ) ; 
 
		
	
	
		
			
				
					
						
							
								 
						
						
							
								 
						
						
					 
				
			
			@ -974,9 +975,9 @@ NS_ASSUME_NONNULL_BEGIN
 
		
	
		
			
				        exception . description , 
 
		
	
		
			
				        exception . name , 
 
		
	
		
			
				        exception . reason ) ; 
 
		
	
		
			
				    [ self . dbConnection  readWriteWithBlock : ^( YapDatabaseReadWriteTransaction  * transaction )  { 
 
		
	
		
			
				      TSErrorMessage  * errorMessage ; 
 
		
	
		
			
				
 
		
	
		
			
				    __block  TSErrorMessage  * errorMessage ; 
 
		
	
		
			
				    [ self . dbConnection  readWriteWithBlock : ^( YapDatabaseReadWriteTransaction  * transaction )  { 
 
		
	
		
			
				      if  ( [ exception . name  isEqualToString : NoSessionException ] )  { 
 
		
	
		
			
				          errorMessage  =  [ TSErrorMessage  missingSessionWithEnvelope : envelope  withTransaction : transaction ] ; 
 
		
	
		
			
				      }  else  if  ( [ exception . name  isEqualToString : InvalidKeyException ] )  { 
 
		
	
	
		
			
				
					
						
						
						
							
								 
						
					 
				
			
			@ -997,6 +998,16 @@ NS_ASSUME_NONNULL_BEGIN
 
		
	
		
			
				
 
		
	
		
			
				      [ errorMessage  saveWithTransaction : transaction ] ; 
 
		
	
		
			
				    } ] ; 
 
		
	
		
			
				
 
		
	
		
			
				    if  ( errorMessage  !=  nil )  { 
 
		
	
		
			
				        [ self  notififyForErrorMessage : errorMessage  withEnvelope : envelope ] ; 
 
		
	
		
			
				    } 
 
		
	
		
			
				}  
		
	
		
			
				
 
		
	
		
			
				-  ( void ) notififyForErrorMessage : ( TSErrorMessage  * ) errorMessage  withEnvelope : ( OWSSignalServiceProtosEnvelope  * ) envelope  
		
	
		
			
				{  
		
	
		
			
				    TSThread  * contactThread  =  [ TSContactThread  getOrCreateThreadWithContactId : envelope . source ] ; 
 
		
	
		
			
				    [ [ TextSecureKitEnv  sharedEnv ] . notificationsManager  notifyUserForErrorMessage : errorMessage  inThread : contactThread ] ; 
 
		
	
		
			
				}  
		
	
		
			
				
 
		
	
		
			
				#pragma  mark  -  helpers