2013-01-04 42 views
2

我一直在使用下面的代码,以确定新用户Mixpanel:Mixpanel用户跟踪不起作用,因为1月1日

var mixpanelTries = 0; 
    function handleMixpanelUser() { 
     if ((window.mixpanel) && (window.mixpanel.alias)) { 
      if ("@Auth.UserID" !== "0") { 
       if ("@SessionWrapper.UserInitialized" === "False") { 
        try { mixpanel.alias("@Auth.UserID"); } catch (exception) {console.log("exception"); } 
        mixpanel.identify("@Auth.UserID"); 
        mixpanel.people.set({ 
         "$email": "@Auth.UserEmail", // only special properties need the $ 
         "$created": "@SessionWrapper.UserCreated", 
         "name": "@Auth.FullName" 
        }, function (resp) { }); 
        var url = "http://" + "@Config.BaseUrl" + "/finalizeuser/" + "@Auth.UserID"; 
        $.ajax({ 
         type: 'POST', 
         url: url, 
         async: false 
        }); 
       } 
       else { 
        mixpanel.identify("@Auth.UserID"); 
       } 
      } 
     } 
     else { 
      if (mixpanelTries < 5) { 
       mixpanelTries++; 
       setTimeout(handleMixpanelUser, 100); 
      } 
     } 
    } 

    $(function() { 
     handleMixpanelUser(); 
    }); 

这个代码写在2012年十二月和完美。但是,自1月1日起,此代码无法工作,它不会崩溃,但新用户不会在Mixpanel中创建。代码没有变化。为什么我的代码在2012年很好,在2013年不好?

是否需要更改设置?

在此先感谢您的帮助。

+0

方面:我不认为你应该在同一页面内使用别名和识别。请参阅:https://mixpanel.com/docs/integration-libraries/using-mixpanel-alias – super9

回答

2

我已经知道了问题:我的代码一直在工作,但我没有意识到,因为Mixpanel UI有一个很大的排序错误。如果我按照创建时间降序排列记录,那么第一个显示的记录是在12月31日创建的。

但是,如果按Last Seen对记录进行排序,则会显示用户在几分钟前创建的记录。

这是一个排序错误。当我们对日期进行排序时,我相信按日期排序的Mixpanel按字母排序。

'12/31/2012' > '2013年1月7日'

所以,从12/31/2013人比从2013年1月1日的人 “更新”。我会发邮件给Mixpanel,通知他们有关问题。