2013-01-04 39 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,通知他們有關問題。