Π”Π΅Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° ΠΏΡ€ΠΈΠ΄Ρ€ΡƒΠΆΠ½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ° со ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΊΠΎΠ΄ Π½Π° Π±Π»ΠΎΠΊΡ‡Π΅Ρ˜Π½ΠΎΡ‚ Waves

Π”Π΅Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° ΠΏΡ€ΠΈΠ΄Ρ€ΡƒΠΆΠ½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ° Π½Π° Π±Π»ΠΎΠΊΡ‡Π΅Ρ˜Π½ΠΎΡ‚ Waves, ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€Π°Π½Π° ΠΊΠ°ΠΊΠΎ Π΄Π΅Π» ΠΎΠ΄ Π³Ρ€Π°Π½Ρ‚ Π½Π° Waves Labs ΠΎΠ΄ Ρ‚ΠΈΠΌΠΎΡ‚ Π½Π° Bettex.

ΠžΠ±Ρ˜Π°Π²Π°Ρ‚Π° Π½Π΅ Π΅ Ρ€Π΅ΠΊΠ»Π°ΠΌΠ°! ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠ°Ρ‚Π° Π΅ со ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΊΠΎΠ΄, Π½Π΅Ρ˜Π·ΠΈΠ½Π°Ρ‚Π° ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° ΠΈ Π΄ΠΈΡΡ‚Ρ€ΠΈΠ±ΡƒΡ†ΠΈΡ˜Π° сС бСсплатни. Π£ΠΏΠΎΡ‚Ρ€Π΅Π±Π°Ρ‚Π° Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ°Ρ‚Π° Π³ΠΎ стимулира Ρ€Π°Π·Π²ΠΎΡ˜ΠΎΡ‚ Π½Π° dApp Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈΡ‚Π΅ ΠΈ Π³Π΅Π½Π΅Ρ€Π°Π»Π½ΠΎ ΠΏΡ€ΠΎΠΌΠΎΠ²ΠΈΡ€Π° Π΄Π΅Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡ˜Π°, ΡˆΡ‚ΠΎ Π΅ ΠΎΠ΄ корист Π·Π° сСкој корисник Π½Π° Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚.

Π”Π΅Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° ΠΏΡ€ΠΈΠ΄Ρ€ΡƒΠΆΠ½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ° со ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΊΠΎΠ΄ Π½Π° Π±Π»ΠΎΠΊΡ‡Π΅Ρ˜Π½ΠΎΡ‚ Waves

ΠŸΡ€Π΅Π·Π΅Π½Ρ‚ΠΈΡ€Π°Π½ΠΈΠΎΡ‚ dApp Π·Π° ΠΏΡ€ΠΈΠ΄Ρ€ΡƒΠΆΠ½ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ Π΅ шаблон Π·Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ ΠΊΠΎΠΈ Π²ΠΊΠ»ΡƒΡ‡ΡƒΠ²Π°Π°Ρ‚ affiliate ΠΊΠ°ΠΊΠΎ Π΄Π΅Π» ΠΎΠ΄ Π½ΠΈΠ²Π½Π°Ρ‚Π° функционалност. ΠšΠΎΠ΄ΠΎΡ‚ ΠΌΠΎΠΆΠ΅ Π΄Π° сС користи ΠΊΠ°ΠΊΠΎ ΠΎΠ±Ρ€Π°Π·Π΅Ρ† Π·Π° ΠΊΠΎΠΏΠΈΡ€Π°ΡšΠ΅, ΠΊΠ°ΠΊΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΎ Π·Π±ΠΈΡ€ Π½Π° ΠΈΠ΄Π΅ΠΈ Π·Π° Ρ‚Π΅Ρ…Π½ΠΈΡ‡ΠΊΠ° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ˜Π°.

Π’ΠΎ однос Π½Π° функционалноста, ΠΎΠ²Π° Π΅ Ρ€Π΅Π΄ΠΎΠ²Π΅Π½ affiliate систСм кој ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€Π° Ρ€Π΅Π³ΠΈΡΡ‚Ρ€Π°Ρ†ΠΈΡ˜Π° со Ρ€Π΅Ρ„Π΅Ρ€Π΅Ρ€, ΠΏΠΎΠ²Π΅ΡœΠ΅ΡΡ‚Π΅ΠΏΠ΅Π½Π° Π°ΠΊΡƒΠΌΡƒΠ»Π°Ρ†ΠΈΡ˜Π° Π½Π° Π½Π°Π³Ρ€Π°Π΄ΠΈ Π·Π° ΡƒΠΏΠ°Ρ‚ΠΈ ΠΈ ΠΌΠΎΡ‚ΠΈΠ²Π°Ρ†ΠΈΡ˜Π° Π·Π° Ρ€Π΅Π³ΠΈΡΡ‚Ρ€Π°Ρ†ΠΈΡ˜Π° Π²ΠΎ систСмот (cashback). БистСмот Π΅ β€žΡ‡ΠΈΡΡ‚Π°β€œ dApp, односно Π²Π΅Π±-Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°Ρ‚Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ ΠΊΠΎΠΌΡƒΠ½ΠΈΡ†ΠΈΡ€Π° со Π±Π»ΠΎΠΊΡ‡Π΅Ρ˜Π½ΠΎΡ‚, Π±Π΅Π· Π΄Π° ΠΈΠΌΠ° свој Π·Π°Π΄Π½ΠΈΠ½Π°, Π±Π°Π·Π° Π½Π° ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈ ΠΈΡ‚Π½.

ΠšΠΎΡ€ΠΈΡΡ‚Π΅Π½ΠΈ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ ΠΊΠΎΠΈ ΠΌΠΎΠΆΠ°Ρ‚ Π΄Π° Π±ΠΈΠ΄Π°Ρ‚ корисни ΠΈ Π²ΠΎ ΠΌΠ½ΠΎΠ³Ρƒ Π΄Ρ€ΡƒΠ³ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ:

  • ΠŸΠΎΠ²ΠΈΠΊΡƒΠ²Π°ΡšΠ΅ ΠΏΠ°ΠΌΠ΅Ρ‚Π½Π° смСтка Π²ΠΎ Π΄ΠΎΠ»Π³ со ΠΈΡ‚Π½Π° ΠΎΡ‚ΠΏΠ»Π°Ρ‚Π° (Π²ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΡ‚ Π½Π° ΠΏΠΎΠ²ΠΈΠΊΠΎΡ‚ Π½Π΅ΠΌΠ° Ρ‚ΠΎΠΊΠ΅Π½ΠΈ Π½Π° смСтката Π·Π° плаќањС Π½Π° ΠΏΠΎΠ²ΠΈΠΊΠΎΡ‚, Π½ΠΎ Ρ‚ΠΈΠ΅ сС ΠΏΠΎΡ˜Π°Π²ΡƒΠ²Π°Π°Ρ‚ Ρ‚Π°ΠΌΡƒ ΠΊΠ°ΠΊΠΎ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° ΠΏΠΎΠ²ΠΈΠΊΠΎΡ‚).
  • PoW-captcha - Π·Π°ΡˆΡ‚ΠΈΡ‚Π° ΠΎΠ΄ високофрСквСнтни Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ ΠΏΠΎΠ²ΠΈΡ†ΠΈ Π΄ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Π½Π° смСтка - Π°Π½Π°Π»ΠΎΠ³Π½ΠΎ Π½Π° captcha, Π½ΠΎ ΠΏΡ€Π΅ΠΊΡƒ Π΄ΠΎΠΊΠ°Π· Π·Π° ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° Π½Π° ΠΊΠΎΠΌΠΏΡ˜ΡƒΡ‚Π΅Ρ€ΡΠΊΠΈ рСсурси.
  • ΠŸΠΎΠ±Π°Ρ€Π°Ρ˜Ρ‚Π΅ ΠΊΠ»ΡƒΡ‡Π΅Π²ΠΈ Π·Π° ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈ ΠΊΠΎΡ€ΠΈΡΡ‚Π΅Ρ˜ΡœΠΈ шаблон.

ΠΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°Ρ‚Π° сС состои ΠΎΠ΄:

  • ΠΊΠΎΠ΄ Π·Π° ΠΏΠ°ΠΌΠ΅Ρ‚Π½Π° смСтка Π½Π° Ρ˜Π°Π·ΠΈΠΊΠΎΡ‚ ride4dapps (кој, ΠΊΠ°ΠΊΠΎ ΡˆΡ‚ΠΎ Π΅ ΠΏΠ»Π°Π½ΠΈΡ€Π°Π½ΠΎ, сС ΡΠΏΠΎΡ˜ΡƒΠ²Π° Π²ΠΎ Π³Π»Π°Π²Π½Π°Ρ‚Π° ΠΏΠ°ΠΌΠ΅Ρ‚Π½Π° смСтка Π·Π° која Ρ‚Ρ€Π΅Π±Π° Π΄Π° сС ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€Π° функционалноста Π½Π° Ρ„ΠΈΠ»ΠΈΡ˜Π°Π»Π°Ρ‚Π°);
  • js ΠΎΠ±Π²ΠΈΠ²ΠΊΠ° ΡˆΡ‚ΠΎ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€Π° Π½ΠΈΠ²ΠΎ Π½Π° Π°ΠΏΡΡ‚Ρ€Π°ΠΊΡ†ΠΈΡ˜Π° ΠΏΡ€Π΅ΠΊΡƒ WAVES NODE REST API;
  • ΠΊΠΎΠ΄ Π½Π° Ρ€Π°ΠΌΠΊΠ°Ρ‚Π° vuejs, ΡˆΡ‚ΠΎ Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° ΠΈ ΠΊΠΎΠ΄ΠΎΡ‚ RIDE.

Π”ΠΎΠ·Π²ΠΎΠ»Π΅Ρ‚Π΅ Π½ΠΈ Π΄Π° Π³ΠΈ опишСмС ситС Π½Π°Π²Π΅Π΄Π΅Π½ΠΈ карактСристики.

ΠŸΠΎΠ²ΠΈΠΊΡƒΠ²Π°ΡšΠ΅ ΠΏΠ°ΠΌΠ΅Ρ‚Π½Π° смСтка Π·Π° Π΄ΠΎΠ»Π³ со ΠΈΡ‚Π½Π° ΠΎΡ‚ΠΏΠ»Π°Ρ‚Π°

ΠŸΠΎΠ²ΠΈΠΊΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° InvokeScript Π±Π°Ρ€Π° плаќањС Π½Π° надомСст ΠΎΠ΄ смСтката ΡˆΡ‚ΠΎ ја ΠΈΠ½ΠΈΡ†ΠΈΡ€Π° Ρ‚Ρ€Π°Π½ΡΠ°ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π°. Ова Π½Π΅ Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ Π°ΠΊΠΎ ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π·Π° Π±Π»ΠΎΠΊΡ‡Π΅Ρ˜Π½ Π³ΠΈΠΊΠΎΠ²ΠΈ ΠΊΠΎΠΈ ΠΈΠΌΠ°Π°Ρ‚ ΠΎΠ΄Ρ€Π΅Π΄Π΅Π½Π° ΠΊΠΎΠ»ΠΈΡ‡ΠΈΠ½Π° WAVES Ρ‚ΠΎΠΊΠ΅Π½ΠΈ Π½Π° Π½ΠΈΠ²Π½Π°Ρ‚Π° смСтка, Π½ΠΎ Π°ΠΊΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΎΡ‚ Π΅ Π½Π°ΠΌΠ΅Π½Π΅Ρ‚ Π·Π° ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° ΠΎΠ΄ ΠΏΠΎΡˆΠΈΡ€ΠΎΠΊΠ°Ρ‚Π° Ρ˜Π°Π²Π½ΠΎΡΡ‚, ΠΎΠ²Π° станува сСриозСн ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ. На ΠΊΡ€Π°Ρ˜ΠΎΡ‚ Π½Π° ΠΊΡ€Π°ΠΈΡˆΡ‚Π°Ρ‚Π°, корисникот ΠΌΠΎΡ€Π° Π΄Π° сС Π³Ρ€ΠΈΠΆΠΈ Π·Π° ΠΊΡƒΠΏΡƒΠ²Π°ΡšΠ΅ Π½Π° WAVES Ρ‚ΠΎΠΊΠ΅Π½ΠΈ (ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎ соодвСтно срСдство ΡˆΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС користи Π·Π° плаќањС Π·Π° трансакции), ΡˆΡ‚ΠΎ ја Π·Π³ΠΎΠ»Π΅ΠΌΡƒΠ²Π° вСќС Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½Π°Ρ‚Π° Π±Π°Ρ€ΠΈΠ΅Ρ€Π° Π·Π° Π²Π»Π΅Π· Π²ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚. МоТСмС Π΄Π° дистрибуирамС срСдство Π½Π° корисници ΠΊΠΎΠΈ ќС ΠΌΠΎΠΆΠ°Ρ‚ Π΄Π° ΠΏΠ»Π°Ρ‚Π°Ρ‚ Π·Π° трансакции ΠΈ ќС сС соочат со Ρ€ΠΈΠ·ΠΈΠΊΠΎΡ‚ ΠΎΠ΄ Π½ΠΈΠ²Π½Π° Π·Π»ΠΎΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° ΠΊΠΎΠ³Π° ќС сС создадат автоматски систСми Π·Π° ΠΈΡΠΏΡƒΠΌΠΏΡƒΠ²Π°ΡšΠ΅ Π½Π° Π»ΠΈΠΊΠ²ΠΈΠ΄Π½ΠΎ срСдство ΠΎΠ΄ Π½Π°ΡˆΠΈΠΎΡ‚ систСм.

Π‘ΠΈ Π±ΠΈΠ»ΠΎ ΠΌΠ½ΠΎΠ³Ρƒ ΠΏΠΎΠ³ΠΎΠ΄Π½ΠΎ Π°ΠΊΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΏΠΎΠ²ΠΈΠΊΠ° InvokeScript β€žΠ½Π° смСтка Π½Π° ΠΏΡ€ΠΈΠΌΠ°Ρ‡ΠΎΡ‚β€œ (ΠΏΠ°ΠΌΠ΅Ρ‚Π½Π°Ρ‚Π° смСтка Π½Π° која Π΅ инсталирана скриптата), Π° Ρ‚Π°ΠΊΠ²Π° моТност, ΠΈΠ°ΠΊΠΎ Π½Π΅ Π½Π° ΠΎΡ‡ΠΈΠ³Π»Π΅Π΄Π΅Π½ Π½Π°Ρ‡ΠΈΠ½, постои.

Ако Π²ΠΎ InvokeScript Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ ScriptTransfer Π½Π° адрСсата Π½Π° ΠΏΠΎΠ²ΠΈΠΊΡƒΠ²Π°Ρ‡ΠΎΡ‚, ΡˆΡ‚ΠΎ Π³ΠΈ ΠΊΠΎΠΌΠΏΠ΅Π½Π·ΠΈΡ€Π° ΠΏΠΎΡ‚Ρ€ΠΎΡˆΠ΅Π½ΠΈΡ‚Π΅ Ρ‚ΠΎΠΊΠ΅Π½ΠΈ Π·Π° надомСст, Ρ‚ΠΎΠ³Π°Ρˆ Ρ‚Π°ΠΊΠ²ΠΈΠΎΡ‚ ΠΏΠΎΠ²ΠΈΠΊ ќС Π±ΠΈΠ΄Π΅ ΡƒΡΠΏΠ΅ΡˆΠ΅Π½, Π΄ΡƒΡ€ΠΈ ΠΈ Π°ΠΊΠΎ Π²ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΡ‚ Π½Π° ΠΏΠΎΠ²ΠΈΠΊΠΎΡ‚ Π½Π΅ΠΌΠ°Π»ΠΎ срСдства Π½Π° смСтката Π·Π° ΠΏΠΎΠ²ΠΈΠΊΡƒΠ²Π°ΡšΠ΅. Ова Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Ρ‚ΠΎΠ° ΡˆΡ‚ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°Ρ‚Π° Π·Π° Π΄ΠΎΠ²ΠΎΠ»Π½ΠΈ Ρ‚ΠΎΠΊΠ΅Π½ΠΈ сС Π²Ρ€ΡˆΠΈ ΠΎΡ‚ΠΊΠ°ΠΊΠΎ ќС сС ΠΏΠΎΠ²ΠΈΠΊΠ° Ρ‚Ρ€Π°Π½ΡΠ°ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π°, Π° Π½Π΅ ΠΏΡ€Π΅Π΄ Π½Π΅Π°, Ρ‚Π°ΠΊΠ° ΡˆΡ‚ΠΎ трансакциитС ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π½Π°ΠΏΡ€Π°Π²Π°Ρ‚ Π½Π° ΠΊΡ€Π΅Π΄ΠΈΡ‚, ΡˆΡ‚ΠΎ ΠΏΠΎΠ΄Π»Π΅ΠΆΠΈ Π½Π° ΠΈΡ‚Π½Π° ΠΎΡ‚ΠΏΠ»Π°Ρ‚Π°.

ВрансфСр Π½Π° скрипта (i.caller, i.eee, Π΅Π΄ΠΈΠ½ΠΈΡ†Π°)

ΠšΠΎΠ΄ΠΎΡ‚ ΠΏΠΎΠ΄ΠΎΠ»Ρƒ ја надомСстува ΠΏΠΎΡ‚Ρ€ΠΎΡˆΠ΅Π½Π°Ρ‚Π° такса со помош Π½Π° срСдства ΠΎΠ΄ ΠΏΠ°ΠΌΠ΅Ρ‚Π½Π° смСтка. Π—Π° Π΄Π° сС Π·Π°ΡˆΡ‚ΠΈΡ‚ΠΈΡ‚Π΅ ΠΎΠ΄ Π·Π»ΠΎΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° Π½Π° ΠΎΠ²Π°Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°, Π½Π΅ΠΎΠΏΡ…ΠΎΠ΄Π½ΠΎ Π΅ Π΄Π° сС ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈ Π΄Π°Π»ΠΈ ΠΏΠΎΠ²ΠΈΠΊΡƒΠ²Π°Ρ‡ΠΎΡ‚ ја Ρ‚Ρ€ΠΎΡˆΠΈ таксата Π²ΠΎ Π±Π°Ρ€Π°Π½ΠΎΡ‚ΠΎ срСдство ΠΈ Π²ΠΎ Ρ€Π°Π·ΡƒΠΌΠ½ΠΈ Π³Ρ€Π°Π½ΠΈΡ†ΠΈ:

func checkFee(i:Invocation) = {
if i.fee > maxFee then throw(β€œunreasonable large fee”) else
if i.feeAssetId != unit then throw(β€œfee must be in WAVES”) else true
}

Π˜ΡΡ‚ΠΎ Ρ‚Π°ΠΊΠ°, Π·Π° Π·Π°ΡˆΡ‚ΠΈΡ‚Π° ΠΎΠ΄ Π·Π»ΠΎΠ½Π°ΠΌΠ΅Ρ€Π½ΠΎ ΠΈ бСсмислСно Ρ‚Ρ€ΠΎΡˆΠ΅ΡšΠ΅ срСдства, ΠΏΠΎΡ‚Ρ€Π΅Π±Π½Π° Π΅ автоматска Π·Π°ΡˆΡ‚ΠΈΡ‚Π° ΠΎΠ΄ ΠΏΠΎΠ²ΠΈΡ†ΠΈ (PoW-captcha).

PoW-ΠΊΠ°ΠΏΡ‡Π°

Π‘Π°ΠΌΠ°Ρ‚Π° идСја Π·Π° captcha Π·Π° Π΄ΠΎΠΊΠ°Π· Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° Π½Π΅ Π΅ Π½ΠΎΠ²Π° ΠΈ вСќС Π΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€Π°Π½Π° Π²ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ, Π²ΠΊΠ»ΡƒΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΈ ΠΎΠ½ΠΈΠ΅ ΠΊΠΎΠΈ сС ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€Π°Π½ΠΈ Π²Ρ€Π· основа Π½Π° WAVES. Π˜Π΄Π΅Ρ˜Π°Ρ‚Π° Π΅ Π΄Π΅ΠΊΠ° Π·Π° Π΄Π° сС ΠΈΠ·Π²Ρ€ΡˆΠΈ Π΄Π΅Ρ˜ΡΡ‚Π²ΠΎ ΡˆΡ‚ΠΎ Π³ΠΈ Ρ‚Ρ€ΠΎΡˆΠΈ рСсурситС Π½Π° Π½Π°ΡˆΠΈΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΏΠΎΠ²ΠΈΠΊΡƒΠ²Π°Ρ‡ΠΎΡ‚ ΠΌΠΎΡ€Π° Π΄Π° Π³ΠΈ ΠΏΠΎΡ‚Ρ€ΠΎΡˆΠΈ ΠΈ сопствСнитС рСсурси, ΡˆΡ‚ΠΎ Π³ΠΎ ΠΏΡ€Π°Π²ΠΈ Π½Π°ΠΏΠ°Π΄ΠΎΡ‚ со Ρ‚Ρ€ΠΎΡˆΠ΅ΡšΠ΅ рСсурси ΠΏΡ€ΠΈΠ»ΠΈΡ‡Π½ΠΎ скап. Π—Π° ΠΌΠ½ΠΎΠ³Ρƒ лСсна ΠΈ Π΅Π²Ρ‚ΠΈΠ½Π° Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΡ˜Π° Π΄Π΅ΠΊΠ° ΠΈΡΠΏΡ€Π°ΡœΠ°Ρ‡ΠΎΡ‚ Π½Π° Ρ‚Ρ€Π°Π½ΡΠ°ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° Π³ΠΎ Ρ€Π΅ΡˆΠΈΠ» ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΡ‚ со PoW, постои ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π° Π½Π° Ρ‚Ρ€Π°Π½ΡΠ°ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π°:

Π°ΠΊΠΎ take(toBase58String(i.transactionId), 3) != β€ž123β€œ ΠΏΠΎΡ‚ΠΎΠ° Ρ„Ρ€Π»ΠΈ (β€žΠ΄ΠΎΠΊΠ°Π·ΠΎΡ‚ Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° Π½Π΅ ΡƒΡΠΏΠ΅Π°β€œ) Π΄Ρ€ΡƒΠ³ΠΎ

Π—Π° Π΄Π° ΠΈΠ·Π²Ρ€ΡˆΠΈ Ρ‚Ρ€Π°Π½ΡΠ°ΠΊΡ†ΠΈΡ˜Π°, ΠΏΠΎΠ²ΠΈΠΊΡƒΠ²Π°Ρ‡ΠΎΡ‚ ΠΌΠΎΡ€Π° Π΄Π° ΠΈΠ·Π±Π΅Ρ€Π΅ Ρ‚Π°ΠΊΠ²ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ Ρ‚Π°ΠΊΠ° ΡˆΡ‚ΠΎ Π½Π΅Π³ΠΎΠ²Π°Ρ‚Π° основна ΡˆΠΈΡ„Ρ€Π°58 (ΠΈΠ΄) Π·Π°ΠΏΠΎΡ‡Π½ΡƒΠ²Π° со Π±Ρ€ΠΎΠ΅Π²ΠΈΡ‚Π΅ 123, ΡˆΡ‚ΠΎ Π²ΠΎ просСк ΠΎΠ΄Π³ΠΎΠ²Π°Ρ€Π° Π½Π° Π½Π΅ΠΊΠΎΠ»ΠΊΡƒ дСсСтици сСкунди ΠΎΠ΄ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π½Π° процСсорот ΠΈ Π΅ Π³Π΅Π½Π΅Ρ€Π°Π»Π½ΠΎ Ρ€Π°Π·ΡƒΠΌΠ½ΠΎ Π·Π° Π½Π°ΡˆΠ°Ρ‚Π° Π·Π°Π΄Π°Ρ‡Π°. Ако Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±Π΅Π½ поСдноставСн ΠΈΠ»ΠΈ покомплСксСн PoW, Ρ‚ΠΎΠ³Π°Ρˆ Π·Π°Π΄Π°Ρ‡Π°Ρ‚Π° ΠΌΠΎΠΆΠ΅ лСсно Π΄Π° сС ΠΈΠ·ΠΌΠ΅Π½ΠΈ Π½Π° ΠΎΡ‡ΠΈΠ³Π»Π΅Π΄Π΅Π½ Π½Π°Ρ‡ΠΈΠ½.

ΠŸΠΎΠ±Π°Ρ€Π°Ρ˜Ρ‚Π΅ ΠΊΠ»ΡƒΡ‡Π΅Π²ΠΈ Π·Π° ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈ ΠΊΠΎΡ€ΠΈΡΡ‚Π΅Ρ˜ΡœΠΈ шаблон

Π‘ΠΎ Ρ†Π΅Π» Π΄Π° сС користи blockchain ΠΊΠ°ΠΊΠΎ Π±Π°Π·Π° Π½Π° ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈ, ΠΎΠ΄ Π²ΠΈΡ‚Π°Π»Π½ΠΎ Π·Π½Π°Ρ‡Π΅ΡšΠ΅ Π΅ Π΄Π° сС ΠΈΠΌΠ°Π°Ρ‚ API Π°Π»Π°Ρ‚ΠΊΠΈ Π·Π° ΠΏΡ€Π΅Π±Π°Ρ€ΡƒΠ²Π°ΡšΠ΅ Π½Π° Π±Π°Π·Π°Ρ‚Π° Π½Π° ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈ ΠΊΠ°ΠΊΠΎ key-val Π²Ρ€Π· основа Π½Π° шаблони. Π’Π°ΠΊΠΎΠ² ΠΊΠΎΠΌΠΏΠ»Π΅Ρ‚ Π°Π»Π°Ρ‚ΠΊΠΈ сС појави Π½Π° ΠΏΠΎΡ‡Π΅Ρ‚ΠΎΠΊΠΎΡ‚ Π½Π° Ρ˜ΡƒΠ»ΠΈ 2019 Π³ΠΎΠ΄ΠΈΠ½Π° Π²ΠΎ Ρ„ΠΎΡ€ΠΌΠ° Π½Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Π°Ρ€ ? Π½Π°Ρ‚ΠΏΡ€Π΅Π²Π°Ρ€ΠΈ Π½Π° Π±Π°Ρ€Π°ΡšΠ΅ REST API /адрСси/ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈ?matches=regexp. Π‘Π΅Π³Π°, Π°ΠΊΠΎ Ρ‚Ρ€Π΅Π±Π° Π΄Π° Π΄ΠΎΠ±ΠΈΠ΅ΠΌΠ΅ повСќС ΠΎΠ΄ Π΅Π΄Π΅Π½ ΠΊΠ»ΡƒΡ‡ ΠΎΠ΄ Π²Π΅Π± Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π° ΠΈ Π½Π΅ ситС ΠΊΠ»ΡƒΡ‡Π΅Π²ΠΈ одСднаш, Ρ‚ΡƒΠΊΡƒ само нСкоја Π³Ρ€ΡƒΠΏΠ°, Ρ‚ΠΎΠ³Π°Ρˆ ΠΌΠΎΠΆΠ΅ΠΌΠ΅ Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌΠ΅ ΠΈΠ·Π±ΠΎΡ€ ΠΏΠΎ ΠΈΠΌΠ΅ Π½Π° ΠΊΠ»ΡƒΡ‡ΠΎΡ‚. На ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²ΠΎ овој ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, трансакциитС Π·Π° ΠΏΠΎΠ²Π»Π΅ΠΊΡƒΠ²Π°ΡšΠ΅ сС ΠΊΠΎΠ΄ΠΈΡ€Π°Π½ΠΈ ΠΊΠ°ΠΊΠΎ

withdraw_${userAddress}_${txid}

ΡˆΡ‚ΠΎ Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° Π΄Π° Π΄ΠΎΠ±ΠΈΠ΅Ρ‚Π΅ список Π½Π° трансакции Π·Π° ΠΏΠΎΠ²Π»Π΅ΠΊΡƒΠ²Π°ΡšΠ΅ срСдства Π·Π° која Π±ΠΈΠ»ΠΎ Π΄Π°Π΄Π΅Π½Π° адрСса ΠΊΠΎΡ€ΠΈΡΡ‚Π΅Ρ˜ΡœΠΈ Π³ΠΎ ΡˆΠ°Π±Π»ΠΎΠ½ΠΎΡ‚:

?matches=withdraw_${userAddress}_.*

Π‘Π΅Π³Π° Π΄Π° Π³ΠΈ ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΠΌΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈΡ‚Π΅ Π½Π° Π³ΠΎΡ‚ΠΎΠ²ΠΈΠΎΡ‚ раствор.

Vuejs ΠΊΠΎΠ΄

ΠšΠΎΠ΄ΠΎΡ‚ Π΅ Ρ€Π°Π±ΠΎΡ‚Π½Π° Π΄Π΅ΠΌΠΎ блиска Π΄ΠΎ вистинскиот ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. Π˜ΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€Π° Π½Π°Ρ˜Π°Π²ΡƒΠ²Π°ΡšΠ΅ ΠΏΡ€Π΅ΠΊΡƒ Waves Keeper ΠΈ Ρ€Π°Π±ΠΎΡ‚ΠΈ со Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° affiliate.js, со која Π³ΠΎ рСгистрира корисникот Π²ΠΎ систСмот, Π±Π°Ρ€Π° ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈ Π·Π° трансакциитС, Π° исто Ρ‚Π°ΠΊΠ° Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° Π΄Π° Π³ΠΈ ΠΏΠΎΠ²Π»Π΅Ρ‡Π΅Ρ‚Π΅ Π·Π°Ρ€Π°Π±ΠΎΡ‚Π΅Π½ΠΈΡ‚Π΅ срСдства Π½Π° смСтката Π½Π° корисникот.

Π”Π΅Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° ΠΏΡ€ΠΈΠ΄Ρ€ΡƒΠΆΠ½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ° со ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΊΠΎΠ΄ Π½Π° Π±Π»ΠΎΠΊΡ‡Π΅Ρ˜Π½ΠΎΡ‚ Waves

Код за RIDE

Π‘Π΅ состои ΠΎΠ΄ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π° Ρ€Π΅Π³ΠΈΡΡ‚Ρ€Π°Ρ†ΠΈΡ˜Π°, Ρ„ΠΈΠ½Π°Π½ΡΠΈΡ€Π°ΡšΠ΅ ΠΈ ΠΏΠΎΠ²Π»Π΅ΠΊΡƒΠ²Π°ΡšΠ΅.

Π€ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° Π·Π° Ρ€Π΅Π³ΠΈΡΡ‚Ρ€Π°Ρ†ΠΈΡ˜Π° рСгистрира корисник Π½Π° систСмот. Има Π΄Π²Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ: Ρ€Π΅Ρ„Π΅Ρ€Π΅Ρ€ (адрСса Π½Π° Ρ€Π΅Ρ„Π΅Ρ€Π΅Ρ€) ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Π°Ρ€ сол, кој Π½Π΅ сС користи Π²ΠΎ функцискиот ΠΊΠΎΠ΄, кој Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±Π΅Π½ Π·Π° ΠΈΠ·Π±ΠΎΡ€ Π½Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π° Π½Π° Ρ‚Ρ€Π°Π½ΡΠ°ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° (Π·Π°Π΄Π°Ρ‡Π° PoW-captcha).

Π€ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° (ΠΊΠ°ΠΊΠΎ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ΄ овој ΠΏΡ€ΠΎΠ΅ΠΊΡ‚) ја користи Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ°Ρ‚Π° Π½Π° ΠΏΠΎΠ²ΠΈΠΊ Π½Π° Π΄ΠΎΠ»Π³, Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΎΡ‚ ΠΎΠ΄ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° Π΅ Π΄Π° сС финансира ΠΏΠ»Π°ΡœΠ°ΡšΠ΅Ρ‚ΠΎ Π½Π° надомСстокот Π·Π° ΠΏΠΎΠ²ΠΈΠΊΡƒΠ²Π°ΡšΠ΅ Π½Π° ΠΎΠ²Π°Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°. Π‘Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ΠΈΠ΅ Π½Π° ΠΎΠ²Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, корисникот кој ΡˆΡ‚ΠΎΡ‚ΡƒΠΊΡƒ ΠΊΡ€Π΅ΠΈΡ€Π°Π» ΠΏΠ°Ρ€ΠΈΡ‡Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅ вСднаш Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ со систСмот ΠΈ Π½Π΅ ΠΌΠΎΡ€Π° Π΄Π° сС Π³Ρ€ΠΈΠΆΠΈ Π·Π° ΠΊΡƒΠΏΡƒΠ²Π°ΡšΠ΅ ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠΌΠ°ΡšΠ΅ срСдство ΠΊΠΎΠ΅ ΠΌΡƒ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° Π΄Π° ΠΏΠ»Π°Ρ‚ΠΈ ΠΏΡ€ΠΎΠ²ΠΈΠ·ΠΈΡ˜Π° Π·Π° Ρ‚Ρ€Π°Π½ΡΠ°ΠΊΡ†ΠΈΡ˜Π°.

Π Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΎΡ‚ ΠΎΠ΄ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° Π·Π° Ρ€Π΅Π³ΠΈΡΡ‚Ρ€Π°Ρ†ΠΈΡ˜Π° Π΅ Π΄Π²Π° записи:

${owner)_referer = referer
${referer}_referral_${owner} = owner

Ова ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° ΠΏΡ€Π΅Π±Π°Ρ€ΡƒΠ²Π°ΡšΠ΅ Π½Π°ΠΏΡ€Π΅Π΄ ΠΈ Π½Π°Π·Π°Π΄ (ΡƒΠΏΠ°Ρ‚ΡƒΠ²Π°Ρ‡ Π½Π° Π΄Π°Π΄Π΅Π½ корисник ΠΈ ситС ΡƒΠΏΠ°Ρ‚ΡƒΠ²Π°ΡšΠ° Π½Π° Π΄Π°Π΄Π΅Π½ корисник).

Π€ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° Ρ„ΠΎΠ½Π΄ Π΅ повСќС шаблон Π·Π° Ρ€Π°Π·Π²ΠΎΡ˜ Π½Π° вистинска функционалност. Π’ΠΎ ΡΠ²ΠΎΡ˜Π°Ρ‚Π° прСтставСна Ρ„ΠΎΡ€ΠΌΠ°, Π³ΠΈ Π·Π΅ΠΌΠ° ситС срСдства ΠΏΡ€Π΅Ρ„Ρ€Π»Π΅Π½ΠΈ ΠΎΠ΄ Ρ‚Ρ€Π°Π½ΡΠ°ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° ΠΈ Π³ΠΈ дистрибуира Π½Π° смСткитС Π½Π° ΡƒΠΏΠ°Ρ‚ΡƒΠ²Π°Ρ‡ΠΈΡ‚Π΅ ΠΎΠ΄ Π½ΠΈΠ²ΠΎΠ° 1, 2, 3, Π½Π° смСтката β€žcashbackβ€œ ΠΈ смСтката β€žchangeβ€œ (сè ΡˆΡ‚ΠΎ останува ΠΊΠΎΠ³Π° сС дистрибуира Π½Π° ΠΏΡ€Π΅Ρ‚Ρ…ΠΎΠ΄Π½ΠΈΡ‚Π΅ смСткитС ΠΎΠ΄Π°Ρ‚ ΠΎΠ²Π΄Π΅).

Cashback Π΅ срСдство Π·Π° ΠΌΠΎΡ‚ΠΈΠ²ΠΈΡ€Π°ΡšΠ΅ Π½Π° ΠΊΡ€Π°Ρ˜Π½ΠΈΠΎΡ‚ корисник Π΄Π° учСствува Π²ΠΎ систСмот Π·Π° ΡƒΠΏΠ°Ρ‚ΡƒΠ²Π°ΡšΠ΅. ΠšΠΎΡ€ΠΈΡΠ½ΠΈΠΊΠΎΡ‚ ΠΌΠΎΠΆΠ΅ Π΄Π° Π³ΠΎ ΠΏΠΎΠ²Π»Π΅Ρ‡Π΅ Π΄Π΅Π»ΠΎΡ‚ ΠΎΠ΄ ΠΏΡ€ΠΎΠ²ΠΈΠ·ΠΈΡ˜Π°Ρ‚Π° ΡˆΡ‚ΠΎ ја плаќа систСмот Π²ΠΎ Ρ„ΠΎΡ€ΠΌΠ° Π½Π° β€žΠΊΠ΅ΡˆΠ±Π΅ΠΊβ€œ Π½Π° ист Π½Π°Ρ‡ΠΈΠ½ ΠΊΠ°ΠΊΠΎ ΠΈ Π½Π°Π³Ρ€Π°Π΄ΠΈΡ‚Π΅ Π·Π° ΡƒΠΏΠ°Ρ‚ΡƒΠ²Π°ΡšΠ°.

ΠŸΡ€ΠΈ ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅ Π½Π° систСм Π·Π° ΡƒΠΏΠ°Ρ‚ΡƒΠ²Π°ΡšΠ΅, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° Π½Π° Ρ„ΠΎΠ½Π΄ΠΎΡ‚ Ρ‚Ρ€Π΅Π±Π° Π΄Π° Π±ΠΈΠ΄Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Ρ‚Π° ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€Π°Π½Π° Π²ΠΎ Π³Π»Π°Π²Π½Π°Ρ‚Π° Π»ΠΎΠ³ΠΈΠΊΠ° Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Π½Π°Ρ‚Π° смСтка Π½Π° која ќС Ρ€Π°Π±ΠΎΡ‚ΠΈ систСмот. На ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π°ΠΊΠΎ сС плаќа Π½Π°Π³Ρ€Π°Π΄Π° Π·Π° ΡƒΠΏΠ°Ρ‚ΡƒΠ²Π°ΡšΠ΅ Π·Π° Π½Π°ΠΏΡ€Π°Π²Π΅Π½ ΠΎΠ±Π»ΠΎΠ³, Ρ‚ΠΎΠ³Π°Ρˆ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° Π½Π° Ρ„ΠΎΠ½Π΄ΠΎΡ‚ Ρ‚Ρ€Π΅Π±Π° Π΄Π° Π±ΠΈΠ΄Π΅ Π²Π³Ρ€Π°Π΄Π΅Π½Π° Π²ΠΎ Π»ΠΎΠ³ΠΈΠΊΠ°Ρ‚Π° ΠΊΠ°Π΄Π΅ ΡˆΡ‚ΠΎ сС става ΠΎΠ±Π»ΠΎΠ³ΠΎΡ‚ (ΠΈΠ»ΠΈ сС Π²Ρ€ΡˆΠΈ Π΄Ρ€ΡƒΠ³ΠΎ насочСно Π΄Π΅Ρ˜ΡΡ‚Π²ΠΎ Π·Π° ΠΊΠΎΠ΅ сС плаќа Π½Π°Π³Ρ€Π°Π΄Π°Ρ‚Π°). Π’Ρ€ΠΈ Π½ΠΈΠ²ΠΎΠ° Π½Π° Π½Π°Π³Ρ€Π°Π΄ΠΈ Π·Π° ΡƒΠΏΠ°Ρ‚ΡƒΠ²Π°ΡšΠ΅ сС ΠΊΠΎΠ΄ΠΈΡ€Π°Π½ΠΈ Π²ΠΎ ΠΎΠ²Π°Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°. Ако Ρ‚Ρ€Π΅Π±Π° Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ повСќС ΠΈΠ»ΠΈ ΠΏΠΎΠΌΠ°Π»ΠΊΡƒ Π½ΠΈΠ²ΠΎΠ°, Ρ‚ΠΎΠ³Π°Ρˆ ΠΎΠ²Π° Π΅ исто Ρ‚Π°ΠΊΠ° ΠΏΠΎΠΏΡ€Π°Π²Π΅Π½ΠΎ Π²ΠΎ ΠΊΠΎΠ΄ΠΎΡ‚. ΠŸΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΎΡ‚ Π½Π° Π½Π°Π³Ρ€Π°Π΄Π° Π΅ поставСн со константитС Π½Π° Π½ΠΈΠ²ΠΎ1-Π½ΠΈΠ²ΠΎ3 Π²ΠΎ ΠΊΠΎΠ΄ΠΎΡ‚ ΠΊΠ°ΠΊΠΎ ΡˆΡ‚ΠΎ сС прСсмСтува износ * Π½ΠΈΠ²ΠΎ / 1000, односно врСдноста 1 ΠΎΠ΄Π³ΠΎΠ²Π°Ρ€Π° Π½Π° 0,1% (ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° сС смСни ΠΈ Π²ΠΎ ΠΊΠΎΠ΄ΠΎΡ‚).

ΠŸΠΎΠ²ΠΈΠΊΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° Π³ΠΎ ΠΌΠ΅Π½ΡƒΠ²Π° салдото Π½Π° смСтката ΠΈ исто Ρ‚Π°ΠΊΠ° создава записи Π·Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅ Π½Π° Π΅Π²ΠΈΠ΄Π΅Π½Ρ†ΠΈΡ˜Π° Π½Π° Ρ„ΠΎΡ€ΠΌΡƒΠ»Π°Ρ€ΠΎΡ‚:

fund_address_txid = address:owner:inc:level:timestamp
Для получСния timestamp (Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ такая Π²ΠΎΡ‚ связка
func getTimestamp() = {
let block = extract(blockInfoByHeight(height))
toString(block.timestamp)
}

Односно, Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π½Π° Ρ‚Ρ€Π°Π½ΡΠ°ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° Π΅ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π½Π° Π±Π»ΠΎΠΊΠΎΡ‚ Π²ΠΎ кој сС Π½Π°ΠΎΡ“Π°. Ова Π΅ посигурно ΠΎΠ΄ ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅Ρ‚ΠΎ Π½Π° врСмСнскиот ΠΏΠ΅Ρ‡Π°Ρ‚ ΠΎΠ΄ самата Ρ‚Ρ€Π°Π½ΡΠ°ΠΊΡ†ΠΈΡ˜Π°, особСно Π·Π°Ρ‚ΠΎΠ° ΡˆΡ‚ΠΎ Π½Π΅ Π΅ достапСн ΠΎΠ΄ ΠΏΠΎΠ²ΠΈΠΊΡƒΠ²Π°Ρ‡ΠΎΡ‚.
Π€ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° Π·Π° ΠΏΠΎΠ²Π»Π΅ΠΊΡƒΠ²Π°ΡšΠ΅ Π³ΠΈ ΠΏΡ€ΠΈΠΊΠ°ΠΆΡƒΠ²Π° ситС Π°ΠΊΡƒΠΌΡƒΠ»ΠΈΡ€Π°Π½ΠΈ Π½Π°Π³Ρ€Π°Π΄ΠΈ Π½Π° смСтката Π½Π° корисникот. Π‘ΠΎΠ·Π΄Π°Π²Π° записи Π·Π° Ρ†Π΅Π»ΠΈ Π½Π° Π΅Π²ΠΈΠ΄Π΅Π½Ρ†ΠΈΡ˜Π°:

# withdraw log: withdraw_user_txid=amount:timestamp

ΠΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°

Π“Π»Π°Π²Π½ΠΈΠΎΡ‚ Π΄Π΅Π» ΠΎΠ΄ Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°Ρ‚Π° Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° affiliate.js, која Π΅ мост ΠΏΠΎΠΌΠ΅Ρ“Ρƒ ΠΌΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅ Π½Π° affiliate ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈ ΠΈ WAVES NODE REST API. Π‘ΠΏΡ€ΠΎΠ²Π΅Π΄ΡƒΠ²Π° Π½ΠΈΠ²ΠΎ Π½Π° Π°ΠΏΡΡ‚Ρ€Π°ΠΊΡ†ΠΈΡ˜Π° нСзависно ΠΎΠ΄ Ρ€Π°ΠΌΠΊΠ°Ρ‚Π° (ΠΌΠΎΠΆΠ΅ Π΄Π° сС користи ΠΊΠΎΠ΅ Π±ΠΈΠ»ΠΎ). АктивнитС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€Π°Ρ˜ сС, ΠΏΠΎΠ²Π»Π΅Ρ‡Π΅Ρˆ) прСтпоставуваат Π΄Π΅ΠΊΠ° Waves Keeper Π΅ инсталиран Π½Π° систСмот самата Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π½Π΅ Π³ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡƒΠ²Π° Ρ‚ΠΎΠ°;

Π‘ΠΏΡ€ΠΎΠ²Π΅Π΄ΡƒΠ²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ:

fetchReferralTransactions
fetchWithdrawTransactions
fetchMyBalance
fetchReferrals
fetchReferer
withdraw
register

Ѐункционалноста Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΡ‚Π΅ Π΅ ΠΎΡ‡ΠΈΠ³Π»Π΅Π΄Π½Π° ΠΎΠ΄ ΠΈΠΌΠΈΡšΠ°Ρ‚Π° Π½Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΡ‚Π΅ ΠΈ Π²Ρ€Π°Ρ‚Π΅Π½ΠΈΡ‚Π΅ ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈ сС опишани Π²ΠΎ ΠΊΠΎΠ΄ΠΎΡ‚. РСгистрираната Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π° Π±Π°Ρ€Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈ - Π·Π°ΠΏΠΎΡ‡Π½ΡƒΠ²Π° циклус Π½Π° ΠΈΠ·Π±ΠΈΡ€Π°ΡšΠ΅ Π½Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π° Π½Π° Ρ‚Ρ€Π°Π½ΡΠ°ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π°, Ρ‚Π°ΠΊΠ° ΡˆΡ‚ΠΎ Π·Π°ΠΏΠΎΡ‡Π½ΡƒΠ²Π° Π½Π° 123 - ΠΎΠ²Π° Π΅ PoW-captcha опишана ΠΏΠΎΠ³ΠΎΡ€Π΅, која ΡˆΡ‚ΠΈΡ‚ΠΈ ΠΎΠ΄ масовни рСгистрации. Π€ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° Π½Π°ΠΎΡ“Π° Ρ‚Ρ€Π°Π½ΡΠ°ΠΊΡ†ΠΈΡ˜Π° со ΠΏΠΎΡ‚Ρ€Π΅Π±Π½Π°Ρ‚Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°, Π° ΠΏΠΎΡ‚ΠΎΠ° ја ΠΏΠΎΡ‚ΠΏΠΈΡˆΡƒΠ²Π° ΠΏΡ€Π΅ΠΊΡƒ Waves Keeper.

DEX affiliate ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ° Π΅ достапна Π½Π° GitHub.com.

Π˜Π·Π²ΠΎΡ€: www.habr.com

Π”ΠΎΠ΄Π°Π΄Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€