@@ -598,6 +598,49 @@ var RoktKit = (function (exports) {
598598 function onUserIdentified ( filteredUser ) {
599599 self . filters . filteredUser = filteredUser ;
600600 self . userAttributes = filteredUser . getAllUserAttributes ( ) ;
601+ _sendEventStream ( _buildIdentityEvent ( 'identify' , filteredUser ) ) ;
602+ }
603+
604+ function _buildIdentityEvent ( eventName , filteredUser ) {
605+ var mpid =
606+ filteredUser . getMPID && typeof filteredUser . getMPID === 'function'
607+ ? filteredUser . getMPID ( )
608+ : null ;
609+ var sessionId =
610+ window . mParticle &&
611+ window . mParticle . sessionManager &&
612+ typeof window . mParticle . sessionManager . getSession === 'function'
613+ ? window . mParticle . sessionManager . getSession ( )
614+ : null ;
615+ var userIdentities =
616+ filteredUser . getUserIdentities &&
617+ typeof filteredUser . getUserIdentities === 'function'
618+ ? filteredUser . getUserIdentities ( ) . userIdentities
619+ : null ;
620+
621+ return {
622+ EventName : eventName ,
623+ EventDataType : 14 , // MessageType.Profile
624+ Timestamp : Date . now ( ) ,
625+ MPID : mpid ,
626+ SessionId : sessionId ,
627+ UserIdentities : userIdentities ,
628+ } ;
629+ }
630+
631+ function onLoginComplete ( filteredUser ) {
632+ self . userAttributes = filteredUser . getAllUserAttributes ( ) ;
633+ _sendEventStream ( _buildIdentityEvent ( 'login' , filteredUser ) ) ;
634+ }
635+
636+ function onLogoutComplete ( filteredUser ) {
637+ self . userAttributes = filteredUser . getAllUserAttributes ( ) ;
638+ _sendEventStream ( _buildIdentityEvent ( 'logout' , filteredUser ) ) ;
639+ }
640+
641+ function onModifyComplete ( filteredUser ) {
642+ self . userAttributes = filteredUser . getAllUserAttributes ( ) ;
643+ _sendEventStream ( _buildIdentityEvent ( 'modify_user' , filteredUser ) ) ;
601644 }
602645
603646 function setUserAttribute ( key , value ) {
@@ -716,6 +759,9 @@ var RoktKit = (function (exports) {
716759 this . setExtensionData = setExtensionData ;
717760 this . setUserAttribute = setUserAttribute ;
718761 this . onUserIdentified = onUserIdentified ;
762+ this . onLoginComplete = onLoginComplete ;
763+ this . onLogoutComplete = onLogoutComplete ;
764+ this . onModifyComplete = onModifyComplete ;
719765 this . removeUserAttribute = removeUserAttribute ;
720766
721767 /**
@@ -824,7 +870,7 @@ var RoktKit = (function (exports) {
824870
825871 function generateIntegrationName ( customIntegrationName ) {
826872 var coreSdkVersion = window . mParticle . getVersion ( ) ;
827- var kitVersion = "1.19 .0" ;
873+ var kitVersion = "1.20 .0" ;
828874 var name = 'mParticle_' + 'wsdkv_' + coreSdkVersion + '_kitv_' + kitVersion ;
829875
830876 if ( customIntegrationName ) {
0 commit comments