Goal: ΠΌΡ Ρ ΠΎΡΠΈΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ postbacks Π΄Π»Ρ ΠΏΠ°ΡΡΠ½Π΅ΡΠΎΠ² ΠΏΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠΌ Π² Π²ΠΎΡΠΎΠ½ΠΊΠ΅ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
Events:
- download
- install
- authorization ΠΡΠ΅Π³ΠΎ Ρ Π½Π°Ρ Π΅ΡΡΡ 3 ΡΠΎΠ±ΡΡΠΈΡ Π΄Π»Ρ ΠΏΠΎΡΡΠ±Π΅ΠΊΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ Ρ ΠΎΡΠ΅Π»ΠΈ Π±Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ.
download
ΡΠΎΠ±ΡΡΠΈΠ΅ ΠΈΠ· ΡΠ°Π±Π»ΠΈΡΠΊΠΈ "Track", ΡΠΎ Π΅ΡΡΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ ΠΏΠ΅ΡΠ΅ΡΠ΅Π» Π½Π° apk ΠΈ Π½Π°ΡΠ°Π» ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅. ΠΠ°ΠΌ Π²Π°ΠΆΠ½ΠΎ Π² postback ΠΈΠΌΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ clickid ΠΈΠ· ΡΡΡΠ»ΠΊΠΈ
Install
ΡΠΎΠ±ΡΡΠΈΠ΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΠΏΡΠΈ ΠΏΠ΅ΡΠ²ΠΎΠΌ ΡΡΠΏΠ΅ΡΠ½ΠΎΠΌ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ»Ρ Π½Π°Ρ ΡΡΠΎ ΡΠ°Π±Π»ΠΈΡΠ° "Open". Π‘Π»ΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΡΡΠΎΠΈΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ clickID ΠΈΠ· Π΄Π°Π½Π½ΡΡ "Track". ΠΡΠΎΡΠ°Ρ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΡΡΠΎΠΈΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ»Π°ΡΡ ΠΏΠΎΡΡΠ±Π΅ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΠΠΠ ΠΠ«Π open ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ»Π°ΡΡ Π΅Π³ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ.
Authorization
ΡΠΎΠ±ΡΡΠΈΠ΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΠΏΡΠΈ ΠΏΠ΅ΡΠ²ΠΎΠΌ ΡΡΠΏΠ΅ΡΠ½ΠΎΠΌ Π»ΠΎΠ³ΠΈΠ½Π΅ Π²Π½ΡΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ»Ρ Π½Π°Ρ ΡΡΠΎ ΡΠ°Π±Π»ΠΈΡΠ° "Push". ΠΠ½Π° Π·Π°ΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π΅ΡΠ»ΠΈ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ° Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π»ΡΡ ΠΈΠ»ΠΈ Π·Π°Π»ΠΎΠ³ΠΈΠ½ΠΈΠ»ΡΡ Π²Π½ΡΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (ΡΠΎ Π΅ΡΡΡ Π±ΡΠ» Π°Π²ΡΠΎΡΠΈΠ·ΠΎΠ²Π°Π½). Π‘Π»ΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΠΏΡΡΡ-ΡΠ°ΠΊΠΈ Π² Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΡΡΠΈΠ΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΠΠΠ ΡΠ°Π·.
Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ
Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΡΡΠ±Π΅ΠΊ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΡΡΠ½Π΅ΡΠ°
ΠΠ°ΡΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ°Π·Π½ΡΠ΅ ΠΏΠ°ΡΡΠ½Π΅ΡΡ, ΡΡΠΎ Π·Π½Π°ΡΠΈΡ ΡΡΠΎ Ρ Π½ΠΈΡ ΡΠ°Π·Π½ΡΠ΅ ΡΡΠ΅ΠΊΠΊΠ΅ΡΡ Ρ ΡΠ°Π·Π½ΡΠΌΠΈ ΡΠΎΡΠΌΠ°ΡΠ°ΠΌΠΈ ΠΏΠΎΡΡΠ±Π΅ΠΊΠΎΠ². ΠΠΎΡΡΠΎΠΌΡ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°Π΄Π°Π²Π°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ. Π‘Π°ΠΌΡΠΉ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± - ΠΏΠΎ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΠ°ΡΡΠΈ STAG.
ΠΡΠΈΠΌΠ΅ΡΡ STAG
stag=666321_693fe967c1859daf6c30bfa2,
stag=partenerId_clickId
ΠΡ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΠΌ ΡΡΠΎ Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠ°ΡΡΠ½Π΅ΡΠ° ΠΏΠ΅ΡΠ²Π°Ρ ΡΠ°ΡΡΡ stag (partnerID) Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π°. Π Π΅ΡΠ»ΠΈ ΠΌΡ ΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ Ρ ΠΏΠ°ΡΡΠ½Π΅ΡΠΎΠΌ - Π²ΡΠ΅ Π΅Π³ΠΎ ΡΡΡΠ»ΠΊΠΈ Π±ΡΠ΄ΡΡ ΠΈΠΌΠ΅ΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΉ partnerID
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΌΡ ΠΊ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΌΠΎΠΆΠ΅ΠΌ Π·Π°Π²Π΅ΡΡΠΈ ΠΊΠ°ΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΉ: stag = xxx, ΡΠΎΠ³Π΄Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ = yyy
ΠΡΠΎΡΠΌΠΈΡΡ ΠΌΠ°ΠΏΠΏΠΈΠ½Π³ ΠΌΠΎΠΆΠ΅ΠΌ Π² Π²ΠΈΠ΄Π΅ google sheet ΡΠ°Π±Π»ΠΈΡΡ
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΡΡΠ±Π΅ΠΊΠΈ
ΠΎΡΠ΄Π΅Π»ΡΠ½Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° - ΡΠΎ ΡΡΠΎ Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠ°ΡΡΠ½Π΅ΡΠ° ΡΠ²ΠΎΠΉ ΡΠΎΡΠΌΠ°Ρ ΠΏΠΎΡΡΠ±Π΅ΠΊΠΎΠ², ΠΏΠΎΡΡΠΎΠΌΡ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΠ°Π±Π»ΠΎΠ½ΠΈΠ·Π°ΡΠΎΡ Π΄Π»Ρ ΠΏΠΎΠ΄ΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Π² ΠΏΠΎΡΡΠ±Π΅ΠΊ ΡΡΠ». Π ΠΏΡΠΈΠΌΠ΅ΡΡ:
https://binom.com/postback/{stag_partnerId}/?clickID={stag_clickID}&externalClickID={params.clickID}&userID={userID}&ts={timestamp}
Π ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π²ΡΡΠ΅:
- stag_partnerId: ΠΈΠ΄ ΠΏΠ°ΡΡΠ½Π΅ΡΠ° ΠΈΠ· stag
- stag_clickID: ΠΈΠ΄ ΠΊΠ»ΠΈΠΊΠ° ΠΈΠ· stag
- params.clickID: get ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΈΠ· Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ track ΡΡΠ» Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ clickID
- userID: ΠΈΠ΄ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈΠ· Π±Π°Π»ΠΈΡΡ push
- timestamp: Π²ΡΠ΅ΠΌΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ linuxtimestapm Π² ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ ΡΠΎΠ±ΡΡΠΈΠ΅
Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ
ΠΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΡΡΠΈΡ ΡΡΠ°Π·Ρ ΠΏΠΎ ΠΈΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ, Π½ΠΎ ΠΏΡΠΈΠ΅ΠΌΠ»Π΅ΠΌΠΎ Π΄Π΅Π»Π°ΡΡ Π±Π°ΡΡ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΠ°Π· Π² ΡΠ°Ρ ΡΠΎΠΆΠ΅.
ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ
Π±ΡΠ»ΠΎ Π±Ρ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΎΠ±ΠΎΠΉΡΠΈΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ CloudFlare workers + kv, ΠΠ Π²Π°ΠΆΠ½ΠΎ ΡΡΠΎ ΠΌΡ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Ρ ΡΠ°Π½ΠΈΡΡ Π² KV Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ ΠΈ ΡΡΠΎ ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΊ BQ
retry
ΠΡ Π·Π½Π°Π΅ΠΌ ΡΡΠΎ Ρ ΠΏΠ°ΡΡΠ½Π΅ΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ Π»Π΅ΠΆΠ°ΡΡ ΡΡΠ΅ΠΊΠ΅Ρ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ²Π΅ΡΡΠ°ΡΡ retry (ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎ exponential backoff, Π½ΠΎ ΡΠ΅Π°Π»ΡΠ½ΠΎ - Ρ ΠΎΡΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ) ΠΈ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΠ°Π±Π»ΠΈΡΡ Π²ΡΠ΅ ΠΎΡΠ΄Π°Π²Π°Π΅ΠΌΡΠ΅ ΠΏΠΎΡΡΠ±Π΅ΠΊΠΈ + http status ΠΊΠΎΠ΄ ΠΎΡΠ²Π΅ΡΠ° (ΠΌΠΎΠΆΠ½ΠΎ ΠΈ body Π·Π°ΠΏΠΈΡΠ°ΡΡ ΠΏΠ΅ΡΠ²ΡΠ΅ 100 Π±Π°ΠΉΡΠΎΠ²)