2017-08-30 75 views
1

我有一個有趣的情況。一段時間以來,我一直在收集基於單個用戶屬性的受衆羣體。現在它包含了大量的設備。觀衆是爲ios設備。發送給觀衆的Firebase通知不會觸及所有設備

然後我發送了一個通知給那個觀衆,我看到一些設備收到該通知,有些則沒有。爲什麼會這樣?

實驗顯示,未收到通知的設備僅接收針對單個設備的通知。他們還收到發送給所有用戶的通知。這讓我懷疑這與觀衆有關。我已驗證至少有一臺未收到通知的設備對於有問題的用戶屬性具有適當的值。但是,有可能過去幾天設備的財產值有所不同,這取決於用於登錄應用程序的帳戶。有時它同時安裝了兩個相同應用程序的版本。

我有類似的Android用戶,據我所知,觀衆中的所有成員都會收到通知。

受衆羣體數量有上千個,所以這些信息僅基於我在我身邊看到的很少的設備,以及Firebase和Google Analytics。

從火力地堡文檔我得知「用戶是觀衆的常任理事國,他們被分配到它後」,這可以解釋爲什麼兩個相反的觀衆結合可能比用戶的總數大,但它使更難以理解爲什麼具有觀衆所需屬性的人不屬於它。

關於如何調試的任何想法或可能的原因。或者甚至更好,如何解決這個問題?由於這是生產軟件,我不能發送過多的通知來嘗試不同的事情。

回答

0

雖然我可能仍然不知道所有可能的原因,但至少有兩件事對我們的案例有影響,第三件可能是原因不明的原因:

1)我們的應用程序沒有註冊到setUserPropertyString和在某些情況下單個呼叫的值的列表中的字符串沒有超過24個字符的限制,這造成了屬性不被設置和用戶/設備不被包括在觀衆。

2)當發送通知到iOS應用程序時,應選擇「高」格式,否則可能,或者甚至可能通知沒有到達設備。

3)用於組合多個受衆的Firebase控制檯文本並不清楚,尤其是「不......」文本在我看來可能更清晰。這是他們在實踐中意味着:

  • 包括所有==的,如果用戶包含發送所有選定的觀衆

  • 包括==至少一個或通知,通知發送如果用戶被包括在所選擇的目標對象中的至少一個

  • 不包括所有== NAND的,如果用戶是不包括在所有所選目標對象的,但用戶可以被包括在一些通知發送其中

  • 不包括==至少一個NOR,通知被髮送僅當用戶是包括在任何所選擇的目標對象的