ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΠ°ΡΡΡΠ»ΠΊΠ° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ Π²ΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅ — ΠΠ΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π±ΠΎΡ Π΄Π»Ρ Π½Π°ΠΊΡΡΡΠΊΠΈ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅, ΠΠ½ΡΡΠ°Π³ΡΠ°ΠΌ ΠΈ ΠΠ΄Π½ΠΎΠΊΠ»Π°ΡΡΠ½ΠΈΠΊΠΎΠ².
βΠΡΠΎΠΠΎΡβ β ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ Π·Π½Π°ΡΡ Π΄Π»Ρ Π½Π°ΡΠ°Π»Π°?
Π‘ ΠΊΠ°ΠΆΠ΄ΡΠΌ Π΄Π½Π΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π ΡΠ½Π΅ΡΠ° ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π²ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΠΈ Π±ΠΎΠ»ΡΡΠ΅. ΠΠΎ ΡΠ°Π·Π½ΡΠΌ Π΄Π°Π½Π½ΡΠΌ ΡΠΎΠΎΠ±ΡΠ°Π΅ΡΡΡ, ΡΡΠΎ ΠΏΠΎΡΡΠΈ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π²ΡΠΎΡΠΎΠΉ, ΠΊΡΠΎ ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠΎΠΌ, ΠΈΠΌΠ΅Π΅Ρ ΡΠ²ΠΎΠΉ Π°ΠΊΠΊΠ°ΡΠ½Ρ Π² ΡΠΎΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠ΅ΡΡΡ Π² ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠΌΠ΅Π΅Ρ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠΌΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Ρ Π»ΡΠ΄Π΅ΠΉ ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΡΠ΅Ρ Π½ΠΈΠΊΠΈ Π΄ΠΎΠ½Π΅ΡΡΠΈ ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΡΠΎΠΊΠΎΠΉ Π°ΡΠ΄ΠΈΡΠΎΡΠΈΠΈ.
ΠΠ»Ρ ΡΠ°ΠΊΠΈΡ ΡΠ»ΡΡΠ°Π΅Π² ΠΌΡ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΠΌ ΡΠ΄ΠΎΠ±Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΈΠ½ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΊΡΡΠ³Π° ΡΠΈΡΠ°ΡΠ΅Π»Π΅ΠΉ Π² ΡΠΎΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠ΅ΡΡΡ β ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Β«ΠΡΠΎΠΠΎΡΒ». ΠΠ° Π½Π°ΡΠ΅ΠΌ ΡΠ°ΠΉΡΠ΅ ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ ΠΏΠΎΠ»Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΎΠ½ΠΊΠΎΡΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Β«ΠΡΠΎΠΠΎΡΒ» ΠΏΠΎ ΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² ΡΠΎΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠ΅ΡΡΡ .
Π§ΡΠΎ Π΄Π΅Π»Π°Π΅Ρ Β«ΠΡΠΎΠΠΎΡΒ»?
Π Π°Π±ΠΎΡΡ Π½Π°Π΄ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΠΌ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠ΅ΠΌ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΡ Π²Π΅Π΄Π΅ΠΌ ΡΠΆΠ΅ Ρ 2009 Π³ΠΎΠ΄Π° ΠΈ Π·Π° ΡΡΠΎ Π²ΡΠ΅ΠΌΡ Π΄ΠΎΠ±ΠΈΠ»ΠΈΡΡ Π½Π΅ΠΌΠ°Π»ΡΡ ΡΡΠΏΠ΅Ρ ΠΎΠ² Π² ΠΎΡΠ²ΠΎΠ΅Π½ΠΈΠΈ ΠΏΡΠΎΡΡΠΎΡΠΎΠ² Π ΡΠ½Π΅ΡΠ°. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Β«ΠΡΠΎΠΠΎΡΒ» ΠΎΡΠ΅Π½Ρ Π»Π΅Π³ΠΊΠΎ ΡΠΊΠ°ΡΠ°ΡΡ ΠΈ Π±ΡΡΡΡΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π½Π° ΡΠ²ΠΎΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ. ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½, ΡΡΠΎΠ±Ρ ΠΠ°ΠΌ Π½Π΅ ΠΏΡΠΈΡΠ»ΠΎΡΡ ΡΡΠ°ΡΠΈΡΡ Π²ΡΠ΅ΠΌΡ Π½Π° ΡΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠΈΠ²ΡΠΊΠ°ΡΡ ΠΊΠΎ Π²ΡΠ΅ΠΌ Π΅Π³ΠΎ ΡΠΎΠ½ΠΊΠΎΡΡΡΠΌ, Π° ΡΡΠ°Π·Ρ Π½Π°ΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ ΠΆΠ΅Π»Π°Π΅ΠΌΡΠΌΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌΠΈ.
Β«ΠΡΠΎΠΠΎΡΒ» ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΏΡΠ°Π²Π»ΡΡΡ Π°ΠΊΠΊΠ°ΡΠ½ΡΠ°ΠΌΠΈ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠΎΡΡΠ΅ΡΡΡ ΡΠΈΠΏΠ° ΠΠ΄Π½ΠΎΠΊΠ»Π°ΡΡΠ½ΠΈΠΊΠΈ, ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅, ΠΠ°ΠΌΠ±Π° ΠΈΠ»ΠΈ LovePlanet. ΠΠ°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ ΠΈ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ. ΠΠ»Ρ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΡΡΡ ΠΏΠ°ΠΊΠ΅Ρ ΡΡΠ»ΡΠ³, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ Π΄Π»Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° Π² ΡΠ΅ΡΠΈ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π½Π° Π½Π°ΡΠ΅ΠΌ ΡΠ°ΠΉΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΠ΄ΠΎΠ±Π½ΡΠ΅ ΡΠ°ΡΠΈΡΡ, ΠΏΠΎΠ΄ΠΎΠ±ΡΠ°Π½Π½ΡΠ΅ ΠΏΠΎΠ΄ ΡΠ°Π·Π½ΡΠ΅ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΠΈ.
ΠΠΈΡΠ½ΠΎΠ΅ ΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΏΡΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΡΠ²ΠΎΠ΅Π³ΠΎ Π°ΠΊΠΊΠ°ΡΠ½ΡΠ° Π² ΡΠΎΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ΅ΡΠΈ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅Ρ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΡΡΠΈΠ»ΠΈΠΉ ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π½Π°ΡΠ΅Π³ΠΎ Β«ΠΡΠΎΠΠΎΡΠ°Β». ΠΠ°ΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΠ²ΠΎΠΉ Π°ΠΊΠΊΠ°ΡΠ½Ρ, ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠΈΠ»ΡΡΡΡ Π½Π° ΠΆΠ΅Π»Π°Π΅ΠΌΡΡ Π³ΡΡΠΏΠΏΡ Π»ΠΈΡ ΠΈ Π΄Π°Π»Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
- Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΠ°ΡΡΡΠ»ΠΊΠ° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ Π²ΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅;
- Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠ΅ΠΉ ΠΏΠΎ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ ΠΏΠΎΡΡΠΎΠ² Π² Π³ΡΡΠΏΠΏΠ΅ ΠΈΠ»ΠΈ Π½Π° ΡΡΠ΅Π½Π΅;
- Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΌΡ ΠΏΡΠΈΠ΅ΠΌΡ ΠΏΡΠΈΠ³Π»Π°ΡΠ΅Π½ΠΈΠΉ Π² Π΄ΡΡΠ·ΡΡ ΠΈ ΠΏΡΠΈΠ½ΡΡΠΈΡ ΡΠ°ΠΊΠΈΡ ΠΏΡΠΈΠ³Π»Π°ΡΠ΅Π½ΠΈΠΉ ΠΎΡ Π΄ΡΡΠ³ΠΈΡ ;
- Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΠ°ΡΡΡΠ»ΠΊΠ° ΠΏΡΠΈΠ³Π»Π°ΡΠ΅Π½ΠΈΠΉ Π² ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° ΠΈ Π³ΡΡΠΏΠΏΡ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅.
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΏΠΎΠ΄ ΠΠ°ΡΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΏΡΠΈ ΡΡΠΎΠΌ Π²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎ Π²Ρ ΠΎΠ΄Ρ Π² Π°ΠΊΠΊΠ°ΡΠ½ΡΡ Π±ΡΠ΄ΡΡ Π΄ΠΎΡΡΡΠΏΠ½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΠΠ°ΡΠ΅ΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅, ΡΡΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡ Π·Π°ΡΠΈΡΡ Π²ΡΠ΅Ρ Π΄Π°Π½Π½ΡΡ . ΠΠ° Π½Π°ΡΠ΅ΠΌ ΡΠ°ΠΉΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ ΡΠΊΠ°ΡΠ°ΡΡ Β«ΠΡΠΎΠΠΎΡΒ» ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ ΠΏΠΎΠ»Π½ΡΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π».
ΠΡΠΎΠ±ΠΎΡ Π΄Π°Π΅Ρ ΡΠΈΡΠΎΠΊΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π² Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠ°ΡΡΡΠ»ΠΊΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉΒ Π² ΠΠΊ
Π ΠΏΠ»Π°Π½Π΅ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠΊΠΈ ΠΡΠΎΠ±ΠΎΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΠ°Π΄ΠΎΠ²Π°ΡΡ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ. ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π°ΠΊΠΊΠ°ΡΠ½ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠΊΠΈ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΡΡΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΎ. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΠΈ ΠΏΠΎΠ½ΡΡΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΡΠΎΠ±ΠΎΡΠ° ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠΊΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Ρ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ Π°Π½ΠΊΠ΅Ρ, ΠΏΡΠΈΡΡΠΌ Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ Π²ΡΡΡΠ½ΡΡ, Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ, Ρ. ΠΊ. Π² ΠΡΠΎΠ±ΠΎΡ Π²ΡΡΡΠΎΠ΅Π½ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ°Ρ-Π±ΠΎΡ.
Π§ΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΡΠ°Ρ-Π±ΠΎΡΠ°, ΠΊΡΠΎΠΌΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠ°ΡΡΡΠ»ΠΊΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ Π² Π²ΠΊ, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ. Π ΡΡΠΎ ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΠΎΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ ΠΡΠΎΠ±ΠΎΡΠ°. ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠΊΠ° Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ ΡΠ°Π·Π²Π΅ΡΠ²Π»Π΅Π½Π½ΡΡ
Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ² Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ ΠΈ Π΄ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΈΡ
Π΄ΠΎ ΡΠ΅Π»Π΅Π²ΠΎΠ³ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ(ΠΏΠΎΠΊΡΠΏΠΊΠΈ, ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄Π° Π½Π° ΡΠ°ΠΉΡ ΠΈ ΡΠ΄. ) ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅!
βΠΡΠΎΠΠΎΡβ Π΄Π»Ρ Π±ΠΈΠ·Π½Π΅ΡΠ°
ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΠΌΡΡ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Β«ΠΡΠΎΠΠΎΡΠ°Β» Π² ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΈΡ ΡΠ΅Π»ΡΡ . ΠΠ΅Π΄Ρ Π΄Π»Ρ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΌΠ΅Π»ΠΊΠΎΠ³ΠΎ ΠΈ ΡΡΠ΅Π΄Π½Π΅Π³ΠΎ ΠΏΡΠ΅Π΄ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΠ΅Π»Ρ ΡΠ»ΠΎΠΆΠ½ΠΎ Π²ΡΠΉΡΠΈ Π½Π° ΡΠ΅ΠΊΠ»Π°ΠΌΡ Ρ ΡΠΈΡΠΎΠΊΠΎΠΉ Π°ΡΠ΄ΠΈΡΠΎΡΠΈΠ΅ΠΉ: ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π±Π°Π½Π½Π΅ΡΡ, Π²ΠΈΠ΄Π΅ΠΎ- ΠΈ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΡΡΠ΅Π±ΡΡΡ ΠΏΡΠΈΠ»ΠΈΡΠ½ΡΡ Π²Π»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° Π²ΡΠ³ΠΎΠ΄Π½Ρ. Β«ΠΡΠΎΠΠΎΡΒ» ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²ΡΠΉΡΠΈ Π»ΠΈΡΠ½ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊ ΡΠΎΠΉ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ Π»ΡΠ΄Π΅ΠΉ, Π½Π° ΠΊΠΎΡΠΎΡΡΡ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ ΠΠ°Ρ ΠΠΈΠ·Π½Π΅Ρ β Π±Π΅Π· Π»ΠΈΡΠ½ΠΈΡ Π·Π°ΡΡΠ°Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈ ΡΡΠ΅Π΄ΡΡΠ² Π½Π° Π½Π΅Π½ΡΠΆΠ½ΡΡ Π»ΡΠ΄Π΅ΠΉ ΠΈ Π½Π΅ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΡ ΡΠ΅ΠΊΠ»Π°ΠΌΡ.
Π‘Π΅Π³ΠΎΠ΄Π½Ρ ΡΠΎΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΠΌΠ°ΡΠΊΠ΅ΡΠΈΠ½Π³ ΡΡΠ°Π» ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ ΠΏΡΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ ΡΠΎΠ²Π°ΡΠΎΠ² Π² ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅. ΠΠΎ Π½Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ Π²ΡΠΏΠ°Π΄Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π½Π°Π½ΠΈΠΌΠ°ΡΡ Π²ΡΡΠΎΠΊΠΎΠΊΠ²Π°Π»ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΌΠ°ΡΠΊΠ΅ΡΠΎΠ»ΠΎΠ³ΠΎΠ² Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΌΠΈ. ΠΠ°Ρ Β«ΠΡΠΎΠΠΎΡΒ» ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ Π½ΡΠΆΠ½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌΠΈ, Π²ΠΊΠ»ΡΡΠ°Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π²ΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅, Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΡΠΉ ΠΏΠΎΡΡΠΈΠ½Π³ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅, ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π³ΡΡΠΏΠΏΠ°ΠΌΠΈ ΠΊΠΎΠ½ΡΠ°ΠΊΡΠΎΠ² ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅.
ΠΠ»Ρ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΈΡ ΡΠ΅Π»Π΅ΠΉ Π²ΡΠ΅Π³Π΄Π° Π²Π°ΠΆΠ΅Π½ ΠΌΠ°ΡΡΡΠ°Π± ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π°, ΠΏΠΎΡΡΠΎΠΌΡ Π΄Π»Ρ ΡΠ°ΠΊΠΈΡ ΡΠ΅Π»Π΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½Π°ΡΠΈΡ Π±Π΅Π·Π»ΠΈΠΌΠΈΡΠ½ΡΡ ΡΠ°ΡΠΈΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΎΠ±ΡΠ»ΡΠΆΠΈΡΡ Π½Π΅ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π°ΠΊΠΊΠ°ΡΠ½ΡΠΎΠ² Π² ΡΠΎΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠ΅ΡΡΡ , ΠΎΡ ΠΊΠΎΡΠΎΡΡΡ Π±ΡΠ΄Π΅Ρ ΠΈΡΡ ΠΎΠ΄ΠΈΡΡ Π½ΡΠΆΠ½Π°Ρ Π΄Π»Ρ ΠΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ.
ΠΠ°ΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ Π² Π½Π°ΡΠ°Π»Π΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΡ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ ΠΏΡΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ ΡΠΎΠ²Π°ΡΠ°:
- ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠ΅Π»Π΅Π²ΡΠ΅ Π°ΡΠ΄ΠΈΡΠΎΡΠΈΠΈ Π΄Π»Ρ ΠΠ°ΡΠ΅Π³ΠΎ ΡΠΎΠ²Π°ΡΠ°/ΡΡΠ»ΡΠ³ΠΈ;
- ΠΏΠΎΠ΄ΠΎΠ±ΡΠ°ΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈ ΡΡΠΊΠΈΠΉ ΠΊΠΎΠ½ΡΠ΅Π½Ρ Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΠΎΡΡΠΈΠ½Π³Π°;
- ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅;
- ΠΈ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ Π·Π°Π΄Π°ΡΡ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π΄Π»Ρ Β«ΠΡΠΎΠΠΎΡΠ°Β».
Π’Π΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠΎΠ½ΠΊΠΎΡΡΠΈ Π½Π° ΠΏΠ΅ΡΠ²ΡΠΉ Π²Π·Π³Π»ΡΠ΄ Π²ΡΠ΅Π³Π΄Π° ΠΊΠ°ΠΆΡΡΡΡ ΡΡΠ»ΠΎΠΆΠ½Π΅Π½Π½ΡΠΌΠΈ. ΠΠΎ Π΅ΡΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π΄ ΡΠ°Π±ΠΎΡΠΎΠΉ ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ ΠΏΠ΅ΡΠ΅Π΄ ΡΠΎΠ±ΠΎΠΉ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ ΡΠ΅Π»Ρ (Π΄ΠΎΡΡΠΈΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ ΠΏΡΠΎΠ΄Π°ΠΆ, Π·Π°ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΡΠΌΠΌΡ Π΄Π΅Π½Π΅Π³ ΠΈ Ρ.Π΄.), ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π°Π»Π΅Π΅ ΡΠΎΡΡΠ°Π²ΠΈΡΡ ΠΏΠΎΡΠ°Π³ΠΎΠ²ΡΠΉ ΠΏΠ»Π°Π½ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΠΈ ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ ΡΠ°Π·Π±ΠΈΡΠ°ΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠΉ Π²ΠΎΠΏΡΠΎΡ ΠΏΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ Β«ΠΡΠΎΠΠΎΡΠ°Β». Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·Π±ΠΈΡΡ ΡΠ»ΠΎΠΆΠ½ΡΡ ΠΊΠ°ΡΡΠΈΠ½Ρ ΠΏΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΡΡΠ°ΠΏΡ, ΠΈ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ· Π½ΠΈΡ ΠΈΡΠΊΠ°ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ Π½Π° Π½Π°ΡΠ΅ΠΌ ΡΠ°ΠΉΡΠ΅.
ΠΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΠΌ ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ°ΡΡΠΈ ΠΎΠ± ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Β«ΠΡΠΎΠΠΎΡΠ°Β». ΠΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΠΎΠ»Π΅Π·Π½Ρ ΠΈΡΡΠΎΡΠΈΠΈ ΡΡΠΏΠ΅Ρ Π°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° ΠΏΡΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΠΎΠ΄ ΠΏΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΠ΅ ΡΠ΅Π»ΠΈ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΠ°ΠΊΠΎΠΉ Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π» Ρ Π²ΠΈΠ΄Π΅ΠΎ-ΡΡΠΎΠΊΠ°ΠΌΠΈ ΠΈ ΠΏΠΎΡΠ°Π³ΠΎΠ²ΡΠΌΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌΠΈ Π²ΡΠ΅Π³Π΄Π° ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΠΠ°ΠΌ ΡΠ΅ΡΠΈΡΡ Π²ΠΎΠΏΡΠΎΡΡ Π² Ρ ΠΎΠ΄Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π½Π°ΡΠ΅Π³ΠΎ Β«ΠΡΠΎΠΠΎΡΠ°Β». ΠΠ΅Π»Π°Π΅ΠΌ ΠΠ°ΠΌ ΡΡΠΏΠ΅Ρ Π°!
ΠΠ°ΠΊ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π² ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅
Π Π΄Π°Π½Π½ΠΎΠΌ ΡΡΠΎΠΊΠ΅ ΠΌΡ ΡΠ°ΡΡΠΊΠ°ΠΆΠ΅ΠΌ, ΠΊΠ°ΠΊ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π±ΠΎΡΠ° ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ Π²Π°ΠΌ ΠΈΠ»ΠΈ Π²Π°ΡΠ΅ΠΌΡ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΡ Π² ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΎ Π½ΠΎΠ²ΠΎΠΌ ΠΏΡΠΈΠ½ΡΡΠΎΠΌ Π·Π°ΠΊΠ°Π·Π΅. ΠΠΎΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°ΠΌ ΡΡΠΎΡΠ½ΠΈΡΡ Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π΅ΡΠ°Π»ΠΈ, ΠΊΠ°ΡΠ°ΡΡΠΈΠ΅ΡΡ Π·Π°ΠΊΠ°Π·Π°, ΡΠΎΠ±ΡΠ°ΡΡ ΠΊΠΎΠ½ΡΠ°ΠΊΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, Π° Π·Π°ΡΠ΅ΠΌ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ Π²ΡΡ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΠ΄Π½ΠΈΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΡ Π² ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅.
ΠΡΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ, Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΡΡΡΠΎΠΈΡΡ Π΄Π°Π½Π½ΡΠΉ ΡΡΠ΅Π½Π°ΡΠΈΠΉ ΡΠ°ΠΊ, ΡΡΠΎ Π±ΠΎΡ Π±ΡΠ΄Π΅Ρ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π²ΠΎ Π²ΡΠ΅Ρ Π²Π°ΡΠΈΡ ΠΊΠ°Π½Π°Π»Π°Ρ , Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π² Telegram, Π½Π° Π²Π°ΡΠ΅ΠΌ ΡΠ°ΠΉΡΠ΅ ΠΈΠ»ΠΈ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ. ΠΡΠΈ ΡΡΠΎΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎ Π²ΡΠ΅Ρ ΠΏΡΠΈΠ½ΡΡΡΡ Π·Π°ΠΊΠ°Π·Π°Ρ Π±ΠΎΡ Π±ΡΠ΄Π΅Ρ Π²ΡΡΡΠ»Π°ΡΡ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΡ Π² Π»ΠΈΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅.
Π’Π°ΠΊΠΆΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΎΡΠΏΡΠ°Π²ΠΊΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ:
- Π²Π°ΠΌ Π² Telegram
- Π² Π³ΡΡΠΏΠΏΡ Π² Telegram
- Π½Π° email
- Π² Google Π’Π°Π±Π»ΠΈΡΡ.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π±ΠΎΡ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π½Π΅Π΅ ΠΏΠΈΡΠ°Π»ΠΈ Π±ΠΎΡΡ
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠΉ
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΡΠ΅Π½Π°ΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ±ΠΈΡΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅ Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°. ΠΠ°ΡΠ½Π΅ΠΌ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΊΠ°Π½Π°Π»Π°. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Π΅ΡΠ»ΠΈ Π²Π°Ρ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π±ΡΠ΄Π΅Ρ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
ΠΊΠ°Π½Π°Π»Π°Ρ
. ΠΠΎΠ±Π°Π²ΡΡΠ΅ Π±Π»ΠΎΠΊ Π£ΡΠ»ΠΎΠ²ΠΈΡ ΠΈ ΠΏΡΠΎΠΏΠΈΡΠΈΡΠ΅ Π² Π½Π΅ΠΌ: $channelType == "vk"
Π Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ Π΄Π»Ρ Π±ΠΎΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΠ°ΡΡΡΡ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ Π² ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅. ΠΠ½ΡΡΡΡΠΊΡΠΈΡ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π΄ΡΡΠ³ΠΈΡ
ΠΊΠ°Π½Π°Π»ΠΎΠ² ΡΠΌΠΎΡΡΠΈΡΠ΅ Π·Π΄Π΅ΡΡ. Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ²ΡΠ·Ρ ΠΎΡ else
ΠΈ Π½Π°ΠΏΠΈΡΠΈΡΠ΅:
ΠΠ°Π½Π½ΡΠΉ ΡΡΠ΅Π½Π°ΡΠΈΠΉ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π² ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅. ΠΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΠ΅ ΠΊΠ°Π½Π°Π» ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΈ Π±Π΅ΡΠ΅Π΄ΡΠΉΡΠ΅ Ρ Π±ΠΎΡΠΎΠΌ Π² ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅.
ΠΡΡΠ°Π²ΠΈΠΌ ΡΡΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠ»ΡΡΠ°ΠΉ, Π΅ΡΠ»ΠΈ Π²Ρ Π·Π°Π±ΡΠ΄Π΅ΡΠ΅, Π³Π΄Π΅ Π½ΡΠΆΠ½ΠΎ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π±ΠΎΡΠ°.
ΠΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΠ΅ ΠΊΠ°Π½Π°Π» ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅
ΠΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΠ΅ ΠΊΠ°Π½Π°Π». ΠΠ»Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ ΡΡΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠ΅ΠΉ. Π’ΠΎΠΊΠ΅Π½, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ, ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ Π²Π°ΠΌ ΠΏΠΎΠ·ΠΆΠ΅.
ΠΡ Π±ΡΠ΄Π΅ΠΌ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΈΠΌΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΈΠ· Π΅Π³ΠΎ ΠΏΡΠΎΡΠΈΠ»Ρ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅, Π° ΡΠ°ΠΊΠΆΠ΅ ID ΡΡΡΠ°Π½ΠΈΡΡ Π΄Π»Ρ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΡΡΡΠ°Π½ΠΈΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°. ΠΠΎΡΡΠΎΠΌΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π½ΡΠΆΠ½ΠΎ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅, Π° Π½Π΅ Π² ΡΠ΅ΡΡΠΎΠ²ΠΎΠΌ Π²ΠΈΠ΄ΠΆΠ΅ΡΠ΅. Π’ΠΎ Π΅ΡΡΡ, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΠ°Π±ΠΎΡΡ Π±ΠΎΡΠ°, Π½Π°ΠΏΠΈΡΠΈΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π²Π°ΡΠ΅ΠΌΡ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Ρ
ΠΠΎΡΠ»Π΅ Π»ΡΠ±ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΡΡΠ΅Π½Π°ΡΠΈΠΈ, Π½Π΅ Π·Π°Π±ΡΠ²Π°ΠΉΡΠ΅ Π½Π°ΠΆΠΈΠΌΠ°ΡΡ «ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ» ΠΈ Π΄ΠΎΠΆΠ΄Π°ΡΡΡΡ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ Π² ΠΊΠ°Π½Π°Π».
ΠΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠΊΡΠ°Π½ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΡ
ΠΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠΊΡΠ°Π½ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΡ. Π‘Π²ΡΠΆΠΈΡΠ΅ Π²Π°ΡΠΈΠ°Π½Ρ ΡΡΠ»ΠΎΠ²ΠΈΠΉ $channelType == "vk"
Ρ Π±Π»ΠΎΠΊΠΎΠΌ Π’Π΅ΠΊΡΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π½Π°ΠΏΠΈΡΠΈΡΠ΅:
ΠΠ΄ΡΠ°Π²ΡΡΠ²ΡΠΉΡΠ΅, $rawRequest.user_info.first_name! Π― ΠΏΠΎΠΌΠΎΠ³Ρ Π²Π°ΠΌ ΠΎΡΡΠ°Π²ΠΈΡΡ Π·Π°ΡΠ²ΠΊΡ Π½Π° ΠΎΠΊΠ°Π·Π°Π½ΠΈΠ΅ Π½Π°ΡΠΈΡ
ΡΡΠ»ΡΠ³. Π‘ ΡΠ΅Π½Π°ΠΌΠΈ ΠΈ Π°ΠΊΡΠΈΡΠΌΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ ΠΏΠΎ Π΄Π°Π½Π½ΠΎΠΉ ΡΡΡΠ»ΠΊΠ΅: (ΡΡΡΠ»ΠΊΠ°)
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ $rawRequest ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΠΈΠΌΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΈΠ· Π΅Π³ΠΎ ΠΏΡΠΎΡΠΈΠ»Ρ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅.
ΠΠΎΠ±Π°Π²ΡΡΠ΅ Π½Π° ΡΠΊΡΠ°Π½ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΡ Π±Π»ΠΎΠΊ ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄:
Π£ΡΠΎΡΠ½ΠΈΠΌ Π²ΠΈΠ΄ ΡΡΠ»ΡΠ³ΠΈ.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΡΠ²ΡΠΆΠ΅ΠΌ Π±Π»ΠΎΠΊ ΠΠ΅ΡΠ΅Ρ
ΠΎΠ΄ Ρ Π±Π»ΠΎΠΊΠΎΠΌ text to $var: ΠΠ°ΠΊΠΎΠΉ Π²ΠΈΠ΄ ΡΡΠ»ΡΠ³ΠΈ Π²Π°ΠΌ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ? ΠΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ΠΎΠΏΠΈΡΠΈΡΠ΅ ΠΎΠ΄Π½ΠΈΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ.
ΠΠΌΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ: $service
ΠΠ»ΠΎΠΊΒ text to $var ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ Π»ΡΠ±ΠΎΠΉ ΡΠ΅ΠΊΡΡ, ΡΠ°ΠΊ ΡΡΠΎ ΠΏΡΠΎΠΏΠΈΡΡΠ²Π°ΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·Π½ΡΡ ΠΈΠ½ΡΠ΅Π½ΡΠΎΠ² Π΄Π»Ρ ΠΏΡΠΈΠ½ΡΡΠΈΡ Π²ΠΈΠ΄Π° ΡΡΠ»ΡΠ³ΠΈ Π½Π΅ Π½ΡΠΆΠ½ΠΎ.
ΠΠ°ΠΏΡΠΎΡΠΈΡΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΡΠ²ΡΠΆΠΈΡΠ΅Β Π±Π»ΠΎΠΊ ΠΠ΅ΡΠ΅Ρ
ΠΎΠ΄ ΠΏΠΎΡΠ»Π΅ Π²Π²ΠΎΠ΄Π° $service
Β Ρ Π΅ΡΠ΅ ΠΎΠ΄Π½ΠΈΠΌ Π±Π»ΠΎΠΊΠΎΠΌΒ text to $var Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ΠΌ:
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈΠ»ΠΈ ΠΏΠΎΠΆΠ΅Π»Π°Π½ΠΈΡ, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ΠΎΡΡΠ°Π²ΡΡΠ΅ ΠΈΡ
ΡΠ΅ΠΉΡΠ°Ρ ΠΎΠ΄Π½ΠΈΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ.
ΠΠΌΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ: $comment
ΠΠ°ΠΏΡΠΎΡΠΈΡΠ΅ ΡΠ΅Π»Π΅ΡΠΎΠ½Π½ΡΠΉ Π½ΠΎΠΌΠ΅Ρ
ΠΠ»Ρ Π·Π°ΠΏΡΠΎΡΠ° Π½ΠΎΠΌΠ΅ΡΠ° ΡΠ΅Π»Π΅ΡΠΎΠ½Π° ΡΠ²ΡΠΆΠΈΡΠ΅ Π±Π»ΠΎΠΊ ΠΠ΅ΡΠ΅Ρ
ΠΎΠ΄ ΠΏΠΎΡΠ»Π΅ Π²Π²ΠΎΠ΄Π° $comment
Β Ρ Π±Π»ΠΎΠΊΠΎΠΌ Π’Π΅ΠΊΡΡ: Π£ΠΊΠ°ΠΆΠΈΡΠ΅, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, Π²Π°Ρ ΡΠ΅Π»Π΅ΡΠΎΠ½ Π΄Π»Ρ ΡΠ²ΡΠ·ΠΈ.
ΠΠΎΠ±Π°Π²ΡΡΠ΅ Π±Π»ΠΎΠΊ ΠΠ½ΡΠ΅Π½ΡΡ Π½Π° ΡΠΊΡΠ°Π½ Ρ ΡΠ΅ΠΊΡΡΠΎΠΌΒ Π£ΠΊΠ°ΠΆΠΈΡΠ΅, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, Π²Π°Ρ ΡΠ΅Π»Π΅ΡΠΎΠ½ Π΄Π»Ρ ΡΠ²ΡΠ·ΠΈ
. ΠΡΠ±Π΅ΡΠΈΡΠ΅ Π³ΠΎΡΠΎΠ²ΡΠΉ ΠΈΠ½ΡΠ΅Π½Ρ Π’Π΅Π»Π΅ΡΠΎΠ½.
Π‘Π²ΡΠΆΠΈΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΒ ΠΡΠ±Π°Ρ Π΄ΡΡΠ³Π°Ρ ΡΡΠ°Π·Π°Β Ρ Π±Π»ΠΎΠΊΠΎΠΌΒ Π’Π΅ΠΊΡΡ: ΠΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, Π½Π°ΠΏΠΈΡΠΈΡΠ΅ ΡΠΎΡΡΠΈΠΉΡΠΊΠΈΠΉ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΠΉ ΡΠ΅Π»Π΅ΡΠΎΠ½ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ +79111112233.
ΠΠΎΠ±Π°Π²ΡΡΠ΅ Π±Π»ΠΎΠΊΒ ΠΠ΅ΡΠ΅Ρ
ΠΎΠ΄ Π½Π° ΡΠΊΡΠ°Π½Β Ρ ΡΠ΅ΠΊΡΡΠΎΠΌ ΠΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, Π½Π°ΠΏΠΈΡΠΈΡΠ΅ ΡΠΎΡΡΠΈΠΉΡΠΊΠΈΠΉ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΠΉ ΡΠ΅Π»Π΅ΡΠΎΠ½ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ +79111112233
.
Π‘Π²ΡΠΆΠΈΡΠ΅ Π±Π»ΠΎΠΊ ΠΠ΅ΡΠ΅Ρ
ΠΎΠ΄ Ρ ΡΠΊΡΠ°Π½ΠΎΠΌΒ Π£ΠΊΠ°ΠΆΠΈΡΠ΅, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, Π²Π°Ρ ΡΠ΅Π»Π΅ΡΠΎΠ½ Π΄Π»Ρ ΡΠ²ΡΠ·ΠΈ.
.
ΠΡΠΎΡΠΌΠΈΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΎΡ ΠΈΠ½ΡΠ΅Π½ΡΠ° Π’Π΅Π»Π΅ΡΠΎΠ½
ΡΠ΄Π΅Π»Π°ΠΉΡΠ΅ ΡΠ²ΡΠ·Ρ Ρ Π±Π»ΠΎΠΊΠΎΠΌ Π£ΡΠ»ΠΎΠ²ΠΈΠ΅.
ΠΠ° ΡΡΠΎΠΌ ΡΡΠ°ΠΏΠ΅ Π±ΡΠ΄ΡΡΠ΅ ΠΎΡΠ΅Π½Ρ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½Ρ. ΠΡΠ»ΠΈ Π²Ρ ΠΏΡΠΎΠΏΡΡΡΠΈΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΠΏΡΠΎΠ±Π΅Π» ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Ρ ΠΎΡΡ Π±Ρ ΠΎΠ΄ΠΈΠ½ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ», ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ.
Π Π±Π»ΠΎΠΊ Π£ΡΠ»ΠΎΠ²ΠΈΠ΅ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΠΈ Π²ΡΡΠ°Π²ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
$text = "ΠΠΎΠ»ΡΡΠ΅Π½ Π½ΠΎΠ²ΡΠΉ Π·Π°ΠΊΠ°Π·!" + "\n" + "Π‘ΡΡΠ»ΠΊΠ° Π½Π° ΠΏΡΠΎΡΠΈΠ»Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°: " + "https://vk. com/id" + $rawRequest.user_info.id + "\n" + "Π’Π΅Π»Π΅ΡΠΎΠ½: " + $PHONE + "\n" + "ΠΠΈΠ΄ ΡΡΠ»ΡΠ³ΠΈ: " + $service + "\n" + "ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ: " + $comment, $num = _.random(1, 9223372036854775808)
Π§ΡΠΎ ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ?
- ΠΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
$text
, Π² ΠΊΠΎΡΠΎΡΡΡ ΠΏΠΎΠΌΠ΅ΡΡΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ. - ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΡΡΠΎΠΊ (ΡΡΡΠΎΠΊΠ° β ΡΡΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ Π² ΡΠ·ΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Javascript). Π’ΠΎ Π΅ΡΡΡ ΠΏΠΎ ΡΡΡΠΈ ΠΌΡ ΡΠΊΠ»Π°Π΄ΡΠ²Π°Π΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈ Π² Ρ ΠΎΠ΄Π΅ ΡΡΠ΅Π½Π°ΡΠΈΡ, Ρ ΡΠ΅ΠΊΡΡΠΎΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΡΡΠ½ΡΡΡ ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
- Π’Π°ΠΊΠΆΠ΅ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
$rawRequest.user_info.id
, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ id ΡΡΡΠ°Π½ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. - Π Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΡ ΡΡΡΠΎΠΊ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π·Π½Π°ΠΊΠ°
. - ΠΠΎΡΠ»Π΅ ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ
$text
, ΠΌΡ ΡΡΠ°Π²ΠΈΠΌ Π·Π°ΠΏΡΡΡΡ, ΠΏΡΠΎΠ±Π΅Π» ΠΈ ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ$num
. - ΠΡΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΌΡ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΠΌ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΎΡ
1
Π΄ΠΎ9223372036854775808
Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Π°_. random
. ΠΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π½ΡΠΆΠ΅Π½ Π΄Π»Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΏΡΠΈ ΠΎΡΠΏΡΠ°Π²ΠΊΠ΅ Π² ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅. - ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π² ΡΡΠ΅Π½Π°ΡΠΈΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅, ΡΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΠ΅, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, ΠΈ ΡΠ΅ΠΊΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ Π²Π°ΡΠΈΠΌ ΡΡΠ΅Π½Π°ΡΠΈΠ΅ΠΌ.
ΠΠ°ΠΏΠΎΠΌΠΈΠ½Π°Π΅ΠΌ, ΡΡΠΎ Π±ΠΎΡ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ, Ρ ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΎΠ½ ΡΠΆΠ΅ ΠΎΠ±ΡΠ°Π»ΡΡ. ΠΠΎΡΡΠΎΠΌΡ, ΡΡΠΎΠ±Ρ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ Π·Π°ΡΠ²ΠΊΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΌΠΎΠ³ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π΄Π»Ρ Π½Π°ΡΠ°Π»Π° Π½Π°ΠΏΠΈΡΠ°ΡΡ Π»ΡΠ±ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΌΠΎΠΌΡ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Ρ.
ΠΡΠΎΡΠΌΠΈΡΠ΅
HTTP-Π·Π°ΠΏΡΠΎΡΠΡ Π±Π»ΠΎΠΊΠ° Π£ΡΠ»ΠΎΠ²ΠΈΠ΅ ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ²ΡΠ·Ρ Ρ Π±Π»ΠΎΠΊΠΎΠΌ HTTP-Π·Π°ΠΏΡΠΎΡ.
- ΠΌΠ΅ΡΠΎΠ΄
POST
- Π²
BODY
ΡΠΊΠΎΠΏΠΈΡΡΠΉΡΠ΅ ΠΈ Π²ΡΡΠ°Π²ΡΡΠ΅:{"response": 484045}
ΠΠΊΠ»Π°Π΄ΠΊΠΈ RESPONSE
ΠΈ HEADERS
Π·Π°ΠΏΠΎΠ»Π½ΡΡΡ Π½Π΅ Π½ΡΠΆΠ½ΠΎ. Π‘ΠΎΡΡΠ°Π²ΠΈΠΌ URL Π·Π°ΠΏΡΠΎΡΠ°. ΠΠ½ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ:
https://api.vk.com/method/messages.send?user_ids=123456789&random_id=${num}&message=${text}&access_token=dfgyui4567cvfghj34567fghjk567gfh546yuersbdwy5muej654hg&v=5. 101
Π Π°Π·Π±Π΅ΡΠ΅ΠΌ Π΅Π³ΠΎ ΠΏΠΎ ΡΠ°ΡΡΡΠΌ.
messages.send
— ΡΡΠΎ ΠΌΠ΅ΡΠΎΠ΄ API ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅user_ids=
β ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ID ΡΡΡΠ°Π½ΠΈΡΡ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅- ID ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠΊΠ°Π·Π°Π½ΠΎ Π² Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅
- ΠΠ°ΠΊ ΠΏΠΎΠ»ΡΡΠΈΡΡ ID, Π΅ΡΠ»ΠΈ ID ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ Π½Π° Π±ΡΠΊΠ²Π΅Π½Π½ΠΎ-ΡΠΈΡΡΠΎΠ²ΠΎΠ΅, ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π·Π΄Π΅ΡΡ
random_id
— ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π΄Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅. Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° ΠΌΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ$num
. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΠΈΡΠ΅ΠΌrandom_id=${num}message
β ΡΡΠΎ ΡΠ°ΠΌ ΡΠ΅ΠΊΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ. ΠΠ΄Π΅ΡΡ ΠΌΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ$text
. ΠΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π΅Π΅ ΡΠ°Π½Π΅Π΅ Π² Π±Π»ΠΎΠΊΠ΅ Π£ΡΠ»ΠΎΠ²ΠΈΠ΅. Π§ΡΠΎΠ±Ρ Π²ΡΡΠ°ΡΠΈΡΡ Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΏΠΈΡΠ΅ΠΌmessage=${text}
access_token=
Π·Π΄Π΅ΡΡ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΡΠΎΠΊΠ΅Π½ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Ρ. ΠΠ³ΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΠΏΡΠΎΡΠΈΡΡ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ Π³ΡΡΠΏΠΏΡ ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ Π΄Π°Π½Π½ΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ. ΠΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠΎΠΊΠ΅Π½, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈ Π½Π° ΡΡΠ°ΠΏΠ΅ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ Π±ΠΎΡΠ° Aimylogic ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅
ΠΠΊΡΡΠ°Π»ΡΠ½ΡΡ Π²Π΅ΡΡΠΈΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° API ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅
ΠΠΎΡΠ»Π΅ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΡ HTTP-Π·Π°ΠΏΡΠΎΡΠ° ΡΠΎΡ
ΡΠ°Π½ΠΈΡΠ΅ Π±Π»ΠΎΠΊ. ΠΠ°ΡΠ΅ΠΌ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡΠ΅ Π²Π°ΡΠΈΠ°Π½Ρ «ΠΠ°Π²Π΅ΡΡΠ΅Π½ ΡΡΠΏΠ΅ΡΠ½ΠΎ» Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ, Π²Π°ΡΠ° Π·Π°ΡΠ²ΠΊΠ° ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½Π°! Π Π±Π»ΠΈΠΆΠ°ΠΉΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Ρ Π²Π°ΠΌΠΈ ΡΠ²ΡΠΆΠ΅ΡΡΡ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ.
Π Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½Π° ΡΡΠΎΡ ΡΠΊΡΠ°Π½ ΠΈΠ½ΡΠ΅Π½ΡΡ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΌΠΎΠΆΠ΅Ρ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π½Π° ΡΡΠΎΠΌ ΡΡΠ°ΠΏΠ΅.
ΠΠ°ΡΠΈΠ°Π½Ρ «ΠΠ°Π²Π΅ΡΡΠ΅Π½ Ρ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ» ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡΠ΅ Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ Π§ΡΠΎ-ΡΠΎ ΠΏΠΎΡΠ»ΠΎ Π½Π΅ ΡΠ°ΠΊ. ΠΡΠΈΠ±ΠΊΠ° $httpStatus. ΠΠ΅ ΡΡΡΠ°ΡΠ½ΠΎ! ΠΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ ΡΠΈΡΠ°Π΅Ρ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΈ Ρ Π±ΠΎΡΠΎΠΌ, ΡΠ°ΠΊ ΡΡΠΎ ΠΌΡ ΡΠ²ΡΠΆΠ΅ΠΌΡΡ Ρ Π²Π°ΠΌΠΈ.
ΠΠ° ΡΡΠΎΡ ΡΠΊΡΠ°Π½ Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΈΠ½ΡΠ΅Π½ΡΡ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΌΠΎΠΆΠ΅Ρ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π½Π° ΡΡΠΎΠΌ ΡΡΠ°ΠΏΠ΅.
ΠΠΎΡ ΠΈ Π²ΡΠ΅, Π³ΠΎΡΠΎΠ²ΠΎ!
Π’Π΅ΠΏΠ΅ΡΡ ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΎΠ±ΡΠ°ΡΡΡΡ Ρ Π±ΠΎΡΠΎΠΌ ΠΈ ΠΎΡΡΠ°Π²ΠΈΡΡ ΡΠ²ΠΎΠΈ ΠΊΠΎΠ½ΡΠ°ΠΊΡΡ. Π ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°.
ΠΠ΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉ, ΠΎΡΠΏΡΠ°Π²ΠΈΠ² ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π² ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅.
ΠΎΡΠΏΡΠ°Π²ΠΊΠ° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ Π² Π±Π΅ΡΠ΅Π΄Ρ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ | BLASTHACK
JavaScript ΠΎΡΠΊΠ»ΡΡΡΠ½. Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π°Ρ ΡΠ°ΠΉΡ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅ JavaScript Π² ΡΠ²ΠΎΡΠΌ Π±ΡΠ°ΡΠ·Π΅ΡΠ΅.
- #1
ΠΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ ΠΎΡΠΏΡΠ°Π²ΠΊΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ Π² Π±Π΅ΡΠ΅Π΄Ρ ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ Π³ΡΡΠΏΠΏΡ Π² Π²ΠΊ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΠΈ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ? ΠΡΠΈΠΌΠ΅ΡΠΎΠ² Π½Π΅ Π½Π°ΡΠ΅Π»
Β
Π‘ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΏΠΎ Π΄Π°ΡΠ΅ Π‘ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΏΠΎ Π³ΠΎΠ»ΠΎΡΠ°ΠΌ
- #2
ΠΡΠΏΡΠ°Π²ΠΈΡΡ Π³Π΅Ρ Π·Π°ΠΏΡΠΎΡ Π½Π° Π°ΠΏΠΈ Π²ΠΊ
https://api. vk.com/method/messages.send?&peer_id=ΠΈΠ΄_Π±Π΅ΡΠ΅Π΄Ρ(Π΅ΡΠ»ΠΈ Π±Π΅ΡΠ΅Π΄Π° Π³ΡΡΠΏΠΏΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½Π° ΠΈ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½Π°Ρ, ΡΠΎ ΠΈΠ΄ ΡΠ°Π²Π΅Π½ 2000000001)&message=ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅&access_token=ΡΠΎΠΊΠ΅Π½_Π³ΡΡΠΏΠΏΡ_Ρ_ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ_Π½Π°_ΠΎΡΠΏΡΠ°Π²ΠΊΡ_ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ&v=5.41
Β
ΠΠΎΠ·ΠΈΡΠΈΠ²Π½ΡΠΉ Π³ΠΎΠ»ΠΎΡ 0 ΠΠ΅Π³Π°ΡΠΈΠ²Π½ΡΠΉ Π³ΠΎΠ»ΠΎΡ
- #3
ΠΠΎΠΏΡΠΎΠ±ΡΠΉ ΡΠ·Π½Π°Π²Π°ΡΡ ΡΠ΅ΠΊΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ, Π·Π°Π΄Π°Π² ΠΏΠ΅ΡΠ΅Π΄ ΡΡΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡ(current_time_x) ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΡΡ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΎΡΠΏΡΠ°Π²ΠΊΠ° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, ΠΈ ΡΠ΅ΡΠ΅Π· ΠΏΠΎΡΠΎΠΊΠΈ Π²ΠΊΠ»ΡΡΠΈΡΡ Π±ΠΎΡΠ° ΠΈ ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ. (ΡΡΠΎΠ± while Π½Π΅ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π» ΡΠ°Π±ΠΎΡΡ ΡΠΊΡΠΈΠΏΡΠ°, Π»ΠΎΠ³ΠΈΡΠ½ΠΎ)
import datetime import time as tm from threading import Thread current_time_1, current_time_2, current_time_3, current_time_4 = '21:30', '11:35', '7:10', '01:10' def checktime(): while True: time = datetime. datetime.now().strftime("%H:%M") if str(time) == current_time_1: """do something""" bot.send_message(message.chat.id, 'TEXT') else: pass if str(time) == current_time_2: """do something""" bot.send_message(message.chat.id, 'TEXT') else: pass if str(time) == current_time_3: """do something""" bot.send_message(message.chat.id, 'TEXT') else: pass if str(time) == current_time_4: """do something""" bot.send_message(message.chat.id, 'TEXT') else: pass tm.sleep(10) t1 = Thread(target=checktime) t1 = Thread(target=bot.polling(none_stop=True)) t1.start() t2.start()
Β
ΠΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅:
ΠΠΎΠ·ΠΈΡΠΈΠ²Π½ΡΠΉ Π³ΠΎΠ»ΠΎΡ 1 ΠΠ΅Π³Π°ΡΠΈΠ²Π½ΡΠΉ Π³ΠΎΠ»ΠΎΡ
- #4
cron + if/elif
Β
ΠΠΎΠ·ΠΈΡΠΈΠ²Π½ΡΠΉ Π³ΠΎΠ»ΠΎΡ -2 ΠΠ΅Π³Π°ΡΠΈΠ²Π½ΡΠΉ Π³ΠΎΠ»ΠΎΡ
ΠΠΎΠΉΠ΄ΠΈΡΠ΅ ΠΈΠ»ΠΈ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠΉΡΠ΅ΡΡ Π΄Π»Ρ ΠΎΡΠ²Π΅ΡΠ°.
SF Plugin VKMessages
- Niko
- Π§ΠΈΡΡ 2 3
- ΠΡΠ²Π΅ΡΡ
- 40
- ΠΡΠΎΡΠΌΠΎΡΡΡ
- 13K
Π§ΠΈΡΡ
mgvq
[Lua] Telegram
- _RaDley_
- ΠΠΎΠΏΡΠΎΡΡ
- ΠΡΠ²Π΅ΡΡ
- 7
- ΠΡΠΎΡΠΌΠΎΡΡΡ
- 515
ΠΠΎΠΏΡΠΎΡΡ
yung milonov
VKClient — ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ ΡΠ°ΡΡΡΠ»ΠΊΠΈ Π² ΠΠΊ. ΠΠ²ΡΠΎΠΎΡΠ²Π΅ΡΡΠΈΠΊ, ΠΏΠ΅ΡΠ²ΠΎΠ½Π°Ρ , Π½Π°ΠΊΡΡΡΠΊΠ° Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ Π² Π³ΡΡΠΏΠΏΠ΅, ΠΏΠ°ΡΡΠ΅Ρ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅
- JDev
- ΠΡΡΠ³ΠΎΠ΅ 8 9 10
- ΠΡΠ²Π΅ΡΡ
- 149
- ΠΡΠΎΡΠΌΠΎΡΡΡ
- 24K
ΠΡΡΠ³ΠΎΠ΅
$Aronakich
GalaxyProject — Π£Π½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΉ Π±ΠΎΡ Π΄Π»Ρ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅
- akity
- ΠΡΠΎΠ΄Π°ΠΆΠ° ΡΠΈΡΠΎΠ²/ΡΠΎΡΡΠ°
- ΠΡΠ²Π΅ΡΡ
- 5
- ΠΡΠΎΡΠΌΠΎΡΡΡ
- 1K
ΠΡΠΎΠ΄Π°ΠΆΠ° ΡΠΈΡΠΎΠ²/ΡΠΎΡΡΠ°
ke1nex
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ ΡΠ°ΡΡΡΠ»ΠΊΠΈ ΠΈ ΠΏΡΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ Π½Π° ΠΠ²ΠΈΡΠΎ — Avito Monster Sender
- JDev
- ΠΡΡΠ³ΠΎΠ΅ 7 8 9
- ΠΡΠ²Π΅ΡΡ
- 128
- ΠΡΠΎΡΠΌΠΎΡΡΡ
- 11K
ΠΡΡΠ³ΠΎΠ΅
JDev
ΠΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ:
ΠΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ Π‘ΡΡΠ»ΠΊΠ°
ΠΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ Π±ΠΎΡΠ° Π΄Π»Ρ ΠΠ ΠΈ Π’Π΅Π»Π΅Π³ΡΠ°ΠΌ
ΠΡ ΡΠΆΠ΅ ΡΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΈ, ΠΊΠ°ΠΊ ΠΌΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΠ΅ VPS Π΄Π»Ρ ΡΡΡΠ΄Π΅Π½ΡΠΎΠ², ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ ΡΡΠΈΠ»ΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°ΡΡ. ΠΠ΄ΠΈΠ½ ΠΈΠ· Π½Π°ΡΠΈΡ
ΠΏΠΎΠ΄ΠΎΠΏΠ΅ΡΠ½ΡΡ
ΠΠ°Π²Π΅Π» ΡΠ΄Π΅Π»Π°Π» ΠΏΡΠΎΡΡΠ΅Π½ΡΠΊΠΈΡ
ΡΠ΅Π»Π΅Π³ΡΠ°ΠΌ ΠΈ ΠΠ Π±ΠΎΡΠΎΠ² Π΄Π»Ρ FAQ. ΠΠ½ΠΈ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠ΅, ΡΠ΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π½Π°ΡΠΈΠ½Π°ΡΡΠ΅ΠΌΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ Π½Π΅ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΎΠΏΡΡΠ½ΡΡ
ΡΠ΅Π±ΡΡ β ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΡΠ±Π»ΠΈΠΊΡΠ΅ΠΌ Π΅Π³ΠΎ ΡΠ°ΡΡΠΊΠ°Π· β ΠΠ°Π²Π΅Π» Π±ΡΠ΄Π΅Ρ ΡΠ°Π΄, Π΅ΡΠ»ΠΈ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ
Π΅ΠΌΡ Π΄Π°Π΄ΡΡ ΡΠΎΠ²Π΅ΡΡ.
Π― β ΡΡΡΠ΄Π΅Π½Ρ ΠΠΎΠ²ΠΎΡΠΈΠ±ΠΈΡΡΠΊΠΎΠ³ΠΎ ΠΠΎΡΡΠ΄Π°ΡΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ Π’Π΅Ρ
Π½ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π£Π½ΠΈΠ²Π΅ΡΡΠΈΡΠ΅ΡΠ°, Π½Π΅ ΡΠ°ΠΊ Π΄Π°Π²Π½ΠΎ ΠΌΡ Ρ ΠΏΠ°ΡΠΎΡΠΊΠΎΠΉ ΠΌΠΎΠΈΡ
Π΄ΡΡΠ·Π΅ΠΉ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π»ΠΈ ΠΏΠ»ΠΎΡΠ°Π΄ΠΊΡ Π΄Π»Ρ ΠΏΡΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Π²ΠΎ Π²ΡΠ΅Ρ
Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ
ΠΎΠ±Π»Π°ΡΡΡΡ
Π½Π°ΡΡΠ½ΠΎΠΉ Π΄Π΅ΡΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ. ΠΡ ΠΏΠΎΠΌΠΎΠ³Π°Π΅ΠΌ Β«ΡΠ²ΠΎΠ΄ΠΈΡΡΒ» Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π½Π½ΡΡ
ΠΏΡΠ΅ΠΏΠΎΠ΄Π°Π²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈ ΡΡΡΠ΄Π΅Π½ΡΠΎΠ² Π²ΡΠ΅Ρ
ΠΠ£ΠΠΎΠ² Π‘ΠΈΠ±ΠΈΡΠΈ, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ½Π°Ρ Π½Π°ΡΡΠ½Π°Ρ Π΄Π΅ΡΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠ°Π·Π²ΠΈΠ²Π°Π»Π°ΡΡ ΠΏΠΎ ΡΠ΅ΡΡΠΈΡΠΎΡΠΈΠΈ Π‘ΠΈΠ±ΠΈΡΠΈ ΠΈ Π Π€.
Π‘ΡΡΠ΄Π΅Π½ΡΡ ΠΈ ΠΏΡΠ΅ΠΏΠΎΠ΄Π°Π²Π°ΡΠ΅Π»ΠΈ ΡΠ°ΡΡΠΎ ΠΎΠ±ΡΠ°ΡΠ°Π»ΠΈΡΡ ΠΊΠΎ ΠΌΠ½Π΅ Ρ Π²ΠΎΠΏΡΠΎΡΠ°ΠΌΠΈ ΠΈ Ρ ΡΠ΅ΡΠΈΠ» Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ, Π½Π°ΠΏΠΈΡΠ°Π² Π±ΠΎΡΠΎΠ² Π΄Π»Ρ ΠΠ ΠΈ Π’Π΅Π»Π΅Π³ΡΠ°ΠΌ.
ΠΠ° Π²Ρ ΠΎΠ΄ ΠΎΠ½ΠΈ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, Π° Π½Π° Π²ΡΡ ΠΎΠ΄Π΅ Π²ΡΠ΄Π°ΡΡ Π»ΠΈΠ±ΠΎ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΠΎΡΠ²Π΅Ρ, Π»ΠΈΠ±ΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ , Π·Π°ΠΌΠ°ΡΠΊΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΠΎΠ΄ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅: ΠΈΠ½Π»Π°ΠΉΠ½ΠΎΠ²ΡΠ΅ ΠΈΠ»ΠΈ Π²ΠΈΡΡΡΠΈΠ΅ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ.
Π― ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Python Π²Π΅ΡΡΠΈΠΈ 3. 6Β ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΡΠΎΠΌΡ, ΡΡΠΎ ΠΎΠ½ ΡΠ°ΠΌΡΠΉ ΠΏΡΠΎΡΡΠΎΠΉ Π΄Π»Ρ ΠΌΠ΅Π½Ρ. ΠΠΎΠ΄ΠΈΠ» Π² PyCharm Community Edition. ΠΠ΅ΡΡ ΠΊΠΎΠ΄ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π½Π° GitHub. Π£Π΄Π°ΡΠΈ!
1. ΠΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΡΠΈΠ³ΠΎΡΠΎΠ²Π»Π΅Π½ΠΈΡ Π΄Π»Ρ ΡΠ΅Π»Π΅Π³ΡΠ°ΠΌ-Π±ΠΎΡΠ°
1.1 ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠΊΠ΅Π½Π° ΠΎΡ Bot Father Π² ΡΠ΅Π»Π΅Π³ΡΠ°ΠΌΠΌΠ΅
ΠΠ΅ΡΠ²ΡΠΌ Π΄Π΅Π»ΠΎΠΌ, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Β«Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡΒ» Π½Π°ΡΠ΅Π³ΠΎ Π±ΠΎΡΠ° Π² Telegram.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ, Π² ΠΏΠΎΠΈΡΠΊΠΎΠ²ΠΈΠΊΠ΅ ΡΠ΅Π»Π΅Π³ΠΈ ΠΈΡΠ΅ΠΌ BotFather
Π΄Π°Π»Π΅Π΅, Π΄Π΅Π»Π°Π΅ΠΌ Π²ΡΡ ΡΠ°ΠΊΠΆΠ΅, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° ΡΠΊΡΠΈΠ½ΡΠΎΡΠ°Ρ :
ΠΠΎΡΠ»Π΅ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ /newbot
ΠΈΠ»ΠΈ ΠΆΠ΅ ΠΏΡΠΎΠΏΠΈΡΡΠ²Π°Π΅ΠΌ Π²ΡΡΡΠ½ΡΡ.
ΠΠ°Π΄ΠΎ ΠΏΡΠΈΠ΄ΡΠΌΠ°ΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ΅ ΠΈΠΌΡ Π΄Π»Ρ Π±ΠΎΡΠ°, ΠΏΡΠΈΠ΄ΡΠΌΡΠ²Π°Π΅ΠΌ ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΡΠΎΠΊΠ΅Π½.
1.2 ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π² Π»ΡΠ±ΠΎΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ ΠΊΠΎΠ΄Π° ΠΈ ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΡΠ°ΠΉΠ» config.py
ΠΠ΅ΡΠ΅Π΄ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π²Π΅ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» Π±ΠΎΡΠ°. ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ PyCharm Community/Professional Edition, ΡΠΎ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Ρ ΠΏΡΠΎΡΡΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, ΠΈ ΠΏΠΈΡΠ°ΡΡ ΡΠ°ΠΌ Π²Π΅ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» Π±ΠΎΡΠ°.
ΠΡΠ»ΠΈ ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π»ΡΠ±ΠΎΠΉ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ, ΡΠ°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ Sublime Text 3, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΎ ΠΠ°ΠΌ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΈΠ΄ΡΡΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ, ΡΠΎΠ·Π΄Π°ΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅, ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΈΠ· ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΡΠ΅ΡΡΠ°ΠΌΠΈ. ΠΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Π½ΠΈΠ΅ ΡΡΡΠ΄Π½ΠΎΡΡΠ΅ΠΉ, ΠΏΡΠ΅Π΄Π»Π°Π³Π°Ρ ΡΠΊΠ°ΡΠ°ΡΡ ΠΏΡΠΎΠ΄ΡΠΊΡ PyCharm Community Edition ΠΎΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ JetBrains, Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΠΎΠΉΡΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ Π°Π±Π·Π°ΡΠ΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π΄Π°Π½Π½ΡΠΉ ΠΏΡΠΎΠ΄ΡΠΊΡ ΡΠ΄Π΅Π»Π°Π΅Ρ ΠΈΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ, ΠΎΡ ΠΠ°Ρ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΏΡΡΡ Π΄ΠΎ ΠΈΠ½ΡΠ΅ΡΠΏΡΠΈΡΠ°ΡΠΎΡΠ° Python Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡ PyCharm, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΈ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΠ°Ρ Π±ΠΎΡ.
Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ (config.py) Π±ΡΠ΄Π΅Ρ Ρ ΡΠ°Π½ΠΈΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠΊΠ΅Π½, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°ΠΌ Π΄Π°Π» BotFather, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΠΈΡΠ΅ΠΌ:
token = "ΠΠ΄Π΅ΡΡ Ρ ΡΠ°Π½ΠΈΡΡΡ ΠΠ°Ρ ΡΠΎΠΊΠ΅Π½".
1.3 CΠΎΠ·Π΄Π°ΡΠΌ Π³Π»Π°Π²Π½ΡΠΉ ΡΠ°ΠΉΠ» β bot.py
ΠΠ΅Π»Π°Π΅ΠΌ cΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΈΠΌΠΏΠΎΡΡΡ ΠΈ Π΄Π»Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ, Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΠΏΡΠΎΠΏΠΈΡΡΠ²Π°Π΅ΠΌ Π·Π°ΠΊΠΎΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΡΡΠΎΡΠΊΠΈ:
import config import telebot # pip install telebot from telebot import types # pip install pyTelegramBotAPI
ΠΠ°Π»Π΅Π΅, Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π°Ρ ΡΠΎΠΊΠ΅Π½:
bot = telebot. TeleBot(config.token)
ΠΡΠΈΠΌ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠΌ ΠΌΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ ΡΠΎ, ΡΡΠΎ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ Π½Π°ΠΊΡΡΡΠΈΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» ΠΈΠΌΠ΅Π½Π½ΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ Π±ΠΎΡΠ°, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π½Π°ΠΌ ΠΈ Π΄Π°Π» ΡΠΎΠΊΠ΅Π½ BotFather.
2. Π Π°Π·Π²ΠΎΡΠ°ΡΠΈΠ²Π°Π΅ΠΌ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»
ΠΠ°ΡΠ½ΡΠΌ Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ Π±ΠΎΡΠ°, Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡΠΎΠΏΠΈΡΠ°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ ΡΡΠ°ΡΡΠ° ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ°Π·Π½ΡΠΌΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, /start
ΠΈΠ»ΠΈ /go
ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅ Π»ΡΠ±ΡΠΌΠΈ, ΠΊΠ°ΠΊΠΈΠΌΠΈ ΠΡ ΡΠΎΡΡΡΡΠ΅ Π½ΡΠΆΠ½ΡΠΌΠΈ.
ΠΠ»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ Π½Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ message_handler
, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΈ Π±ΡΠ΄Π΅Ρ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π²Π΅ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ Π΄Π»Ρ ΡΡΠ°ΡΡΠ° ΠΈ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ, Π΅ΡΠ»ΠΈ ΠΡ ΡΠΎΡΡΡΡΠ΅ Π½ΡΠΆΠ½ΡΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅. ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠ΄ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° /go
ΠΈΠ»ΠΈ /start
, message_handler
Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ ΡΡΠ°Π²Π½ΠΈΡ, ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ Π»ΠΈ ΡΡΡΠΎΠΊΠΈ ΠΈ Π΅ΡΠ»ΠΈ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ, ΡΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ.
ΠΠ°ΠΆΠ΄Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠ°ΠΊ ΠΈ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠ΅ΠΉΡΠ°Ρ, Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΠΎΠ΄ΠΈΠ½ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ β ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½ΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ Β«Π² ΠΎΠ±ΡΡΡΠΊΠ΅Β» Π΄Π΅ΠΊΠΎΡΠ°ΡΠΎΡΠ°. Π ΡΠ°ΠΊΠΆΠ΅, ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ (ΠΈΠ»ΠΈ ΡΠ²ΡΠ·ΠΊΠ° ΡΡΠ½ΠΊΡΠΈΠΉ) Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΠ²ΡΡΡΠ΅Π΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΡ Π±ΠΎΡΠ°.
ΠΡΠ°ΠΊ:
@bot.message_handler(commands=['go', 'start'])Β # ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ ΡΡΠ°ΡΡΠ° def welcome(message): Β Β Β Β sti = open(path+'stiker.tgs', 'rb') Β Β Β Β bot.send_sticker(message.chat.id, sti) Β Β Β Β markup = types.ReplyKeyboardMarkup(resize_keyboard=True) Β Β Β Β item3 = types.KeyboardButton("ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ") Β Β Β Β item2 = types.KeyboardButton("ΠΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΡ") Β Β Β Β item1 = types.KeyboardButton('Π Π½Π°Ρ') Β Β Β Β markup.add(item1, item2, item3) Β Β Β Β bot.send_message(message.chat.id, Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "ΠΠΎΠ±ΡΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°ΡΡ, {0.first_name}!\\n\\nΠ― - <b>{1.first_name}</b>, Π±ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Projector Π² ΠΠΠ’Π£, " Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "ΡΠΎΠ·Π΄Π°Π½ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, " Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "ΡΡΠΎΠ±Ρ ΠΏΠΎΠΌΠΎΡΡ ΠΠ°ΠΌ Π²Π»ΠΈΡΡΡΡ Π² Π½Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ," Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "ΠΏΡΠΎΡΡΠΎ ΡΠ·Π½Π°ΡΡ ΡΡΠΎ-ΡΠΎ ΠΎ Π½Π°Ρ ΠΈΠ»ΠΈ ΠΆΠ΅ ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΠΎΠ±ΡΠ°ΡΡΡΡ ΠΈ Π²Π΅ΡΠ΅Π»ΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΠΈ Π²ΡΠ΅ΠΌΡ.\\n\\n" Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "<i>Have a nice time</i>".format( Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β message. from_user, bot.get_me()), Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β parse_mode='html', reply_markup=markup)
Π ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΡΡΠ°Π·Ρ Π΄Π²Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ: ΠΎΡΠΏΡΠ°Π²ΠΊΠ° ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠΉ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ β ReplyKeyboardMarkup
, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΊΡΡΡΠ°, ΠΏΠΎΠΊΠ° ΠΌΡ Π½Π΅ Π·Π°Π²Π΅ΡΡΠΈΠΌ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π±ΠΎΡΠ° ΡΠΎΠΎΡΠ²Π΅ΡΡΠ²ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ. ΠΠ± ΡΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΡΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅.
ΠΡΠ°ΠΊ, ΠΏΡΠΎΠΉΠ΄ΡΠΌΡΡ ΠΏΠΎ ΡΡΡΠΎΡΠΊΠ°ΠΌ:
Π ΡΡΡΠΎΠΊΠ°Ρ 20-21: ΠΎΡΠΊΡΡΠ²Π°Π΅ΡΡΡ ΡΡΠΈΠΊΠ΅Ρ ΠΏΠΎ ΡΠΎΠΌΡ ΠΏΡΡΠΈ ΠΊ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Ρ Π΅Π³ΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΠ», ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ.
Π‘ΡΡΠΎΠΊΠΈ 22-28: ΡΠΎΠ·Π΄Π°Π΅ΠΌ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΡ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ, Π΄ΠΎΠ±Π°Π²Π»ΡΡ ΡΡΠ΄Π° ΡΡΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°.
Π‘ΡΡΠΎΠΊΠΈ 30-37: ΠΎΠΏΠΈΡΠ°Π½ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΊΠ° ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ
ΠΠ°ΠΊ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΠΌΠ΅ΡΠΎΠ΄ send_message
Π² ΡΡΡΠΎΠΊΠ΅ 30, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ HTML, Π΄Π»Ρ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ°.
Π‘ΡΡΠΎΠΊΠ°ΠΌΠΈ Π½ΠΈΠΆΠ΅, Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π·Π°ΠΏΡΡΠΊ ΡΠ°ΠΌΠΎΠ³ΠΎ Π±ΠΎΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Ρ ΠΎΡΡΠΈΡΡΡΡ, ΠΏΠΎΠΊΠ° Π½Π΅ ΡΠ»ΡΡΠΈΡΡΡ ΠΎΡΠΈΠ±ΠΊΠ° ΠΈΠ»ΠΈ ΠΆΠ΅, ΠΏΠΎΠΊΠ° ΠΌΡ Π‘Π°ΠΌΠΈ Π΅Π³ΠΎ Π½Π΅ Π·Π°ΠΊΡΠΎΠ΅ΠΌ.
# RUN if __name__ == "__main__": Β Β Β Β try: Β Β Β Β Β Β Β Β bot. polling(none_stop=True) Β Β Β Β except ConnectionError as e: Β Β Β Β Β Β Β Β print('ΠΡΠΈΠ±ΠΊΠ° ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ: ', e) Β Β Β Β except Exception as r: Β Β Β Β Β Β Β Β print("ΠΠ΅ΠΏΡΠΈΠ΄Π²ΠΈΠ΄Π΅Π½Π½Π°Ρ ΠΎΡΠΈΠ±ΠΊΠ°: ", r) Β Β Β Β finally: Β Β Β Β Β Β Β Β print("ΠΠ΄Π΅ΡΡ Π²ΡΡ Π·Π°ΠΊΠΎΠ½ΡΠΈΠ»ΠΎΡΡ")
Π‘Π΄Π΅Π»Π°Π΅ΠΌ ΠΏΠ΅ΡΠ²ΡΠΉ Π·Π°ΠΏΡΡΠΊ! ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ, Π² PyCharm-Π΅ Π½Π°ΠΆΠΌΡΠΌ Π·Π΅Π»Π΅Π½ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ ΡΡΠ°ΡΡ Π² ΠΏΡΠ°Π²ΠΎΠΌ Π²Π΅ΡΡ Π½Π΅ΠΌ ΡΠ³Π»Ρ ΠΈΠ»ΠΈ ΠΆΠ΅, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΈΠ· ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ: python bot.py
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ Π·Π°ΠΏΡΡΠΊΠ°:
2.1 ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π°ΠΆΠ°ΡΠΈΡ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ inline keyboard
Π’Π°ΠΊ Π»ΡΠ±ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ β ΡΡΠΎ ΡΠ΅ΠΊΡΡ, ΡΠΎ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ.
Π‘Π΄Π΅Π»Π°Π΅ΠΌ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ ΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ΡΠ°Π·Π±Π΅ΡΡΠΌ ΠΏΠΎ ΡΡΡΠΎΡΠΊΠ°ΠΌ:
@bot.message_handler(content_types=["text"]) def go_send_messages(message): Β Β Β Β if message.chat.type == 'private': Β Β Β Β Β Β Β Β if message.text == 'ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ': Β Β Β Β Β Β Β Β Β Β Β Β keyboard = types.InlineKeyboardMarkup(row_width=1) Β Β Β Β Β Β Β Β Β Β Β Β itemboo = types.InlineKeyboardButton(text="Π’ΡΡ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ ΠΈ ΡΡ ΡΠΆΠ΅ Π² Google", url="<https://www. google.ru>") Β Β Β Β Β Β Β Β Β Β Β Β itemboo1 = types.InlineKeyboardButton('Π Π°Π½Π΄ΠΎΠΌΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ', callback_data='good2') Β Β Β Β Β Β Β Β Β Β Β Β itemboo2 = types.InlineKeyboardButton("ΠΠ°Π»ΡΠΊΡΠ»ΡΡΠΎΡ", callback_data='bad2') Β Β Β Β Β Β Β Β Β Β Β Β itemboo3 = types.InlineKeyboardButton("Π₯ΠΎΡΡ ΡΠ·Π½Π°ΡΡ ΠΏΠΎΠ³ΠΎΠ΄Ρ Π² ΠΌΠΎΠ΅ΠΌ Π³ΠΎΡΠΎΠ΄Π΅/ΡΡΡΠ°Π½Π΅", callback_data='good3') Β Β Β Β Β Β Β Β Β Β Β Β itemboo4 = types.InlineKeyboardButton("ΠΠ°ΠΊ ΡΠ²ΠΎΠΈ Π΄Π΅Π»Π°?", callback_data='bad4') Β Β Β Β Β Β Β Β Β Β Β Β keyboard.add(itemboo, itemboo1, itemboo2, itemboo3, itemboo4) Β Β Β Β Β Β Β Β Β Β Β Β bot.send_message(message.chat.id, Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "{0.first_name}, ΠΎΠΊΠ΅ΠΉ, ΡΠΌΠΎΡΡΠΈ, ΡΡΠΎ Ρ Π½Π°Ρ Π΅ΡΡΡ ΡΡΡ:\\n".format(message.from_user), Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β reply_markup=keyboard) Β Β Β Β Β Β Β Β elif message.text == "ΠΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΡ": Β Β Β Β Β Β Β Β Β Β Β Β one_markup = types.InlineKeyboardMarkup(row_width=1) Β Β Β Β Β Β Β Β Β Β Β Β ite1 = types.InlineKeyboardButton("ΠΠ»ΠΈΠΆΠ°ΠΉΡΠΈΠ΅ ΠΌΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΡ", callback_data="one") Β Β Β Β Β Β Β Β Β Β Β Β ite2 = types.InlineKeyboardButton("ΠΡΠΎΠ²Π΅Π΄Π΅Π½Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΡ", callback_data="two") Β Β Β Β Β Β Β Β Β Β Β Β ite3 = types. InlineKeyboardButton("ΠΠΎΠ»ΠΎΠ½ΡΠ΅ΡΡΡΠ²ΠΎ Π½Π° ΠΌΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΠ΅", callback_data="three") Β Β Β Β Β Β Β Β Β Β Β Β ite4 = types.InlineKeyboardButton("ΠΠ΅ΠΉΡΡΠ²ΡΡΡΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΡ Π² ΠΠΠ’Π£", callback_data="fourth") Β Β Β Β Β Β Β Β Β Β Β Β ite5 = types.InlineKeyboardButton("ΠΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΡ ΠΠ΅ΠΆΠ²ΡΠ·ΠΎΠ²ΡΠΊΠΎΠ³ΠΎ ΡΠ΅Π½ΡΡΠ°", callback_data="five") Β Β Β Β Β Β Β Β Β Β Β Β one_markup.add(ite1, ite2, ite3, ite4, ite5) Β Β Β Β Β Β Β Β Β Β Β Β bot.send_message(message.chat.id, "{0.first_name}, Ρ Π½Π°Ρ <u>Π΅ΠΆΠ΅ΠΌΠ΅ΡΡΡΠ½ΠΎ</u> ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ " Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "ΠΌΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΠΉ,\\nΠΌΡ ΠΏΠΎΡΡΠ°ΡΠ°Π»ΠΈΡΡ ΡΠ°Π·Π±ΠΈΡΡ ΠΈΡ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΠ΅:".format( Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β message.from_user), parse_mode="html", reply_markup=one_markup)
Π‘ΡΡΠΎΠΊΠ° 339 β ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π»ΡΠ±ΡΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ
Π‘ΡΡΠΎΠΊΠ° 341 ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ Π΅ΡΠ»ΠΈ Π΄Π°Π½Π½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΎ Π±ΠΎΡΡ, ΡΠΎ ΡΡΠ°Π²Π½ΠΈ ΡΡΡ ΡΡΡΠΎΠΊΡ Ρ ΡΠ΅ΠΌΠΈ, ΡΡΠΎ Π·Π΄Π΅ΡΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ ΠΈ ΠΎΡΠΏΡΠ°Π²Ρ ΠΎΡΠ²Π΅Ρ.
Π‘ΡΡΠΎΠΊΠΈ 344 β 351 β ΡΠΎΠ·Π΄Π°ΡΠΌ ΠΈΠ½Π»Π°ΠΉΠ½ΠΎΠ²ΡΡ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ InlineKeyboardMarkup ΠΈ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅ΠΌ Π² ΡΡΡ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ 5 ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΠΎ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠΉ callback_data
. ΠΠ»Π΅ΠΌΠ΅Π½ΡΡ Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ Π±ΡΠ΄ΡΡ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Ρ Π΄ΡΡΠ³ ΠΏΠΎΠ΄ Π΄ΡΡΠ³ΠΎΠΌ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π² ΡΡΡΠΎΠΊΠ΅ 344, ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΈ row_width = 1
, ΡΡΠΎ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΡΠ°ΠΌΡΡ ΡΠΈΡΠΎΠΊΡΡ Π³ΡΠ°Π½Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ½ΠΈ ΠΈ Π±ΡΠ΄ΡΡ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Ρ Π΄ΡΡΠ³ ΠΏΠΎΠ΄ Π΄ΡΡΠ³ΠΎΠΌ.
Π‘ΡΡΠΎΠΊΠΈ 353-355 β ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠ΅ΠΊΡΡ, Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π½Π°ΡΠ΅ΠΉ Inline Keyboard.
Π ΡΡΠ»ΠΎΠ²ΠΈΡΡ Π½ΠΈΠΆΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ.
ΠΡΠ°ΠΊ, ΡΠ΄Π΅Π»Π°Π΅ΠΌ Π·Π°ΠΏΡΡΠΊ:
2.2 ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° InlineKeyboardButton
ΠΠ°ΠΊ Π±ΡΠ»ΠΎ ΡΠΊΠ°Π·Π°Π½ΠΎ Π²ΡΡΠ΅, ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ InlineKeyboardButton
ΠΈΠΌΠ΅Π΅Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ callback_data
, ΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎ ΡΡΠΈΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌ Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΊΠ½ΠΎΠΏΠΊΠ°. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π½Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΈΠ½Π»Π°ΠΉΠ½ΠΎΠ²ΠΎΠΉ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ callback_query_handler
.
@bot.callback_query_handler(func=lambda call: call.data in ['one', 'two', 'three', 'fourth', 'five'])Β # ΠΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΡ def callback_inline_one(call): Β Β Β Β try: Β Β Β Β Β Β Β Β if call.message: Β Β Β Β Β Β Β Β Β Β Β Β if call.data == 'one':Β # ΠΠ»ΠΈΠΆΠ°ΠΉΡΠΈΠ΅ ΠΌΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΡ Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β bot. send_message(call.message.chat.id, Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "ΠΡΠ°ΠΊ,<b>Π±Π»ΠΈΠΆΠ°ΠΉΡΠΈΠ΅ ΠΌΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΡ</b>:\\n\\n"Β # ΠΠ΄Π΅ΡΡ Π±ΡΠ΄ΡΡ ΡΡΡΠ»ΠΊΠΈ Π΅ΡΡ Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "Π€ΠΎΡΡΠΌ Β«ΠΠ°ΠΉΠΊΠ°Π»Β»\\n" Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "ΠΠΎΠ½ΠΊΡΡΡ Β«Π¦ΠΈΡΡΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠ΅ΡΒ»\\n" Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "PRONETI", parse_mode="html") Β Β Β Β Β Β Β Β Β Β Β Β elif call.data == 'two':Β # ΠΡΠΎΠ²Π΅Π΄ΡΠ½Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΡ Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β bot.send_message(call.message.chat.id, "ΠΠΎΡ ΡΠΏΠΈΡΠΎΠΊ <b>ΠΏΡΠΎΠ²Π΅Π΄ΡΠ½Π½ΡΡ ΠΌΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΠΉ</b>:\\n\\n" Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "ΠΠΠ’Π\\n" Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "Π‘Π΅ΠΌΠΈΠ½Π°ΡΡ ΠΏΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ½ΠΎΠΉ Π΄Π΅ΡΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ\\n" Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "ΠΡΡΡΠ΅ΡΠ° Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΠ΅Π»ΡΠΌΠΈ ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠΉ", parse_mode="html") Β Β Β Β Β Β Β Β Β Β Β Β elif call.data == 'three':
ΠΡΠ°ΠΊ, ΡΠ°Π·Π±Π΅ΡΡΠΌ ΠΏΠΎ ΡΡΡΠΎΡΠ½ΠΎ:
Π‘ΡΡΠΎΠΊΠ° 269 β ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΠΌ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΊΠ°ΠΆΠ΄ΡΡ ΠΈΠ· Π½Π°ΠΆΠ°ΡΡΡ ΠΊΠ½ΠΎΠΏΠΎΠΊ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ
Π‘ΡΡΠΎΠΊΠΈ 273-278 β Π Π΄Π°Π½Π½ΠΎΠΌ Π±Π»ΠΎΠΊΠ΅ if, ΠΌΡ ΠΏΡΠΎΡΡΠΎ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
Π‘ΡΡΠΎΠΊΠΈ 279-283 β ΠΠ΅Π»Π°ΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅, ΡΡΠΎ ΠΈ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΡΡΠ»ΠΎΠ²Π½ΠΎΠΌ Π±Π»ΠΎΠΊΠ΅.
ΠΈ Ρ. Π΄.
Π’Π°ΠΊΠΆΠ΅, Π² Π΄Π°Π½Π½ΡΡ
Π±Π»ΠΎΠΊΠ°Ρ
ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΡ ΠΈΠ½Π»Π°ΠΉΠ½ΠΎΠ²ΡΡ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ, ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ³Π΄Π° ΠΏΡΠΈΠ΄ΡΡΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π΅ΡΡ ΠΎΠ΄ΠΈΠ½ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ callback_data
, Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΡ callback_query_handler
, ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΡΠΉ Π½Π° ΡΠΊΡΠΈΠ½ΡΠΎΡΠ΅ Π²ΡΡΠ΅.
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
Π’Π°ΠΊ ΠΏΡΠΎΡΡΠΎ ΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ inline keyboards.
3. ΠΠ°Π²Π΅ΡΡΠ°Π΅ΠΌ ΡΠ°Π±ΠΎΡΡ Π±ΠΎΡΠ°
ΠΠ°Π½Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ Π±ΡΠ΄Π΅Ρ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ Π΄Π»Ρ ΡΡΠ°ΡΡΠ° Π±ΠΎΡΠ°, ΠΏΠΎΡΡΠΎΠΌΡ ΠΡ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠ½ΡΡΡ Π΅Ρ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»:
@bot.message_handler(commands=['stop'])Β # ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ Π²ΡΡ ΠΎΠ΄Π° def bye(message): Β Β Β Β bye_Sti = open(path+'byeMorty.tgs', 'rb') Β Β Β Β hideBoard = types.ReplyKeyboardRemove() Β Β Β Β bot.send_message(message.chat.id, Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "ΠΠΎΡΠ²ΠΈΠ΄Π°Π½ΠΈΡ, {0.first_name}!\\nΠΡ, ΠΊΠΎΠΌΠ°Π½Π΄Π° <b>{1.first_name}</b>, Π½Π°Π΄Π΅Π΅ΠΌΡΡ, ΡΡΠΎ ΡΡ Ρ ΠΎΡΠΎΡΠΎ ΠΏΡΠΎΠ²Π΅Π»(Π°) Π²ΡΠ΅ΠΌΡ \\n\\n" Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "ΠΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠΉΡΡ ΠΊ Π½Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π² <a href='<https://vk. com/projector_neti>'>vk</a>\\n" Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "ΠΠ°Ρ <a href='<https://instagram.com/projector_neti>'>inst</a>\\n\\n" Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "ΠΠ°ΠΏΠΈΡΠΈ ΠΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠΎΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² (<a href='<https://vk.com/nikyats>'>ΠΠΈΠΊΠΈΡΠ΅ Π―ΡΠΈΡ</a>) ΠΈ Π·Π°Π΄Π°ΠΉ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΡΡΠΈΠ΅ ΡΠ΅Π±Ρ Π²ΠΎΠΏΡΠΎΡΡ ΠΏΠΎ <i>ΠΏΡΠΎΠ΅ΠΊΡΠ½ΠΎΠΉ Π΄Π΅ΡΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ</i>\\n\\n" Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "ΠΠ°Π΄Π΅Π΅ΠΌΡΡ, ΡΡΠΎ ΡΠ΅Π±Π΅ ΠΎΡΠ²Π΅ΡΡΡ ΠΎΡΠ΅Π½Ρ ΡΠΊΠΎΡΠΎ \\n\\n" Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "<u>Don't be ill and have a nice day</u> \\n\\n\\n" Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "P.S.: ΠΡΠ»ΠΈ Π΅ΡΡΡ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΠΏΠΎΠΆΠ΅Π»Π°Π½ΠΈΡ ΠΈΠ»ΠΈ Π²ΠΎΠΏΡΠΎΡΡ ΠΏΠΎ Π±ΠΎΡΡ, ΡΠΎ Π½Π°ΠΏΠΈΡΠΈ <a href='<https://vk.com/setmyaddresspls>'>ΠΌΠ½Π΅</a>".format( Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β message.from_user, bot.get_me()), parse_mode='html', reply_markup=hideBoard) Β Β Β Β exit()
ΠΠ΄Π΅ΡΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
- ΠΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΎΡΠ°Π»ΡΠ½ΡΠΉ ΡΡΠΈΠΊΠ΅Ρ.
- ΠΠ°ΠΊΡΡΠ²Π°Π΅ΡΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½Π°Ρ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ° (ΡΡΡΠΎΠΊΠ° 44).
- ΠΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΎΡΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅.
Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ bot.polling
, Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ none_stop = True
, ΡΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠ½ΠΎΠ²Π° Π²ΠΎΠ·Π½ΠΎΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Ρ Π±ΠΎΡΠΎΠΌ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ /start
ΠΈΠ»ΠΈ /go
, ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΊΠΎΡΠΎΡΡΡ
ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΡΠ½ΠΊΡΠ΅ Π²ΡΡΠ΅.
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
ΠΠ ΠΠΠ’
ΠΠ΅ΡΠ΅ΠΉΠ΄ΡΠΌ ΠΊ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π±ΠΎΡΠ° ΠΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΠΎΠΌ Π½Π° ΡΠΎΠΌ ΠΆΠ΅ ΡΠΎΠ΄Π½ΠΎΠΌ ΡΠ·ΡΠΊΠ΅ Python, Π΅Π³ΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ΅ ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΎΠ½ Π±ΡΠ» Π½Π°ΠΏΠΈΡΠ°Π½ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΠΠ, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊΠ»Π°ΡΡΠ°. ΠΠ½Π΅ΡΠ½Π΅, ΠΎΠ½ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΡ ΠΆΠ΅ ΠΌΠΈΡΡΠΈΡ. Π‘Π°ΠΌΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄Π»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ Π²ΠΊ Π±ΠΎΡΠ° Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ ΡΠ΅Π»Π΅Π³ΡΠ°ΠΌΠΌ Π±ΠΎΡΠ°, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π² Π½Π΅ΠΉ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ Π½Π΅ ΡΠΎΡΡΠ°Π²ΠΈΡ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΡΡΡΠ΄Π°. ΠΡΠ°ΠΊ, Π½Π°ΡΠ½ΡΠΌ.
1. ΠΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΠΎΠ΄Π³ΠΎΡΠ°Π²Π»Π΅Π½ΠΈΡ
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΏΠΎ ΡΠ΅ΠΌ ΠΆΠ΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠΌ:
import vk_api # pip install vk-api import json Β # pip install json from vk_api.longpoll import VkLongPoll, VkEventType
β1.
1 ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠΊΠ΅Π½Π° Π΄Π»Ρ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° ΠΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅.- ΠΠ° Π³Π»Π°Π²Π½ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° Π½Π°ΠΉΡΠΈ ΡΠ°Π·Π΄Π΅Π» Β«Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅Β»
- Π Π°Π±ΠΎΡΠ° Ρ API
- Π‘ΠΎΠ·Π΄Π°ΡΡ ΠΊΠ»ΡΡ. ΠΡΠ±ΠΈΡΠ°Π΅ΡΠ΅ Π½ΡΠΆΠ½ΡΠ΅ Π΄Π»Ρ Π²Π°Ρ ΠΏΡΠ½ΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π±ΠΎΡΡ.
Π ΠΈΡΠΎΠ³Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
ΠΠ΅ΡΠ΅ΠΌ ΠΊΠ»ΡΡ ΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π² ΡΡΠ΅Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈ Π΄Π΅Π»Π°Π΅ΠΌ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
vk = vk_api.VkApi(token= Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "ΠΠ°Ρ_ΡΠΎΠΊΠ΅Π½")
ΠΠ°Π»Π΅Π΅ β ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
longpoll = VkLongPoll(vk)
ΠΠ° ΡΡΠΎΠΌ, Π·Π°ΠΊΠΎΠ½ΡΠΈΠΌ ΠΏΠΎΠ΄Π³ΠΎΡΠ°Π²Π»Π΅Π½ΠΈΡ.
2. Π Π°Π·Π²ΠΎΡΠ°ΡΠΈΠ²Π°Π΅ΠΌ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»
ΠΠ΅ΡΠ²ΡΠΌ Π΄Π΅Π»ΠΎΠΌ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠ°ΠΉΠ» manage.py
CΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΠΏΡΠΎΡΠΎΡΠΈΠΏ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠΉ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ ( Π²ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ VkBotAPI ).
main_keyboard = { Β Β Β Β "one_time": False, Β Β Β Β "buttons": [ Β Β Β Β Β Β Β Β [{ Β Β Β Β Β Β Β Β Β Β Β Β "action": { Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "type": "text", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "payload": "{\\"button\\": \\"1\\"}", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "label": "Π Π½Π°Ρ" Β Β Β Β Β Β Β Β Β Β Β Β }, Β Β Β Β Β Β Β Β Β Β Β Β "color": "positive" Β Β Β Β Β Β Β Β }], Β Β Β Β Β Β Β Β [{ Β Β Β Β Β Β Β Β Β Β Β Β "action": { Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "type": "text", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "payload": "{\\"button\\": \\"2\\"}", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "label": "ΠΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΡ" Β Β Β Β Β Β Β Β Β Β Β Β }, Β Β Β Β Β Β Β Β Β Β Β Β "color": "positive" Β Β Β Β Β Β Β Β }, Β Β Β Β Β Β Β Β Β Β Β Β { Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "action": { Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "type": "text", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "payload": "{\\"button\\": \\"3\\"}", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "label": "ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ" Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β }, Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "color": "positive" Β Β Β Β Β Β Β Β Β Β Β Β } Β Β Β Β Β Β Β Β ], Β Β Β Β Β Β Β Β [{ Β Β Β Β Β Β Β Β Β Β Β Β "action": { Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "type": "text", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "payload": "{\\"button\\": \\"4\\"}", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "label": "ΠΠΎΠ½ΡΠ°ΠΊΡΡ" Β Β Β Β Β Β Β Β Β Β Β Β }, Β Β Β Β Β Β Β Β Β Β Β Β "color": "primary" Β Β Β Β Β Β Β Β }] Β Β Β Β ] }
ΠΠ°ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΈΠΌ Π΅Ρ Π² ΡΠΎΡΠΌΠ°Ρ json, ΠΊΠ°ΠΊ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ:
main_keyboard = json. dumps(main_keyboard, ensure_ascii=False).encode('utf-8') main_keyboard = str(main_keyboard.decode('utf-8'))
ΠΡΠΈΠΌΠ΅Ρ ΠΈΠ½Π»Π°ΠΉΠ½ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ:
about_us_keyboard = { Β Β Β Β "inline": True, Β Β Β Β "buttons": [ Β Β Β Β Β Β Β Β [{ Β Β Β Β Β Β Β Β Β Β Β Β "action": { Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "type": "text", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "payload": "{\\"button\\": \\"1\\"}", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "label": "ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ" Β Β Β Β Β Β Β Β Β Β Β Β }, Β Β Β Β Β Β Β Β Β Β Β Β "color": "positive" Β Β Β Β Β Β Β Β }], Β Β Β Β Β Β Β Β [{ Β Β Β Β Β Β Β Β Β Β Β Β "action": { Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "type": "text", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "payload": "{\\"button\\": \\"2\\"}", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "label": "Π§Π΅ΠΌ ΠΌΡ Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΡΡ ?" Β Β Β Β Β Β Β Β Β Β Β Β }, Β Β Β Β Β Β Β Β Β Β Β Β "color": "primary" Β Β Β Β Β Β Β Β }, Β Β Β Β Β Β Β Β { Β Β Β Β Β Β Β Β Β Β Β Β "action": { Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "type": "text", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "payload": "{\\"button\\": \\"3\\"}", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "label": "ΠΠ΄Π΅ ΠΌΡ Π½Π°Ρ ΠΎΠ΄ΠΈΠΌΡΡ ?", Β Β Β Β Β Β Β Β Β Β Β Β }, Β Β Β Β Β Β Β Β Β Β Β Β "color": "positive" Β Β Β Β Β Β Β Β }], Β Β Β Β Β Β Β Β [{ Β Β Β Β Β Β Β Β Β Β Β Β "action": { Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "type": "text", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "payload": "{\\"button\\": \\"4\\"}", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "label": "ΠΠ°ΠΊ ΠΏΠΎΠΏΠ°ΡΡΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄Ρ ?", Β Β Β Β Β Β Β Β Β Β Β Β }, Β Β Β Β Β Β Β Β Β Β Β Β "color": "primary" Β Β Β Β Β Β Β Β }], Β Β Β Β Β Β Β Β [{ Β Β Β Β Β Β Β Β Β Β Β Β "action": { Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "type": "text", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "payload": "{\\"button\\": \\"5\\"}", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "label": "ΠΠΎΠ½ΡΠ°ΠΊΡΡ", Β Β Β Β Β Β Β Β Β Β Β Β }, Β Β Β Β Β Β Β Β Β Β Β Β "color": "secondary" Β Β Β Β Β Β Β Β }], Β Β Β Β Β Β Β Β [{ Β Β Β Β Β Β Β Β Β Β Β Β "action": { Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "type": "text", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "payload": "{\\"button\\": \\"6\\"}", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "label": "ΠΠ°Π΄Π°ΡΡ Π²ΠΎΠΏΡΠΎΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΠΈΡΠ΅Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°", Β Β Β Β Β Β Β Β Β Β Β Β }, Β Β Β Β Β Β Β Β Β Β Β Β "color": "negative" Β Β Β Β Β Β Β Β }] Β Β Β Β ], }
ΠΠ΅ Π·Π°Π±ΡΠ²Π°Π΅ΠΌ Π²ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΈΡΡ Π² ΡΠΎΡΠΌΠ°Ρ json:
about_us_keyboard = json. dumps(about_us_keyboard, ensure_ascii=False).encode('utf-8') about_us_keyboard = str(about_us_keyboard.decode('utf-8'))
Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΡΠ½ΠΊΡΠΈΡ write_msg
, Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π½Π΅ ΠΌΡΡΠΈΡΡΡΡ Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠΉ ΠΎΡΠΏΡΠ°Π²ΠΊΠΎΠΉ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ ΠΎΡ Π±ΠΎΡΠ°:
def write_msg(user_id, message, key): Β Β Β Β vk.method('messages.send', Β Β Β Β Β Β Β Β Β Β Β Β Β Β {'user_id': user_id, Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β 'message': message, Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β 'keyboard': key, Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β 'random_id': random.randint(0, 2048)})
ΠΠΎΡΠ»Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π²ΡΠ΅Ρ ΠΏΡΠΎΡΠΎΡΠΈΠΏΠΎΠ², ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ ΡΠ°Π³Ρ. ( ΠΊ ΡΡΠΎΠΌΡ ΡΠ°ΠΉΠ»Ρ ΠΌΡ ΠΏΠΎΠ·ΠΆΠ΅ Π²Π΅ΡΠ½ΡΠΌΡΡ ΠΈ Π΄ΠΎΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ Π½Π°ΡΠ΅Π³ΠΎ vk-Π±ΠΎΡΠ° )
β2.1 ΠΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» (ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΡΠ°ΠΉΠ» vk_bot.py).
ΠΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠ½ΠΊΡΠΈΡ ΠΏΠ°ΡΡΠΈΠ½Π³Π° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈΠ»ΠΈ ΠΏΠΎΠ³ΠΎΠ΄Ρ, Π½Π°Π·ΠΎΠ²Π΅ΠΌ ΠΈΡ Π²ΡΠΎΡΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΡΠΌΠΈ. Π― ΠΏΠΎΠΊΠ°ΠΆΡ Π»ΠΈΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΌΠ΅ΡΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ ΡΡΠΈΠΌ Π²ΡΠΎΡΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΡΠΌ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌ, Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ΅Ρ ΠΈΠ»ΠΈ ΠΈΠ½ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ ΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. Π ΠΊΠΎΠ½ΡΠ΅ ΡΡΠ°ΡΡΠΈ Ρ Π²ΡΠ»ΠΎΠΆΡ ΡΡΡΠ»ΠΊΡ Π½Π° ΡΠ²ΠΎΠΉ GitHub, Π³Π΄Π΅ ΠΡ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΡΡΠΈΠΉ ΠΠ°Ρ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» Π»ΡΠ±ΠΎΠ³ΠΎ ΠΈΠ· ΠΌΠ΅ΡΠΎΠ΄Π°. ΠΡΠ°ΠΊ:
ΠΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΠΊΠ»Π°ΡΡΠ°:
class VkBot: Β Β Β Β def __init__(self, user_id): Β Β Β Β Β Β Β Β self.USER_ID = user_id Β Β Β Β Β Β Β Β self._USERNAME = self._get_user_name_from_vk_id(user_id) Β Β Β Β Β Β Β Β self.my_str = "" Β Β Β Β Β Β Β Β self._COMMANDS = ["ΠΏΡΠΈΠ²Π΅Ρ", "ΠΏΠΎΠ³ΠΎΠ΄Π°", "Π²ΡΠ΅ΠΌΡ", "ΠΏΠΎΠΊΠ°"] Β Β Β Β Β Β Β Β self._inputMes = {"ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ": answers.about_us1, Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "ΡΠ΅ΠΌ ΠΌΡ Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΡΡ ?": answers.about_us2, Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "Π³Π΄Π΅ ΠΌΡ Π½Π°Ρ ΠΎΠ΄ΠΈΠΌΡΡ ?": answers.about_us3, Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "Π±Π»ΠΈΠΆΠ°ΠΉΡΠΈΠ΅ ΠΌΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΡ": answers.events1, Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "ΠΏΡΠΎΠ²Π΅Π΄ΡΠ½Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΡ": answers.events2, Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "Π²ΠΎΠ»ΠΎΠ½ΡΡΡΡΡΠ²ΠΎ Π½Π° ΠΌΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΠ΅": answers.events3, Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "Π΄Π΅ΠΉΡΡΠ²ΡΡΡΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΡ Π² Π½Π³ΡΡ": answers.events4, Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "ΠΌΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΡ ΠΌΠ΅ΠΆΠ²ΡΠ·ΠΎΠ²ΡΠΊΠΎΠ³ΠΎ ΡΠ΅Π½ΡΡΠ°": answers.events5 Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β }
ΠΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ ΠΊΠ»Π°ΡΡΠ° β inputMes
β ΡΡΠΎ ΠΎΡΠΎΠ±ΡΠΉ ΡΠ»ΠΎΠ²Π°ΡΡ, Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠ»ΡΡΠ΅ΠΉ β ΡΡΠΎ ΡΠ΅ΠΊΡΡ ΠΈΠ· ΡΠ°ΠΉΠ»Π° answers. py, Π³Π΄Π΅ Ρ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠΈΠ» ΡΠ΅ΠΊΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΡΡΠΎΠΊ, ΠΏΠΎΡΡΠΎΠΌΡ, ΡΡΠΎΠ±Ρ Π½Π΅ Π·Π°Π³ΡΠΎΠΌΠΎΠΆΠ΄Π°ΡΡ ΠΊΠΎΠ΄ Ρ ΠΈ Π²ΡΠ½Π΅Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠ΅ΠΊΡΡ Π² Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°ΠΉΠ».
(ΠΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ΄Π° ΠΈΠ· ΡΠ°ΠΉΠ»Π° answers.py)
events1 = "ΠΡΠ°ΠΊ,Π±Π»ΠΈΠΆΠ°ΠΉΡΠΈΠ΅ ΠΌΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΡ:\\n\\n" \\ Β Β Β Β Β Β Β Β Β Β "Π€ΠΎΡΡΠΌ Β«ΠΠ°ΠΉΠΊΠ°Π»Β»\\n"\\ Β Β Β Β Β Β Β Β Β Β "ΠΠΎΠ½ΠΊΡΡΡ Β«Π¦ΠΈΡΡΠΎΠ²ΠΎΠΉ Π²Π΅ΡΠ΅ΡΒ»\\n"\\ Β Β Β Β Β Β Β Β Β Β "PRONETI" events2 = "ΠΠΎΡ ΡΠΏΠΈΡΠΎΠΊ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½Π½ΡΡ ΠΌΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΠΉ:\\n"\\ Β Β Β Β Β Β Β Β "ΠΠΠ’Π\\n"\\ Β Β Β Β Β Β Β Β "Π‘Π΅ΠΌΠΈΠ½Π°ΡΡ ΠΏΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ½ΠΎΠΉ Π΄Π΅ΡΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ\\n"\\ Β Β Β Β Β Β Β Β "ΠΡΡΡΠ΅ΡΠ° Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΠ΅Π»ΡΠΌΠΈ ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠΉ\\n"\\ events3 = "ΠΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρ ΡΡΠΎΠ³ΠΎ ΠΊΡΠΈΡΠ΅ΡΠΈΡ Π½Π°ΠΏΠΈΡΠΈ ΠΠ»ΡΠ΅ (<https://vk.com/ki1337ki>)\\n"\\ Β Β Β Β Β Β Β Β "Π ΡΠ°ΠΊΠΆΠ΅, ΡΡ ΠΌΠΎΠΆΠ΅ΡΡ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡΡ Π°Π½ΠΊΠ΅ΡΡ, Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΊΠΎΡΠΎΡΠΎΠΉ,\\n"\\ Β Β Β Β Β Β Β Β "Ρ ΡΠΎΠ±ΠΎΠΉ Π»ΠΈΡΠ½ΠΎ ΡΠ²ΡΠΆΠ΅ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΡΠΊΠΎΠ²ΠΎΠ΄ΠΈΡΠ΅Π»Π΅ΠΉ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ\\n"\\ Β Β Β Β Β Β Β Β "ΠΈΠ»ΠΈ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° (<https://vk.com/nikyats>)"
ΠΡΠ°ΠΊ, ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΌΠ΅ΡΠΎΠ΄ ΠΊΠ»Π°ΡΡΠ° β ΡΡΠΎ new_message
, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΠΎΠ΄ΠΈΠ½ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ β message
, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌ ΡΡΠ»ΠΎΠ²Π½ΡΠΌ Π±Π»ΠΎΠΊΠΎΠΌ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΊΠ°ΠΊΠΎΠ΅ -ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ ΡΡΠ΄Π°, ΠΎΡΠΊΡΠ΄Π° Π±ΡΠ» Π²ΡΠ·Π²Π°Π½.
def _get_user_name_from_vk_id(self, user_id): Β Β Β Β request = requests.get("<https://vk.com/id>" + str(user_id)) Β Β Β Β bs = bs4.BeautifulSoup(request.text, "html.parser") Β Β Β Β user_name = self._clean_all_tag_from_str(bs.findAll("title")[0]) Β Β Β Β return user_name.split()[0] def new_message(self, message): Β Β Β Β # self.my_str = " ".join(re.findall('[0-9]{2}', message)) Β Β Β Β if message.lower() == self._COMMANDS[0]: Β Β Β Β Β Β Β Β return f"ΠΡΠΈΠ²Π΅Ρ, {self._USERNAME}!" Β Β Β Β elif message.lower() == self._COMMANDS[1] or message.lower() == "ΡΠ·Π½Π°ΡΡ ΠΏΠΎΠ³ΠΎΠ΄Ρ ": Β Β Β Β Β Β Β Β return self._get_weather() Β Β Β Β elif message.lower() == self._COMMANDS[2] or message.lower() == "ΡΠ·Π½Π°ΡΡ ΡΠΎΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ": Β Β Β Β Β Β Β Β return self._get_time() Β Β Β Β elif message.lower() == self._COMMANDS[3]: Β Β Β Β Β Β Β Β return f"ΠΠΎ ΡΠΊΠΎΡΠΎΠΉ Π²ΡΡΡΠ΅ΡΠΈ, {self._USERNAME}!" Β Β Β Β else: Β Β Β Β Β Β Β Β for key, value in self._inputMes.items(): Β Β Β Β Β Β Β Β Β Β Β Β if message.lower() == key: Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β return value Β Β Β Β Β Β Β Β return "ΠΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ ΡΠ΅Π±Ρ "
3. ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΡ Π² manage.
py ΠΈ Π΄ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΠΌ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π’Π΅ΠΏΠ΅ΡΡ Π² ΠΏΠ΅ΡΠ²ΡΡ ΡΡΡΠΎΠΊΠ°Ρ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡΠΎΠΈΠΌΠΏΠΎΡΡΠΈΡΡ ΡΠ°ΠΉΠ» vk_bot. Π ΡΠ°ΠΊΠΆΠ΅ Π½Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° random.
import random # pip install random from vk_bot import VkBot
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΌΡ ΠΎΠ±ΡΡΠ²ΠΈΠ»ΠΈ longpoll, Π΄ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π».
longpoll = VkLongPoll(vk) try: Β Β Β Β for event in longpoll.listen(): Β Β Β Β Β Β Β Β if event.type == VkEventType.MESSAGE_NEW: Β Β Β Β Β Β Β Β Β Β Β Β if event.to_me: Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β bot = VkBot(event.user_id) Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β if event.text.lower() == "ΠΎ Π½Π°Ρ": Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β write_msg(event.user_id, "ΠΠ΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎ Π½Π°ΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅", about_us_keyboard) Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β elif event.text.lower() == "ΠΌΠ΅ΡΠΎΠΏΡΠΈΡΡΠΈΡ": Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β write_msg(event.user_id, "Π§ΡΠΎ ΡΡ Ρ ΠΎΡΠ΅ΡΡ ΡΠ·Π½Π°ΡΡ?", events_keyboard) Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β elif event.text.lower() == "ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ": Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β write_msg(event.user_id, "ΠΠΎΡΠΌΠΎΡΡΠΈ, ΡΡΠΎ Π΅ΡΡΡ Π·Π΄Π΅ΡΡ!", app_keyboard) Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β elif event. text.lower() == "ΠΊΠΎΠ½ΡΠ°ΠΊΡΡ": Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β write_msg(event.user_id, "ΠΠΎ Π»ΡΠ±ΡΠΌ Π²ΠΎΠΏΡΠΎΡΠ°ΠΌ ΠΌΠΎΠΆΠ΅ΡΡ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ:", contacts_keyboard) Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β elif event.text.lower() == "Π·Π°Π΄Π°ΡΡ Π²ΠΎΠΏΡΠΎΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΠΈΡΠ΅Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°": Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β write_msg(event.user_id, "Π£ ΡΠ΅Π±Ρ Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π½Π°ΡΠ΅ΠΌΡ Π ΡΠΊΠΎΠ²ΠΎΠ΄ΠΈΡΠ΅Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°", Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β go_answer) Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β elif event.text.lower() == "ΠΊΠ°Π»ΡΠΊΡΠ»ΡΡΠΎΡ": Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β write_msg(event.user_id, "Π ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅...", calc_keyboard) Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β # elif event.text == " ".join(re.findall('\\d{2}', event.text)): Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β # Β Β write_msg(event.user_id, "ΠΡΠ»ΠΈΡΠ½ΠΎ, ΠΌΡ Π·Π΄Π΅ΡΡ", calc_keyboard) Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β elif event.text.lower() == "ΠΊΠ°ΠΊ ΠΏΠΎΠΏΠ°ΡΡΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄Ρ ?": Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β write_msg(event.user_id, "ΠΠ°ΠΏΠΈΡΠΈ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠΎΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° - ΠΠΈΠΊΠΈΡΠ΅\\n" Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈ Π½Π° ΡΠ°ΠΉΡ ΠΏΡΠΎΠ΅ΠΊΡΠ½ΠΎΠΉ Π΄Π΅ΡΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ,\\n" Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β "Π½Π°ΠΉΠ΄ΠΈ ΠΏΡΠΎΠ΅ΠΊΡ Π½ΠΎΠΌΠ΅Ρ 612 ΠΈ ΠΏΠΎΠ΄Π°ΠΉ Π·Π°ΡΠ²ΠΊΡ", in_team) Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β else: Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β write_msg(event. user_id, bot.new_message(event.text), main_keyboard) except Exception as e: Β Β Β Β print(e)
ΠΠ°ΠΊ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, Π² ΡΡΠ»ΠΎΠ²Π½ΡΡ Π±Π»ΠΎΠΊΠ°Ρ if ΠΈ elif β ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΡΠ΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°ΡΡ ΠΏΠΎΠ΄ ΡΠΎΠ±ΠΎΠΉ Π²ΡΠ²ΠΎΠ΄ ΠΈΠ½Π»Π°ΠΉΠ½ ΠΈΠ»ΠΈ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠΉ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ (Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ β Π²ΡΠ²ΠΎΠ΄ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ½Π»Π°ΠΉΠ½ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ). Π‘ΡΠ΄Π° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ, ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΡΠΎΡΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π±ΡΠ΄Π΅Ρ ΠΌΠ΅ΡΠ°ΡΡΡΡ ΡΡΠ΄Π° ΡΡΠ΄Π° ΠΏΠΎ Π±Π»ΠΎΠΊΠ°ΠΌ if ΠΈ elif. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π±ΠΎΡ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ, ΠΏΠΎΠΊΠ° Π½Π΅ Β«ΡΠΏΠ°Π΄ΡΡ Ρ ΠΎΡΠΈΠ±ΠΊΠΎΠΉΒ».
ΠΡΡΠ³ΠΎΠ΅ Π΄Π΅Π»ΠΎ ΠΎΠ±ΡΡΠΎΠΈΡ Ρ Π±Π»ΠΎΠΊΠΎΠΌ else, Π·Π΄Π΅ΡΡ ΠΌΡ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΠΌΡΡ ΠΊΠ°ΠΊ ΡΠ°Π· ΠΊΠΎ ΠΊΠ»Π°ΡΡΡ Π½Π°ΡΠ΅Π³ΠΎ ΠΠΎΡΠ°, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΎΠ½ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ Π½Π°Ρ ΠΎΠ΄ΠΈΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ. ΠΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·Π²Π°ΡΡ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ, Π° ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡΠ΅ΠΉ Π»ΡΡΡΠ΅ ΠΈΠ·Π±Π΅Π³Π°ΡΡ, ΡΠΎ Π»ΡΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π±ΠΎΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΊΠ°ΠΊ ΡΠ°Π·-ΡΠ°ΠΊΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π² ΡΠ΅Π»Π΅Π³ΡΠ°ΠΌΠΌ Π±ΠΎΡΠ΅.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠ°Π΄Π΅ΡΡΡ, ΡΡΠΎ ΠΏΠΎΡΠ»Π΅ ΠΏΡΠΎΡΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ°ΡΡΠΈ, ΠΡ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΠΏΠΎΠ½ΡΠ»ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΏΡΠΈΠ½ΡΠΈΠΏ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ²ΠΎΠ΅Π³ΠΎ Telegram ΠΈΠ»ΠΈ Vk Π±ΠΎΡΠ°, Π° ΠΊΠ°ΠΊ ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ β Π»Π΅Π³ΠΊΠΎ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ²ΠΎΠ΅Π³ΠΎ Π±ΠΎΡΠ°.
ΠΠ°ΠΊ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΡΡ, ΡΠΎΠ·Π΄Π°ΡΡ Π΅Π³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ Π·Π½Π°Π΅ΡΠ΅ ΠΎΡΠ½ΠΎΠ²Ρ ΡΠ·ΡΠΊΠ° Python.
ΠΠ΅ΡΡ ΠΊΠΎΠ΄ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π² ΠΌΠΎΡΠΌ ΠΏΡΠΎΡΠΈΠ»Π΅ GitHub.
https://github.com/1chemp/telegram-bot β Π’Π΅Π»Π΅Π³ΡΠ°ΠΌ ΠΠΎΡ
https://github.com/1chemp/vk-bot β ΠΠΎΡ ΠΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅
ΠΠ΅ΡΠ²ΡΠΉ Π±ΠΎΡ — VKBottle
ΠΠΎΠ±ΡΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°ΡΡ Π² ΠΏΠ΅ΡΠ²ΡΡ ΡΠ°ΡΡΡ ΡΡΡΠΎΡΠΈΠ°Π»Π°, Π·Π΄Π΅ΡΡ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ API
ΠΈ ΡΠ°ΡΡΠΊΠ°Π·Π°Π½ΠΎ ΠΏΠΎΡΠ΅ΠΌΡ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π°ΡΠΈΠ½Ρ
ΡΠΎΠ½Π½ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ vkbottle
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΡΠ°Π±ΠΎΡΡ Ρ Π°ΠΏΠΈ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π½ΡΠΆΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ — vkbottle.API
from vkbottle import API
API
— Π³ΠΎΡΠΎΠ²ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π΄Π΅Π»Π°ΡΡ Π·Π°ΠΏΡΠΎΡΡ ΠΊ Π°ΠΏΠΈ Π²ΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅, ΠΏΡΠΈΡΡΠ½Π°Ρ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ° Π² vkbottle — ΠΏΠΎΠ»Π½Π°Ρ ΡΠΈΠΏΠΈΠ·Π°ΡΠΈΡ (vkbottle-types). Π§ΡΠΎ Π΄Π°Π΅Ρ ΡΡΠ° ΡΠΈΠΏΠΈΠ·Π°ΡΠΈΡ?
Π’ΠΈΠΏΠΈΠ·Π°ΡΠΈΡ
ΠΡΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΈ, ΡΡΠΎ Ρ Π²Π°Ρ ΡΡΠΎΠΈΡ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠ΅ IDE Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠΈ ΡΠΈΠΏΠΎΠ²:
ΠΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠΊΠΎΡΠΈΡ ΡΠΊΠΎΡΠΎΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π½Π΅ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ api Π²ΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·
ΠΠ°ΠΊ ΡΠΆΠ΅ ΡΡΠ°Π»ΠΎ ΠΏΠΎΠ½ΡΡΠ½ΠΎ ΠΈΠ· ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ Π²ΡΡΠ΅, Π΄Π»Ρ Π²ΡΠ·ΠΎΠ²Π° ΠΌΠ΅ΡΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ await
, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π°ΡΠΈΠ½Ρ
ΡΠΎΠ½Π½ΠΎΡΡΠΈ python, ΠΏΠ΅ΡΠ΅Π΄ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΡΡΠ΅Π½ΠΈΡ ΡΡΡΠΎΡΠΈΠ°Π»Π° ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΏΠΎΡΠΈΡΠ°ΡΡ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΡΠΎΠ³ΠΎ Π½Π΅ Π΄Π΅Π»Π°Π»ΠΈ
ΠΠ΅ΡΠ²ΡΠΉ Π·Π°ΠΏΡΠΎΡ
ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ API
Π²Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΡΡΡΠΎΠΊΠ° (ΡΠΎΠΊΠ΅Π½) ΠΈΠ»ΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΠΈΡΡ ΡΡΡΠΎΠΊ (ΡΠΎΠΊΠ΅Π½ΠΎΠ²), ΠΊΠΎΡΠΎΡΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΡΡΡΡΡ Π² ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ token-generator
ΠΠ±Π΅ΡΠ½Π΅ΠΌ Π½Π°Ρ Π±ΡΠ΄ΡΡΠΈΠΉ Π·Π°ΠΏΡΠΎΡ Π±Π°Π·ΠΎΠ²ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π°ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°:
import asyncio async def main(): . .. asyncio.run(main())
Π’Π΅ΠΏΠ΅ΡΡ Π½Π°ΠΏΠΈΡΠ΅ΠΌ ΡΠ°ΠΌΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅:
api = API("token") await api.wall.post(message="#vkbottle ΠΏΡΠ΅ΠΊΡΠ°ΡΠ΅Π½!")
Π’Π°ΠΊΠΎΠΉ Π·Π°ΠΏΡΠΎΡ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΠΎΡΡ Π½Π° ΡΡΠ΅Π½Π΅ Π³ΡΡΠΏΠΏΡ/ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌ ΡΠ΅ΠΊΡΡΠΎΠΌ, ΠΊΠ°ΠΊ Π²Ρ Π²ΠΈΠ΄ΠΈΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π·Π°ΠΏΡΠΎΡΠ° ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² (IDE Π²Π°ΠΌ Π²ΡΠ΅ ΠΏΠΎΠ΄ΡΠΊΠ°ΠΆΠ΅Ρ)
ΠΠΎΡ, ΡΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡΡΡ Π² ΠΈΡΠΎΠ³Π΅:
import asyncio from vkbottle import API async def main(): api = API("token") await api.wall.post(message="#vkbottle ΠΏΡΠ΅ΠΊΡΠ°ΡΠ΅Π½!") asyncio.run(main())
ΠΠΎΠ·Π΄ΡΠ°Π²Π»ΡΡ, ΡΠ΅ΠΏΠ΅ΡΡ Π²Ρ ΡΠΌΠ΅Π΅ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ API
!
ΠΠ΅ΡΠ²ΡΠΉ Π±ΠΎΡ
Π§ΡΠΎΠ±Ρ Π½Π°ΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ Ρ Π±ΠΎΡΠΎΠΌ, ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ»Π°ΡΡ Bot
ΠΈΠ· ΠΊΠΎΡΠ½Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ° (vkbottle.Bot
) ΠΈΠ»ΠΈ ΠΈΠ· ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ° (vkbottle.bot.Bot
):
ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅
Bot — ΡΡΠΎ Π±ΠΎΡ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π΄Π»Ρ Π³ΡΡΠΏΠΏΡ, Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ·Π΅ΡΠ±ΠΎΡΠ°, ΡΠΎ ΡΠ½Π°ΡΠ°Π»Π° ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡΡΠ΅ΡΡ Ρ ΡΡΠΈΠΌ.
from vkbottle.bot import Bot
ΠΠ»Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π±ΠΎΡΠ° ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»Π΅Π½ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ — token
ΠΈΠ»ΠΈ api
. token
Π½ΡΠΆΠ΅Π½ Π΄Π»Ρ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ΄Π°: Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π΄ΠΈΡΠ΅ token
, Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ API
Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠΎΠΌ ΡΠΎΠΊΠ΅Π½Π°. ΠΡΠ»ΠΈ Π²Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π΄ΠΈΡΠ΅ api
, ΠΎΠ½ ΠΈ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ Π±ΠΎΡΠ°
# ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠΎΠΊΠ΅Π½ΠΎΠΌ bot = Bot(token="token") # (ΠΈΠ»ΠΈ) ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Ρ Π°ΠΏΠΈ bot = Bot(api=api)
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½ΡΠΆΠ½ΡΠ΅ Ρ
Π΅Π½Π΄Π»Π΅ΡΡ, Π·Π° ΡΠ΄ΠΎΠ±Π½ΠΎΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ
Π΅Π½Π΄Π»Π΅ΡΠΎΠ² ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½Ρ labeler, ΠΊ ΠΊΠΎΡΠΎΡΠΎΠΌΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΡΠ΅ΡΠ΅Π· bot.labeler
ΠΈΠ»ΠΈ bot.on
(.on
Π½ΡΠΆΠ΅Π½ ΠΏΡΠΎΡΡΠΎ Π΄Π»Ρ ΠΊΡΠ°ΡΠΎΡΡ ΠΈ Π΄Π»Ρ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ legacy Π²ΠΊΠ±ΠΎΡΠ»Π° ΠΈΠ· Π²ΡΠΎΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ)
from vkbottle.bot import Bot, Message bot = Bot(token="token") @bot.on.message(text="ΠΡΠΈΠ²Π΅Ρ") async def hi_handler(message: Message): users_info = await bot.api.users.get(message.from_id) await message.answer("ΠΡΠΈΠ²Π΅Ρ, {}".format(users_info[0].first_name)) bot.run_forever()
Π Π°Π·Π±Π΅ΡΠ΅ΠΌ Π½ΠΎΠ²ΡΠΉ ΠΊΠΎΠ΄ ΠΏΠΎΡΡΡΠΎΡΠ½ΠΎ:
@bot.on.message(text="ΠΡΠΈΠ²Π΅Ρ")
— ΡΡΠΎ Π΄Π΅ΠΊΠΎΡΠ°ΡΠΎΡ, ΠΎΠ½ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π΅ΡΠ»ΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π·Π°Π΄Π°Π½Π½ΡΠΌ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌ (text="ΠΏΡΠΈΠ²Π΅Ρ"
), ΡΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ
Π΅Π½Π΄Π»Π΅Ρ ΠΏΠΎΠ΄ Π΄Π΅ΠΊΠΎΡΠ°ΡΠΎΡΠΎΠΌ
ΠΠ»Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ Π² vkbottle ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ 3 Π΄Π΅ΠΊΠΎΡΠ°ΡΠΎΡΠ°:
. message
— ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΈ ΠΈΠ· Π±Π΅ΡΠ΅Π΄ ΠΈ ΠΈΠ· Π»ΠΈΡΠ½ΡΡ
ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠΎΠΊ
.private_message
— ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ· Π»ΠΈΡΠ½ΡΡ
ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠΎΠΊ
.chat_message
— ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ· Π±Π΅ΡΠ΅Π΄
async def hi_handler(message: Message)
— ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ Ρ
Π΅Π½Π΄Π»Π΅ΡΠ°, hi_handler
— Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ°Π·ΡΠΌΠ½ΠΎ Π»ΡΠ±ΡΠΌ, message
— Π°ΡΠ³ΡΠΌΠ΅Π½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π²Π΅ΡΠ½Π΅ΡΡΡ Π² Ρ
Π΅Π½Π΄Π»Π΅Ρ, Π½ΡΠΆΠ½ΡΠΉ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΡΠΎΠ±ΡΡΠΈΠΈ
users_info = await bot.api.users.get(message.from_id)
— Π·Π°ΠΏΡΠΎΡ ΠΊ API, ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅, Π½Π°ΠΏΠΈΡΠ°Π²ΡΠ΅ΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅
await message.answer("ΠΡΠΈΠ²Π΅Ρ, {}".format(users_info[0].first_name))
— ΠΎΡΠΏΡΠ°Π²ΠΊΠ° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² ΡΠ°Ρ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ, answer
— ΡΠ΄ΠΎΠ±Π½ΡΠΉ ΡΠΎΡΡΠΊΠ°Ρ Π΄Π»Ρ ΠΎΡΠ²Π΅ΡΠ° Π½Π° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½Ρ ΠΌΠ΅ΡΠΎΠ΄Ρ messages.send
, Π½ΠΎ ΡΠΎΡΡΠΊΠ°Ρ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅Ρ id ΡΠ°ΡΠ° ΠΈ random_id
bot.run_forever()
— ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ Π°ΡΠΈΠ½Ρ
ΡΠΎΠ½Π½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ Π±ΠΎΡΠ° ΠΈΠ· ΡΠΈΠ½Ρ
ΡΠΎΠ½Π½ΠΎΠΉ ΡΡΠ΅Π΄Ρ, Π΅ΡΠ»ΠΈ Π±Ρ Π±ΡΠ»Π° ΡΠΎΠ·Π΄Π°Π½Π° Π°ΡΠΈΠ½Ρ
ΡΠΎΠ½Π½Π°Ρ, Π²Ρ Π±Ρ ΠΌΠΎΠ³Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ await run_polling()
ΠΡΠ»ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΠΉ ΠΊΠΎΠ΄ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅ ΠΏΠΎΡΡΠ°Π²ΠΈΠ»ΠΈ Π»ΠΈ Π²Ρ Π³Π°Π»ΠΎΡΠΊΠΈ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ
Π»ΠΎΠ½Π³ΠΏΠΎΠ»Π° Π½Π° Π½ΡΠΆΠ½ΡΠ΅ ΡΠΎΠ±ΡΡΠΈΡ (Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π° Π½ΠΎΠ²ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ) ΠΈ ΡΠ°ΠΌ Π»ΠΎΠ½Π³ΠΏΠΎΠ» (ΡΡΠ°Π±ΠΈΠ»ΡΠ½Π° Π²Π΅ΡΡΠΈΡ 5. 131
)
ΠΠΊΠ·Π°ΠΌΠΏΠ»Ρ ΠΏΠΎ ΡΡΠΎΠΉ ΡΠ°ΡΡΠΈ ΡΡΡΠΎΡΠΈΠ°Π»Π°
- easy-bot
Π Π°Π±ΠΎΡΠ°Π΅ΠΌ Ρ Π§Π°ΡΠΎΠΌ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅
ΠΠΠΠΠΠΠ«Π Π€Π£ΠΠΠ¦ΠΠ, ΠΠ ΠΠΠ¦ΠΠΠ« ΠΠΠ©ΠΠΠΠ― Π‘ ΠΠΠΠ¬ΠΠΠΠΠ’ΠΠΠ―ΠΠ Π ΠΠΠΠΠΠΠΠΠ‘Π’Π ΠΠΠ’ΠΠΠΠ’ΠΠΠΠ¦ΠΠ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΡ ΡΡΡΠ°Π½ΠΈΡΡ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π΄Π²ΡΠΌΡ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ: Π»ΠΈΠ±ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΈΠ· Π½Π΅Π΅ Π·Π°Π³Π»ΡΡΠΊΡ, ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΊΡΠ΅ΠΏΠΈΠ² URL Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π·Π° ΡΠΎΠ±ΠΎΠΉ, ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ ΠΎΡΠΎΡΠΌΠΈΠ² ΡΡΡΠ°Π½ΠΈΡΡ ΠΈ ΠΎΡΡΠ°Π²ΠΈΠ² Π²ΡΠ΅ ΠΊΠ°ΠΊ Π΅ΡΡΡ, Π»ΠΈΠ±ΠΎ ΠΏΡΠ΅Π²ΡΠ°ΡΠΈΡΡ ΡΡΡΠ°Π½ΠΈΡΡ Π² ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΡΠΉ ΠΊΠ°Π½Π°Π» ΠΊΠΎΠΌΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΈ Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌΠΈ. ΠΠΎ Π²ΡΠΎΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠΎΠΈΡ ΡΡΠΈΡΡΠ²Π°ΡΡ: Π·Π΄Π΅ΡΡ ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎΠ± ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π΅ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅, ΠΏΡΠΈΠ½ΡΠΈΠΏΠ°Ρ ΠΎΠ±ΡΠ΅Π½ΠΈΡ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΡΠ°Ρ-Π±ΠΎΡΠΎΠ².
Π‘ΡΠ°Π½ΠΈΡΠ»Π°Π² Π₯ΡΡΡΡΠ°Π»ΡΠ²
ΠΠ΅ΡΠ²ΠΎΠ΅, ΡΡΠΎ ΡΡΠΎΠΈΡ ΡΠ΄Π΅Π»Π°ΡΡ, β ΡΡΠΎ ΡΠ΅ΡΠΈΡΡ: ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡ ΠΈΠ»ΠΈ Π½Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» Β«Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π°Β» Π² ΠΌΠ΅Π½Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΡΡΠ°Π½ΠΈΡΠ΅ΠΉ
ΠΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ
Π‘ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π²Π°ΡΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΡΠΌΠΎΠ³ΡΡ Ρ Π²Π°ΠΌΠΈ ΠΎΠ±ΡΠ°ΡΡΡΡ ΡΠ΅ΡΠ΅Π· ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅
ΠΡΠΈ Π΅Π³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΠΈΠ½ΡΡΠΈΡΠΈΠ²Π½ΠΎ ΠΏΠΎΠ½ΡΡΠ½Π°Ρ ΠΊΠ½ΠΎΠΏΠΊΠ° Β«ΠΠ°ΠΏΠΈΡΠ°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅Β»
Π’Π°ΠΊ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° Π²ΡΠ³Π»ΡΠ΄ΡΡ Π² Π²Π΅ΡΡΠΈΠΈ ΡΠ°ΠΉΡΠ° ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π΄Π»Ρ ΠΠ
Π ΡΠ°ΠΊ β Π² ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ VK
ΠΡΠ»ΠΈ Π²Ρ ΡΠ΅ΡΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π³ΡΡΠΏΠΏΡ ΠΊΠ°ΠΊ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΊΠ°Π½Π°Π» ΠΊΠΎΠΌΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΈ, ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π²ΠΊΠ»ΡΡΠ°ΠΉΡΠ΅ ΡΡΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π». ΠΠ΄Π½Π°ΠΊΠΎ Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π·Π°Π³Π»ΡΡΠΊΠΈ ΠΈΠ»ΠΈ Ρ Π²Π°Ρ Π½Π΅Ρ ΡΠ΅ΡΡΡΡΠΎΠ² Π½Π° ΡΠΎ, ΡΡΠΎΠ±Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°ΡΡ Π²Ρ ΠΎΠ΄ΡΡΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, Π»ΡΡΡΠ΅ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅ Π²ΠΊΠ»ΡΡΠ°ΡΡ ΡΡΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π». ΠΠΎΡΠ΅ΠΌΡ? ΠΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π·Π°ΠΉΠ΄Π΅Ρ Π² Π²Π°ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ, ΡΠ²ΠΈΠ΄ΠΈΡ ΠΊΠΎΠ½ΡΠ°ΠΊΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈ ΡΠ²ΡΠΆΠ΅ΡΡΡ ΠΏΠΎ Π΄ΡΡΠ³ΠΎΠΌΡ ΠΊΠ°Π½Π°Π»Ρ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡ ΡΠ΅Π»Π΅ΡΠΎΠ½Ρ), Π΅Π³ΠΎ customer experience Π±ΡΠ΄Π΅Ρ Π½Π΅ΠΉΡΡΠ°Π»ΡΠ½ΡΠΌ. ΠΠ΄Π½Π°ΠΊΠΎ Π΅ΡΠ»ΠΈ ΠΎΠ½ ΡΠ²ΠΈΠ΄ΠΈΡ, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅, ΠΈ ΡΠ΅ΡΠΈΡ Π²ΡΠΉΡΠΈ Π½Π° ΡΠ²ΡΠ·Ρ, Π° Π΅ΠΌΡ Π½Π΅ ΠΎΡΠ²Π΅ΡΡΡ/ΠΎΡΠ²Π΅ΡΡΡ Ρ Π·Π°Π΄Π΅ΡΠΆΠΊΠΎΠΉ, ΡΡΠΎ ΡΠΎΡΠ½ΠΎ Π²ΡΠ·ΠΎΠ²Π΅Ρ Π½Π΅Π³Π°ΡΠΈΠ²
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΏΡΠΎΡΡΠΈΡΡ ΠΏΡΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, Π΅ΡΠ»ΠΈ Π΅ΠΌΡ Π½ΡΠΆΠ½ΠΎ ΡΠ²ΡΠ·Π°ΡΡΡΡ Ρ Π²Π°ΠΌΠΈ, Π΄Π°Π²Π°Ρ Π²ΠΌΠ΅ΡΡΠΎ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΡΠΌΡΡ ΡΡΡΠ»ΠΊΡ Π½Π° Π΄ΠΈΠ°Π»ΠΎΠ³. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π΄Π»Ρ Π½Π°ΡΠ°Π»Π° ΠΎΠ±ΡΠ΅Π½ΠΈΡ Π΅ΠΌΡ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΡΠ΄Π΅Π»Π°ΡΡ Π½Π΅ Π΄Π²Π° ΠΊΠ»ΠΈΠΊΠ°, Π° Π²ΡΠ΅Π³ΠΎ Π»ΠΈΡΡ ΠΎΠ΄ΠΈΠ½. ΠΡΡΠΌΠ°Ρ ΡΡΡΠ»ΠΊΠ° Π½Π° Π΄ΠΈΠ°Π»ΠΎΠ³ Π±ΡΠ΄Π΅Ρ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΠΎΡ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ Π»ΠΈΡΡ Π΄ΠΎΠΌΠ΅Π½ΠΎΠΌ: Π²ΠΌΠ΅ΡΡΠΎ vk.com/Π½Π°Π·Π²Π°Π½ΠΈΠ΅_ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ vk.me/Π½Π°Π·Π²Π°Π½ΠΈΠ΅_ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π°. ΠΡΡ ΡΡΡΠ»ΠΊΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ ΠΎΠ½Π»Π°ΠΉΠ½, ΡΠ°ΠΊ ΠΈ ΠΎΡΡΠ»Π°ΠΉΠ½. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π° ΠΊΠΎΡΠΎΠ±ΠΊΠ΅ Ρ Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠ΅ΠΉ Ρ ΠΌΠΎΠ³Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π½Π°ΠΊΠ»Π΅ΠΉΠΊΡ: Β«ΠΡΡΡ Π²ΠΎΠΏΡΠΎΡΡ ΠΈΠ»ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ? Π‘Π²ΡΠΆΠΈΡΡ Ρ Π½Π°ΠΌΠΈ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅Β» ΠΈ QR-ΠΊΠΎΠ΄, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΡΡΠ»ΠΊΡ Π½Π° Π΄ΠΈΠ°Π»ΠΎΠ³ Ρ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎΠΌ (QR-ΠΊΠΎΠ΄Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΡ
ΡΠ΅ΡΠ²ΠΈΡΠΎΠ², Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, goqr. me)
Π‘ΡΡΠ»ΠΊΠ° Π½Π° Π΄ΠΈΠ°Π»ΠΎΠ³ Ρ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎΠΌ
ΠΠΎΠΌΠΈΠΌΠΎ ΠΎΠ±ΡΠ΅Π½ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠ°ΠΌΠΊΠ°Ρ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ Π²ΠΈΠ΄ΠΆΠ΅Ρ Π΄Π»Ρ ΡΠ°ΡΠ° ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΅Π³ΠΎ Π½Π° ΡΠ²ΠΎΠΉ ΡΠ°ΠΉΡ
ΠΠΈΠ΄ΠΆΠ΅Ρ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π΄Π»Ρ ΡΠ°ΠΉΡΠ°
ΠΠΈΠ΄ΠΆΠ΅Ρ ΡΠ°ΡΠ° ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π½Π° ΡΠ°ΠΉΡΠ΅ ΡΠ΅ΡΠ²ΠΈΡΠ° Π΄Π»Ρ ΠΏΠ°ΡΡΠΈΠ½Π³Π° Π°ΡΠ΄ΠΈΡΠΎΡΠΈΠΈ Target Hunter
Π‘ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, ΡΡΠΎ ΡΠ΄ΠΎΠ±Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ, Π½ΠΎ Ρ Π΄ΡΡΠ³ΠΎΠΉ β Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΎΡΠ²Π΅ΡΠΈΡΡ Π½Π° Π²ΠΎΠΏΡΠΎΡ: Β«ΠΠ°ΠΊΠ°Ρ ΡΠ°ΡΡΡ ΠΌΠΎΠ΅ΠΉ Π°ΡΠ΄ΠΈΡΠΎΡΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅?Β». Π Π΅ΡΠ»ΠΈ ΠΎΡΠ²Π΅Ρ β Π½Π΅ 100%, Π»ΡΡΡΠ΅ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΡΠΌΠΈ Π΄Π»Ρ ΡΠ°ΡΠ° Π½Π° ΡΠ°ΠΉΡΠ΅, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΌΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΡ Π²ΡΠ±ΡΠ°ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΊΠ°Π½Π°Π»Ρ ΡΠ²ΡΠ·ΠΈ
ΠΡΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΠ΅, ΠΊΡΠΎ ΠΏΠΎΠΌΠΈΠΌΠΎ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π½Π° Π²ΠΎΠΏΡΠΎΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΠΏΠΎ ΡΠ΅Π»Π΅ΡΠΎΠ½Ρ, ΠΏΠΎ email, ΡΠ΅ΡΠ΅Π· ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠ΅ΡΠΈ ΠΈ ΠΌΠ΅ΡΡΠ΅Π½Π΄ΠΆΠ΅ΡΡ β ΡΠ»ΡΠΆΠ±Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΡΡ ΡΠ²Π΅ΡΠ΅Π½Π½ΡΠΌ, ΡΡΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² Π±ΡΠ΄Π΅Ρ Π²Π΅ΡΡΠΈΡΡ Π² ΡΠ°ΠΌΠΊΠ°Ρ Π΅Π΄ΠΈΠ½ΠΎΠΉ ΠΊΠ°Π½Π²Ρ Π²Π½Π΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΊΠ°Π½Π°Π»Π°
ΠΡΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡΠ²Π΅ΡΠ°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ?
ΠΠ°ΠΉΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ Π·Π½Π°ΡΡ, ΡΡΠΎ Π²Ρ ΠΎΡΠ²Π΅ΡΠΈΡΠ΅ ΠΏΡΡΠΌΠΎ ΡΠ΅ΠΉΡΠ°Ρ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ Β«Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΒ» Π½Π° Π²Π°ΡΠ΅ΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅
Π‘ΡΠ°ΡΡΡ Β«ΠΠ½Π»Π°ΠΉΠ½Β»
Π Π²Π΅ΡΡΠΈΠΈ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π΄Π»Ρ ΠΠ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ ΠΏΡΡΠΌΠΎ Π² ΠΊΠ½ΠΎΠΏΠΊΠ΅ Β«ΠΠ°ΠΏΠΈΡΠ°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅Β»
Π ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ ΡΡΠ°ΡΡΡΠ° Β«ΠΠ½Π»Π°ΠΉΠ½Β» ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ ΠΏΠΎΠ΄ ΠΎΠ±Π»ΠΎΠΆΠΊΠΎΠΉ ΠΈ Π²ΡΠ΄Π΅Π»ΡΠ΅ΡΡΡ Π·Π΅Π»Π΅Π½ΡΠΌ ΡΠ²Π΅ΡΠΎΠΌ
ΠΠ΄Π½Π°ΠΊΠΎ Π·Π΄Π΅ΡΡ Π²Π°ΠΆΠ΅Π½ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ: Π²ΠΊΠ»ΡΡΠ°ΠΉΡΠ΅ ΡΡΠ°ΡΡΡ Β«ΠΠ½Π»Π°ΠΉΠ½Β» ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΡΠ΅Π°Π»ΡΠ½ΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠ²Π΅ΡΠΈΡΡ Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ΅, Π° Π½Π΅ Ρ Π·Π°Π΄Π΅ΡΠΆΠΊΠΎΠΉ Π² ΡΠ°Ρ. Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ Π½Π΅ΠΎΠΏΡΠ°Π²Π΄Π°Π½Π½ΡΠΌ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡΠΌ ΠΈ Π½Π΅Π³Π°ΡΠΈΠ²Ρ ΡΠΎ ΡΡΠΎΡΠΎΠ½Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ². ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΡΡΠ°ΡΠ°Π΅ΡΡΡ ΡΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ Π΅ΡΠ»ΠΈ Π²Ρ Π½Π΅ ΠΎΡΠ²Π΅ΡΠ°Π΅ΡΠ΅ Π½Π° Π²Ρ ΠΎΠ΄ΡΡΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΌΠΈΠ½ΡΡ, ΡΡΠ°ΡΡΡ Β«ΠΠ½Π»Π°ΠΉΠ½Β» Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΈΡΡΠ΅Π·Π°Π΅Ρ
Π ΠΈΠ΄Π΅Π°Π»Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² Π΄ΠΎΠ»ΠΆΠ½Π° Π²Π΅ΡΡΠΈΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ 24/7, Π½ΠΎ Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π½Π΅ Ρ Π²Π°ΡΠ°Π΅Ρ Π½Π° ΡΡΠΎ ΡΠ΅ΡΡΡΡΠΎΠ², Π½Π°ΡΡΡΠΎΠΉΡΠ΅ ΡΠ°Ρ-Π±ΠΎΡΠ° Π½Π° ΡΠ°Π±ΠΎΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°Π²ΡΠΎΠΎΡΠ²Π΅ΡΡΠΈΠΊΠ°: ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π²ΡΠ΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ ΡΠ°Ρ-Π±ΠΎΡΠ° Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ Π²Π°ΡΠΈΠΌ Π½Π΅ΡΠ°Π±ΠΎΡΠΈΠΌ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ ΠΈ Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΡΡ ΡΠ΅Π°ΠΊΡΠΈΡ Π½Π° Π»ΡΠ±ΠΎΠΉ ΡΠ΅ΠΊΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Β«Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Π½Π°Ρ ΡΠ΅ΠΉΡΠ°Ρ Π½Π΅Ρ Π½Π° ΠΌΠ΅ΡΡΠ΅, Π½ΠΎ ΠΌΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΎΡΠ²Π΅ΡΠΈΠΌ Π²Π°ΠΌ Π·Π°Π²ΡΡΠ° c 9:00Β». Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ Ρ ΠΎΡΡ Π±Ρ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΠΊΠΎΠ³Π΄Π° ΡΡΠΎΠΈΡ ΠΎΠΆΠΈΠ΄Π°ΡΡ ΠΎΡΠ²Π΅ΡΠ°. Π ΠΏΠΎΠ΄Π°Π²Π»ΡΡΡΠ΅ΠΌ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» ΠΎΡΠ΅Π½Ρ Π»Π΅Π³ΠΊΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ: Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΡΠ΅ΡΠ²ΠΈΡΠ΅ robochat.io Ρ ΠΌΠ΅Π½Ρ Π½Π° ΡΡΠΎ ΡΡΠ»ΠΎ Π½Π΅ Π±ΠΎΠ»ΡΡΠ΅ 5 ΠΌΠΈΠ½ΡΡ
ΠΡΠ²Π΅ΡΡ Π²ΠΎ Π²Π½Π΅ΡΠ°Π±ΠΎΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ Π² ΠΎΠΊΠ½Π΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΏΡΠΈ ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΎΡΠΊΡΡΡΠΈΠΈ Π΄ΠΈΠ°Π»ΠΎΠ³Π°, ΠΎΠ΄Π½Π°ΠΊΠΎ ΡΠ°Π·ΠΌΠ΅Ρ Π΅Π³ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ 200 ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ, ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π² Π½Π΅Π³ΠΎ ΡΠΏΠ°ΠΊΠΎΠ²Π°ΡΡ Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΡΡΡ. ΠΠΎΡΡΠΎΠΌΡ ΡΡΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π»ΠΈΡΡ ΠΊΡΠ°ΡΠΊΠΎΠ΅ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Β«ΠΠΎΠ±ΡΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΡΡΠΎΠΊ! Π§Π΅ΠΌ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΠ°ΠΌ ΠΏΠΎΠΌΠΎΡΡ?Β» ΠΈΠ»ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅Π΄ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΡΠ΅ΠΉΡΠ°Ρ ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ ΠΎΠ±ΡΠ°ΡΡΡΡ Ρ ΡΠ°Ρ-Π±ΠΎΡΠΎΠΌ
ΠΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π΅
ΠΡΠΎ ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠ²ΠΈΠ΄ΠΈΡ Π²Π°Ρ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ, ΠΎΡΠΊΡΡΠ² Π΄ΠΈΠ°Π»ΠΎΠ³
ΠΠΎΠΌΠΈΠΌΠΎ ΠΊΡΠ°ΡΠΊΠΎΠ³ΠΎ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΡ Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π΅, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°Ρ-Π±ΠΎΡΠΎΠ² Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΠ΅Π°ΠΊΡΠΈΡ Π½Π° ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΠΎΡΡΡΠΏΠΈΡ ΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ ΠΌΠ΅Π½Ρ ΡΠ°Ρ-Π±ΠΎΡΠ° ΠΈ ΠΎΠΏΠΈΡΠ°ΡΡ Π΅Π³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»
Π Π΅Π°ΠΊΡΠΈΡ Π½Π° ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅
ΠΠΎΠΌΠΈΠΌΠΎ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΠΉ Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π°Ρ
Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΠΈ ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠ΅ Π½Π° ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ. ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½Π° Π² ΡΠ°ΠΌΠΊΠ°Ρ
ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π° ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅, Π½ΠΎ Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°Ρ-Π±ΠΎΡΠΎΠ². Π ΡΠ°ΠΊΠΎΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΈ Π²Ρ ΡΡΠ°Π·Ρ ΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎ ΡΠΎΠΌ, ΠΏΠΎΡΠ΅ΠΌΡ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ Π±ΡΠ΄Π΅Ρ Π΅ΠΌΡ ΡΠ΅Π½Π½ΠΎ, ΠΎ ΡΡΡΡΠΊΡΡΡΠ΅ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ°, ΠΎΠ± Π°ΠΊΡΠΈΡΡ
, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΏΠΎΠ΄ΠΏΠΈΡΡΠΈΠΊΠΎΠ² ΠΈ Ρ.Π΄. ΠΡΠ½ΠΎΠ²Π½Π°Ρ Π·Π°Π΄Π°ΡΠ° Π·Π΄Π΅ΡΡ β Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΠ΄Π½Π°ΠΊΠΎ Π·Π΄Π΅ΡΡ Π΅ΡΡΡ ΠΎΠ΄Π½ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅: ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π΅ΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΡΠΊΡΡΠ²Π°Π» Π΄ΠΈΠ°Π»ΠΎΠ³ Ρ Π²Π°ΡΠΈΠΌ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎΠΌ Π΄ΠΎ ΡΡΠΎΠ³ΠΎ.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅ΡΡ ΠΌΠ΅Ρ
Π°Π½ΠΈΠΊΡ ΠΏΡΠΈΠ²Π»Π΅ΡΠ΅Π½ΠΈΡ Π² ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ ΡΠ΅ΡΠ΅Π· ΡΠΊΠΈΠ΄ΠΊΡ Π½Π° ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΡ: Π²Ρ Π²Π»Π°Π΄Π΅Π»Π΅Ρ ΠΊΠ°ΡΠ΅, ΠΏΡΠΎΠ΄Π²ΠΈΠ³Π°Π΅ΡΠ΅ ΡΠ²ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΏΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌ ΠΊΠ°Π½Π°Π»Π°ΠΌ ΠΈ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΡΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΊΠΈΠ΄ΠΊΡ Π½Π° ΠΊΠΎΡΠ΅ Π·Π° ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΡ. ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΡΠ°ΡΠ±ΠΎΡΠ° Π² ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΈ Π²Ρ Π²ΡΡΠ°Π²Π»ΡΠ΅ΡΠ΅ ΠΏΡΠΎΠΌΠΎ-ΠΊΠΎΠ΄ ΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΏΠΎ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. ΠΠΎΠ΄ΠΏΠΈΡΠ°Π²ΡΠΈΡΡ, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Ρ ΠΏΡΠΎΠΌΠΎ-ΠΊΠΎΠ΄ΠΎΠΌ ΠΈ ΠΏΡΠΈ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΏΠΎΠΊΡΠΏΠΊΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΊΠΈΠ΄ΠΊΡ
Π Π΅Π°ΠΊΡΠΈΡ Π½Π° ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΡ
ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°ΡΡ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Ρ ΡΡΠ΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΎΡΠ²Π΅ΡΠ° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΏΡΠΈ Π½Π°ΡΠ°Π»Π΅ Π΄ΠΈΠ°Π»ΠΎΠ³Π° Ρ Π½Π΅ΠΉ. Π‘ΡΠ΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΎΡΠ²Π΅ΡΠ° ΡΠ°ΡΡΡΠΈΡΡΠ²Π°Π΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π½Π° Π±Π°Π·Π΅ ΠΎΡΠ²Π΅ΡΠΎΠ² Π·Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ 3 Π΄Π½Ρ
ΠΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΎΡΠ²Π΅ΡΠ°
ΠΠ»Ρ ΡΠΎΡ.ΡΠ΅ΡΠ΅ΠΉ ΡΠΊΠΎΡΠΎΡΡΡ ΠΎΡΠ²Π΅ΡΠ° Π² 1 ΡΠ°Ρ β ΡΡΠΎ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ, Ρ.ΠΊ. ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ Π·Π°ΡΠ°ΡΡΡΡ ΠΈΡΡΡ ΠΎΡΠ²Π΅Ρ Π½Π° ΡΠ²ΠΎΠΈ Π²ΠΎΠΏΡΠΎΡΡ Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ΅
Π Π΅ΡΠ»ΠΈ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ ΡΠ΅ΡΠΈΡ ΡΠ·Π½Π°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π΄Π΅ΡΠ°Π»ΠΈ ΠΏΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠΈ ΠΈ ΡΠ²ΠΈΠ΄ΠΈΡ, ΡΡΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠΎΠ² ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ 5 ΠΌΠΈΠ½ΡΡ, Π° Π΄ΡΡΠ³ΠΎΠΉ β Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π΄Π½Π΅ΠΉ, Ρ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΠ°Π½ΡΡ Π·Π°ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π±ΡΠ΄ΡΡ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π²ΡΡΠ΅
ΠΠΎΡΡΠΎΠΌΡ ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Ρ Π²Π°Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠ², ΡΡΠΎΠ±Ρ ΡΠ²ΠΎΠ΅Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π²Ρ ΠΎΠ΄ΡΡΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ. Π ΠΈΠ΄Π΅Π°Π»Π΅ Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°ΡΡ Π½Π° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ 5 ΠΌΠΈΠ½ΡΡ. ΠΠ°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΠΏΡΠΈΠ²ΡΠΊΠ°ΡΡ ΠΊ ΡΠ°Π·Π½ΠΎΠΉ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΎΡΠ²Π΅ΡΠ° ΠΏΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌ ΠΊΠ°Π½Π°Π»Π°ΠΌ, ΠΈ Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ Π³ΠΎΡΠΎΠ²Ρ ΠΏΠΎΠ΄ΠΎΠΆΠ΄Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΠΎΠ², Π½Π°ΠΏΠΈΡΠ°Π² Π²Π°ΠΌ email, ΡΠΎ Π² ΡΠΎΡ.ΡΠ΅ΡΡΡ ΠΈ ΠΌΠ΅ΡΡΠ΅Π½Π΄ΠΆΠ΅ΡΠ°Ρ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ Π±ΡΠ΄ΡΡ ΡΠΎΠ²ΡΠ΅ΠΌ Π΄ΡΡΠ³ΠΈΠ΅
ΠΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΡΡΡ ΠΎΡΠ²Π΅ΡΠ°
ΠΡΠ²Π΅ΡΠ°Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ΅, ΡΡΠ°ΡΠ°ΠΉΡΠ΅ΡΡ Π΄ΠΎΡΡΠΈΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠ°
ΠΠ»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΎΡΠ²Π΅ΡΠ° Π½Π° Π·Π°ΠΏΡΠΎΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΠΎΠΌ ΠΎΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΠΉ, ΡΡΠΎΠ±Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°ΡΡ Π½Π° Π·Π°ΠΏΡΠΎΡ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π΅ΡΡΡ 3 Π²Π°ΡΠΈΠ°Π½ΡΠ°:
ΠΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΡ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° Π² Π»Π΅Π²ΠΎΠ΅ ΠΌΠ΅Π½Ρ Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠ². Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΠΠ Π±ΡΠ΄Π΅Ρ Π²ΠΈΠ΄Π΅ΡΡ Π½Π΅ΠΏΡΠΎΡΠΈΡΠ°Π½Π½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π΅ ΡΡΠ΄ΠΎΠΌ Ρ Π»ΠΈΡΠ½ΡΠΌΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΠΌΠΈ
ΠΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠ² VK Admin, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π±ΡΠ΄Π΅Ρ ΠΎΠΏΠΎΠ²Π΅ΡΠ°ΡΡ Π²Π°Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ push-ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ ΠΎ Π½ΠΎΠ²ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΡ ΠΎΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ², Π½ΠΎ ΠΈ Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π½Π° Π·Π°ΠΏΡΠΎΡΡ ΠΏΡΡΠΌΠΎ ΡΠ΅ΡΠ΅Π· ΡΠΌΠ°ΡΡΡΠΎΠ½, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π΅ Π² ΠΎΡΠΈΡΠ΅
VK Admin
ΠΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Ρ Π²Π°ΡΠ΅ΠΉ CRM-ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ API ΠΈ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΎΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΡ ΡΠΆΠ΅ Π²Π½ΡΡΡΠΈ CRM
CRM ΡΠΈΡΡΠ΅ΠΌΠ°
Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΎΡΠ²Π΅ΡΠ° ΡΠΈΠΊΡΠΈΡΡΠ΅Ρ Π»ΠΈΡΡ Π²Π°ΡΠ΅ ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΠΎΡΠ²Π΅ΡΠ½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΡΡΠ°ΡΠ°ΠΉΡΠ΅ΡΡ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ Π΅Π³ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΡΡΡΠ΅Π΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ΅ Π΄ΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ ΠΎΡΠ²Π΅ΡΠ°, ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΡΡΠΎ-ΡΠΎ ΡΠΈΠΏΠ° Β«Π‘ΡΠ°Π½ΠΈΡΠ»Π°Π², Π΄ΠΎΠ±ΡΡΠΉ Π΄Π΅Π½Ρ! ΠΡ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈ ΠΠ°ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΎΡΠ²Π΅ΡΠΈΠΌ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ 10 ΠΌΠΈΠ½ΡΡ!Β», Π·Π°ΠΊΠΎΠ½ΡΠΈΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈ Π²Π΅ΡΠ½ΡΡΡΡΡ ΠΊ ΠΊΠ»ΠΈΠ΅Π½ΡΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΏΠΎΠΉΠΌΠ΅Ρ, ΡΡΠΎ Π΅Π³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ΅ΠΉΡΠ°Ρ Π·Π°ΠΉΠΌΡΡΡΡ, Π° ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΎΡΠ²Π΅ΡΠ° ΠΏΠΎΡΡΠΈΡΠ°Π΅Ρ, ΡΡΠΎ ΠΎΠ½ Π±ΡΠ» ΠΏΠΎΠ»ΡΡΠ΅Π½ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Ρ.ΠΊ. Π²ΠΎ Π²ΡΠ΅Ρ ΡΠΎΡ.ΡΠ΅ΡΡΡ ΠΈ ΠΌΠ΅ΡΡΠ΅Π½Π΄ΠΆΠ΅ΡΠ°Ρ ΡΠ΅ΠΏΠ΅ΡΡ Π²ΠΈΠ΄Π½ΠΎ, ΡΡΠΎ ΡΠΎΠ±Π΅ΡΠ΅Π΄Π½ΠΈΠΊ ΠΏΡΠΎΡΠΈΡΠ°Π» Π²Π°ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, Π½Π΅Π»ΡΠ·Ρ ΠΏΡΠΎΡΡΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ ΡΠΎ Π²Ρ ΠΎΠ΄ΡΡΠΈΠΌ Π·Π°ΠΏΡΠΎΡΠΎΠΌ ΠΈ Π½Π°ΡΠ°ΡΡ Π΄ΡΠΌΠ°ΡΡ β Π²Π΅Π΄Ρ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π° Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ ΡΠ²ΠΈΠ΄ΠΈΡ, ΡΡΠΎ Π΅Π³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΠΈΡΠ°Π»ΠΈ, Π½ΠΎ Π½Π΅ ΠΎΡΠ²Π΅ΡΠ°ΡΡ
ΠΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΎ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠ°
ΠΠ»Ρ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΡΠ°Π±ΠΎΡΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠ² Π² ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π΅ΡΡΡ 3 ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΏΠ°ΠΏΠΊΠΈ: Π½Π΅ΠΏΡΠΎΡΠΈΡΠ°Π½Π½ΡΠ΅ (ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ Π΅ΡΠ΅ Π΄Π°ΠΆΠ΅ Π½Π΅ ΠΎΡΠΊΡΡΠ»ΠΈ), Π½Π΅ΠΎΡΠ²Π΅ΡΠ΅Π½Π½ΡΠ΅ (Π±ΡΠ»ΠΈ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅Π½Ρ Π²Π°ΠΌΠΈ, Π½ΠΎ Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈ ΠΎΡΠ²Π΅ΡΠ°) ΠΈ Π²Π°ΠΆΠ½ΡΠ΅. ΠΠ΅ΡΠ²ΡΠ΅ 2 ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ Π²Π»ΠΈΡΡΡ Π½Π° Π²ΡΠ΅ΠΌΡ, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΠΎΠ΅ Π² ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠ΅ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΎΡΠ²Π΅ΡΠ°, ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΌΡ Π³ΠΎΠ²ΠΎΡΠΈΠ»ΠΈ ΡΠ°Π½Π΅Π΅, ΠΏΠΎΡΡΠΎΠΌΡ Π²Π°ΠΆΠ½ΠΎ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°ΡΡ ΠΈΡ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π»ΠΈΠ±ΠΎ ΠΌΠ°ΡΠΊΠΈΡΠΎΠ²Π°ΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³ ΠΊΠ°ΠΊ Π·Π°Π²Π΅ΡΡΠ΅Π½Π½ΡΠΉ (Π΅ΡΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ Π½Π°Ρ ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΠ±Π»Π°Π³ΠΎΠ΄Π°ΡΠΈΠ» Π² ΠΊΠΎΠ½ΡΠ΅ Π±Π΅ΡΠ΅Π΄Ρ, ΠΈ Π΅Π³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ). Π’Π°ΠΊΠΆΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΈΡΡ Π² ΠΏΠ°ΠΏΠΊΡ Β«ΠΠ°ΠΆΠ½ΡΠ΅Β» β ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΎΠ·Π½Π°ΡΠ°ΡΡ, ΡΡΠΎ Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ²ΡΠ·Π°ΡΡΡΡ ΡΠ΅ΡΠ΅Π· Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ. ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΠΎ Π»ΠΈΡΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ Π½Π°Π±ΠΎΡ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΉ, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ΅ΠΉΡΠ°Ρ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠ·Π°ΡΠΈΡ ΠΈ ΡΠ΅Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅Π»Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ API ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅: Π»ΠΈΠ±ΠΎ ΡΠΆΠ΅ Π² ΡΠ²ΠΎΠ΅ΠΉ CRM, Π»ΠΈΠ±ΠΎ Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠΉ ΡΠ΅ΡΠ²ΠΈΡ
Π Π°Π±ΠΎΡΠ° Ρ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΡΠΌΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ
Π‘ΠΎΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ΅ΡΡΡ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΌΠΈΡ Π½Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ: Π΄ΠΎ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΠΊ Π²Π°ΠΌ ΡΠ΅ΡΠ΅Π· ΡΠ°Ρ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅, ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΈΡΠ°ΡΡ Π²Π°ΠΌ Π² Facebook, Whatsapp, Π½Π°ΠΏΡΠ°Π²Π»ΡΡΡ Π²Π°ΠΌ email’Ρ ΠΈ Ρ.Π΄. Π Π·Π΄Π΅ΡΡ Π²Π°ΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ Π²Ρ Π±ΡΠ»ΠΈ Π² ΠΊΡΡΡΠ΅ Π²ΡΠ΅Ρ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Ρ Π½ΠΈΠΌ ΠΈ Π½Π΅ ΠΎΠ±ΡΠ°Π»ΠΈΡΡ Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ, ΠΊΠ°ΠΊ Π±ΡΠ΄ΡΠΎ ΠΎΠ½ ΠΎΠ±ΡΠ°ΡΠΈΠ»ΡΡ ΠΊ Π²Π°ΠΌ Π²ΠΏΠ΅ΡΠ²ΡΠ΅, Π΅ΡΠ»ΠΈ ΠΎΠ½ ΡΠ²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ Ρ Π²Π°ΠΌΠΈ ΡΠΆΠ΅ 5-ΡΠΉ ΡΠ°Π·, ΠΏΡΡΠ°ΡΡΡ ΡΠ΅ΡΠΈΡΡ ΡΠ²ΠΎΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ. ΠΠ½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ ΠΎΠΌΠ½ΠΈΠΊΠ°Π½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° Π΄Π»Ρ Π±ΠΈΠ·Π½Π΅ΡΠΎΠ² Ρ Π±ΠΎΠ»ΡΡΠΈΠΌΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΠΌΠΈ Π±Π°Π·Π°ΠΌΠΈ ΡΡΠ΅Π±ΡΠ΅Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΡΠΈΠ»ΠΈΠΉ ΠΏΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ, ΠΈ ΠΎΠ± ΡΡΠΎΠΌ ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ ΡΡΠ°ΡΡΠ΅. ΠΠΎ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΠΌΠ°Π»ΠΎΠ³ΠΎ Π±ΠΈΠ·Π½Π΅ΡΠ° Ρ ΠΌΠΈΠ½ΠΈΠΌΡΠΌΠΎΠΌ ΡΠ΅ΡΡΡΡΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΌΠΈΠ½ΠΈΠΌΡΠΌ β ΡΡΠΎ ΠΏΡΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΡΡ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠΊΡ Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π΅ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΈ Π²ΡΡΡΠ½ΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π² CRM ΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΠ΅ΡΡΡ , Π½Π΅ ΠΎΠ±ΡΠ°Π»ΠΈΡΡ Π»ΠΈ Π²Ρ Ρ Π½ΠΈΠΌ Π΄ΠΎ ΡΡΠΎΠ³ΠΎ
ΠΠΌΠ½ΠΈΠΊΠ°Π½Π°Π»ΡΠ½ΠΎΡΡΡ
ΠΠΠΠΠΠ‘ΠΠ’Π¬Π‘Π―
ΠΠΌΠ½ΠΈΠΊΠ°Π½Π°Π»ΡΠ½ΠΎΡΡΡ β ΡΡΠΎ Π±ΠΎΠ»ΡΡΠ°Ρ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½Π°Ρ ΡΠ΅ΠΌΠ°, ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΡΠ°ΡΠ΅ΠΉ. ΠΠΎΠ΄ΠΏΠΈΡΡΠ²Π°ΠΉΡΠ΅ΡΡ ΠΈ Π±ΡΠ΄ΡΡΠ΅ Π² ΠΊΡΡΡΠ΅ Π²ΡΡ ΠΎΠ΄Π° Π½ΠΎΠ²ΡΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΎΠ².
Π‘ΡΠ°ΡΠ°ΠΉΡΠ΅ΡΡ ΠΎΠ±Π»Π΅Π³ΡΠΈΡΡ ΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Ρ Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Π΄Π»Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΠΈ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΈΠ²Π°ΠΉΡΠ΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΎΠ±ΡΠ΅Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ ΡΠ΅ΡΠΈΠ» Π½Π°ΠΏΠΈΡΠ°ΡΡ Π²Π°ΠΌ Π² ΡΠ°Ρ, Π² ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΏΠΎΠΌΠΈΠΌΠΎ Π²Π²ΠΎΠ΄Π° ΡΠ΅ΠΊΡΡΠ° ΠΎΠ½ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΠΏΠΈΡΠ°ΡΡ Π³ΠΎΠ»ΠΎΡΠΎΠ²ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΠ² ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ Π²ΡΠ΅ΠΌΡ. Π’ΠΎΠ»ΡΠΊΠΎ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, ΡΡΠΎ Ρ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΎΠ² ΡΠ»ΡΠΆΠ±Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Ρ ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ (ΠΊΠ°ΠΊ Π±Ρ ΡΡΠΎ Π½ΠΈ Π±ΡΠ»ΠΎ Π±Π°Π½Π°Π»ΡΠ½ΠΎ, Ρ Π²ΡΠ΅Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Π½Π°ΡΡΠ½ΠΈΠΊΠΈ)
ΠΠΎΠ»ΠΎΡΠΎΠ²ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ
ΠΠΎΠ»ΠΎΡΠΎΠ²ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² ΡΠ°ΡΠ΅ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠ·ΠΈΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡΡΡ, ΠΊΠ°ΠΊ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π° Π²Ρ ΠΎΠ΄ΡΡΠΈΠΌ Π·Π²ΠΎΠ½ΠΊΠ°ΠΌ ΠΎΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ²
ΠΠ»Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°Π±Π»ΠΎΠ½Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΏΡΡΠΌΠΎ Π² ΠΌΠ΅Π½Ρ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²
Π¨Π°Π±Π»ΠΎΠ½Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ
ΠΡΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠΉΡΠ΅ Π²Ρ ΠΎΠ΄ΡΡΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΡ ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΡΡΠ΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΠΎΡΠ²Π΅ΡΡ Π½Π° Π½ΠΈΡ
ΠΠ½Π°Π»ΠΈΠ· ΠΈΡΡΠΎΡΠΈΠΈ
ΠΠ»Ρ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΎΠΏΡΡΠ° Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠΌΡ ΠΈ ΡΠ°ΠΌΠΈΠ»ΠΈΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, ΠΈΠΌΡ ΠΈ ΡΠ°ΠΌΠΈΠ»ΠΈΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π½Π° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ (Π΄ΠΎΠ±ΡΡΠΉ Π΄Π΅Π½Ρ/Π΄ΠΎΠ±ΡΡΠΉ Π²Π΅ΡΠ΅Ρ).
ΠΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·Π°ΡΠΈΡ
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ°Π±Π»ΠΎΠ½ Π½Π° Π±Π°Π·Π΅ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡΡ Π²ΠΎΠΏΡΠΎΡΠΎΠ² ΠΈ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΡΠΉΡΠ΅ Π΅Π³ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΏΠΎΠ»Π΅ΠΉ
Π Π±ΡΠ΄ΡΡΠ΅ΠΌ ΠΎΠ½ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π²Π°ΠΌ Π² 2 ΠΊΠ»ΠΈΠΊΠ° ΠΏΡΠΈ ΠΎΡΠ²Π΅ΡΠ΅ Π½Π° Π²Ρ ΠΎΠ΄ΡΡΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ². ΠΠΌΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, Π²Π°ΡΠ΅ ΠΈΠΌΡ, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° ΠΈ ΡΠ΅ΠΊΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΡ Π±ΡΠ΄ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Ρ Π°ΠΊΡΡΠ°Π»ΡΠ½ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ
ΠΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠΎ ΡΠΊΠΈΠ΄ΠΊΠΎΠΉ Π½Π° ΠΊΠΎΡΠ΅ ΠΎΡ Π²Π»Π°Π΄Π΅Π»ΡΡΠ° ΠΊΠ°ΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΈΠ³ΡΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ: Π²ΠΌΠ΅ΡΡΠΎ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΌΠΎ-ΠΊΠΎΠ΄Π° Π² ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π²Ρ Π·Π°Π³ΠΎΡΠ°Π²Π»ΠΈΠ²Π°Π΅ΡΠ΅ ΡΠ°Π±Π»ΠΎΠ½ ΠΈ ΠΎΡΡΡΠ»Π°Π΅ΡΠ΅ Π΅Π³ΠΎ Π²ΡΠ΅ΠΌ, ΠΊΡΠΎ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ Π·Π° ΠΏΡΠΎΠΌΠΎ-ΠΊΠΎΠ΄ΠΎΠΌ: Β«ΠΡΠΈΠ²Π΅Ρ, Π‘ΡΠ°Π½ΠΈΡΠ»Π°Π²! ΠΡΠΎ ΠΠ½ΡΠΎΠ½ ΠΈΠ· ΠΠ°ΡΠ΅ Π₯. ΠΠ°ΠΊ ΠΈ ΠΎΠ±Π΅ΡΠ°Π»ΠΈ, Π²ΠΎΡ Π²Π°Ρ ΠΏΡΠΎΠΌΠΎ-ΠΊΠΎΠ΄ Π½Π° ΡΠΊΠΈΠ΄ΠΊΡ 20% ΠΏΡΠΈ ΠΏΠΎΠΊΡΠΏΠΊΠ΅ ΠΊΠΎΡΠ΅ HAPPYCOFFEE β ΡΠΎΠΎΠ±ΡΠΈΡΠ΅ Π΅Π³ΠΎ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ°Π· Π½Π° ΠΊΠ°ΡΡΠ΅Β». Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π‘ΡΠ°Π½ΠΈΡΠ»Π°Π² β ΠΈΠΌΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, ΠΠ½ΡΠΎΠ½ β ΠΈΠΌΡ ΠΎΡΠ²Π΅ΡΠ°ΡΡΠ΅Π³ΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°, ΠΠ°ΡΠ΅ Π₯ β Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π°. ΠΡΠ΅ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ΄ΡΡΠ°Π²Π»ΡΡΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ
ΠΡΠ»ΠΈ Π² ΡΠ°Π±Π»ΠΎΠ½Π΅ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΠ΄ΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, Π½Π΅ Π·Π°Π±ΡΠ²Π°ΠΉΡΠ΅ ΠΈΡ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΏΠΎΡΠ»Π΅ Π²ΡΠ±ΠΎΡΠ° ΡΠ°Π±Π»ΠΎΠ½Π°. ΠΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π΅ΡΠ°ΡΠ½Π½ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΠ» ΠΈΠΌΡ ΠΈ ΡΠ°ΠΌΠΈΠ»ΠΈΡ ΠΌΠ΅ΡΡΠ°ΠΌΠΈ, ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡΡΡ ΠΊΠ°Π·ΡΡ: Β«ΠΠ΄ΡΠ°Π²ΡΡΠ²ΡΠΉΡΠ΅, Π₯ΡΡΡΡΠ°Π»Π΅Π²! Π§Π΅ΠΌ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π²Π°ΠΌ ΠΏΠΎΠΌΠΎΡΡ?Β»
ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ²
Π’Π°ΠΊΠΆΠ΅ Π½Π΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅, ΡΡΠΎ ΠΎΡΠ²Π΅ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΏΠΎ ΡΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΠΌ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, ΠΈ, Π΅ΡΠ»ΠΈ ΠΊΡΠΎ-ΡΠΎ Π½Π°ΠΏΠΈΡΠ°Π» Π²Π°ΠΌ ΠΌΠ΅Π½Π΅Π΅ ΡΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, Π½Π΅ ΡΡΠΎΠΈΡ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ Π΅ΠΌΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΡΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, Π° ΠΏΠ΅ΡΠ΅Π΄ ΠΎΡΠΏΡΠ°Π²ΠΊΠΎΠΉ ΠΏΠΎΠ΄ΠΏΡΠ°Π²ΠΈΡΡ ΡΠ°Π±Π»ΠΎΠ½
Π’ΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ ΠΎΡΠ²Π΅ΡΠΎΠ² Π² ΡΠ°Π±Π»ΠΎΠ½Π΅
ΠΠΎΡΡΠΎΡΠ½Π½ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΠΉΡΠ΅ Π°ΠΊΡΡΠ°Π»ΡΠ½ΠΎΡΡΡ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ², ΠΎΠ±ΡΠ°ΠΉΡΠ΅ΡΡ ΡΠΎ ΡΠ»ΡΠΆΠ±ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠΉΡΠ΅ Π½ΠΎΠ²ΡΠ΅ ΡΠ°Π±Π»ΠΎΠ½Ρ ΠΏΠΎ ΠΌΠ΅ΡΠ΅ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΡ Π½ΠΎΠ²ΡΡ ΡΠ°ΡΡΠΎ Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡΡ Π²ΠΎΠΏΡΠΎΡΠΎΠ²
ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ²
ΠΠΎ ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΠΏΠΈΡΠΎΠΊ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ² ΠΎΠ±ΡΠΈΠΉ Π΄Π»Ρ Π²ΡΠ΅Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠ² ΠΈ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΌΠΎΠΆΠ΅Ρ Π΄ΠΎΠ΄Π°Π²ΠΈΡΡ ΡΠ²ΠΎΠΉ ΡΠ°Π±Π»ΠΎΠ½, Π½Π΅ Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠΏΠΈΡΠΊΡ ΠΏΠ΅ΡΠ΅ΡΠ°ΡΡΠΈ Π² Ρ Π°ΠΎΡ ΠΈ ΠΎΠ±ΡΡΠΆΠ΄Π°ΠΉΡΠ΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π½ΠΎΠ²ΡΠΉ ΡΠ°Π±Π»ΠΎΠ½ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°ΠΌΠΈ
ΠΠΎΡΡΠ΄ΠΎΠΊ Π² ΡΠ°Π±Π»ΠΎΠ½Π°Ρ
ΠΠΎΠΆΠ΅Ρ ΡΠ»ΡΡΠΈΡΡΡΡ ΡΠ°ΠΊ, ΡΡΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ Π·Π°Π΄Π°ΡΡ Π²Π°ΠΌ ΡΡΠ°Π·Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²ΠΎΠΏΡΠΎΡΠΎΠ², ΠΈ ΠΏΠΎΠΊΠ° Π²Ρ ΠΎΡΠ²Π΅ΡΠ°Π΅ΡΠ΅ Π½Π° ΠΏΠ΅ΡΠ²ΡΠΉ Π²ΠΎΠΏΡΠΎΡ, Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ Π΅ΡΠ΅ ΠΏΠ°ΡΡ-ΡΡΠΎΠΉΠΊΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ . Π ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π΄ΠΈΠ°Π»ΠΎΠ³ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠ°ΡΡ ΡΡΡΠ΄Π½ΠΎ ΡΠΈΡΠ°ΡΡ. ΠΠΎΡΡΠΎΠΌΡ ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π²Π°ΡΠ° ΡΠ»ΡΠΆΠ±Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π² ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ ΡΠ»ΡΡΠ°ΡΡ Π·Π½Π°Π΅Ρ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» ΠΎΡΠ²Π΅ΡΠ° Π½Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ±Π»Π΅Π³ΡΠΈΡΡ Π΄Π»Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΠΎΠ³ΠΎ, Π½Π° ΠΊΠ°ΠΊΠΎΠΉ Π²ΠΎΠΏΡΠΎΡ Π²Ρ ΠΎΡΠ²Π΅ΡΠ°Π΅ΡΠ΅
ΠΡΠ²Π΅Ρ Π½Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅
ΠΠ° ΠΊΠ°ΠΆΠ΄ΡΠΉ Π²ΠΎΠΏΡΠΎΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠ²Π΅ΡΠ°ΡΡ ΠΏΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΡΡΠΈ. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΏΡΡΠ°Π½ΠΈΡΡ
ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ Ρ ΠΎΠ΄Π½ΠΈΠΌ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ Π½Π΅ Π½Π°ΡΠ°Π»ΠΈ ΠΎΠ±ΡΠ°ΡΡΡΡ ΡΡΠ°Π·Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠ², ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Π° ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ Π΄ΠΈΠ°Π»ΠΎΠ³ Π΄Π»Ρ Π²ΡΠ΅Ρ , ΠΊΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΊΡΠΎ ΠΏΠ΅ΡΠ²ΡΠΌ Π½Π°ΡΠ°Π» ΠΎΡΠ²Π΅ΡΠ°ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡ. Π€ΡΠ½ΠΊΡΠΈΡ ΡΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ Π½Π΅ΡΠ°Π·Π±Π΅ΡΠΈΡ ΠΈ Π² ΡΠ°ΡΠ΅ Π½Π΅ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ
ΠΠ»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° Π΄ΠΈΠ°Π»ΠΎΠ³Π°
ΠΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ, ΡΡΠΎ Π²Π°ΡΠ΅ ΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌΠΈ Π½Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΡΡΡ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅, Π° ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΊΠ°Π½Π°Π»ΠΎΠ² ΡΠ²ΡΠ·ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠ΅ΡΠ΅Π²Π°Π»ΠΈΡΡ Π·Π° Π΄Π΅ΡΡΡΠΎΠΊ. ΠΠΎΡΡΠΎΠΌΡ Π² ΡΠ°ΠΌΠΊΠ°Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΡΠΏΡΠΎΡΡΠΈΡΡ ΡΠ°Π±ΠΎΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² β ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ Π½Π΅ ΡΠ°Π·ΡΡΠ²Π°Π»ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΠΎΡΠΈΠ°Π»ΡΠ½ΡΠΌΠΈ ΡΠ΅ΡΡΠΌΠΈ, ΠΌΠ΅ΡΡΠ΅Π½Π΄ΠΆΠ΅ΡΠ°ΠΌΠΈ ΠΈ email’ΠΎΠΌ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ API ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅, ΡΡΠΎΠ±Ρ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² Π² ΡΡΠΎΠΉ ΡΠ΅ΡΠΈ Π² Π²Π°ΡΡ CRM-ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ°ΠΌ ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π½Π° Π·Π°ΠΏΡΠΎΡΡ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ΅ΡΡΡ ΡΠ΅ΡΠ΅Π· Π΅Π΄ΠΈΠ½ΡΠΉ ΠΊΠ°Π±ΠΈΠ½Π΅Ρ. ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π½Π΅Ρ ΡΠ΅ΡΡΡΡΠΎΠ² Π½Π° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ CRM, Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Ρ ΠΎΡΠΎΡΠ΅ΠΉ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³Ρ ΠΏΠΎΡΠΎΠ²Π΅ΡΠΎΠ²Π°ΡΡ ΡΠ΅ΡΠ²ΠΈΡ TextBack, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΡΠ΅ΡΠΈΡΡ ΡΡΡ Π·Π°Π΄Π°ΡΡ
ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ CRM
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ API ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ±ΠΈΡΠ°ΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΡΡ ΡΠ²ΡΠ·Ρ ΠΎΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ²: ΠΏΠΎΡΠ»Π΅ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΡ Π΄ΠΈΠ°Π»ΠΎΠ³Π° ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΎΡ Π²Π°Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Ρ ΠΏΡΠΎΡΡΠ±ΠΎΠΉ ΠΎΡΠ΅Π½ΠΈΡΡ ΡΠ»ΡΠΆΠ±Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΈ Π΄Π²ΡΠΌΡ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ. ΠΡΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΡΡΠΎ-ΡΠΎ Π½Π΅ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»ΠΎΡΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΡ Π΅ΠΌΡ ΠΎΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΈΡΠΈΠ½Ρ Π½Π΅Π΄ΠΎΠ²ΠΎΠ»ΡΡΡΠ²Π° ΠΈ ΠΎΠΏΠΎΠ²Π΅ΡΡΠΈΡΡ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ°, ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ Π·Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ ΠΊΠ°ΡΠ΅ΡΡΠ²Π°. ΠΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΡ ΡΠ°ΠΊ:
ΠΡΠ΅Π½ΠΊΠ° ΠΊΠ°ΡΠ΅ΡΡΠ²Π° ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ
ΠΠ»ΠΈΠ΅Π½ΡΡ Π»ΠΈΡΡ Π½ΡΠΆΠ½ΠΎ Π½Π°ΠΆΠ°ΡΡ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΡΡ Π΅Π³ΠΎ Π²ΠΏΠ΅ΡΠ°ΡΠ»Π΅Π½ΠΈΡΠΌ ΠΎΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΡΠ²ΠΈΡΠ° β Π²ΡΠ΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ
ΠΡΠ»ΠΈ Ρ Π½Π°ΠΆΠΈΠΌΠ°Ρ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ Β«ΠΠ½Π΅ Π½Π΅ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»ΠΎΡΡΒ», ΡΠ°Ρ-Π±ΠΎΡ ΠΎΠΏΠΎΠ²Π΅ΡΠ°Π΅Ρ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ° ΠΈ Ρ ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ, ΡΡΠΎ ΠΆΠ΅ ΠΌΠ½Π΅ Π½Π΅ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»ΠΎΡΡ, Π° Ρ ΠΌΠΎΠ³Ρ Π²ΡΠ±ΡΠ°ΡΡ ΠΎΠ΄Π½Ρ ΠΈΠ· ΠΏΡΠΈΡΠΈΠ½, ΠΏΡΠΎΡΡΠΎ Π½Π°ΠΆΠ°Π² Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ
ΠΡΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠΈ Π²ΠΎΠΏΡΠΎΡΠ° ΠΎΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡΡΠ΅ΡΡ Ρ Π΅Π³ΠΎ Π»ΠΈΡΠ½ΡΠΌ ΠΏΡΠΎΡΠΈΠ»Π΅ΠΌ ΠΈ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΉ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠΊΠΎΠΉ, ΡΡΠΎΠ±Ρ Π½Π΅ Π·Π°Π΄Π°Π²Π°ΡΡ Π»ΠΈΡΠ½ΠΈΡ Π²ΠΎΠΏΡΠΎΡΠΎΠ². Π ΠΈΠ΄Π΅Π°Π»Π΅ Π² ΡΠ²ΠΎΠ΅ΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²Π½Π΅Π΄ΡΠΈΡΡ ΠΎΠΌΠ½ΠΈΠΊΠ°Π½Π°Π»ΡΠ½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄. ΠΠ° ΡΡΠΈΠΌ ΠΊΡΠ°ΡΠΈΠ²ΡΠΌ ΡΠ»ΠΎΠ²ΠΎΠΌ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠΊΡΡΠ²Π°ΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅: Π²Π½Π΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΊΠ°Π½Π°Π»Π° ΡΠ²ΡΠ·ΠΈ Π»ΠΈΡΠ½ΠΎΡΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π±ΡΠ΄Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΈ ΠΏΡΠΈ ΠΎΡΠ²Π΅ΡΠ΅ Π½Π° Π΅Π³ΠΎ Π·Π°ΠΏΡΠΎΡ Π²ΠΎ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΡΠ»ΡΠΆΠ±Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΠΈΠ΄Π΅ΡΡ ΠΈΡΡΠΎΡΠΈΡ ΠΏΠΎ ΠΎΠ±ΡΠ΅Π½ΠΈΡ Ρ Π½ΠΈΠΌ Π² Facebook, ΠΏΠΎ ΡΠ΅Π»Π΅ΡΠΎΠ½Ρ, ΡΠ΅ΡΠ΅Π· Telegram ΠΈ Ρ.Π΄., ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΏΠΎ ΠΏΠΎΠΊΡΠΏΠΊΠ°ΠΌ, Π΅Π³ΠΎ Π»ΠΈΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈ ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π½Π° Π΅Π³ΠΎ Π²ΠΎΠΏΡΠΎΡ, Π·Π½Π°Ρ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ
Π Π°Π±ΠΎΡΠ° Ρ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠΎΠΌ ΠΈ ΠΎΠΌΠ½ΠΈΠΊΠ°Π½Π°Π»ΡΠ½ΠΎΡΡΡ
ΠΡΠ° ΠΌΠ΅Ρ Π°Π½ΠΈΠΊΠ° ΡΡ ΠΎΠΆΠ° Ρ ΡΠ΅Π°ΠΊΡΠΈΠ΅ΠΉ Π½Π° ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΡ: Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π² ΡΠ°ΠΌΠΊΠ°Ρ ΡΠ°Ρ-Π±ΠΎΡΠ°, ΠΈ ΠΎΠ½Π° ΡΠ°ΠΊΠΆΠ΅ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½Π° ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΎΠ±ΡΠ°Π»ΡΡ Ρ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΠ΅ΡΠ΅Π· ΡΠ°Ρ. ΠΠ΄Π½Π°ΠΊΠΎ Π΅ΡΠ»ΠΈ Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΠ°ΠΊΡΡ ΡΡΠ½ΠΊΡΠΈΡ, ΠΏΠΎΡΠ΅ΠΌΡ Π±Ρ Π΅Π΅ Π½Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ? Π ΡΠ΅Π°ΠΊΡΠΈΠΈ Π½Π° ΠΎΡΠΏΠΈΡΠΊΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Ρ ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΈ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΡ Π²ΡΠ±ΡΠ°ΡΡ ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° ΠΏΡΠΈΡΠΈΠ½Ρ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ ΡΠ΅ΡΠΈΠ» ΠΎΡΠΏΠΈΡΠ°ΡΡΡΡ. ΠΠΎΠΌΠΈΠΌΠΎ ΡΡΠΎΠ³ΠΎ, Π΅ΡΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΠ» ΠΎΠ±ΡΠ°ΡΠ½ΡΡ ΡΠ²ΡΠ·Ρ, Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΠΌΠ΅Ρ Π°Π½ΠΈΠΊ ΡΠ΄Π΅ΡΠΆΠ°Π½ΠΈΡ: ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΡ ΡΠΊΠΈΠ΄ΠΊΡ, ΠΏΠΎΠ΄Π°ΡΠΎΠΊ ΠΏΡΠΈ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠΉ ΠΏΠΎΠΊΡΠΏΠΊΠ΅, Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΡ Π΄ΠΎΡΡΠ°Π²ΠΊΡ ΠΏΡΠΈ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ Π·Π°ΠΊΠ°Π·Π΅ ΠΈ Ρ. Π΄. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Ρ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΡ, ΡΡΠΎ ΡΠ΅Π½ΠΈΡΠ΅ Π΅Π³ΠΎ, Π½ΠΎ ΠΈ ΡΠΎΠ±Π΅ΡΠ΅ΡΠ΅ ΡΠ΅Π½Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΠ± ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΠΏΡΠΈΡΠΈΠ½Π°Ρ ΠΎΡΠΏΠΈΡΠΊΠΈ
Π Π΅Π°ΠΊΡΠΈΡ Π½Π° ΠΎΡΠΏΠΈΡΠΊΡ
ΠΡΠ»ΠΈ Π²Ρ ΡΠ΅ΡΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°Ρ-Π±ΠΎΡΠ°, ΠΏΠΎΠΌΠ½ΠΈΡΠ΅: ΡΠ΅ΠΌ ΡΠ»ΠΎΠΆΠ½Π΅Π΅ Π΅Π³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π», ΡΠ΅ΠΌ Π²ΡΡΠ΅ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ ΠΎΡΠΈΠ±ΠΎΠΊ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ, ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΡΠ°Ρ-Π±ΠΎΡΠ° ΠΊ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΠΌ ΠΈ ΠΎΡΠΊΡΡΡΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, Π΄Π°ΠΉΡΠ΅ Π΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌ ΠΈ ΠΏΠΎΠΏΡΠΎΡΠΈΡΠ΅ ΠΎΡΠ΅Π½ΠΈΡΡ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ½ΡΡΠΈΡΠΈΠ²Π΅Π½ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΈ ΠΊΠ°ΠΊ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ
Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Ρ-Π±ΠΎΡΠΎΠ²
Π§Π°Ρ-Π±ΠΎΡΡ ΠΊΠ°ΠΊ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ Π½Π°Π±ΠΈΡΠ°ΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡ, Π½ΠΎ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° ΡΡΠΎΠΈΡ ΡΠ»Π΅ΠΏΠΎ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΡΡΠ΅Π½Π΄Ρ β ΠΈΠ½Π°ΡΠ΅ Π΅ΡΡΡ ΡΠΈΡΠΊ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ ΡΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΡΠΎΡΠΈΠ² Π²Π°Ρ:
Π§Π°Ρ-Π±ΠΎΡ vs. ΡΠ²ΡΠ·Ρ Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠΌ
ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΠΏΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ, ΠΊΠ°ΠΊ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΡΠ°Ρ-Π±ΠΎΡΠ°, ΡΠΏΡΠΎΡΠΈΡΠ΅ Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ², Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ Π½ΠΎΠ²ΠΎΠ²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ Π±Ρ Π΄Π»Ρ Π½ΠΈΡ ΡΠ΅Π½Π½ΠΎ
Π¦Π΅Π½Π½ΠΎΡΡΡ Π² Π³Π»Π°Π·Π°Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ²
ΠΠΎ-Π²ΡΠΎΡΡΡ , Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΆΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΠ»ΠΈ ΡΠ°Ρ-Π±ΠΎΡΠ°, ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΡΠΉΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ²ΡΠ·ΠΈ Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠΌ: ΡΠ°Ρ-Π±ΠΎΡ ΠΈΠ³ΡΠ°Π΅Ρ Π»ΠΈΡΡ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ, ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ ΡΠΈΡΡΠ°ΡΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° Π²ΠΎΠΏΡΠΎΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ°Ρ-Π±ΠΎΡΠ° Π½Π΅ ΡΠ΅ΡΠ΅Π½, Π° Π΄ΠΎΡΡΡΡΠ°ΡΡΡΡ Π΄ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ
Π‘Π²ΡΠ·Ρ Ρ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ
Π-ΡΡΠ΅ΡΡΠΈΡ , Π΅ΡΠ»ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ ΠΊ ΡΠ°ΡΡ, Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΡΡΠ½ΠΊΡΠΈΡ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π±ΠΎΡΠ° Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΡΡΠΎΠ±Ρ ΠΎΠ½ Π½Π΅ ΠΌΠ΅ΡΠ°Π» ΠΎΠ±ΡΠ΅Π½ΠΈΡ, ΡΠ΅Π°Π³ΠΈΡΡΡ Π½Π° ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠ»ΠΎΠ²Π° ΠΎΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°
ΠΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π±ΠΎΡΠ°
ΠΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΠ°Ρ-Π±ΠΎΡΠ° ΡΡΠ°ΡΠ°ΠΉΡΠ΅ΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΡΠΏΡΠΎΡΡΠΈΡΡ Π΄Π»Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π²Π²ΠΎΠ΄ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈ Π²ΠΌΠ΅ΡΡΠΎ Π½Π°Π±ΠΎΡΠ° ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΠΉΡΠ΅ Π΅ΠΌΡ Π²ΡΠ±ΡΠ°ΡΡ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ², ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ Π² Π²ΠΈΠ΄Π΅ ΠΊΠ½ΠΎΠΏΠΎΠΊ
ΠΠ½ΠΎΠΏΠΊΠΈ Π² ΡΠ°Ρ-Π±ΠΎΡΠ°Ρ
ΠΠ½Π΅ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΏΠΈΡΠ°ΡΡ Π°Π΄ΡΠ΅Ρ Π΄Π»Ρ ΡΠ°ΠΌΠΎΠ²ΡΠ²ΠΎΠ·Π° Π² ΡΠ°Ρ β Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ Π½Π°ΠΆΠ°ΡΡ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ
Π‘Π΄Π΅Π»Π°ΠΉΡΠ΅ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΏΡΠΈΠ²Π»Π΅ΠΊΠ°Π»ΠΈ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ Π² Π½ΠΈΡ ΡΠΌΠΎΠ΄ΠΆΠΈ ΠΈ Π·Π°Π΄Π°ΠΉΡΠ΅ ΡΠ²Π΅Ρ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ Π²Π°ΡΠΈΠ°Π½ΡΡ ΠΎΡΠ²Π΅ΡΠ° (ΡΠΈΠ½ΠΈΠΉ β ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ, ΡΠ΅ΡΡΠΉ β Π²ΡΠΎΡΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΡΠΉ, Π·Π΅Π»Π΅Π½ΡΠΉ β ΠΏΠΎΠ·ΠΈΡΠΈΠ²Π½ΡΠΉ ΠΎΡΠ²Π΅Ρ, ΠΊΡΠ°ΡΠ½ΡΠΉ β Π½Π΅Π³Π°ΡΠΈΠ²Π½ΡΠΉ ΠΎΡΠ²Π΅Ρ). Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΊΠ½ΠΎΠΏΠΊΠΈ ΡΡΠ°Π½ΡΡ Π±ΠΎΠ»Π΅Π΅ Π·Π°ΠΌΠ΅ΡΠ½ΡΠΌΠΈ, ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π»Π΅Π³ΡΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡΡΡ
Emoji ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ Π²Π°ΡΠΈΠ°Π½ΡΠ°ΠΌ ΠΎΡΠ²Π΅ΡΠ° ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌ ΠΊΡΠ°ΡΠΎΠΊ, Π° ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΊΠ° ΠΊΠ½ΠΎΠΏΠΎΠΊ ΡΠΈΠ½ΠΈΠΌ ΠΈ Π±Π΅Π»ΡΠΌ ΡΠ²Π΅ΡΠ°ΠΌΠΈ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ Π΄Π²ΡΠΌΡ ΡΠΈΠΏΠ°ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄: Π²ΡΠ±ΠΎΡΠΎΠΌ ΡΡΠ°Π½ΡΠΏΠΎΡΡΠ° ΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠΌ ΡΠ²ΡΠ·ΠΈ Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠΌ
ΠΠΎΠ΄ΡΠ²Π΅ΡΠΈΠ²Π°Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΎΠΊ Π·Π΅Π»Π΅Π½ΡΠΌ ΠΈ ΠΊΡΠ°ΡΠ½ΡΠΌ ΡΠ²Π΅ΡΠΎΠΌ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΡ Π±ΡΡΡΡΠΎ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· ΠΎΡΠ²Π΅ΡΠΎΠ² ΠΏΠΎΠ·ΠΈΡΠΈΠ²Π½ΡΠΉ, Π° ΠΊΠ°ΠΊΠΎΠΉ β Π½Π΅Π³Π°ΡΠΈΠ²Π½ΡΠΉ. Emoji ΡΡΠΈΠ»ΠΈΠ²Π°ΡΡ ΡΡΠΎΡ ΡΡΡΠ΅ΠΊΡ
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ°Ρ-Π±ΠΎΡΠ° Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠΌΠΎΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΡΠ±ΡΠ°ΡΡ ΡΠΎΠ²Π°Ρ Π² Π²Π°ΡΠ΅ΠΌ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ-ΠΌΠ°Π³Π°Π·ΠΈΠ½Π΅ ΠΈΠ»ΠΈ ΡΡΠΎΡΠ½ΠΈΡΡ Π½Π°Π»ΠΈΡΠΈΠ΅ Π±ΠΈΠ»Π΅ΡΠΎΠ². ΠΠ΄Π½Π°ΠΊΠΎ, ΠΏΠΎΠΌΠΈΠΌΠΎ ΡΡΠΎΠ³ΠΎ, Π² ΡΠ°ΠΌΠΊΠ°Ρ Π΄ΠΈΠ°Π»ΠΎΠ³Π° ΡΠ΅ΠΏΠ΅ΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΠΈ ΠΈ ΠΎΠΏΠ»Π°ΡΡ ΡΠ΅ΡΠ΅Π· VK Pay ΠΈΠ»ΠΈ Π―Π½Π΄Π΅ΠΊΡ.ΠΠ΅Π½ΡΠ³ΠΈ
ΠΠΏΠ»Π°ΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ°Ρ-Π±ΠΎΡΠ°
Π ΡΠ°ΠΌΠΊΠ°Ρ ΡΠ°ΡΠ° ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π±ΡΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠΎΠ»ΠΈΠΊΠ° Π² ΡΠ΅ΡΡΠΎΡΠ°Π½Π΅, Π·Π°ΠΏΠΈΡΡ Π² ΡΠ°Π»ΠΎΠ½, Π·Π°ΠΊΠ°Π· ΠΏΠΈΡΡΡ ΠΈ Ρ.Π΄. ΠΡΠΈ ΡΡΠΎΠΌ Π²Π°ΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ Π΄Π°Π½Π½ΡΠ΅, Π²Π²ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ΅Π»Π΅ΡΠΎΠ½ ΠΈ email), ΠΏΡΠΎΠ²Π΅ΡΡΠ»ΠΈΡΡ Π½Π° ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΡΡΡ, ΠΈ ΡΠ°Ρ-Π±ΠΎΡ ΠΏΡΠΎΡΠΈΠ» Π΅Π³ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ Π²Π²ΠΎΠ΄, Π΅ΡΠ»ΠΈ Π΄Π°Π½Π½ΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΠΎΡΠΈΠ±ΠΊΠΈ. ΠΠΎΡΡΠΎΠΌΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΡΠΉΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΠΈ Π΄Π°Π½Π½ΡΡ , Π΅ΡΠ»ΠΈ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΈΡΠ΅ΡΠ΅ ΡΠ°Ρ-Π±ΠΎΡΠ°, ΠΈΠ»ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅, Π΅ΡΡΡ Π»ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» Π² ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ΅ ΡΠ°Ρ-Π±ΠΎΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠΌ Π²Ρ ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ΡΡ
ΠΠ°Π»ΠΈΠ΄Π°ΡΠΈΡ Π²Π²ΠΎΠ΄ΠΈΠΌΡΡ Π΄Π°Π½Π½ΡΡ
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°Ρ-Π±ΠΎΡΠΎΠ² Π΄Π»Ρ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π²Π°ΠΌ Π·Π°Π΄Π°Π²Π°ΡΡ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΠΌΠΈ β ΠΎΡ ΡΠ΅ΠΊΡΠ½Π΄Ρ Π΄ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π΄Π½Π΅ΠΉ. ΠΡΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ, ΠΏΡΠΎΠ΄ΡΠΌΡΠ²Π°Ρ customer journey Π²Π°ΡΠΈΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ΅ΡΠΈΠ» ΠΊΡΠΏΠΈΡΡ ΡΠΎΠ²Π°Ρ Π² Π²Π°ΡΠ΅ΠΌ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ-ΠΌΠ°Π³Π°Π·ΠΈΠ½Π΅, Π½Π°ΠΆΠ°Π» Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ Β«ΠΠΏΠ»Π°ΡΠΈΡΡ ΡΠ΅ΡΠ΅Π· VK PayΒ» ΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ ΠΏΡΠΎΡΠ»Π° ΡΡΠΏΠ΅ΡΠ½ΠΎ, ΡΠ΅ΠΏΠΎΡΠΊΠ° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ Π½Π° ΡΡΠΎΠΌ Π½Π΅ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅ΡΡΡ, ΠΈ ΡΠ΅ΡΠ΅Π· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄Π½Π΅ΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ a-la Β«ΠΡ ΠΊΠ°ΠΊ, ΡΡΠΏΠ΅Π»ΠΈ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Π½Π°Ρ ΠΏΡΠΎΠ΄ΡΠΊΡ? ΠΠ°Π΄Π΅Π΅ΠΌΡΡ, Π²ΡΠ΅ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»ΠΎΡΡ. Π Π΅ΡΠ»ΠΈ Π½Π΅Ρ, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, Π΄Π°ΠΉΡΠ΅ Π½Π°ΠΌ Π·Π½Π°ΡΡΒ»
Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, ΠΎΡΠ»ΠΎΠΆΠ΅Π½Π½ΡΠ΅ Π²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ
ΠΡΠ°ΠΊ, ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠ»ΠΈ Ρ Π²Π°ΠΌΠΈ ΠΎ ΡΠ°ΡΠ΅ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ β ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π½Π°ΠΌ ΡΠ°ΠΌΠ° ΡΠΎΡΠΈΠ°Π»ΡΠ½Π°Ρ ΡΠ΅ΡΡ, ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊΠΈΡ
ΠΏΡΠΈΠ½ΡΠΈΠΏΠΎΠ² ΡΡΠΎΠΈΡ ΠΏΡΠΈΠ΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌΠΈ ΡΠ΅ΡΠ΅Π· ΡΠ°Ρ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ
Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΠΈ ΡΠΈΡΠΊΠ°Ρ
, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ
Ρ Π½Π΅ΠΉ. ΠΠΎ ΡΠ°Ρ β Π½Π΅ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΊΠ°Π½Π°Π» ΡΠ²ΡΠ·ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌΠΈ, Π²Π΅Π΄Ρ ΠΏΠΎΠΌΠΈΠΌΠΎ ΡΡΠΎΠ³ΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ Π°ΡΠ΄ΠΈΡΠΎΡΠΈΠ΅ΠΉ ΡΠ΅ΡΠ΅Π· ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ Π² Π»Π΅Π½ΡΠ΅ Π½ΠΎΠ²ΠΎΡΡΠ΅ΠΉ, ΠΈΡΡΠΎΡΠΈΠΈ, ΠΏΡΡΠΌΡΠ΅ ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΈ ΠΈ ΡΠ°ΡΡΡΠ»ΠΊΠΈ, Π½Π΅ Π³ΠΎΠ²ΠΎΡΡ ΡΠΆΠ΅ ΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ ΡΡΠ°ΡΡ ΡΠΎΡΠΊΠ°ΠΌΠΈ ΠΊΠΎΠ½ΡΠ°ΠΊΡΠ° Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌΠΈ.
TO BE CONTINUED…
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΠ°ΡΡΠΈ ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎ ΠΏΡΡΠΌΡΡ
ΡΡΠ°Π½ΡΠ»ΡΡΠΈΡΡ
ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ β ΠΎ ΡΠΎΠΌ, Π΄Π»Ρ ΡΠ΅Π³ΠΎ ΠΈΡ
ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ, ΡΡΠΎ ΡΡΠΎΠΈΡ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ΅ ΠΊ ΠΏΡΡΠΌΠΎΠΉ ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΈ ΠΈ ΠΊΠ°ΠΊΠΈΡ
ΠΎΡΠΈΠ±ΠΎΠΊ ΡΡΠΎΠΈΡ ΠΈΠ·Π±Π΅Π³Π°ΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π΅Π΅ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ
ΠΠΠΠΠΠ‘ΠΠ’Π¬Π‘Π―
Π§ΠΠ’ΠΠ’Π¬ ΠΠΠΠΠ
Π±ΠΎΡ vk api python ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ°Π·Π½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΡΠ°Π·Π½ΡΠΌ Π»ΡΠ΄ΡΠΌ, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΏΠΈΡΡΡ ΠΎΠ΄Π½ΠΎ ΠΈ ΡΠΎ ΠΆΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅
ΠΠΎΠΉΡΠΈ
ΠΠΎΠ±ΡΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°ΡΡ! ΠΠΎΠΉΠ΄ΠΈΡΠ΅ Π² ΡΠ²ΠΎΡ ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΡ
Π²Π°ΡΠ΅ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
Π²Π°Ρ ΠΏΠ°ΡΠΎΠ»Ρ
ΠΠ°Π±ΡΠ»ΠΈ ΡΠ²ΠΎΠΉ ΠΏΠ°ΡΠΎΠ»Ρ?
ΠΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΡΠΎΠ»Ρ
ΠΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠ°ΡΠΎΠ»Ρ
Π²Π°Ρ Π°Π΄ΡΠ΅Ρ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΡ
ΠΠΎΠΈΡΠΊ
ΠΠ²ΡΠΎΡ
ΠΠ°ΡΠ°
ΠΠ°ΡΠ΅Π³ΠΎΡΠΈΡ
Π£ ΠΌΠ΅Π½Ρ Π΅ΡΡΡ Π±ΠΎΡ Π΄Π»Ρ ΡΠ°Π·Π³ΠΎΠ²ΠΎΡΠ° ΠΠ ΠΈ ΠΌΠ°ΡΠ΅ΡΠ½Π°Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ ΠΠ½Π΅ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π΅ΡΠ»ΠΈ (ΠΈΡ 5 ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ) ΠΡΡ Π° ΠΎΠ±ΠΌΠ°ΡΠ΅ΡΠΈΠ» Π΅Π³ΠΎ, ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π² ΡΠΏΠΈΡΠΎΠΊ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ, Π° Π΅ΡΠ»ΠΈ ΠΠ°ΡΠ²Π΅ΠΉ ΡΡΠ³Π°Π»ΡΡ, ΡΠΎ Π΅ΠΌΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ»Π°ΡΡ Π΅Π΄ΠΈΠ½ΠΈΡΠ° ΠΈ ΠΊΠ°ΠΆΠ΄ΡΠ΅ 24 ΡΠ°ΡΠ° ΠΏΡΠΈΡΡΠ»Π°Π»ΠΎΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π· ΠΎΠ½ ΡΡΠ³Π°Π»ΡΡ. ΠΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ Π΅ΡΠ»ΠΈ Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ, ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅ΡΠ΅Π· Π΅ΡΠ»ΠΈ Ρ ΠΏΠΎΡΡΠ½Π΅Π½ΠΈΠ΅ΠΌ. Π― Π½ΠΎΠ²ΠΈΡΠΎΠΊ Π² ΡΡΠΎΠΌ ΠΈΠ»ΠΈ ΡΡΡΠ»ΠΊΠ° Π½Π° ΡΡΠ°ΡΡΡ Ρ ΠΎΡΡ Π±Ρ Ρ ΠΏΠΎΡ ΠΎΠΆΠΈΠΌ Π²ΠΎΠΏΡΠΎΡΠΎΠΌ
ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΉ ΠΈΠΌΠΏΠΎΡΡ, vk_api, vk ΠΈΠ· vk_api.keyboard ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ VkKeyboard, VkKeyboardColor ΠΈΠ· vk_api.utils ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ get_random_id Π·Π°ΠΏΡΠΎΡΡ Π½Π° ΠΈΠΌΠΏΠΎΡΡ ΠΈΠΌΠΏΠΎΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Π²ΡΠ΅ΠΌΡ ΠΈΠΌΠΏΠΎΡΡΠ° ΠΈΠΌΠΏΠΎΡΡ ΠΏΠΎΡΠΎΠΊΠΎΠ² ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ json vk_session = vk_api.VkApi (ΡΠΎΠΊΠ΅Π½ = 'Π’ΠΠΠΠ') ΠΈΠ· vk_api.bot_longpoll ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ VkBotLongPoll, VkBotEventType longpoll = VkBotLongPoll (vk_session, 204434733) vk = vk_session.get_api () ΠΈΠ· vk_api.longpoll ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ VkLongPoll, VkEventType Lslongpoll = VkLongPoll (vk_session) Lsvk = vk_session.get_api () Π΄Π΅Ρ Π±ΠΎΡ (): lsvk. messages.send ( ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ_ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ = 496658805, message = "ΠΠΎΡ Π·Π°ΠΏΡΡΠ΅Π½!", ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΉ_ΠΈΠ΄ = ΠΏΠΎΠ»ΡΡΠΈΡΡ_ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΉ_ΠΈΠ΄ () ) Π΄Π»Ρ ΡΠΎΠ±ΡΡΠΈΡ Π² longpoll.listen(): Π΅ΡΠ»ΠΈ event.type == VkBotEventType.MESSAGE_NEW: Π΅ΡΠ»ΠΈ 'BOT' Π² ΡΠ» (ΡΠΎΠ±ΡΡΠΈΠ΅) ΠΈΠ»ΠΈ 'ΠΠΎΡ' Π² ΡΠ» (ΡΠΎΠ±ΡΡΠΈΠ΅) ΠΈΠ»ΠΈ 'Π±ΠΎΡ' Π² ΡΠ» (ΡΠΎΠ±ΡΡΠΈΠ΅): Π΅ΡΠ»ΠΈ ΡΠΎΠ±ΡΡΠΈΠ΅.from_chat: Π΅ΡΠ»ΠΈ ΡΠΎΠ±ΡΡΠΈΠ΅.ΠΎΡ_ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ: vk.messages.send ( key = ('b0409379fb3b81632ee943deb2e99280c53dd520'), # ΠΠ‘Π’ΠΠΠΠ’Π¬ ΠΠΠ ΠΠΠΠ’Π Π« ΡΠ΅ΡΠ²Π΅Ρ = ('https://lp.vk.com/wh304434733'), Ρ = ('1'), ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΉ_ΠΈΠ΄ = ΠΏΠΎΠ»ΡΡΠΈΡΡ_ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΉ_ΠΈΠ΄(), ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ = 'ΠΡΠΈΠ²Π΅Ρ! Π― Π±ΠΎΡ DDRX5, ΡΠ΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π²Π°ΡΡ ΠΌΠ΅Π½Ρ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ! ', chat_id = ΡΠΎΠ±ΡΡΠΈΠ΅.chat_id ) Π±ΠΎΡ = threading.Thread (ΡΠ΅Π»Ρ = Π±ΠΎΡ) Π±ΠΎΡ.ΡΡΠ°ΡΡ () ################################################## # ############## ΠΊΡΠΎΠΌΠ΅: lsvk.messages.send ( ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ_ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ = 496658805, message = "ΠΠΎΡ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ :(", ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΉ_ΠΈΠ΄ = ΠΏΠΎΠ»ΡΡΠΈΡΡ_ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΉ_ΠΈΠ΄ () )
ΠΠΎΡ ΠΈ Π²Π΅ΡΡ ΠΌΠΎΠΉ Π±ΠΎΡ
ΠΠΎΡ ΡΠ°ΠΊ Ρ Π½Π°ΠΏΠΈΡΠ°Π» ΠΈ user_id ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠ½ΡΡ ΠΊΡΠ°ΡΠ½ΡΠΌ
import random,vk_api,vk ΠΈΠ· vk_api. keyboard ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ VkKeyboard, VkKeyboardColor ΠΈΠ· vk_api.utils ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ get_random_id Π·Π°ΠΏΡΠΎΡΡ Π½Π° ΠΈΠΌΠΏΠΎΡΡ ΠΈΠΌΠΏΠΎΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Π²ΡΠ΅ΠΌΡ ΠΈΠΌΠΏΠΎΡΡΠ° ΠΈΠΌΠΏΠΎΡΡ ΠΏΠΎΡΠΎΠΊΠΎΠ² ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ json ΠΈΠ· ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΉ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ defaultdict user_by_counter = defaultdict (ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ) ΠΏΡΡΠ°ΡΡΡΡ: vk_session = vk_api.VkApi (ΡΠΎΠΊΠ΅Π½ = '') ΠΈΠ· vk_api.bot_longpoll ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ VkBotLongPoll, VkBotEventType longpoll = VkBotLongPoll (vk_session, 204434733) vk = vk_session.get_api () ΠΈΠ· vk_api.longpoll ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ VkLongPoll, VkEventType Lslongpoll = VkLongPoll (vk_session) Lsvk = vk_session.get_api () Π΄Π΅Ρ Π±ΠΎΡ (): lsvk.messages.send ( ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ_ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ = 496658805, message = "ΠΠΎΡ Π·Π°ΠΏΡΡΠ΅Π½!", ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΉ_ΠΈΠ΄ = ΠΏΠΎΠ»ΡΡΠΈΡΡ_ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΉ_ΠΈΠ΄ () ) Π΄Π»Ρ ΡΠΎΠ±ΡΡΠΈΡ Π² longpoll.listen(): Π΅ΡΠ»ΠΈ event.type == VkBotEventType.MESSAGE_NEW: Π΅ΡΠ»ΠΈ 'BOT' Π² ΡΠ» (ΡΠΎΠ±ΡΡΠΈΠ΅) ΠΈΠ»ΠΈ 'ΠΠΎΡ' Π² ΡΠ» (ΡΠΎΠ±ΡΡΠΈΠ΅) ΠΈΠ»ΠΈ 'Π±ΠΎΡ' Π² ΡΠ» (ΡΠΎΠ±ΡΡΠΈΠ΅): Π΅ΡΠ»ΠΈ ΡΠΎΠ±ΡΡΠΈΠ΅.from_chat: user_by_counter [user_id] + = 1 vk. messages.send ( key = 'b0409379fb3b81632ee943deb2e99280c53dd520', # ΠΠ‘Π’ΠΠΠΠ’Π¬ ΠΠΠ ΠΠΠΠ’Π Π« ΡΠ΅ΡΠ²Π΅Ρ = ('https://lp.vk.com/wh304434733'), Ρ = ('1'), ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΉ_ΠΈΠ΄ = ΠΏΠΎΠ»ΡΡΠΈΡΡ_ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΉ_ΠΈΠ΄(), ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ = 'ΠΡΠΈΠ²Π΅Ρ! Π― Π±ΠΎΡ DDRX5, ΡΠ΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π²Π°ΡΡ ΠΌΠ΅Π½Ρ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ! ', chat_id = ΡΠΎΠ±ΡΡΠΈΠ΅.chat_id )
Π Π½Π°ΡΠ°Π»Π΅ ΠΏΠΎΡΠ»Π΅ Π²ΡΠ΅Ρ
ΠΈΠΌΠΏΠΎΡΡΠΎΠ² Ρ Π½ΠΎΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΠΏΠΈΡΠ΅ΠΌ from collections import defaultdict
Π° Π½Π° Π²ΡΠΎΡΠΎΠΉ user_by_counter = defaultdict(int)
Π° ΡΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π² ΠΎΡΠΏΡΠ°Π²ΠΊΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, ΡΠΎΡΠ½Π΅Π΅ ΠΊΠ°ΠΊ ΡΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ
Π΄Π»Ρ ΡΠΎΠ±ΡΡΠΈΡ Π² longpoll.listen(): Π΅ΡΠ»ΠΈ event.type == VkBotEventType.MESSAGE_NEW: Π΅ΡΠ»ΠΈ Β«Π’Π΅ΠΊΡΡ ΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΒ» Π² ΡΡΡΠΎΠΊΠ΅ (ΡΠΎΠ±ΡΡΠΈΠ΅): Π΅ΡΠ»ΠΈ ΡΠΎΠ±ΡΡΠΈΠ΅.from_chat: user_id = ΡΠΎΠ±ΡΡΠΈΠ΅.obj.from_id user_by_counter [user_id] + = 1 vk.messages.send ( key = (''), # ΠΠ‘Π’ΠΠΠΠ’Π¬ ΠΠΠ ΠΠΠΠ’Π Π« ΡΠ΅ΡΠ²Π΅Ρ = (''), Ρ = (''), ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΉ_ΠΈΠ΄ = ΠΏΠΎΠ»ΡΡΠΈΡΡ_ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΉ_ΠΈΠ΄(), ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ = 'ΠΎΡΠ²Π΅ΡΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ', chat_id = ΡΠΎΠ±ΡΡΠΈΠ΅. chat_id )
Β© Copyright — ΠΠ°Π·Π΅ΡΠ° TagDiv
node-vk-bot — ΠΠ½Π°Π»ΠΈΠ· ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² npm
ΠΡΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½Π½ΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ ΠΏΡΡΠΌΡΡ ΠΈ ΠΊΠΎΡΠ²Π΅Π½Π½ΡΡ ΠΏΠ°ΠΊΠ΅ΡΡ.
Π ΠΈΡΠΊ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΈ Π»ΠΈΡΠ΅Π½Π·ΠΈΠΈ Π΄Π»Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π²Π΅ΡΡΠΈΠΉ
ΠΡΠ΅ Π²Π΅ΡΡΠΈΠΈ
ΠΠ΅ΡΡΠΈΡ | Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ | ΠΠΈΡΠ΅Π½Π·ΠΈΠΎΠ½Π½ΡΠΉ ΡΠΈΡΠΊ | |||
---|---|---|---|---|---|
1.2.3 | | | 12/2018 |
|
| |
1. 1.0 | | | 09/2018 |
|
| |
0. 3.1 | | | 06/2018 |
|
| |
0. 2.6 | | | 03/2018 | Popular |
|
|
0. 1.5 | | | 02/2017 |
|
|
ΠΠ°Ρ ΠΏΡΠΎΠ΅ΠΊΡ ΠΏΠΎΠ΄Π²Π΅ΡΠΆΠ΅Π½ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡΠΌ?
Π‘ΠΊΠ°Π½ΠΈΡΡΠΉΡΠ΅ ΡΠ²ΠΎΠΈ ΠΏΡΠΎΠ΅ΠΊΡΡ Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ. ΠΡΡΡΡΠΎ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ. ΠΠ°ΡΠ½ΠΈΡΠ΅ ΡΠ°Π±ΠΎΡΡ ΡΠΎ Snyk Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ.
ΠΠ°ΡΠ½ΠΈΡΠ΅ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠΆΠ΅Π½Π΅Π΄Π΅Π»ΡΠ½ΡΠ΅ Π·Π°Π³ΡΡΠ·ΠΊΠΈ (44)
Π‘ΠΊΠ°ΡΠ°ΡΡ ΡΡΠ΅Π½Π΄
- ΠΠΆΠ΄ΠΈΠ²Π΅Π½ΡΡ
- 0
- ΠΠ²Π΅Π·Π΄Ρ GitHub
- 35
- ΠΠΈΠ»ΠΊΠΈ
- 11
- ΠΠ²ΡΠΎΡΡ
- 9
ΠΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ
ΠΠ°ΠΊΠ΅Ρ npm node-vk-bot ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π² ΠΎΠ±ΡΠ΅ΠΉ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ 44 Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π² Π½Π΅Π΄Π΅Π»Ρ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΌΡ Π·Π°Π±ΠΈΠ»ΠΈ Π£ΡΠΎΠ²Π΅Π½Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΠΈ node-vk-bot Π±ΡΠ΄Π΅Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½.
ΠΠ° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈΠ· ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ GitHub Π΄Π»Ρ npm ΠΏΠ°ΠΊΠ΅Ρ node-vk-bot, ΠΌΡ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ»ΠΈ, ΡΡΠΎ ΠΎΠ½ Π±ΡΠ» ΡΠ½ΡΠ»ΡΡ 35 ΡΠ°Π·, ΠΈ ΡΡΠΎ 0 Π΄ΡΡΠ³ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Π² ΡΠΊΠΎΡΠΈΡΡΠ΅ΠΌΠ΅ Π·Π°Π²ΠΈΡΡΡ ΠΎΡ Π½Π΅Π³ΠΎ.
ΠΠ°Π³ΡΡΠ·ΠΊΠΈ ΡΠ°ΡΡΡΠΈΡΡΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΊ ΡΠΊΠΎΠ»ΡΠ·ΡΡΠΈΠ΅ ΡΡΠ΅Π΄Π½ΠΈΠ΅ Π·Π° ΠΏΠ΅ΡΠΈΠΎΠ΄ ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ 12 ΠΌΠ΅ΡΡΡΠ΅Π², Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ Π²ΡΡ ΠΎΠ΄Π½ΡΡ ΠΈ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ ΠΎΡΡΡΡΡΡΠ²ΡΡΡΠΈΡ ΡΠΎΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ .
Π§Π°ΡΡΠΎΡΠ° ΡΠΈΠΊΡΠ°ΡΠΈΠΈ
ΠΠ΅Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ²
- ΠΡΠΊΡΡΡΡΠ΅ Π·Π°Π΄Π°ΡΠΈ
- 4
- ΠΡΠΊΡΡΡΡΠΉ PR
- 0
- ΠΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ
- 4 Π³ΠΎΠ΄Π° Π½Π°Π·Π°Π΄
- ΠΠΎΡΠ»Π΅Π΄Π½ΡΡ ΡΠΈΠΊΡΠ°ΡΠΈΡ
- 4 Π³ΠΎΠ΄Π° Π½Π°Π·Π°Π΄
ΠΠ°Π»ΡΠ½Π΅ΠΉΡΠΈΠΉ Π°Π½Π°Π»ΠΈΠ· ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ node-vk-bot Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠ°Π΄Π΅Π½ΡΠΈΡ Π²ΡΠΏΡΡΠ΅Π½Π½ΡΡ Π²Π΅ΡΡΠΈΠΉ npm, Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠ»ΠΈ, ΡΡΠΎ Π΅Π³ΠΎ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΠ΅Π°ΠΊΡΠΈΠ²Π½ΡΠΉ.
ΠΠ°ΠΆΠ½ΡΠΌ ΡΠΈΠ³Π½Π°Π»ΠΎΠΌ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΡΠΈΡΡΠ²Π°ΡΡ Π΄Π»Ρ node-vk-bot, ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠΎ Π½Π΅ Π²ΠΈΠ΄Π΅Π» Π½ΠΈΠΊΠ°ΠΊΠΈΡ Π½ΠΎΠ²ΡΡ Π²Π΅ΡΡΠΈΠΉ, Π²ΡΠΏΡΡΠ΅Π½Π½ΡΡ Π΄Π»Ρ npm Π² Π·Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ 12 ΠΌΠ΅ΡΡΡΠ΅Π² ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠΈΡΠ°ΡΡΡΡ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ΅Π½Π½ΡΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ ΠΈΠ»ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΌΠ°Π»ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ ΡΠΎ ΡΡΠΎΡΠΎΠ½Ρ Π΅Π³ΠΎ ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π°ΡΡΠΈΡ .
ΠΠ° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΌΠ΅ΡΡΡ ΠΌΡ Π½Π΅ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ»ΠΈ Π½ΠΈΠΊΠ°ΠΊΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π½Π° Π²ΡΡΡΠ³ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΡΡΠ°ΡΡΡ issue Π±ΡΠ» ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ Π΄Π»Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ GitHub.
- Π‘ΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ Ρ Node.js
- Π½Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ
- ΠΠΎΠ·ΡΠ°ΡΡ
- 6 Π»Π΅Ρ
- ΠΠ°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ
- 3 ΠΏΡΡΠΌΡΡ
- ΠΠ΅ΡΡΠΈΠΈ
- 36
- Π Π°Π·ΠΌΠ΅Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ
- 66 ΠΠ
- Π Π°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΡΠ΅Π³ΠΈ
- 1
- ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ°ΠΉΠ»ΠΎΠ²
- 113
- ΠΠ±ΡΠ»ΡΠΆΠΈΠ²Π°ΡΡΠΈΠΉ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»
- 1
- Π’ΠΈΠΏΡ TS
- ΠΠ°
node-vk-bot ΠΈΠΌΠ΅Π΅Ρ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΡΠ΅Π³Π° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π΄Π»Ρ ΠΏΠ°ΠΊΠ΅Ρ Π½ΠΏΠΌ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ΅Π³ΠΈ. ΠΏΠ°ΠΊΠ΅Ρ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΡΠ΄ΠΎΠΌ, ΡΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ Π±ΡΠ΄ΡΡΠΈΠ΅ Π²ΡΠΏΡΡΠΊΠΈ, ΠΈΠ»ΠΈ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΡΠΉ, ΡΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΡΠ΅ ΡΠ΅Π»ΠΈΠ·Ρ.
ΠΠ°ΠΊ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΡΡ Π°Π΄ΡΠ΅Ρ ΡΠ΅ΡΠ²Π΅ΡΠ° Ρ Π±ΠΎΡΠΎΠΌ ΠΠΊ?
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½Π°Ρ ΠΏΠ΅ΡΠ΅ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°, ΠΊΠΎΡΠΎΡΡΡ Π½Π΅Π»Π΅Π³ΠΊΠΎ ΡΠ΅ΠΊΠΎΠ½ΡΡΡΡΠΈΡΠΎΠ²Π°ΡΡ. Π‘ΡΡΡΠΊΡΡΡΠ° ΡΠΈΡΡΠ° Π€Π΅ΠΉΡΡΠ΅Π»Ρ. ΠΡ ΠΎΠ΄Π½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ Π΄Π»Ρ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ²Π»ΡΡΡΡΡ Π±Π»ΠΎΠΊΠΈ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ°.
Π‘Π°Ρ ΡΠ»Π΅Π½ΡΠΊΠΎΠ³ΠΎ Ρ ΠΎΡΡΠΈΠ½Π³Π° 138 ΡΡΠ±., Π±Π΅Π· ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π΄ΡΡΠ³ΠΎΠΉ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ, Π°Π³Π°Ρ-Π±ΠΎΡΠ°, berfungsi: ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π»Ρ Python + Django MySQL DBMS 25 ΠΠ, ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π±Π΅Π· SSH.
ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ.ΠΠ°ΠΊ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ POST Π·Π°ΠΏΡΠΎΡΡ ΠΊ VK API Stack Overflow ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΠ°ΠΊ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ Π΄Π»ΠΈΠ½Π½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ VK API? Π§Π°Ρ-Π±ΠΎΡ Helperbyte Python ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΊΠΎΡΠΎΡΡΠΉ.
ΠΡΠΎΠ΄ΡΠΊΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π½Π° ΡΡΠ°Π΄ΠΈΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ΡΠΎΠΎΠ±ΡΠ°ΠΉΡΠ΅ ΠΎΠ±ΠΎ Π²ΡΠ΅Ρ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠ°Ρ ΡΠ΅ΡΠ΅Π· ΠΊΠ½ΠΎΠΏΠΊΡ Β«ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΒ» Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ . Β«ΠΠΎΠ½ΡΠ°ΠΊΡΒ» β Π½ΠΎΠ²ΡΠΉ Π±ΡΡΡΡΡΠΉ ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΡΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ Π΄Π»Ρ.
Π‘Π²ΡΠ·Π°ΡΡΡΡ Ρ ΡΠ΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ ΡΠ΅ΡΠ΅Π· Π²ΠΈΠ΄ΠΆΠ΅Ρ Π² ΡΠ³Π»Ρ ΡΠΊΡΠ°Π½Π°. ΠΠ΅ΡΠ½ΡΡΡΡΡ Π² Π³Π»Π°Π²Π½ΠΎΠ΅ ΠΌΠ΅Π½Ρ.Π‘ΡΠ°ΡΡΠΈ ΠΏΠΎ ΡΠ΅ΠΌΠ΅.ΠΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅? Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΡΡΡΠ°Π½ΠΈΡΡ.
ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π²Π½Π΅ΡΠ½ΠΈΠΉ ΠΊΠ°Π½Π°Π» Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ Π² Chat2Desk ΠΈΠ· ΠΊΠ°ΠΊΠΎΠ³ΠΎ-ΡΠΎ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ° ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ Π±ΠΎΠ»ΡΡΠΎΠΉ ΡΠΏΠΈΡΠΎΠΊ Π΄Π°Π½Π½ΡΡ , ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠΈΡ ΡΠ°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ Π½Π° ΡΡΡΠ°Π½ΠΈΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ URL-Π°Π΄ΡΠ΅ΡΠ°.
Shift β Π½Π°ΡΡΠΎΠ»ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Stack Overflow ΠΈ Π²ΡΠ΅ΠΌΠΈ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ ΠΈ ΡΡΠ΅ΡΠ½ΡΠΌΠΈ Π·Π°ΠΏΠΈΡΡΠΌΠΈ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅. ΠΠΎΠ³ΠΎΡΠΈΠΏ Stack Overflow. ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ Stack Overflow.
ΠΠ½ΠΎΠ³ΠΎΠΊΠ°Π½Π°Π»ΡΠ½Π°Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ²: Π²ΡΠ΅ ΡΠΈΡΡΠΎΠ²ΡΠ΅ ΠΊΠ°Π½Π°Π»Ρ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ + ΠΠ Π₯ΠΎΡΠΈΡΠ΅ Π·Π½Π°ΡΡ, ΠΊΠ°ΠΊ ΡΠ²ΡΠ·Π°ΡΡ Usedesk Ρ ΡΠΎΡΠΈΠ°Π»ΡΠ½ΡΠΌΠΈ ΡΠ΅ΡΡΠΌΠΈ VTEX?
ΠΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΡ ΠΈ ΡΠ΅ΡΠ΅Π²Π°Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ. ΠΠ²ΡΠΎΡ ΠΡΡΠ» ΠΠ°Ρ Π°ΡΠ΅. ΠΠ± ΡΡΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅ Tata McGrawHill Education. Π‘ΡΡΠ°Π½ΠΈΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ Tata McGrawHill Education.
ΠΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΠΌΠ°Ρ Π°ΡΠ΄ΠΈΡΠΎΡΠΈΡ xiii.ΠΠ»Π°Π½ ΠΊΠ½ΠΈΠ³ΠΈ xiv.ΠΠ½ΡΠ΅ΡΠ½Π΅Ρ-ΡΡΠ»ΡΠ³ΠΈ Π΄Π»Ρ ΠΏΡΠ΅ΠΏΠΎΠ΄Π°Π²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈ ΡΡΡΠ΄Π΅Π½ΡΠΎΠ² xiv.ΠΡΠΎΠ΅ΠΊΡΡ ΠΏΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΠΈ ΠΈ ΡΠ΅ΡΠ΅Π²ΠΎΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ.
Python vk vkapi ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΎ 6 ΡΠ½Π²Π°ΡΡ 2019 Π³ .; ΠΏΠΈΡΠΎΠ½; negezor.Π‘ΠΊΡΠΈΠΏΡ Π±ΠΎΡΠ° Π²ΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΏΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.ΠΠ»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π±ΠΎΡΠΎΠ² Ρ ΡΠ΅ΡΠ²Π΅ΡΠ° Discord ΡΠ»Π΅Π΄ΡΠΉΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌ.
ΠΠ±Π·ΠΎΡ 2890 Π»ΡΡΡΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Go vkapi Π£Π·Π½Π°ΠΉΡΠ΅, ΠΊΠ°ΠΊ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΡΡΠΏΠ½ΠΎΠΌΠ°ΡΡΡΠ°Π±Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠΎΠΌΠΎΠ³ΠΈΡΠ΅ ΠΎΡΠΊΡΡΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ Π·Π° NAT ΠΈΠ»ΠΈ Π±ΡΠ°Π½Π΄ΠΌΠ°ΡΡΡΠΎΠΌ Π² ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅.
Bot API β ΡΡΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ HTTP, ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², Π·Π°Π½ΠΈΠΌΠ°ΡΡΠΈΡ ΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ Π±ΠΎΡΠΎΠ² Π΄Π»Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½Π½ΠΎΠΉ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΡΠ΅ΡΠΎΠ² Π² Π³ΡΡΠΏΠΏΠΎΠ²ΡΠ΅ ΡΡΠΏΠ΅ΡΠ³ΡΡΠΏΠΏΠΎΠ²ΡΠ΅ ΠΈ ΠΊΠ°Π½Π°Π»ΡΠ½ΡΠ΅ ΡΠ°ΡΡ.
ΠΡΠΏΡΠ°Π²ΠΊΠ° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΠ½ΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡΡΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠ΅ΡΠ΅ΡΠ΅Π» ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³. ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠ΅ΡΠ²ΠΈΡ ΠΊΠΎΡΠΎΡΠΊΠΈΡ URL vk.me, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΡ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΎΠ±ΠΌΠ΅Π½Π° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΠΌΠΈ, Π° Π½Π΅.
Π Π°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΊΠ»Π°ΡΡΡ ΠΎΡΠΈΠ±ΠΎΠΊ; ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΎΡ; ΠΡΡΠ³ΠΎΠΉ ΠΌΠ΅ΡΠΎΠ΄ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ; ΠΠΎΠ»Π΅Π·Π½ΡΠΉ Bot API, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΠΊΠ»ΡΡ API, Π½Π° ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠΉ ΡΠΎΡΡΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² GitHub Issues ΠΈΠ»ΠΈ Stack Overflow.
Π ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ API ΠΎΠ±ΠΌΠ΅Π½Π° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΠΌΠΈ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ LINE bot. URL-Π°Π΄ΡΠ΅Ρ Π²Π΅Π±-ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΡΠΈΠΊΠ° β ΡΡΠΎ ΠΊΠΎΠ½Π΅ΡΠ½Π°Ρ ΡΠΎΡΠΊΠ° Π²Π°ΡΠ΅Π³ΠΎ Π±ΠΎΡ-ΡΠ΅ΡΠ²Π΅ΡΠ°, ΠΊΡΠ΄Π° ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ Π½Π°Π³ΡΡΠ·ΠΊΠΈ Π²Π΅Π±-ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΡΠΈΠΊΠ°.
ΠΠΎΠ±ΠΈΠ»ΡΠ½Π°Ρ Π²Π΅ΡΡΠΈΡ ΠΌΠΎΠ΄Π΅ΡΠ°ΡΠΎΡΠ° ΠΠ΄Π½ΠΎΠΊΠ»Π°ΡΡΠ½ΠΈΠΊΠΎΠ².Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΠΈ ΠΌΠΎΠ΄Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΠΈ ΠΈ Π²ΠΈΠ΄Π΅ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ΅Π»Π΅ΡΠΎΠ½Π°.ΠΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°Ρ ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΠΈ ΠΏΠΎΠΌΠ΅ΡΠ°ΠΉΡΠ΅ ΠΏΠ»ΠΎΡ ΠΈΠ΅, ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ Π±ΡΠ»ΠΈ.
@vkontakte/callssdk ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄Π»Ρ Π²ΠΈΠ΄Π΅ΠΎΠ·Π²ΠΎΠ½ΠΊΠΎΠ² Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅ vk.com @vkontakte/svgsprite ΠΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ SVG-ΡΠΏΡΠ°ΠΉΡΠΎΠ² ΠΈ ΡΡΠ΅ΠΊΠΎΠ² ΠΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ Node.js.
ΠΡΠΎ ΠΏΡΠΎΡΡΠΎΠΉ API Π±ΠΎΡΠ° ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅. ΠΠ»Ρ ΡΠ°Π±ΠΎΡΡ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠΎΠΊΠ΅Π½ Π΄ΠΎΡΡΡΠΏΠ° ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Ρ ΠΏΡΠ°Π²Π°ΠΌΠΈ: messagesfriendsoffline ΡΠΌ. Π½ΠΈΠΆΠ΅.https://github.com/nikepan/govkbot.
ΠΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅ sdkfingerprint Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ΅Π½ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ Π§Π°Ρ-Π±ΠΎΡ Π²ΠΊ Ρ python + vkapi ΠΠ°ΠΊ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΡΡ URL ΡΠ΅ΡΠ²Π΅ΡΠ° Ρ Π±ΠΎΡΠΎΠΌ Π²ΠΊ? php Π±ΠΎΡΡ Π²ΠΊ.
Buffer.easy.No Info Available Stack Overflow / Stack Exchange Accounts JustDelete.me ΡΡΡΠ΅ΠΌΠΈΡΡΡ Π±ΡΡΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠΌ URL-Π°Π΄ΡΠ΅ΡΠΎΠ², ΡΡΠΎΠ±Ρ Π²Ρ ΠΌΠΎΠ³Π»ΠΈ Π»Π΅Π³ΠΊΠΎ ΡΠ΄Π°Π»ΡΡΡ.
Prentice Hall 2011 ΠΠΎΠΌΠΏΡΡΡΠ΅ΡΡ 719 ΡΡΡΠ°Π½ΠΈΡ. 3 ΠΠ±Π·ΠΎΡΡ. ΠΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΡ ΠΈ ΡΠ΅ΡΠ΅Π²Π°Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ Π£ΠΈΠ»ΡΡΠΌΠ° Π‘ΡΠΎΠ»Π»ΠΈΠ½Π³ΡΠ°: ΠΏΡΠΈΠ½ΡΠΈΠΏΡ ΠΈ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ° 5e ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΌ.
ΠΠ΄ΡΠ°Π²ΡΡΠ²ΡΠΉΡΠ΅! ΠΠ°ΠΏΠΈΡΠ°Π» Π±ΠΎΡΠ° Π΄Π»Ρ ΠΎΠ±ΡΠ΅Π½ΠΈΡ Π²ΠΊ Π½Π° PYTHON.Π‘Π΅ΠΉΡΠ°Ρ Ρ ΠΎΡΡ Π΅Π³ΠΎ Π·Π°Π»ΠΈΡΡ Π½Π° Ρ ΠΎΡΡΠΈΠ½Π³ ΡΡΠΎΠ±Ρ Π±ΠΎΡ ΡΠ°Π±ΠΎΡΠ°Π» Π½ΠΎΠ½-ΡΡΠΎΠΏ ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ ΡΡΠΎ Π½Π΅ Π½Π°Π΄ΠΎ.
ΠΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΊΡΠΏΠΎΡΡΠ° ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ Postman Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Api Blueprint.Go 0.0k 0.0k.nikepan/govkbot.govkbot.VK ΠΠ°ΠΊΠ΅Ρ Π±ΠΎΡΠ° Π΄Π»Ρ Go.Go 0.0k 0.0k.
.ΡΠΎΠ±ΠΎΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΈ Π½ΠΎΠ²ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Π·Π°Π΄Π°Ρ ΡΠΎΠ±ΠΎΡΠΎΠ².Π΄Π»Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΈ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ API Vulkan; VKGLCTS: Π₯ΡΠΎΠ½ΠΎΡ ΠΡΠ»ΠΊΠ°Π½ OpenGL.
Π‘ Π±Π°Π·ΠΎΠΉ Π·Π½Π°Π½ΠΈΠΉ Crisp Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΠΌΠ½ΠΎΠ³ΠΎΡΠ·ΡΡΠ½ΡΠΉ ΡΠ΅Π½ΡΡ Π·Π½Π°Π½ΠΈΠΉ, ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠΉ Ρ Π²Π°ΡΠΈΠΌ Viber Instagram Telegram VKontakte Chat2Desk Enterprise.
connect.ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅.ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ β ΡΠΎΡΡΠΈΠΉΡΠΊΠ°Ρ ΡΠΎΡΠΈΠ°Π»ΡΠ½Π°Ρ ΡΠ΅ΡΡ, Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠ°Ρ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΏΡΠΎΠ΄Π°ΠΆ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ°Ρ-Π±ΠΎΡΠΎΠ² Π² ΠΌΠ΅ΡΡΠ΅Π½Π΄ΠΆΠ΅ΡΠ°Ρ ΠΈ ΠΈΡΠΊΡΡΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅Π»Π»Π΅ΠΊΡΠ°.
20211110 pkgndep ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΡΡΠΆΠ΅ΡΡΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² urlshorteneR R-ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ° Π΄Π»Ρ ΡΠ»ΡΠΆΠ± ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΡ URL-Π°Π΄ΡΠ΅ΡΠΎΠ² Bit. ly ΠΈ Is.gd/v.gd.
ΠΡΠ΅Π΄ΠΈΡΠ»ΠΎΠ²ΠΈΠ΅ ΠΡΠΎΡΡ ΠΏΡΠΎΡΠ΅Π½ΠΈΡ, ΡΡΠΎ Π½Π΅ Π½Π°ΠΏΠΈΡΠ°Π» ΠΎ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΠΠ Π² ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΡΠ°ΡΡΠ΅, Π½ΠΎ ΡΡΠ° ΡΠ°ΡΡΡ ΠΏΠΎΡΠ²ΡΡΠ΅Π½Π° ΡΠ°Π±ΠΎΡΠ΅ Ρ MySQL. Π§Π°ΡΡΡ 3 w.
Π€ΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ Π±ΠΎΡΠΎΠ² ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π΄Π»Ρ Node.js Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Bots Long Poll API ΠΈ Callback API.bot.event’messageedit’ ctx { ctx.reply’ΠΠ°ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ ΠΎΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΎ’; }.
Π€ΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ Π±ΠΎΡΠΎΠ² ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π΄Π»Ρ Node.js Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Bots Long Poll API ΠΈ Callback API. ΠΠ΅ΠΏΠ»ΠΎΡ ΠΎ bot.command’/start’ async ctx { try { await ctx.reply’Hello.
ΠΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅? ΠΠ°Π·Π° Π·Π½Π°Π½ΠΈΠΉ Chat2Desk.com ΡΠ·Π½Π°ΠΉΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΠΎ ΡΠ°Ρ-ΡΠ΅Π½ΡΡΠ΅ Π΄Π»Ρ Π±ΠΈΠ·Π½Π΅ΡΠ° WhatsApp Viber Telegram Π²ΠΈΠ΄ΠΆΠ΅ΡΡ Π½Π° Π²Π°ΡΠ΅ΠΌ.
searchgirls Π½Π΅ ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ ΠΎΠ± ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡΡ , ΠΈ Π² Π΅Π³ΠΎ Π·Π°Π²ΠΈΡΠΈΠΌΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°Ρ Π½Π΅Ρ botact 20.JavaScript.ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π±ΠΎΡΠΎΠ² ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π½Π° Node.js.
GitHub β ΡΡΠΎ ΠΌΠ΅ΡΡΠΎ, Π³Π΄Π΅ Π»ΡΠ΄ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅. ΠΠΎΠ»Π΅Π΅ 73 ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ GitHub, ΡΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ ΠΎΡΠ²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈ Π²Π½Π΅ΡΡΠΈ ΡΠ²ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ Π² Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΠΌ 200 ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π±ΠΎΡΠΎΠ² VK Π΄Π»Ρ Go.
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΌΠΎΠ³ΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ Π±ΠΎΡΠ°ΠΌΠΈ, ΠΎΡΠΏΡΠ°Π²Π»ΡΡ ΠΈΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ. ΠΡ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΠ΅ ΡΠ²ΠΎΠΈΠΌΠΈ Π±ΠΎΡΠ°ΠΌΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ HTTPS-Π·Π°ΠΏΡΠΎΡΡ ΠΊ Π½Π°ΡΠ΅ΠΌΡ Bot API.
ΠΠ±Π·ΠΎΡ ΡΠ°ΠΌΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ 16 Javascript Bot Vk Open Source Projects.Botact 20 ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π±ΠΎΡΠΎΠ² ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π½Π° Node.js Vk To Telegram 18.
Tata McGrawHill Education 2003 ΠΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΡΠ΅ ΡΠ΅ΡΠΈ 435 ΡΡΡΠ°Π½ΠΈΡ Π’Π΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΠΈ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΡΠ²Π΅ΡΡ Π½Π° Π²ΠΎΠΏΡΠΎΡΡ Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΌ Π²ΡΠ±ΠΎΡΠΎΠΌ.
ΠΡΡΡ ΠΊΠΎΠ΄ Π±ΠΎΡΠ° Π² ΡΠ΅Π»ΠΎΠΌ ΡΠ°Π±ΠΎΡΠ° Π΅Π³ΠΎ ΡΡΡΡΠ°ΠΈΠ²Π°Π΅Ρ.ΠΠΎ Π½Π΅ ΠΌΠΎΠ³Ρ Π΄ΠΎΠΏΠΈΠ»ΠΈΡΡ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ Π±Ρ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΠΈΡ Π² Π΄Π°Π½Π½ΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅.ΠΠΎΠ΄ΡΠΊΠ°ΠΆΠΈΡΠ΅ ΠΊΡΠ΄Π° ΠΊΠΎΠΏΠ°ΡΡ.
Π€ΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ Π±ΠΎΡΠ° ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π΄Π»Ρ Node.js Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Bots Long Poll API ΠΈ API ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ·ΠΎΠ²Π°. GitHub nodevkbotapi/nodevkbotapi: ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ Π±ΠΎΡΠ° ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π΄Π»Ρ Node.js.
ΠΠ°ΠΊΠ΅Ρ Π±ΠΎΡΠΎΠ² nikepan/govkbot.VK Π΄Π»Ρ Go.Current tag: v2.0.12 tagged 1 Π³ΠΎΠ΄ Π½Π°Π·Π°Π΄ | ΠΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π½Π°ΠΆΠ°ΡΠΈΠ΅: 1 Π³ΠΎΠ΄ Π½Π°Π·Π°Π΄ | ΠΠ²Π΅Π·Π΄ΠΎΡΠ΅ΡΡ: 36 | ΠΡΠΆΠΈΠΌΠ°Π½ΠΈΠΉ Π² Π΄Π΅Π½Ρ: 0.
Π€ΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ Π±ΠΎΡΠΎΠ² ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π΄Π»Ρ Node.js Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Bots Long Poll API ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Callback API Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π±ΠΎΡΠΎΠ² ΠΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅ Ρ Π»Π΅Π³ΠΊΠΎΡΡΡΡ. vkvkontaktevkapi.
ΠΠ°ΠΊ ΡΠ΅ΡΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΠΏΠ΅ΡΠ΅ΡΡΠ»ΠΊΠΎΠΉ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ? javascript node.js bots vk. Π― ΡΠΎΠ·Π΄Π°Π» ΡΠ°Ρ-Π±ΠΎΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ botact, Π½ΠΎ ΠΊΠΎΠ³Π΄Π° Ρ.
Nginx Essentials; ΠΠΎΠ²Π°ΡΠ΅Π½Π½Π°Ρ ΠΊΠ½ΠΈΠ³Π° Nginx; Nginx HTTP Server Ru VK ΠΈ Rambler. ΠΠΎΡΠΎΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ, ΠΎΠ½ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠ΄ΡΠΎ ββΠΏΠΎΠ»Π½ΡΡ Π²Π΅Π±-ΡΡΠ΅ΠΊΠΎΠ² ΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ.
ΠΡΠ²Π΅ΡΡ Π½Π° Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ Π·Π°Π΄Π°Ρ Π΄Π°Π½Ρ Π² ΠΊΠΎΠ½ΡΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ. ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ Π’Π΅ΠΌΠ° ΠΏΡΠΎΠΈΠ»Π»ΡΡΡΡΠΈΡΠΎΠ²Π°Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ 200 ΡΠΈΡΡΠ½ΠΊΠ°ΠΌΠΈ.
ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ Π±ΠΎΡΠ° Π² Π²ΠΊ ΠΈΠ»ΠΈ VK Callback API.ΠΠ΄ΡΠ°Π²ΡΡΠ²ΡΠΉΡΠ΅! ΠΠ΅Π΄Π°Π²Π½ΠΎ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΠΏΡΠΈΡΠ»ΠΎΡΡ ΡΡΠΎΠ»ΠΊΠ½ΡΡΡΡΡ Ρ Π±ΠΎΡΠΎΠΌ ΠΠ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΆΠΈΠ²Π΅Ρ Π² Π³ΡΡΠΏΠΏΠΎΠ²ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΡ .
ΠΠ΅Π³ΠΊΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π±ΠΎΡΠΎΠ² ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅.Botact 20 ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π±ΠΎΡΠΎΠ² ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π½Π° Node.js Emailrepbotvk 7 ΠΠΎΡ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΌΠΎΠ΄ΡΠ»Ρ vkio.
Π¦Π΅Π»ΡΡ ΡΡΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΎΠ±Π·ΠΎΡΠ° ΠΊΠ°ΠΊ ΠΏΡΠΈΠ½ΡΠΈΠΏΠΎΠ², ΡΠ°ΠΊ ΠΈ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΠΈ ΠΈ ΡΠ΅ΡΠ΅Π²ΠΎΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ.
nikepan/govkbot ΠΠ°ΠΊΠ΅Ρ Go VK bot ΠΡΠΎ ΠΏΡΠΎΡΡΠΎΠΉ API Π±ΠΎΡΠ° VK.com. Π‘ΡΠ°ΡΡΠ΅ Π²Π΅ΡΡΠΈΠΈ Go Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ go get github. com/nikepan/govkbot/v2.
Π§Π°Ρ-ΡΠ΅Π½ΡΡ Chat2Desk Π΄Π»Ρ ΠΏΡΠΎΠ΄Π°ΠΆ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ APK Kontakt Client for VK VKontakte APK VK Video Master ΠΠ°Π³ΡΡΠ·ΡΠΈΠΊ Π²ΠΈΠ΄Π΅ΠΎ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ APK.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΡΠΎΠΊΡΠΈΡΡΠ΅ΠΌΠΎΠ³ΠΎ url Π² ΠΏΠ»Π°Π³ΠΈΠ½Π΅ flutter videoplayer Π΄Π»Ρ hls Π’Π°ΠΊΠΆΠ΅ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ Π΅ΡΡΡ Π±ΠΎΡ ΠΠ, ΠΊΠΎΡΠΎΡΡΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΡΠΈ .
Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Node.js Π‘ΠΎΠ·Π΄Π°ΡΠ΅Π»Ρ @nodevkbotapi ΠΈ @micromq.bifot/botact.ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π±ΠΎΡΠΎΠ² ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π½Π° Node.js.5.20.JavaScript.
ΠΡΠΎ ΠΏΡΠΎΡΡΠΎΠΉ API Π±ΠΎΡΠ° ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅. Π 201 ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π±ΡΠ»ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΎ messages.send Π΄Π»Ρ usertokens. ΠΡΠΎΡ Π±ΠΎΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ grouptoken ΠΈ.
Π facebook Π΅ΡΡΡ Π±ΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ. ΠΠΎΡ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΠΌ ΡΠΎΠΊΠ΅Π½ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ API API Π½Π° node.js slack discord whatsapp twitter instagram ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π±ΠΎΡΠΎΠ² Π²ΠΊ.
Π€ΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ Π±ΠΎΡΠΎΠ² ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π΄Π»Ρ Node.js Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Bots Long Poll API ΠΈ Callback API.govkbot nikepan / govkbot.ΠΠ°ΠΊΠ΅Ρ Π±ΠΎΡΠΎΠ² ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π΄Π»Ρ Go.
http://socialbase.ru/vkontakte.php?userid474897436 https://evilcoder.ru/oshibkivopencartapiiliskazotompochemuzhno.
ΠΠ°ΠΊΠΎΠ²ΠΎ ΠΆΠ΅ Π±ΡΠ»ΠΎ ΠΌΠΎΠ΅ ΡΠ΄ΠΈΠ²Π»Π΅Π½ΠΈΠ΅, ΠΊΠΎΠ³Π΄Π° Ρ Π½Π°ΡΠ°Π» ΠΊΡΡΠΈΡΡ Π³ΡΡΠΏΠΏΡ VK API ΠΊΠ°ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ, Ρ ΡΠ²ΠΈΠ΄Π΅Π» ΡΡΠΎ ΡΡΠ΄ΠΎ Callback API.
http://socialbase.ru/vkontakte.php?userid474897436 https://evilcoder.ru/oshibkivopencartapiiliskazotompochemunuzhno
Π‘Π΄Π΅Π»Π°ΡΡ Π·Π°ΠΏΡΠΎΡ Π² ΡΠΎΡΠΌΠ΅ https://api.vk.com/method/messages.send?chatid&. ΠΠΎΡ Π² Π±Π΅ΡΠ΅Π΄Π΅ Π΄Π°Π».
ΠΠ°ΠΊΠ΅Ρ Π±ΠΎΡΠ° ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π΄Π»Ρ Go. ΠΠ½Π΅ΡΠΈΡΠ΅ ΡΠ²ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ Π² ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ nikepan/govkbot, ΡΠΎΠ·Π΄Π°Π² ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΡ Π½Π° GitHub.
ΠΠ°ΠΊΠ΅Ρ ΠΠ Π΄Π»Ρ Go. ΠΠ½Π΅ΡΠΈΡΠ΅ ΡΠ²ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ Π² ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ nikepan/govkbot, ΡΠΎΠ·Π΄Π°Π² ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΡ Π½Π° GitHub.
ΠΠ°ΠΊΠ΅Ρ Π±ΠΎΡΠ° ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π΄Π»Ρ Go. ΠΠ½Π΅ΡΠΈΡΠ΅ ΡΠ²ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ Π² ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ nikepan/govkbot, ΡΠΎΠ·Π΄Π°Π² ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΡ Π½Π° GitHub.
ΠΠ΄ΡΠ°Π²ΡΡΠ²ΡΠΉΡΠ΅! ΠΠ°ΠΏΠΈΡΠ°Π» Π±ΠΎΡΠ° Π΄Π»Ρ ΠΎΠ±ΡΠ΅Π½ΠΈΡ Π²ΠΊ Π½Π° PYTHON.Π‘Π΅ΠΉΡΠ°Ρ Ρ ΠΎΡΡ Π·Π°Π»ΠΈΡΡ Π΅Π³ΠΎ Π½Π° Ρ ΠΎΡΡΠΈΠ½Π³ ΡΠ°ΠΊ.
Botact β ΠΏΡΠΎΠ΅ΠΊΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ. ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π±ΠΎΡΠΎΠ² ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π½Π° Node. js.
Callback API filegetcontents’https://api.vk.com/method/messages.send?’
getLongPollServer.: {server}?actacheck&key{key}&ts{ts}&wait25.
Π±ΠΎΡΠΎΠ²-Π²ΠΈΠΊΡΠΎΡΠΈΠ½ Β· PyPI
ΠΠΎΡΡ-Π²ΠΈΠΊΡΠΎΡΠΈΠ½Ρ Π΄Π»Ρ Π’Π ΠΈ ΠΠ
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅
Π ΡΡΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π±ΠΎΡΡ ΠΠΊ ΠΈ Π’Π Π΄Π»Ρ Π²ΠΈΠΊΡΠΎΡΠΈΠ½Ρ. ΠΠ½ΠΈ ΠΏΡΠΈΠ²ΡΠΊΠ°ΡΡ ΠΊ Π²ΠΎΠΏΡΠΎΡΠ°ΠΌ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΡΡΡ ΠΎΡΠ²Π΅ΡΠΎΠ² Π½Π° Π½ΠΈΡ .
ΠΡΠΈΠΌΠ΅ΡΡ Π±ΠΎΡΠΎΠ²:
- Tg-Π±ΠΎΡ
- ΠΠΎΡ ΠΠΊ — Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ «ΠΠΎΠ²ΡΠΉ Π²ΠΎΠΏΡΠΎΡ» Π² Π³ΡΡΠΏΠΏΡ
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅
- Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°
- ΠΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ
- ΠΠΈΡΠ΅Π½Π·ΠΈΡ
- Π¦Π΅Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ pip:
pip ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²ΠΈΠΊΡΠΎΡΠΈΠ½-Π±ΠΎΡΠΎΠ²
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π±ΠΎΡΠ° Π² Telegram ΡΠ΅ΡΠ΅Π· BotFather ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ Π΅Π³ΠΎ API-ΡΠΎΠΊΠ΅Π½.
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΡ Redis Π² Redislabs, Π° Π·Π°ΡΠ΅ΠΌ ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΎΠ±Π»Π°ΡΠ½ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ (Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ±ΡΠ°ΡΡ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΠΉ ΠΏΠ»Π°Π½). ΠΠΎΠ»ΡΡΠΈΡΠ΅ URL-Π°Π΄ΡΠ΅Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΉ ΡΠΎΡΠΊΠΈ ΠΈ ΠΏΠΎΡΡ.
Π‘ΠΎΠ·Π΄Π°ΡΡ Π³ΡΡΠΏΠΏΡ ΠΠΠΎΠ½ΡΠ°ΠΊΡΠ΅, ΡΠ°Π·ΡΠ΅ΡΠΈΡΡ Π΅ΠΉ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄Π»Ρ Π½Π΅Π΅ ΡΠΎΠΊΠ΅Π½ Π΄ΠΎΡΡΡΠΏΠ°.
ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ΅Π΄Ρ Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅:
ΡΠΊΡΠΏΠΎΡΡ TELEGRAM_TOKEN=telegram_token ΡΠΊΡΠΏΠΎΡΡ DB_ENDPOINT = ΠΊΠΎΠ½Π΅ΡΠ½Π°Ρ ΡΠΎΡΠΊΠ° redis ΡΠΊΡΠΏΠΎΡΡ DB_PASSWORD=redis_password ΡΠΊΡΠΏΠΎΡΡ VK_GROUP_TOKEN=ΡΠΎΠΊΠ΅Π½_Π²ΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅
ΠΠΎΠΌΠ΅ΡΡΠΈΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π²ΠΎΠΏΡΠΎΡΠΎΠ² Π² ΠΏΠ°ΠΏΠΊΡ (ΠΏΡΠΈΠΌΠ΅ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² ΠΏΠ°ΠΏΠΊΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ quiz_files_example) ΠΈ ΡΠΊΡΠΏΠΎΡΡΠΈΡΡΠΉΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ΅ΡΡΠ° Π² Redis:
ΡΠΎΠ±ΠΎΡΠΎΠ²-Π²ΠΈΠΊΡΠΎΡΠΈΠ½ export_quiz_content [ΠΏΡΡΡ_ΠΊ_ΠΏΠ°ΠΏΠΊΠ΅_Π²ΠΎΠΏΡΠΎΡΠΎΠ²]
ΠΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ
ΠΠ°ΠΏΡΡΡΠΈΡΡ TG Π±ΠΎΡΠ°:
quiz-bots tg-bot
ΠΠ°ΠΏΡΡΡΠΈΡΡ Π±ΠΎΡΠ° ΠΠ:
Π²ΠΈΠΊΡΠΎΡΠΈΠ½Ρ-Π±ΠΎΡΡ Π²ΠΊ-Π±ΠΎΡ
ΠΠΈΡΠ΅Π½Π·ΠΈΡ
ΠΡΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ MIT License — ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ ΡΠΌ. Π² ΡΠ°ΠΉΠ»Π΅ LICENSE.md
Π¦Π΅Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°
ΠΠΎΠ΄ Π½Π°ΠΏΠΈΡΠ°Π½ Π² ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΡ ΡΠ΅Π»ΡΡ Π½Π° ΠΎΠ½Π»Π°ΠΉΠ½-ΠΊΡΡΡΠ΅ Π΄Π»Ρ Π²Π΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ dvmn. org.
ΠΠ΅ΡΠ°Π»ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°
ΠΡΠ° Π²Π΅ΡΡΠΈΡ
0.2.2
0.2.1
0.2.0
0.1.7
0.1.6
0,1,5
0.1.4
0.1.3
0.1.2
0.1.1
0.1.0
ΠΠ°Π³ΡΡΠ·ΠΈΡΡ ΡΠ°ΠΉΠ»Ρ
ΠΠ°Π³ΡΡΠ·ΠΈΡΡ ΡΠ°ΠΉΠ» Π΄Π»Ρ Π²Π°ΡΠ΅ΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ. ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ ΡΠ²Π΅ΡΠ΅Π½Ρ, ΡΡΠΎ Π²ΡΠ±ΡΠ°ΡΡ, ΡΠ·Π½Π°ΠΉΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΠ± ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ².
ΠΡΡ ΠΎΠ΄Π½ΡΠΉ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²
Π²ΠΈΠΊΡΠΎΡΠΈΠ½Π°-Π±ΠΎΡΡ-0. 2.2.tar.gz (8,5 ΠΠ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Ρ Π΅ΡΠΈ)
ΠΠ°Π³ΡΡΠΆΠ΅Π½ΠΎ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ
ΠΡΡΡΠΎΠ΅Π½Π½ΡΠΉ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²
quiz_bots-0.2.2-py3-none-any.whl (9,7 ΠΠ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Ρ Π΅ΡΠΈ)
ΠΠ°Π³ΡΡΠΆΠ΅Π½ΠΎ ΡΡ3
ΠΠ°ΠΊΡΡΠ²Π°ΡΡ
Π₯ΡΡΠΈ Π΄Π»Ρ Π²ΠΈΠΊΡΠΎΡΠΈΠ½-Π±ΠΎΡΠΎΠ²-0.2.2.tar.gz
ΠΠ»Π³ΠΎΡΠΈΡΠΌ | ΠΠ°ΠΉΠ΄ΠΆΠ΅ΡΡ Ρ ΡΡΠ° | |
---|---|---|
Π¨Π256 | 84a5d4b218ad562346f57c4245b46603a7f28afe614420ac401a677db66fd10b | |
MD5 | 8e4f2a28bc5371606a360d0316c19a6b | |
ΠΠΠΠΠ2-256 | 8b09350b35bbd7d61f0c48724fb6b59479826ee6683bf3724736890c6e0588f0 |
ΠΠ°ΠΊΡΡΠ²Π°ΡΡ
Π₯ΡΡΠΈ Π΄Π»Ρ quiz_bots-0.2.2-py3-none-any.whl
ΠΠ»Π³ΠΎΡΠΈΡΠΌ | ΠΠ°ΠΉΠ΄ΠΆΠ΅ΡΡ Ρ ΡΡΠ° | |
---|---|---|
Π¨Π256 | c2f3ad8d1b1039c472860fcc2b49161ec7b0955f47c6eea8eff51294d4f0b8a0 | |
MD5 | 8db1fe7cc4ca8a9de10bf465372d7814 | |
ΠΠΠΠΠ2-256 | c7e4afd76539351efe8c3e3f2db116f6163fc54e26620c93a7725f2b76d98a40 |
ΠΠ΅ ΠΏΠΎΠΊΡΠΏΠ°ΠΉΡΠ΅ ΡΡΠΎΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΡΠ°Ρ-Π±ΠΎΡΠΎΠ²
Botmother β ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΡΠ°Ρ-Π±ΠΎΡΠΎΠ² Π΄Π»Ρ Facebook Messenger, WhatsApp, Telegram, Viber, VK ΠΈ OK. ΠΡΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½Π΅ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠΎΠ² ΡΠ°Ρ-Π±ΠΎΡΠΎΠ², ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ Π² Π ΠΎΡΡΠΈΠΈ (ΡΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΡΡ ΠΏΠΎ ΠΊΠ°Π½Π°Π»Π°ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ). ΠΠΎΠΏΡΠΎΡ Π² ΡΠΎΠΌ, ΡΡΠΎΠΈΡ Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Botmother Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°Ρ-Π±ΠΎΡΠΎΠ²?
ΠΠΎΠ³ΡΡΠΆΠ°Π΅ΠΌΡΡ!
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ
ΠΠΎΠ³Π΄Π° Π²Ρ ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΠ΅ΡΡ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ°, Botmother ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Visual Flow Builder: ΡΠΏΡΠ°Π²Π° Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ±ΡΠ°ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π² ΡΠ²ΠΎΠ΅ΠΌ ΠΏΠΎΡΠΎΠΊΠ΅.
Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°Ρ-Π±ΠΎΡΠ° Π΄ΠΎ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ Π΅Π³ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΠ΅.
Π ΡΠ΅Π»ΠΎΠΌ, Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Botmother Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΏΡΠΎΡΡ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ. ΠΠΎ Π² ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ° Π½Π΅ΠΏΡΠΎΡΡΠΎ (Π·Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠΈΠ½ΡΡ Π½Π΅ Π½Π°ΡΡΡΠΎΠΈΡΡ). Botmother Π½Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ² ΠΈΠ»ΠΈ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³ΡΡ Π²Π°ΠΌ Π½Π°ΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ½Π°ΡΠ°Π»Π° ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ.
Visual Flow Builder
Π’Π΅ΡΡΠΎΠ²ΡΠΉ ΡΠ°Ρ-Π±ΠΎΡ
ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΏΡΠΎΡΡ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ?
ΠΠ΅Π³ΠΊΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΠ°Ρ-Π±ΠΎΡΠ°?
ΠΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠ°Ρ-Π±ΠΎΡΠ°
Botmother ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠ°Ρ-Π±ΠΎΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ°.
ΠΠ½ΠΈ Π½Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ Π·Π°Π΄Π΅ΡΠΆΠ΅ΠΊ, Π²Π»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΡΡ ΡΠΏΠΈΡΠΊΠΎΠ², ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Ρ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π΄Π°ΡΡ, Π½ΠΎ ΡΡΠΎ Π½Π΅ ΠΌΠ΅ΡΠ°Π΅Ρ.
ΠΠ°Π΄Π΅ΡΠΆΠΊΠΈ
Images
Video
Audio
Attachments
Gallery (Horizontal list)
Vertical list
Emojis
Persistent Menu
ΠΡΡΡΡΡΠ΅ ΠΎΡΠ²Π΅ΡΡ
ΠΠ½ΠΎΠΏΠΊΠΈ
ΠΠ²ΠΎΠ΄ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ°
ΠΠ±ΠΌΠ΅Π½ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ
ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΡ
ΠΡΠΎΠ²Π΅ΡΠΊΠ° Π½ΠΎΠΌΠ΅ΡΠ° ΡΠ΅Π»Π΅ΡΠΎΠ½Π°
ΠΡΠΎΠ²Π΅ΡΠΊΠ° Π΄Π°ΡΡ
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ
fields en tags ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ°.
Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ΅Π³ΠΌΠ΅Π½ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΡΠΈΡ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΡΡ ΠΏΠΎΠ»Π΅ΠΉ ΠΈ ΡΠ΅Π³ΠΎΠ².
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅ ΠΏΠΎΠ»Ρ
Π’Π΅Π³ΠΈ
Π‘Π΅Π³ΠΌΠ΅Π½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ
Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ
Π‘ Botmother Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ°.
Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΠ²ΠΎΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.
ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠΌΠ΅ΡΡ ΡΠ°Ρ-Π±ΠΎΡΠ° Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ·ΡΠΊΠ°Ρ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ, Π½ΠΎ ΠΏΠ΅ΡΠ΅Π²Π΅ΡΡΠΈ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ° Π½Π΅ΠΏΡΠΎΡΡΠΎ (Π½ΡΠΆΠ½ΠΎ Π²ΡΠ΅ Π΄ΡΠ±Π»ΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΈΡΡ Π²ΡΡΡΠ½ΡΡ).
Π’ΡΠ°Π½ΡΠ»ΡΡΠΈΠΈ
ΠΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ
Π£ΡΠ»ΠΎΠ²ΠΈΡ
ΠΠ΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ·ΡΠΊΠΎΠ²
ΠΠ΅Π³ΠΊΠΎ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π°
AI & NLP
. :
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΡΠΎΠΌΡ Π²Π°Ρ ΡΠ°Ρ-Π±ΠΎΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°ΡΡ ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠ»ΠΎΠ²Π° ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π½Π° Π½ΠΈΡ . ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΎΠΌ ΠΈΡ ΡΠ°Π·Π΄Π΅Π»Π° ΡΠ°ΡΡΠΎ Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡΡ Π²ΠΎΠΏΡΠΎΡΠΎΠ² ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎ, ΡΡΠΎ Π²Π°ΠΌ Π²ΡΠ΅Π³Π΄Π° Π½ΡΠΆΠ½ΠΎ ΠΎΡΠ²Π΅ΡΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ (ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ ΠΈΠ»ΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅), Π½ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠ²Π΅ΡΠΈΡΡ ΠΏΠΎΡΠΎΠΊΠΎΠΌ ΡΠ°Ρ-Π±ΠΎΡΠ°.
Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Π²Ρ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ½ΡΡΡ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡΠ½ΠΎΡΡΠΈ Ρ Botmother.
ΠΠ ΠΠΠΠ§ΠΠΠΠ: Π£ ΠΌΠ΅Π½Ρ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π» ΡΠ°Π·Π΄Π΅Π» ΡΠ°ΡΡΠΎ Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡΡ Π²ΠΎΠΏΡΠΎΡΠΎΠ². ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° Ρ Π²Π²ΠΎΠ΄ΠΈΠ» Β«ΠΠ°ΠΊΠΎΠ΅ Ρ Π²Π°Ρ Π²ΡΠ΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ?Β», Π±ΠΎΡ Π½Π΅ ΠΎΡΠ²Π΅ΡΠ°Π».
ΠΠ°Π½Π°Π»Ρ
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Botmother Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ°Ρ-Π±ΠΎΡ Π½Π°:
- ΠΠ°Ρ ΡΠ°ΠΉΡ (Π²ΠΈΠ΄ΠΆΠ΅Ρ Facebook)
- ΠΠ΅ΡΡΠ΅Π½Π΄ΠΆΠ΅Ρ Facebook
- Π’Π΅Π»Π΅Π³ΡΠ°ΠΌΠΌΠ°
- ΠΠ°ΠΉΠ±Π΅Ρ
- ΠΠ (Π‘ΠΎΡΠΈΠ°Π»ΡΠ½Π°Ρ ΡΠ΅ΡΡ Π² Π ΠΎΡΡΠΈΠΈ)
- ΠΠ (Π‘ΠΎΡΠΈΠ°Π»ΡΠ½Π°Ρ ΡΠ΅ΡΡ Π² Π ΠΎΡΡΠΈΠΈ)
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ 6 ΠΊΠ°Π½Π°Π»ΠΎΠ² Π΄Π»Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ°, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠΊΠ°Π½Π°Π»ΡΠ½ΡΠΉ ΡΠ°Ρ-Π±ΠΎΡ Π΄Π»Ρ ΡΠ²ΠΎΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.
Website
Facebook
Instagram
Whatsapp
Telegram
SMS
Slack
Skype
ΠΠ»Π΅ΠΊΡΡΠΎΠ½Π½Π°Ρ ΠΏΠΎΡΡΠ°
ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ
Botmother ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ ΡΠ°Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΠΎΠΉ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠ΅ΠΉ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ°Ρ-Π±ΠΎΡΠ°:
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΎΠ½ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ Zapier, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²Π°ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Ρ Π»ΡΠ±ΡΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π½Π° Π·Π΅ΠΌΠ»Π΅.
Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, ΠΎΠ½ΠΈ Π½Π΅ Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ Π²Π΅Π±Ρ ΡΠΊΠΈ.
ΠΠΈΠ²ΠΎΠΉ ΡΠ°Ρ
Zapier
Integromat
Google Π’Π°Π±Π»ΠΈΡΡ
Webhooks
ΠΠ°ΡΠΊΠ΅ΡΠΈΠ½Π³
ΠΠ°ΡΠΊΠ΅ΡΠΈΠ½Π³ΠΎΠ²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Botmother Π²Π΅ΡΡΠΌΠ° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Ρ.
ΠΠΎΠΆΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π²ΠΈΠ΄ΠΆΠ΅Ρ Π²Π΅Π±-ΡΠ°ΠΉΡΠ° Facebook ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ Β«ΠΡΠΏΡΠ°Π²ΠΈΡΡ Π² MessengerΒ» Π΄Π»Ρ Π²Π°ΡΠ΅Π³ΠΎ Π²Π΅Π±-ΡΠ°ΠΉΡΠ°.
ΠΠΈΠ΄ΠΆΠ΅Ρ Π²Π΅Π±-ΡΠ°ΠΉΡΠ° Facebook
ΠΠ°ΡΠΈΠ²Π½ΡΠΉ Π²ΠΈΠ΄ΠΆΠ΅Ρ Π²Π΅Π±-ΡΠ°ΠΉΡΠ°
Π¦Π΅Π»Π΅Π²ΡΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ
Facebook Ads
ΠΠ΄Π½ΠΎΡΠ°Π·ΠΎΠ²ΠΎΠ΅ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅
ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Facebook Auto-Reply
Creator
PRACIONS Π΄Π»Ρ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ°ΡΠ°
1PRACIONS 9004 9013 9064 9064 9064 9063 9063 9064 9064 9064 9064 9063 9063 9063 9064 9064 9064 9063
9063 9064 9064
. ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΈΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ. Π‘ ΠΈΡ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΠΌ ΠΏΠ»Π°Π½ΠΎΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π° Π²ΡΠ΅Ρ ΠΊΠ°Π½Π°Π»Π°Ρ Π΄Π»Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° ΡΠ΅ΡΡΠΎΠ²ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.
ΠΡΠ»ΠΈ Π²Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Ρ ΠΎΡΠΈΡΠ΅ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ°, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π·Π°ΠΏΠ»Π°ΡΠΈΡΡ. ΠΡ ΠΏΠ΅ΡΠ²ΡΠΉ ΠΏΠ»Π°ΡΠ½ΡΠΉ ΠΏΠ»Π°Π½ ΡΡΠΎΠΈΡ 17 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ² Π² ΠΌΠ΅ΡΡΡ ΠΈ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ Π²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ°:
ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ°, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ±ΡΠ°ΡΡ Π±ΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΠΈΠΉ ΠΏΠ»Π°Π½, ΠΊΠΎΡΠΎΡΡΠΉ Π΄Π°Π΅Ρ Π²Π°ΠΌ 5 ΡΠ°Ρ-Π±ΠΎΡΠΎΠ² (Π·Π° 70 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ² Π² ΠΌΠ΅ΡΡΡ) ΠΈ 20 ΡΠ°Ρ-Π±ΠΎΡΠΎΠ² (Π·Π° 200 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ² Π² ΠΌΠ΅ΡΡΡ).
ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ WhatsApp ΠΊΠ°ΠΊ ΠΊΠ°Π½Π°Π», Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π΄ΠΎΠΏΠ»Π°ΡΠΈΠ²Π°ΡΡ. Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ WhatsApp, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠ»Π°ΡΠΈΡΡ ΠΎΠΊΠΎΠ»ΠΎ 67 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ² Π² ΠΌΠ΅ΡΡΡ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π·Π°ΠΏΠ»Π°ΡΠΈΡΡ 40 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ² Π·Π° ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Ρ WhatsApp (ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·).
ΠΠ΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ ΠΏΡΠΎΠ±Π½Π°Ρ Π²Π΅ΡΡΠΈΡ
ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΡΠΉ ΠΏΠ»Π°Π½
Π¦Π΅Π½Π° Π·Π° ΠΌΠ΅ΡΡΡ
17
ΠΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ ΠΌΠ΅ΡΡΡΠ½ΡΠΉ ΡΠ°ΡΠΈΡ?
ΠΠ°ΡΠ°Π½ΡΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ° Π΄Π΅Π½Π΅Π³
ΠΠ½Π°Π»ΠΈΡΠΈΠΊΠ°
ΠΠ½Π°Π»ΠΈΡΠΈΠΊΠ° Botmother Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½Π°.
Botmother ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½Ρ ΠΏΠ°Π½Π΅Π»Ρ, Π³Π΄Π΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ°:
ΠΠΎΡ ΠΈ Π²ΡΠ΅. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΎΠΉ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ Π°Π½Π°Π»ΠΈΡΠΈΠΊΠΈ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ° ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΡΠΎΠΊΠΈ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ°.
ΠΠ»Π΅ΠΊΡΡΠΎΠ½Π½Π°Ρ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠΈΡ
Botmother ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΉ ΠΏΠ»Π°ΡΠ΅ΠΆΠ΅ΠΉ:
- Telegram Payment (ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ Π½Π°ΡΠΈΠ²Π½Π°Ρ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ Telegram)
- Π―Π½Π΄Π΅ΠΊΡ.ΠΠ°ΡΡΠ°
- PayOnline
- BePaid
- Π ΠΎΠ±ΠΎΠΊΠ°ΡΡΠ°
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΡΠΈΠΌ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡΠΌ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠΌ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΠΏΠ»Π°ΡΠΈΠ²Π°ΡΡ Π²Π°ΡΠΈ ΠΏΡΠΎΠ΄ΡΠΊΡΡ Π²Π½ΡΡΡΠΈ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ°.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π²Π°ΡΠΈΠ°Π½Ρ ΠΎΠΏΠ»Π°ΡΡ Telegram, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΏΠΎΠ»Π½ΡΠΉ ΠΎΠ±Π·ΠΎΡ Π²ΡΠ΅Ρ Π²Π°ΡΠΈΡ ΠΏΠ»Π°ΡΠ΅ΠΆΠ΅ΠΉ Π²Π½ΡΡΡΠΈ Botmother.
Π¨Π°Π±Π»ΠΎΠ½Ρ ΠΈ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
Botmother Π½Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ² Π½Π° ΡΠ²ΠΎΠ΅ΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅.
Π‘ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, ΠΏΠΎΡΠΎΠΊΠΈ Π²Π°ΡΠΈΡ ΡΠ°Ρ-Π±ΠΎΡΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ Π΄ΡΠ±Π»ΠΈΡΠΎΠ²Π°ΡΡ, ΡΡΠΎΠ±Ρ Π²Ρ ΠΌΠΎΠ³Π»ΠΈ Π»Π΅Π³ΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΡ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ.
Templates
Make template
Share template
Duplicate chatbot flows
Duplicate chatbot elements
Optimization
Unfortunately, Botmother doesnβt provide any optimization.
A/B ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ°
Botmother ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ, ΡΡΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΎΠΌ (ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΡΠΈΠ½Π°Π΅ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ°Ρ-Π±ΠΎΡΠ°ΠΌΠΈ).
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΎΠ½ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΡΠ΅ΡΠ΅Π· ΡΠ²ΠΎΠΈ ΡΠΎΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΡΠ΅ΡΠΈ ΠΈ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΡ ΠΏΠΎΡΡΡ.
Π£ΡΠ΅Π±Π½ΠΈΠΊΠΈ
ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ
Π‘Π»ΡΠΆΠ±Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΡΠ°ΠΊ, ΡΡΠΎΠΈΡ Π»ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ°Ρ-Π±ΠΎΡΠΎΠ²?
ΠΠ΅Ρ, Π½Π΅ ΡΡΠΎΠΈΡ.
ΠΡΡΡ Π΄Π²Π΅ ΠΏΡΠΈΡΠΈΠ½Ρ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΡΠΌ Ρ Π±Ρ Π½Π΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π» Botmother. ΠΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ, Π²Ρ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ° (ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, Π΅ΡΠ»ΠΈ Π²Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΠ΅ΡΠ΅ Ρ ΡΠ°Ρ-Π±ΠΎΡΠΎΠΌ) ΠΈΠ»ΠΈ ΠΎΡΠ²Π΅Ρ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ (ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΠ³Π΄Π° ΡΠ°Ρ-Π±ΠΎΡ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ Π²Π°Ρ Π²ΠΎΠΏΡΠΎΡ). ΠΡΠΎ Π΄Π²Π° ΡΠ°ΠΌΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΡΠ°Ρ-Π±ΠΎΡΠ°, ΠΈ Botmother Π½Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΡΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ.
ΠΠΎ-Π²ΡΠΎΡΡΡ , Π½Π΅ΡΠΌΠΎΡΡΡ Π½Π° Π²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Botmother, Ρ ΠΏΡΠΎΡΡΠΎ Π½Π΅ ΠΌΠΎΠ³ Π·Π°ΡΡΠ°Π²ΠΈΡΡ Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ. Π§Π°Ρ-Π±ΠΎΡ Π½Π΅ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠ½Π΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, Π΅ΡΠ»ΠΈ Ρ Π½Π°ΠΆΠΈΠΌΠ°Ρ ΡΠ»ΠΎΠ²Π°, ΠΊΠΎΡΠΎΡΡΠ΅ Π΅ΡΡΡ Π² FAQ. Π ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΉ ΡΠ°Ρ-Π±ΠΎΡ ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ΅Π½β¦
(Kotlin) ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°Ρ-Π±ΠΎΡΠ°
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΠ°Ρ-Π±ΠΎΡ? ΠΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Space, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΎΠ±ΡΠ°Π΅ΡΡΡ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Space Π² ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΌ ΠΊΠ°Π½Π°Π»Π΅ ΡΠ°ΡΠΎΠ². ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΆΠΈΠ·Π½Π΅ΡΠΏΠΎΡΠΎΠ±Π½ΡΠΉ Π±ΠΎΡ Π΄ΠΎΠ»ΠΆΠ΅Π½:
ΠΡΠ²Π΅ΡΠ°ΡΡ ΡΠΏΠΈΡΠΊΠΎΠΌ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²Π²ΠΎΠ΄ΠΈΡ
/
(ΠΊΠΎΡΠ°Ρ ΡΠ΅ΡΡΠ°) Π² ΠΊΠ°Π½Π°Π»Π΅.Π£ΠΊΠ°ΠΆΠΈΡΠ΅ Ρ ΠΎΡΡ Π±Ρ ΠΎΠ΄Π½Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ: ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΈΡ ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½Π° ΠΊΠ°Π½Π°Π», Π±ΠΎΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΡΠΎ-ΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ, Π° Π·Π°ΡΠ΅ΠΌ ΠΎΡΠ²Π΅ΡΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ.
Π§ΡΠΎ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ Π΄Π΅Π»Π°ΡΡ
ΠΠ°Ρ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ°Ρ-Π±ΠΎΡ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ ΠΆΠ΅! ΠΠ΅Π· Π»ΠΈΡΠ½ΠΈΡ ΡΠ»ΠΎΠ², ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΡΠΉΡΠ΅ β Π±ΠΎΡ Β«ΠΠ°ΠΏΠΎΠΌΠ½ΠΈΡΡ ΠΌΠ½Π΅Β»!
ΠΠ°Ρ Π±ΠΎΡ ΠΎΡΠΏΡΠ°Π²ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π· Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π±ΠΎΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
Π½Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ 60 Π²Π·Π΄ΡΠ΅ΠΌΠ½ΡΡΡ
, ΡΠ΅ΡΠ΅Π· 60 ΡΠ΅ΠΊΡΠ½Π΄ Π±ΠΎΡ ΠΎΡΠ²Π΅ΡΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌΠ²Π·Π΄ΡΠ΅ΠΌΠ½ΡΡΡ
. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Ρ Π½Π°ΡΠ΅Π³ΠΎ Π±ΠΎΡΠ° Π±ΡΠ΄Π΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΠΏΠΎΠΌΠΎΡΡ
ΠΏΠΎ Π·Π°ΠΏΡΠΎΡΡ.ΠΡΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΡΠΎΠ²Π΅Π΄Π΅Ρ Π²Π°Ρ ΡΠ΅ΡΠ΅Π· Π²Π΅ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°Ρ-Π±ΠΎΡΠ°, Π½ΠΎ Π²Ρ Π²ΡΠ΅Π³Π΄Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄.
Π‘ΡΠ°ΡΡΠΎΠ²ΡΠΉ Π½Π°Π±ΠΎΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°Ρ-Π±ΠΎΡΠΎΠ²
Π§ΡΠΎ Π½Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ Π² Π½Π°ΡΠ΅ΠΌ ΠΏΡΡΠ΅ΡΠ΅ΡΡΠ²ΠΈΠΈ?
JetBrains IntelliJ IDEA
ΠΡ Π½Π°ΠΏΠΈΡΠ΅ΠΌ Π½Π°ΡΠ΅Π³ΠΎ Π±ΠΎΡΠ° Π½Π° ΠΠΎΡΠ»ΠΈΠ½Π΅. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΡΠ±ΡΡ IDE ΠΏΠΎ Π²Π°ΡΠ΅ΠΌΡ Π²ΡΠ±ΠΎΡΡ, Π½ΠΎ Π² ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅ΡΡΡ, ΡΡΠΎ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ IntelliJ IDEA.
Π€ΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ Ktor
ΠΡΠΎ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ Π»Π΅Π³ΠΊΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π²ΡΠ΅ ΡΠΈΠΏΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ΅ΡΠ²Π΅ΡΡ, ΠΊΠ»ΠΈΠ΅Π½ΡΡ, ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΠ΅ ΠΈ Π±ΡΠ°ΡΠ·Π΅ΡΠ½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ Π΅Π³ΠΎ ΠΊΠ°ΠΊ ΠΎΠ΄Π½Ρ ΠΈΠ· Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ Gradle, ΡΠ°ΠΊ ΡΡΠΎ Π½ΠΈΠΊΠ°ΠΊΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Ρ Π²Π°ΡΠ΅ΠΉ ΡΡΠΎΡΠΎΠ½Ρ Π½Π΅ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, Π²Π½Π΅ ΡΡΠΎΠ³ΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π±ΠΎΡΠ° Space, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π»ΡΠ±ΡΡ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ²ΡΡΡΡΡ Π²Π°ΠΌ Π²Π΅Π±-ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Node.js, ASP. NET ΠΈ Ρ.Β Π΄.
Space SDK
ΠΠ°ΠΊ Π²Ρ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π·Π½Π°Π΅ΡΠ΅ ΠΈΠ· ΡΠ°Π·Π΄Π΅Π»Π° Β«ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΒ», Π»ΡΠ±ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ ΡΠΎ Space Ρ ΠΏΠΎΠΌΠΎΡΡΡ Space HTTP API. Π§ΡΠΎΠ±Ρ ΠΎΠ±Π»Π΅Π³ΡΠΈΡΡ ΠΆΠΈΠ·Π½Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Space, ΠΌΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌ Space SDK Π΄Π»Ρ Kotlin ΠΈ .NET. SDK ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΊΠ»ΠΈΠ΅Π½Ρ HTTP API, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π»Π΅Π³ΠΊΠΎ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ Space Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π²ΡΡΠΎΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ². ΠΠΎΠΌΠΈΠΌΠΎ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ° Ktor, ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ SDK ΠΊΠ°ΠΊ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ Gradle.
Π‘Π»ΡΠΆΠ±Π° ΡΡΠ½Π½Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ
Π’Π°ΠΊΠ°Ρ ΡΠ»ΡΠΆΠ±Π° ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΡΠ΅ΡΠ²Π΅ΡΡ Π΄Π»Ρ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠ³ΠΎ ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ°. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π½Π°ΠΌ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Π½Π°ΡΠ΅Π³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ ΠΈ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΊ Π½Π΅ΠΌΡ Π΄ΠΎΡΡΡΠΏ ΠΈΠ· Space ΡΠ΅ΡΠ΅Π· ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠΉ URL-Π°Π΄ΡΠ΅Ρ (ΠΌΡ ΡΠΊΠ°ΠΆΠ΅ΠΌ Π΅Π³ΠΎ ΠΊΠ°ΠΊ ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ ΡΠΎΡΠΊΡ ΡΠ°Ρ-Π±ΠΎΡΠ°). ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΡΠΎΠΉ ΡΠ΅Π»ΠΈ ngrok, PageKyte ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΡΡ ΡΠ»ΡΠΆΠ±Ρ ΡΡΠ½Π½Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ΅ΡΠ²ΠΈΡΠΎΠΌ ΡΡΠ½Π½Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΊΠ°ΡΠ°ΡΡ ΠΊΠ»ΠΈΠ΅Π½Ρ ΡΠ΅ΡΠ²ΠΈΡΠ°: ΠΊΠ»ΠΈΠ΅Π½Ρ ngrok, ΠΊΠ»ΠΈΠ΅Π½Ρ PageKyte. ΠΠ»Ρ Π½Π°ΡΠΈΡ ΡΠ΅Π»Π΅ΠΉ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π° Π΄Π»Ρ ngrok ΠΈΠ»ΠΈ PageKyte.
ΠΡ Π½Π°ΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ»ΡΠΆΠ±Ρ ΡΡΠ½Π½Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠ΅Π»ΡΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. ΠΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π΅Π³ΠΎ Π΄Π»Ρ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ°Ρ-Π±ΠΎΡΠ° Π½Π° ΡΠ²ΠΎΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅. ΠΡΠΊΡΡΡΡΠΉ ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠΉ ΠΏΠΎΡΡ Π½Π° Π²Π°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ΅ΡΡΠ΅Π·Π½ΡΡ ΡΠ³ΡΠΎΠ·Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ.
Π¨Π°Π³ 1. Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡ Ktor
ΠΡΠΊΡΠΎΠΉΡΠ΅ Intellij IDEA.
ΠΠ°ΡΠ½ΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ File | ΠΠΎΠ²ΡΠΉ | ΠΡΠΎΠ΅ΠΊΡ.
Π ΡΠΏΠΈΡΠΊΠ΅ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ² Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Ktor.
Π£ΠΊΠ°ΠΆΠΈΡΠ΅ ΠΈΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ ΠΈΠΌΡ Π²Π΅Π±-ΡΠ°ΠΉΡΠ°, Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Gradle Kotlin Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΠ±ΠΎΡΠΊΠΈ ΠΈ ΡΠ½ΠΈΠΌΠΈΡΠ΅ ΡΠ»Π°ΠΆΠΎΠΊ ΠΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ΄Π°.
Π©Π΅Π»ΠΊΠ½ΠΈΡΠ΅ ΠΠ°Π»Π΅Π΅. ΠΡ Π½Π΅ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌΡΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΠΏΠ»Π°Π³ΠΈΠ½Ρ Ktor, ΠΏΠΎΡΡΠΎΠΌΡ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΏΡΠΎΡΡΠΎ Π½Π°ΠΆΠΌΠΈΡΠ΅ Β«Π‘ΠΎΠ·Π΄Π°ΡΡΒ».
ΠΠΎΡ ΠΎΠ½ΠΎ! Π’Π΅ΠΏΠ΅ΡΡ Ρ Π½Π°Ρ Π΅ΡΡΡ ΠΏΡΡΡΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Ktor.
Π¨Π°Π³ 2.
ΠΠΎΠ»ΡΡΠΈΡΠ΅ Space SDK ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈΠΠ»Ρ Π½Π°ΡΠ΅Π³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ° ΡΡΠ΅Π±ΡΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ:
Space SDK Π΄Π»Ρ JVM
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΡΡΠ»Π°ΡΡΡΡ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ SDK, ΠΎΡΠΊΡΠΎΠΉΡΠ΅ API Playground Π² ΡΠ²ΠΎΠ΅ΠΌ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ΅ Space (Extensions | API Playground). Π‘ΠΏΡΠ°Π²Π° Π² ΡΠΏΠΈΡΠΊΠ΅ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ Β«ΠΠΎΠ΄Β» Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Kotlin SDK ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ Β«ΠΠ°ΡΡΡΠΎΠΈΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΒ». ΠΡΠΊΡΠΎΠ΅ΡΡΡ ΠΎΠΊΠ½ΠΎ Ρ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ ΠΊΠΎΠ΄Π° Π΄Π»Ρ Gradle ΠΈ Maven. Π€ΡΠ°Π³ΠΌΠ΅Π½ΡΡ Π²ΡΠ΅Π³Π΄Π° ΡΡΡΠ»Π°ΡΡΡΡ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ Π²Π΅ΡΡΠΈΡ SDK.
FasterXML/jackson: Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ JSON.
HTTP-ΠΊΠ»ΠΈΠ΅Π½Ρ Ktor: ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ktor Π½Π΅ ΡΡΡΠ»Π°Π΅ΡΡΡ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π΄Π»Ρ HTTP-ΠΊΠ»ΠΈΠ΅Π½ΡΠ°. ΠΠ°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΠΊΠ»ΠΈΠ΅Π½Ρ Π΄Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π² ΠΊΠΎΡΠΌΠΎΡ. ΠΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ HTTP-ΠΊΠ»ΠΈΠ΅Π½Ρ CIO Ktor, Π½ΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΡΠ±ΠΎΠΉ Π΄ΡΡΠ³ΠΎΠΉ Π²Π΅Π±-Π΄Π²ΠΈΠΆΠΎΠΊ Π΄Π»Ρ HTTP-ΠΊΠ»ΠΈΠ΅Π½ΡΠ°.
ΠΡΠΊΡΠΎΠΉΡΠ΅
build.gradle.kts
ΠΈ Π΄ΠΎΠ±Π°Π²ΡΡΠ΅:Π ΡΠ°Π·Π΄Π΅Π» ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π²
3 maven(«https://maven/spacebrainspkg.
pkg(«https://maven/spacebrainspkg.pkg) /maven»)Π ΡΠ°Π·Π΄Π΅Π»
dependencies
Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΊ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌ:ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ‘com.fasterxml.jackson.module:jackson-module-kotlin:2.13.3’ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ «org.jetbrains:space-sdk-jvm:$space_sdk_version» ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ «io.ktor:ktor-client-core:$ktor_version» ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ «io.ktor:ktor-client-cio:$ktor_version»
ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ («com.fasterxml.jackson.module:jackson-module-kotlin:$jackson_version») ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ(«org.jetbrains:space-sdk-jvm:$space_sdk_version») ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ(«io.ktor:ktor-client-core:$ktor_version») ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ(«io.ktor:ktor-client-cio:$ktor_version»)
Π
gradle.properties
ΡΠΊΠ°ΠΆΠΈΡΠ΅ Π½ΡΠΆΠ½ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²:ktor_version=2.0.3 jackson_version=2.13.3 # ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ SDK v. 106390, Π½ΠΎ ΠΊΠΎΠ³Π΄Π° Π²Ρ ΡΠΈΡΠ°Π΅ΡΠ΅ ΡΡΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ, ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π΄ΠΎΡΡΡΠΏΠ½Π° Π±ΠΎΠ»Π΅Π΅ Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΡΠΈΡ. # Π§ΡΠΎΠ±Ρ ΡΠ·Π½Π°ΡΡ, ΠΊΠ°ΠΊΠ°Ρ Π²Π΅ΡΡΠΈΡ SDK ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΉ: ΠΎΡΠΊΡΠΎΠΉΡΠ΅ API Playground, # Π² ΡΠ°Π·Π΄Π΅Π»Π΅ «ΠΠΎΠ΄» ΡΠΏΡΠ°Π²Π° Π²ΡΠ±Π΅ΡΠΈΡΠ΅ «Kotlin SDK» ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ «ΠΠ°ΡΡΡΠΎΠΈΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ…» space_sdk_version=106390-beta
ΠΡ Π½Π΅ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌΡΡ ΠΏΠΈΡΠ°ΡΡ ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΡΠΈΡΡΠΈΠΌ Π²ΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ
testImplementation
ΠΎΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ9ΡΠ°Π·Π΄Π΅Π» 0045.
ΠΠ°Ρ
build.gradle.kts
Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ:val ktor_version: Π‘ΡΡΠΎΠΊΠ° ΠΏΠΎ ΠΏΡΠΎΠ΅ΠΊΡΡ val kotlin_version: ΡΡΡΠΎΠΊΠ° ΠΏΠΎ ΠΏΡΠΎΠ΅ΠΊΡΡ val logback_version: ΡΡΡΠΎΠΊΠ° ΠΏΠΎ ΠΏΡΠΎΠ΅ΠΊΡΡ val space_sdk_version: ΡΡΡΠΎΠΊΠ° ΠΏΠΎ ΠΏΡΠΎΠ΅ΠΊΡΡ val jackson_version: ΡΡΡΠΎΠΊΠ° ΠΏΠΎ ΠΏΡΠΎΠ΅ΠΊΡΡ ΠΏΠ»Π°Π³ΠΈΠ½Ρ { Π·Π°ΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΡΠ»ΠΈΠ½ ("jvm") Π²Π΅ΡΡΠΈΡ "1. 7.10" } Π³ΡΡΠΏΠΏΠ° = "com.example" Π²Π΅ΡΡΠΈΡ = "0.0.1" Π·Π°ΡΠ²Π»Π΅Π½ΠΈΠ΅ { mainClass.set("com.example.ApplicationKt") val isDevelopment: Boolean = project.ext.has("ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°") applicationDefaultJvmArgs = listOf("-Dio.ktor.development=$isDevelopment") } ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ { mavenCentral() maven("https://maven.pkg.jetbrains.space/public/p/space/maven") } Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ { ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ("io.ktor: ktor-server-core-jvm: $ktor_version") ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ("io.ktor:ktor-server-netty-jvm:$ktor_version") ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ("ch.qos.logback: logback-classic: $ logback_version") ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ("com.fasterxml. jackson.module: jackson-module-kotlin: $ jackson_version") ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ("org.jetbrains:space-sdk-jvm:$space_sdk_version") ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ("io.ktor:ktor-client-core:$ktor_version") ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ("io.ktor:ktor-client-cio:$ktor_version") }
gradle.properties
Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ:ktor_version=2.0.3 ΠΊΠΎΡΠ»ΠΈΠ½_Π²Π΅ΡΡΠΈΡ = 1.7.10 logback_Π²Π΅ΡΡΠΈΡ = 1.2.3 jackson_version=2.13.3 kotlin.code.style=ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΉ space_sdk_version=106390-beta
Π ΠΎΠΊΠ½Π΅ Gradle Π½Π°ΠΆΠΌΠΈΡΠ΅ Β«ΠΠ±Π½ΠΎΠ²ΠΈΡΡ Π²ΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΡ GradleΒ», ΡΡΠΎΠ±Ρ Gradle Π·Π°Π³ΡΡΠ·ΠΈΠ» Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ.
ΠΠΎΡΠΎΠ²ΠΎ! Π’Π΅ΠΏΠ΅ΡΡ Ρ Π½Π°Ρ Π΅ΡΡΡ Space SDK Π² Π½Π°ΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅.
Π¨Π°Π³ 3. ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ ΡΠ»ΡΠΆΠ±Ρ ΡΡΠ½Π½Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ
ΠΡ Π½Π°ΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ»ΡΠΆΠ±Ρ ΡΡΠ½Π½Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠ΅Π»ΡΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. ΠΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π΅Π³ΠΎ Π΄Π»Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ°Ρ-Π±ΠΎΡΠ° Π½Π° ΡΠ²ΠΎΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅. ΠΡΠΊΡΡΡΡΠΉ ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠΉ ΠΏΠΎΡΡ Π½Π° Π²Π°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ΅ΡΡΠ΅Π·Π½ΡΡ ΡΠ³ΡΠΎΠ·Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ.
ΠΡΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π½ΠΎΠ²ΡΡ ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ ΡΠΎΡΠ΅ΠΊ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΠΉΡΠ΅ Π²Ρ ΠΎΠ΄ΡΡΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΡ, ΠΊΠ°ΠΊ ΠΌΡ Π΄Π΅Π»Π°Π΅ΠΌ ΠΏΠΎΠ·ΠΆΠ΅ Π² ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅.
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΌΡ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠ΅ΠΌ Π½Π°ΡΠ΅Π³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ° Π² Space, ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄Π»Ρ Π½Π΅Π³ΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠΉ URL-Π°Π΄ΡΠ΅Ρ. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Π°ΡΠ° ΡΡΠ΅Π΄Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π·Π° NAT, ΡΠ°ΠΌΡΠΉ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΏΠΎΠ»ΡΡΠΈΡΡ URL-Π°Π΄ΡΠ΅Ρ β ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ»ΡΠΆΠ±Ρ ΡΡΠ½Π½Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ. Π Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ngrok.
ΠΠ°Π³ΡΡΠ·ΠΈΡΠ΅ ΠΈ ΡΠ°Π·Π°ΡΡ ΠΈΠ²ΠΈΡΡΠΉΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ ngrok.
Π ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅ (Π² macOS ΠΈΠ»ΠΈ Linux) ΠΈΠ»ΠΈ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ (Π² Windows) ΠΎΡΠΊΡΠΎΠΉΡΠ΅ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ ngrok.
ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡ Ktor Π½Π°ΡΡΡΠΎΠ΅Π½ Π½Π° Π·Π°ΠΏΡΡΠΊ HTTP-ΡΠ΅ΡΠ²Π΅ΡΠ° Π½Π° ΠΏΠΎΡΡΡ 8080 (ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π² ΡΠ°ΠΉΠ»Π΅
resources/application.conf
). ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ ΡΡΠ½Π½Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ°:./ngrok http 8080
Π‘Π»ΡΠΆΠ±Π° ngrok Π·Π°ΠΏΡΡΡΠΈΡΡΡ. ΠΡΠΎ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ:
Π‘ΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΡΠ΅Π°Π½ΡΠ° ΠΎΠ½Π»Π°ΠΉΠ½ Π£ΡΠ΅ΡΠ½Π°Ρ Π·Π°ΠΏΠΈΡΡ [email protected] (ΠΏΠ»Π°Π½: Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ) ΠΠ΅ΡΡΠΈΡ 3.0.6 Π Π΅Π³ΠΈΠΎΠ½ Π‘Π¨Π (Π½Π°Ρ) ΠΠ°Π΄Π΅ΡΠΆΠΊΠ° - ΠΠ΅Π±-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ http://127.0.0.1:4040 ΠΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ https://98af-94-158-242-146.ngrok.io -> http://localhost:8080 Π‘ΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ttl opn rt1 rt5 p50 p90 0 0 0.00 0.00 0.00 0.00
ΠΠ΄Π΅ΡΡ Π½Π°Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ΅Ρ ΡΡΡΠΎΠΊΠ°
Forwarding
β ΠΎΠ½Π° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ URL. ngrok ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π·Π°ΠΏΡΠΎΡΡ Ρ ΡΡΠΎΠ³ΠΎ URL-Π°Π΄ΡΠ΅ΡΠ° Π½Π° Π½Π°Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ Ρ ΠΎΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ²ΠΎΡ ΡΠ»ΡΠΆΠ±Ρ ΡΡΠ½Π½Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ. Π ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²ΡΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π°Π΄ΡΠ΅Ρhttps://98af-94-158-242-146.ngrok.io
, Π½ΠΎ Π² Π²Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΡΡΠΎ-ΡΠΎ Π΄ΡΡΠ³ΠΎΠ΅, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ngrok Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΡΡΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠ΅ URL-Π°Π΄ΡΠ΅ΡΠ°.ΠΡΠ»ΠΈΡΠ½Π°Ρ ΡΠ°Π±ΠΎΡΠ°! Π’Π΅ΠΏΠ΅ΡΡ Ρ Π½Π°Ρ Π΅ΡΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡΠ°Ρ ΡΠ»ΡΠΆΠ±Π° ΡΡΠ½Π½Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠΉ URL-Π°Π΄ΡΠ΅Ρ Π½Π°ΡΠ΅Π³ΠΎ Π±ΡΠ΄ΡΡΠ΅Π³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ°.
Π¨Π°Π³ 4. ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠΉΡΠ΅ ΡΠ°Ρ-Π±ΠΎΡΠ° Π² Space
Π§ΡΠΎΠ±Ρ Space ΠΈ ΡΠ°Ρ-Π±ΠΎΡ ΠΌΠΎΠ³Π»ΠΈ ΠΎΠ±ΡΠ°ΡΡΡΡ Π΄ΡΡΠ³ Ρ Π΄ΡΡΠ³ΠΎΠΌ, ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ Π±ΠΎΡΠ° Π² Space.
ΠΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΅ΡΠΈΡΡ Π΄Π²Π΅ Π²Π°ΠΆΠ½ΡΠ΅ Π²Π΅ΡΠΈ:
Π Π°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ:
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Space. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Space ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠ΅Ρ ΠΈ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Π²ΡΡΡΠ½ΡΡ Π² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ Space.
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΉ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Ρ Π΄Π»Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΊΠΎΡΠΌΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΉ. ΠΡΠ»ΡΡΠΈΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΎΠ½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠ΅ΡΡΡ ΠΈ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΡΡΡ Π² ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ΅ Space Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ² API.
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΌΡ ΠΏΡΠΎΡΡΠΎ ΠΏΡΠ°ΠΊΡΠΈΠΊΡΠ΅ΠΌΡΡ, Π½Π΅Ρ ΡΠΌΡΡΠ»Π° ΠΎΡΠ²Π»Π΅ΠΊΠ°ΡΡΡΡ Π½Π° ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΌΡΠ»ΡΡΠΈΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΎΠ½Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ ΠΌΡ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠ΅ΠΌ ΠΈ Π½Π°ΡΡΡΠΎΠΈΠΌ Π½Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Space UI. ΠΡΠ°ΠΊ, ΠΌΡ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌΡΡ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ.
ΠΡΠ΅Π΄ΠΌΠ΅Ρ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ: ΡΠ΅ΡΠΈΡΠ΅, ΠΊΠ°ΠΊ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Π² Space β ΠΎΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ, ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Space ΠΈΠ»ΠΈ ΠΈ ΡΠΎ, ΠΈ Π΄ΡΡΠ³ΠΎΠ΅. ΠΡΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΠΎΡΠΎΠΊΠΈ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
Π Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠ°Ρ-Π±ΠΎΡ Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΡΡΠ»Π°ΡΡ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ Π² ΡΠ²ΠΎΠ΅ΠΌ ΡΠ°Ρ-ΠΊΠ°Π½Π°Π»Π΅ ΡΠ°ΠΌ ΠΏΠΎ ΡΠ΅Π±Π΅. Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠΎΡΠΎΠΊΠ° OAuth 2.0 ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΡΠΎΠΊ ΡΡΠ΅ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π°Π²ΡΠΎΡΠΈΠ·ΠΎΠ²Π°ΡΡΡΡ Π² Space Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ° ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΈ ΡΠ΅ΠΊΡΠ΅ΡΠ° ΠΊΠ»ΠΈΠ΅Π½ΡΠ°.
ΠΠΎΠ΄Π²ΠΎΠ΄Ρ ΠΈΡΠΎΠ³, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ Π½Π°Ρ ΡΠ°Ρ-Π±ΠΎΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ΅Π΅ ΠΏΠΎΡΠΎΠΊ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ ΡΡΠ΅ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°. Π’Π΅ΠΏΠ΅ΡΡ Π΄Π°Π²Π°ΠΉΡΠ΅ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠ΅ΠΌ Π½Π°ΡΠ΅Π³ΠΎ Π±ΠΎΡΠ° Π² Space.
ΠΡΠΊΡΠΎΠΉΡΠ΅ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ Space.
ΠΠ° ΠΏΠ°Π½Π΅Π»ΠΈ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ ΡΠ΅Π»ΠΊΠ½ΠΈΡΠ΅ Π Π°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΠΈ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
Π©Π΅Π»ΠΊΠ½ΠΈΡΠ΅ ΠΠΎΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
ΠΠ°ΠΉΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ΅ ΠΈΠΌΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,
Π±ΠΎΡ-Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΠΉ
ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ Β«Π‘ΠΎΠ·Π΄Π°ΡΡΒ».ΠΡΠΊΡΠΎΠΉΡΠ΅ Π²ΠΊΠ»Π°Π΄ΠΊΡ ΠΠ²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ. ΠΠ° ΡΡΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ ΠΌΡ Π½ΠΈΡΠ΅Π³ΠΎ ΠΌΠ΅Π½ΡΡΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ β Π½Π°Ρ Π±ΠΎΡ ΠΏΡΠΎΡΡΠΎΠΉ ΠΈ Π½Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΈΠ· ΠΊΠΎΡΠΌΠΎΡΠ°.
ΠΡ Π½Π°Ρ ΠΎΠ΄ΠΈΠΌΡΡ Π½Π° ΡΡΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π²Ρ Π·Π°ΠΌΠ΅ΡΠΈΠ»ΠΈ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ Π²Π°ΠΆΠ½ΠΎ β Π΅ΡΠ»ΠΈ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΈΠΌΠ΅ΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌ ΠΌΠΎΠ΄ΡΠ»ΡΠΌ Space, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π΅ΠΌΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ. ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎ Π·Π°ΠΏΡΠΎΡΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠΉ.
ΠΡΠΊΡΠΎΠΉΡΠ΅ Π²ΠΊΠ»Π°Π΄ΠΊΡ ΠΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΏΠΎΡΠΎΠΊ ΡΡΠ΅ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π²ΠΊΠ»ΡΡΠ΅Π½ Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ. ΠΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΈ ΡΠ΅ΠΊΡΠ΅Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ°Ρ ΡΠ°Ρ-Π±ΠΎΡ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠΊΠ΅Π½Π° Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Space.
ΠΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²Π²ΠΎΠ΄ΠΈΡ ΡΡΠΎ-Π»ΠΈΠ±ΠΎ Π² ΠΊΠ°Π½Π°Π» ΡΠ°Ρ-Π±ΠΎΡΠ°, Space ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ Π²Π²ΠΎΠ΄ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΡΠ°ΠΊ, Π½Π°Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ°Π³ β ΡΠΊΠ°Π·Π°ΡΡ URL-Π°Π΄ΡΠ΅Ρ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΉ ΡΠΎΡΠΊΠΈ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π²ΡΠ±ΡΠ°ΡΡ, ΠΊΠ°ΠΊ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ Π·Π°ΠΏΡΠΎΡΡ ΠΈΠ· Space.
ΠΡΠΊΡΠΎΠΉΡΠ΅ Π²ΠΊΠ»Π°Π΄ΠΊΡ ΠΠΎΠ½Π΅ΡΠ½Π°Ρ ΡΠΎΡΠΊΠ°.
Π URI ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΉ ΡΠΎΡΠΊΠΈ ΡΠΊΠ°ΠΆΠΈΡΠ΅ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠΉ URL-Π°Π΄ΡΠ΅Ρ, ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ»ΡΠΆΠ±ΠΎΠΉ ΡΡΠ½Π½Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π»Ρ Π½Π°ΡΠ΅Π³ΠΎ Π±ΠΎΡΠ°. ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ΄Π΅Π»Π°Π΅ΠΌ ΡΡΡ ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ ΡΠΎΡΠΊΡ ΠΌΠ΅Π½Π΅Π΅ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΏΠΎΡΡΡΠΈΠΊΡ ΠΊ URL-Π°Π΄ΡΠ΅ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,
api/space
. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΉ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΉ ΡΠΎΡΠΊΠΎΠΉ Π±ΡΠ΄Π΅Ρhttps://{random_string_from_ngrok}.ngrok.io/api/space
. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Space ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ°. ΠΡΡΠ°Π²ΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΈ Π½Π°ΠΆΠΌΠ΅ΠΌ Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ.
ΠΡΠ»ΠΈΡΠ½Π°Ρ ΡΠ°Π±ΠΎΡΠ°! Π’Π΅ΠΏΠ΅ΡΡ Π½Π°Ρ Π±ΠΎΡ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ Π² Space, Ρ Π½Π°Ρ Π΅ΡΡΡ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π΄Π»Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ, ΠΈ ΠΌΡ Π³ΠΎΡΠΎΠ²Ρ ΠΏΡΠΈΡΡΡΠΏΠΈΡΡ ΠΊ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π½Π°ΡΠ΅Π³ΠΎ Π±ΠΎΡΠ°.
Π¨Π°Π³ 5. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Space
ΠΡΠ΅ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΡΠ°ΠΏΡ ΠΏΠΎΠ·Π°Π΄ΠΈ, Π΄Π°Π²Π°ΠΉΡΠ΅ Π½Π°ΠΏΠΈΡΠ΅ΠΌ ΠΊΠΎΠ΄! ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π½Π°ΡΠ°ΡΡ Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Space, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π½Π°ΠΌ Π΄Π΅Π»Π°ΡΡ Π·Π°ΠΏΡΠΎΡΡ ΠΊ Π½Π°ΡΠ΅ΠΌΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ Space.
ΠΠΎΠ±Π°Π²ΡΡΠ΅ Π² ΠΏΡΠΎΠ΅ΠΊΡ ΡΠ°ΠΉΠ»
Client.kt
.ΠΠΎΠ±Π°Π²ΡΡΠ΅ ΠΊΠΎΠ΄ Π² ΡΠ°ΠΉΠ»
Client.kt
:package org. remindme ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.SpaceAppInstance ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.SpaceAuth ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.SpaceClient ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.ktorClientForSpace ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.resources.chats ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.types.ChannelIdentifier ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.types.ChatMessage ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.types.ProfileIdentifier // ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΊ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ Space val spaceAppInstance = SpaceAppInstance( // Π‘ΠΊΠΎΠΏΠΈΡΡΠΉΡΠ΅-Π²ΡΡΠ°Π²ΡΡΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΈ ΡΠ΅ΠΊΡΠ΅Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° // Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΎ ΠΈΠ· ΠΊΠΎΡΠΌΠΎΡΠ°. clientId = "ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ", clientSecret = "ΡΠ΅ΠΊΡΠ΅Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ", // URL Π²Π°ΡΠ΅Π³ΠΎ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ° Space spaceServerUrl = "https://mycompany. jetbrains.space" ) ΡΠ°ΡΡΠ½ΡΠΉ val spaceHttpClient = ktorClientForSpace() // ΠΠ»ΠΈΠ΅Π½Ρ Space ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π²ΡΠ·ΠΎΠ²Π° ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Space API. // ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΠΎΡΠΎΠΊ OAuth ΡΡΠ΅ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° (ΡΠΌ. [SpaceAuth.ClientCredentials]) // Π°Π²ΡΠΎΡΠΈΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΎΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ. val spaceClient = SpaceClient(ktorClient = spaceHttpClient, appInstance = spaceAppInstance, Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ = SpaceAuth.ClientCredentials()) // ΠΠΎΠ»ΡΡΠ°Π΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎ ID ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌ Π΅ΠΌΡ Β«ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅Β». // 'spaceClient' Π΄Π°Π΅Ρ Π²Π°ΠΌ Π΄ΠΎΡΡΡΠΏ ΠΊ Π»ΡΠ±ΠΎΠΉ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΉ ΡΠΎΡΠΊΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°. ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ΄ΠΎΠ²ΠΎΠ»ΡΡΡΠ²ΠΈΠ΅ sendMessage (userId: String, ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅: ChatMessage) { spaceClient.chats.messages.sendMessage( ΠΊΠ°Π½Π°Π» = ChannelIdentifier. Profile(ProfileIdentifier.Id(userId)), ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ = ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ) }
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΡ:sendMessage(userId: String, message: ChatMessage)
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΊΠ»ΠΈΠ΅Π½Ρ Π΄Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ Π² Space. ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΈΡΠΈΠΌ ΡΡΠΎ:userId
β ΡΡΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΠΏΡΠ°Π²ΠΈΠ» ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π² Π½Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΠΎΡΠ²Π΅ΡΠΈΡΡ.ChatMessage
β ΡΡΠΎ ΠΊΠ»Π°ΡΡ API, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΡΠ°. ΠΠ΅Π»ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ β ΡΡΠΎ Π½Π΅ ΠΏΡΠΎΡΡΠΎ ΡΠ΅ΠΊΡΡ. ΠΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π²ΠΊΠ»ΡΡΠ°ΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎΠ΅ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π΄Π°ΠΆΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΊΠ½ΠΎΠΏΠΊΠΈ. ΠΠ»Ρ ΡΠΏΡΠΎΡΠ΅Π½ΠΈΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°ΠΊΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ Π² ΠΊΠ»ΠΈΠ΅Π½ΡΠ΅ API ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ DSL β ΠΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ. ΠΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΡΠΎ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΠ°Π³Π°Ρ .spaceClient.chats.messages.sendMessage()
β ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅, ΠΊΠ°ΠΊ ΠΌΡ ΡΡΡΠ»Π°Π΅ΠΌΡΡ Π½Π° ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ°ΡΠΎΠ². Π‘Π°ΠΌΠΎΠ΅ ΠΊΠ»Π°ΡΡΠ½ΠΎΠ΅ Π² ΠΊΠ»Π°ΡΡΠ΅SpaceHttpClient
β ΡΡΠΎ ΡΠΎ, ΡΡΠΎ ΠΎΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Π»ΡΠ±ΠΎΠΌΡ ΠΌΠΎΠ΄ΡΠ»Ρ Space. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΡΠΎΡΠΈΠ»Ρ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠ°, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ½ΠΈΡΡ Π² Team Directory:spaceClient.teamDirectory.profiles.getProfile(ProfileIdentifier.Username("John.Doe"))
Π§ΡΠΎΠ±Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΠΏΠΈΡΠΎΠΊ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΡΠ΅ΡΠ΅Π· ΠΊΠ»ΠΈΠ΅Π½Ρ, ΠΎΡΠΊΡΠΎΠΉΡΠ΅ API Playground. ΠΠ°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ Π·Π΄Π΅ΡΡ β ΡΡΠΎ ΠΌΠΎΠ΄ΡΠ»ΠΈ, ΠΊ ΠΊΠΎΡΠΎΡΡΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ:
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π°Π²ΡΠΎΠ·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° Π² ΡΠ²ΠΎΠ΅ΠΉ ΡΡΠ΅Π΄Π΅ IDE β ΠΏΡΠΎΡΡΠΎ Π²Π²Π΅Π΄ΠΈΡΠ΅
spaceClient.
ΠΈ ΠΈΠ·ΡΡΠΈΡΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΠΎΡΠΎΠ²ΠΎ! Π’Π΅ΠΏΠ΅ΡΡ Ρ Π½Π°Ρ Π΅ΡΡΡ ΠΊΠ»ΠΈΠ΅Π½Ρ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π²ΠΈΠ³Π°ΡΡΡΡ Π΄Π°Π»ΡΡΠ΅ ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΠ΅ΡΠ²ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ Π½Π°ΡΠ΅Π³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ°.
Π¨Π°Π³ 6. Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ²ΠΎΡ ΠΏΠ΅ΡΠ²ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
ΠΠ°Π²Π°ΠΉΡΠ΅ Π½Π°ΡΠ½Π΅ΠΌ Ρ ΡΠ΅Π³ΠΎ-ΡΠΎ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ β ΠΊΠΎΠΌΠ°Π½Π΄Ρ
help
, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠΈ ΠΏΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π½Π°ΡΠ΅Π³ΠΎ ΡΠ°Ρ-Π±ΠΎΡΠ°.Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅
CommandHelp.kt
ΠΈ Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄:package org. remindme ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.helpers.message ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.types.ApiIcon ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.types.ChatMessage ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.types.MessageOutline ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.types.MessageStyle // ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΏΠΎΠΌΠΎΡΠΈ ΡΠ°Ρ-Π±ΠΎΡΠ° ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ΄ΠΎΠ²ΠΎΠ»ΡΡΡΠ²ΠΈΠ΅ runHelpCommand (ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ°: MessagePayload) { // ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈΠ· ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΈ ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌ Π΅ΠΌΡ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ sendMessage(payload.userId, helpMessage()) } // ΡΡΡΠΎΠΈΠΌ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ DSL Π²Π΅ΡΠ΅Π»ΠΎ helpMessage(): ChatMessage { ΠΎΡΠ²Π΅ΡΠ½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ { ΡΠ°Π·Π΄Π΅Π» { text("Π‘ΠΊΠΎΡΠΎ ΠΏΠΎΠΌΠΎΡΡ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π·Π΄Π΅ΡΡ!") } } }
ΠΡΠ»ΠΈΡΠ½ΠΎ! Π’Π΅ΠΏΠ΅ΡΡ Ρ Π½Π°Ρ Π΅ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°, ΠΊΠΎΡΠΎΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Π² Π΄Π΅ΠΉΡΡΠ²ΠΈΠΈ.
Π¨Π°Π³ 7. ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΉ ΡΠΎΡΠΊΠΈ
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΌ ΡΠ°Π³ΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΉ ΡΠΎΡΠΊΠΈ Π±ΠΎΡΠ° Π² Π½Π°ΡΠ΅ΠΌ ΠΊΠΎΠ΄Π΅. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΡΠ°Π³Π° ΠΌΡ, Π½Π°ΠΊΠΎΠ½Π΅Ρ, ΡΠΌΠΎΠΆΠ΅ΠΌ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½Π°ΡΠ΅ΠΌΡ Π±ΠΎΡΡ.
ΠΡΠΎ Π½Π΅ ΡΡΠ΅Π±Π½ΠΈΠΊ Ktor, ΠΏΠΎΡΡΠΎΠΌΡ ΠΌΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ Π²Π΄Π°Π²Π°ΡΡΡΡ Π² ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ Ktor. ΠΡΡΠ°ΡΠΈ, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π΅ Π·Π½Π°ΠΊΠΎΠΌΡ Ρ Ktor, ΡΡΠΎ Ρ ΠΎΡΠΎΡΠ°Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ ΡΡΠΈΠΌ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΎΠΌ: ΠΏΡΠΎΡΡΠΎ ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ Π»Π°ΠΊΠΎΠ½ΠΈΡΠ΅Π½ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Ktor.
ΠΠ°Ρ ΡΠ°Ρ-Π±ΠΎΡ β ΡΡΠΎ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π½ΠΎ ΠΈ ΡΠ΅ΡΠ²Π΅Ρ β ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°ΡΡ ΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π·Π°ΠΏΡΠΎΡΡ, ΠΏΠΎΡΡΡΠΏΠ°ΡΡΠΈΠ΅ ΠΈΠ· ΠΊΠΎΡΠΌΠΎΡΠ°. ΠΠ»Ρ ΡΡΠΎΠΉ ΡΠ΅Π»ΠΈ Ktor ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΡΠ½ΠΊΡΠΈΡ ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΠΈ. ΠΠ°Π²Π°ΠΉΡΠ΅ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ² POST Π½Π° ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΉ ΡΠΎΡΠΊΠ΅
/api/space
.Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ°ΠΉΠ»
Routes.kt
ΠΈ Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄:package org.remindme ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ com.fasterxml.jackson.databind.ObjectMapper ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ io. ktor.http.* ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ io.ktor.server.application.* ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ io.ktor.server.request.* ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ io.ktor.server.response.* ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ io.ktor.server.routing.* ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ kotlinx.coroutines.launch ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.ExperimentalSpaceSdkApi ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.helpers.command ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.helpers.readPayload ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.helpers.verifyWithPublicKey ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.types.ListCommandsPayload ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.types.MessagePayload Π²Π΅ΡΠ΅Π»ΠΎ Application.configureRouting () { ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΡ { ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ("API/ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ") { // ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ΅Π»Π° Π·Π°ΠΏΡΠΎΡΠ° val body = call. receiveText() // ΡΡΠ΅Π½ΠΈΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ², Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΏΡΠΎΠ±Π΅Π»ΠΎΠ² val ΠΏΠΎΠ΄ΠΏΠΈΡΡ = call.request.header("X-Space-Public-Key-Signature") val timestamp = call.request.header("X-Space-Timestamp")?.toLongOrNull() // verifyWithPublicKey ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΊΠ»ΡΡ ΠΈΠ· Space, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π΅Π³ΠΎ Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ Ρ ΡΡΠ° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ // ΠΈ ΡΡΠ°Π²Π½ΠΈΠ²Π°Π΅Ρ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Ρ ΡΡ Ρ Ρ Π΅ΡΠ΅ΠΌ Π² ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΈ if (signature.isNullOrBlank() || timestamp == null || !spaceClient.verifyWithPublicKey( ΡΠ΅Π»ΠΎ, ΠΌΠ΅ΡΠΊΠ° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΏΠΎΠ΄ΠΏΠΈΡΡ ) ) { call.respond(HttpStatusCode.Unauthorized) Π²ΠΎΠ·Π²ΡΠ°Ρ@ΠΏΠΎΡΡΠ° } // Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠ΅ΠΌ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ // MessagePayload = ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ // ListCommandsPayload = ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²Π²ΠΎΠ΄ΠΈΡ ΠΊΠΎΡΡΡ ΡΠ΅ΡΡΡ ΠΈΠ»ΠΈ ΡΠΈΠΌΠ²ΠΎΠ» ΠΊΠΎΠ³Π΄Π° (Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΈ = readPayload (ΡΠ΅Π»ΠΎ)) { ΡΡΠΎ MessagePayload -> { runHelpCommand(ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ) call. respond(HttpStatusCode.OK, "") } ΡΡΠΎ ListCommandsPayload -> { } } } } }
Π§ΡΠΎ Π·Π΄Π΅ΡΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ:
Application.configureRouting()
Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅Ρ ΡΡΠ½ΠΊΡΠΈΡ ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΠΈ Ktor.spaceClient.verifyWithPublicKey()
ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ Space, ΠΎΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π·Π°ΠΏΡΠΎΡ. ΠΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΎΡΠΊΡΡΡΡΠΉ ΠΊΠ»ΡΡ ΠΈΠ· Space Π΄Π»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Ρ ΡΡΠ° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΈ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Π΅Π³ΠΎ Ρ Ρ Π΅ΡΠ΅ΠΌ, ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½Π½ΡΠΌ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ Π±ΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π·Π΄Π΅ΡΡ. Π ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΌΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΠΌ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ Π·Π°ΠΏΡΠΎΡΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡSpace.processPayload()
Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ Π΄Π»Ρ ΡΡΠΎΠΉ ΡΠ΅Π»ΠΈ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ Π·Π°ΠΏΡΠΎΡΠ°.readPayload(body: String)
β ΡΡΠΎ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ SDK, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅ JSON ΠΈΠ· Space ΠΈ Π΄Π΅ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΡΠ΅Ρ ΠΈΡ Π²ApplicationPayload
. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π΅ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· ΠΊΠΎΡΠΌΠΎΡΠ° ΠΌΠΎΠ³ΡΡ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:{ "ΠΈΠΌΡ_ΠΊΠ»Π°ΡΡΠ°": "MessagePayload", "ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅": { "ΠΈΠΌΡ ΠΊΠ»Π°ΡΡΠ°": "ΠΠΎΠ½ΡΠ΅ΠΊΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ", "messageId": "JxT000JxT", "channelId": "31m0WE41iCBP", "ΡΠ΅Π»ΠΎ": { "className": "Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅Π§Π°ΡΠ°.Π’Π΅ΠΊΡΡ", "ΡΠ΅ΠΊΡΡ": "ΠΏΠΎΠΌΠΎΡΡ" }, "createdTime": "2020-11-08T21:34:24.919Z" }, "accessToken": "", "verificationToken": "85e23ff", "ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ": "1eAeu31CZA" }
Π‘Π°ΠΌΠ°Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π°Ρ ΡΠ°ΡΡΡ β Π°Π½Π°Π»ΠΈΠ· ΡΠΈΠΏΠ° ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΈ. Π Space SDK Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΈΠΏΠΎΠ² ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΈ, Π½ΠΎ Π² ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΌΡ ΡΠΎΡΡΠ΅Π΄ΠΎΡΠΎΡΠΈΠΌΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° Π΄Π²ΡΡ ΠΈΠ· Π½ΠΈΡ :
MessagePayload
: ΡΡΠ°Π½Π΄Π°ΡΡΠ½Π°Ρ ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ Π±ΠΎΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡMessagePayload
ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅.ListCommandsPayload
: Π±ΠΎΡ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°ΠΆΠΈΠΌΠ°Π΅Ρ ΠΊΠ½ΠΎΠΏΠΊΡ ΠΊΠΎΡΠΎΠΉ ΡΠ΅ΡΡΡ/
. ΠΠΎΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡΠ²Π΅ΡΠΈΡΡ ΡΠΏΠΈΡΠΊΠΎΠΌ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄.
ΠΡΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠΈ
MessagePayload
Π²Π°ΠΆΠ½ΠΎ ΠΎΡΠ²Π΅ΡΠΈΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌ HTTP-ΠΊΠΎΠ΄ΠΎΠΌ (200 OK
Π² Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅). Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎΠ»ΡΡΠΈΡ500 Internal Server Error
.
Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
main()
Π²Application.kt
Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΡΠ΅ΡΠ²Π΅Ρ Ρ Π²ΠΊΠ»ΡΡΠ΅Π½Π½ΠΎΠΉ ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΠ΅ΠΉ:fun main() { Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ (Netty, ΠΏΠΎΡΡ = 8080) { Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΡ () }. ΡΡΠ°ΡΡ(ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ = ΠΈΡΡΠΈΠ½Π°) }
ΠΠΎΡΠΎΠ²ΠΎ! Π’Π΅ΠΏΠ΅ΡΡ Ρ Π½Π°Ρ Π΅ΡΡΡ ΡΠ°Π±ΠΎΡΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°, ΠΈ ΠΌΡ Π³ΠΎΡΠΎΠ²Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ Π½Π°ΡΠ΅Π³ΠΎ Π±ΠΎΡΠ° Π² ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ°Π·!
Π¨Π°Π³ 8. ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ Π±ΠΎΡΠ°
ΠΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ°ΠΉΠ»
Application.kt
.ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π½Π°ΠΆΠ°Π²
ΠΡΠΏΠΎΠ»Π½ΠΈΡΡ
Π² ΠΏΠΎΠ»Π΅ ΡΡΠ΄ΠΎΠΌ ΡΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ
Π²Application.kt
:ΠΡΠΊΡΠΎΠΉΡΠ΅ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ Space ΠΈ Π½Π°ΠΉΠ΄ΠΈΡΠ΅ Π±ΠΎΡΠ°: Π½Π°ΠΆΠΌΠΈΡΠ΅ Ctrl+K 8 Π΅Π³ΠΎ ΠΈΠΌΡ.
ΠΡΠ»ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π² ΠΊΠΎΠ΄, ΡΠΎ Π²ΠΈΠ΄Π½ΠΎ, ΡΡΠΎ ΠΌΡ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠ΅ΠΌ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½Π½ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. ΠΠ° Π»ΡΠ±ΠΎΠΉ Π·Π°ΠΏΡΠΎΡ ΠΌΡ ΠΎΡΠ²Π΅ΡΠ°Π΅ΠΌ
helpMessage
. ΠΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π½Π°ΡΠ΅Π³ΠΎ Π±ΠΎΡΠ°, Π½Π°ΠΏΠΈΡΠΈΡΠ΅ ΡΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ Π² ΡΠ°ΡΠ΅. ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅:Π Π°Π±ΠΎΡΠ°Π΅Ρ! Π’Π΅ΠΏΠ΅ΡΡ Π΄Π°Π²Π°ΠΉΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π±ΠΎΡΠ°.
Π¨Π°Π³ 9.
ΠΠΎΠ±Π°Π²ΡΡΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΡΠ»ΡΡ-ΠΊΠΎΠΌΠ°Π½Π΄ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ΄Π΅Π»Π°Π΅ΠΌ Π½Π°ΡΠ΅Π³ΠΎ Π±ΠΎΡΠ° ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΌ:
Π§ΡΠΎΠ±Ρ ΡΡΠΈΡΠ°ΡΡΡΡ ΡΠ°Ρ-Π±ΠΎΡΠΎΠΌ, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΈΠΌΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΡΠ²Π΅ΡΠ°ΡΡ ΡΠΏΠΈΡΠΊΠΎΠΌ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°ΠΆΠΈΠΌΠ°Π΅Ρ
/
ΠΊΠΎΡΠ°Ρ ΡΠ΅ΡΡΠ° Π² ΡΠ°ΡΠ΅. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π±ΠΎΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡListCommandsPayload
ΡΠΈΠΏ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΈ.ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π½Π°Ρ Π±ΠΎΡ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Π±ΠΎΡΠΎΠΌ-Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡ, Π΅ΠΌΡ Π½ΡΠΆΠ½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°
Π½Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ
, ΠΊΠΎΡΠΎΡΠ°Ρ Π·Π°ΠΏΡΡΡΠΈΡ ΡΠ°ΠΉΠΌΠ΅Ρ ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΈΡ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΊΠΎΠ³Π΄Π° ΡΠ°ΠΉΠΌΠ΅Ρ Π·Π°ΠΊΠΎΠ½ΡΠΈΡΡΡ.
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ°ΠΉΠ»
Commands.kt
:package org.remindme ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.types.* ΠΊΠ»Π°ΡΡ ApplicationCommand( ΠΈΠΌΡ val: ΡΡΡΠΎΠΊΠ°, val ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ: ΡΡΡΠΎΠΊΠ°, val run: suspend (ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ°: MessagePayload) -> Unit ) { /** * [CommandDetail] Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π² Space Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅. * Π‘ΠΏΠΈΡΠΎΠΊ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. */ fun toSpaceCommand() = CommandDetail(ΠΈΠΌΡ, ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ) } // ΡΠΏΠΈΡΠΎΠΊ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ = listOf ( ApplicationCommand( "ΠΏΠΎΠΌΠΎΡΡ", "ΠΠΎΠΊΠ°ΠΆΠΈ ΡΡΡ ΡΠΏΡΠ°Π²ΠΊΡ", ) { ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ° -> runHelpCommand (ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ°) }, ApplicationCommand( "Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡΡ", "ΠΠ°ΠΏΠΎΠΌΠ½ΠΈ ΠΌΠ½Π΅ ΠΎ ΡΠ΅ΠΌ-Π½ΠΈΠ±ΡΠ΄Ρ ΡΠ΅ΡΠ΅Π· N ΡΠ΅ΠΊΡΠ½Π΄, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, " + "ΡΡΠΎΠ±Ρ Π½Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ ΠΎ \"Π²Π΅ΡΠ΅\" Π·Π° 10 ΡΠ΅ΠΊΡΠ½Π΄, ΠΎΡΠΏΡΠ°Π²ΡΡΠ΅ 'Π½Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ 10 ΠΎ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ΅'", ) { ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ° -> runRemindCommand (ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ°) } ) /** * ΠΡΠ²Π΅Ρ Π½Π° [ListCommandsPayload]. * Space Π±ΡΠ΄Π΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅ Π²Π°ΡΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ. */ Π²Π΅ΡΠ΅Π»ΠΎ getSupportedCommands() = ΠΠΎΠΌΠ°Π½Π΄Ρ( ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅Commands.map { it.toSpaceCommand() } )
ΠΠ΄Π΅ΡΡ:
ΠΠ»Π°ΡΡ ApplicationCommand
ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠ°Ρ-Π±ΠΎΡΠ°: ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΈΡ ΡΠ°Ρ-Π±ΠΎΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌname
, Π±ΠΎΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρrun
.ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ
toSpaceCommand
, ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡCommandDetail
β ΠΈΠΌΡ ΠΈ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.ΠΠΎΠ³Π΄Π° Π±ΠΎΡ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ
ListCommandsPayload
,getSupportedCommands() 9Π€ΡΠ½ΠΊΡΠΈΡ 0045 Π²Π΅ΡΠ½Π΅Ρ ΠΊΠ°ΡΡΡ
CommandDetail
.
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ°ΠΉΠ»
CommandRemind. kt
:ΠΏΠ°ΠΊΠ΅Ρ org.remindme ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ kotlinx.coroutines.delay ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.helpers.commandArguments ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.helpers.message ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.types.* ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²Π΅ΡΠ΅Π»ΡΠ΅ runRemindCommand (ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ°: MessagePayload) { val Π½Π°ΠΏΠΎΠΌΠ½ΠΈΡΡMeArgs = getArgs (ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ°) ?: Π·Π°ΠΏΡΡΡΠΈΡΡ { sendMessage(payload.userId, helpMessage()) Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ } Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅AfterDelay(payload.userId, Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅MeArgs) } ΠΏΡΠΈΠ²Π°ΡΠ½Π°Ρ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π±Π°Π²Ρ sendMessage(userId, acceptRemindMessage(remindMeArgs)) Π·Π°Π΄Π΅ΡΠΆΠΊΠ° (Π½Π°ΠΏΠΎΠΌΠ½ΠΈΡΡMeArgs.delayMs) sendMessage (ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π½Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ (Π½Π°ΠΏΠΎΠΌΠ½ΠΈΡΡMeArgs)) } Π»ΠΈΡΠ½ΠΎΠ΅ ΡΠ°Π·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ acceptRemindMessage (remindMeArgs: RemindMeArgs): ChatMessage { ΠΎΡΠ²Π΅ΡΠ½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ { ΠΊΠΎΠ½ΡΡΡ( Π‘ΡΡΡΠΊΡΡΡΠ° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ( icon = ApiIcon("ΡΠ»Π°ΠΆΠΎΠΊ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½"), text = "ΠΠ°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ½ΡΡΠΎ" ) ) ΡΠ°Π·Π΄Π΅Π» { text("Π― Π½Π°ΠΏΠΎΠΌΠ½Ρ Π²Π°ΠΌ ΡΠ΅ΡΠ΅Π· ${remindMeArgs. delayMs / 1000} ΡΠ΅ΠΊΡΠ½Π΄ ΠΎ \"${remindMeArgs.reminderText}\"") } } } Π»ΠΈΡΠ½ΠΎΠ΅ ΡΠ°Π·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅Message(remindMeArgs: RemindMeArgs): ChatMessage { ΠΎΡΠ²Π΅ΡΠ½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ { ΠΊΠΎΠ½ΡΡΡ( Π‘ΡΡΡΠΊΡΡΡΠ° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ( Π·Π½Π°ΡΠΎΠΊ = APIIcon("ΡΠ°ΡΡ"), ΡΠ΅ΠΊΡΡ = "ΠΠ°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅" ) ) ΡΠ°Π·Π΄Π΅Π» { ΡΠ΅ΠΊΡΡ (Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡΡMeArgs.reminderText) ΡΠ΅ΠΊΡΡ( ΡΠ°Π·ΠΌΠ΅Ρ = Π Π°Π·ΠΌΠ΅ΡΠ’Π΅ΠΊΡΡΠ°Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ.ΠΠΠΠΠΠ¬ΠΠΠ, content = "ΠΡΠΎΡΠ»ΠΎ ${remindMeArgs.delayMs / 1000}Β ΡΠ΅ΠΊΡΠ½Π΄" ) } } } Π»ΠΈΡΠ½ΠΎΠ΅ ΡΠ°Π·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ getArgs (ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ°: MessagePayload): RemindMeArgs? { val args = payload. commandArguments() ?: Π²Π΅ΡΠ½ΡΡΡ Π½ΠΎΠ»Ρ val delayMs = args.substringBefore(" ").toLongOrNull()?.times(1000) ?: Π²Π΅ΡΠ½ΡΡΡ Π½ΠΎΠ»Ρ val Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅Text = args.substringAfter(" ").trimStart().takeIf { it.isNotEmpty() } ?: Π²Π΅ΡΠ½ΡΡΡ Π½ΠΎΠ»Ρ Π²Π΅ΡΠ½ΡΡΡ RemindMeArgs(delayMs, Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ΡΠ΅ΠΊΡΡ) } ΡΠ°ΡΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ RemindMeArgs( val delayMs: ΠΠ»ΠΈΠ½Π½ΡΠΉ, val Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅Π’Π΅ΠΊΡΡ: ΡΡΡΠΎΠΊΠ°, )
ΠΠ΄Π΅ΡΡ:
runRemindCommand
Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΡΠ°ΠΉΠΌΠ΅Ρ Π½Π° ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ.getArgs()
ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΡΠ½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡ
(Π²ΡΠ΅ΠΌΡ ΠΈ ΡΠ΅ΠΊΡΡ). ΠΡΠ°ΠΊ, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°Π±ΠΈΡΠ°Π΅Ρ, Π½Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ 10 ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΠ΅ΠΊΡΡ
, Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ Π±ΡΠ΄ΡΡ ΡΠ°ΠΊΠΈΠΌΠΈ:10
,ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΠ΅ΠΊΡΡ
.Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅AfterDelay()
ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΡacceptRemindMessage
ΠΎΠ±ΡΠ°ΡΠ½ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΠΏΠΎ ΠΈΡΡΠ΅ΡΠ΅Π½ΠΈΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΠ°ΠΉΠΌΠ΅ΡΠ° ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΠ½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅
.acceptRemindMessage
ΠΈΠ½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡ
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ DSL ΠΏΠΎΡΡΡΠΎΠΈΡΠ΅Π»Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡChatMessage
.MessageOutline
β ΡΡΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ Π±Π»ΠΎΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌΡ ΡΠ΅ΠΊΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ.ApiIcon
Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π·Π½Π°ΡΠΊΠ°, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ ΠΏΠ΅ΡΠ΅Π΄ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ.
ΠΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΡΠΉΡΠ΅ ΡΠ°ΠΉΠ»
CommandHelp.kt
:package org.remindme ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.helpers.message ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.types.ApiIcon ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.types.ChatMessage ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.types.MessageOutline ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.types.MessageStyle ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ΄ΠΎΠ²ΠΎΠ»ΡΡΡΠ²ΠΈΠ΅ runHelpCommand (ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ°: MessagePayload) { sendMessage(payload. userId, helpMessage()) } Π²Π΅ΡΠ΅Π»ΠΎ helpMessage(): ChatMessage { ΠΎΡΠ²Π΅ΡΠ½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ { Π‘ΡΡΡΠΊΡΡΡΠ° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ( icon = ApiIcon("ΡΠ»Π°ΠΆΠΎΠΊ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½"), text = "ΠΠ°ΠΏΠΎΠΌΠ½ΠΈΡΡ ΠΌΠ½Π΅ ΠΎ ΠΏΠΎΠΌΠΎΡΠΈ Π±ΠΎΡΠ°" ) ΡΠ°Π·Π΄Π΅Π» { text("Π‘ΠΏΠΈΡΠΎΠΊ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄", MessageStyle.PRIMARY) ΠΏΠΎΠ»Ρ { ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅Commands.forEach { ΠΏΠΎΠ»Π΅(it.name, it.info) } } } } }
ΠΠ΄Π΅ΡΡ ΠΌΡ ΠΎΠ±Π½ΠΎΠ²ΠΈΠ»ΠΈ
helpMessage
, ΡΠ°ΠΊ ΡΡΠΎ ΡΠ΅ΠΏΠ΅ΡΡ ΠΎΠ½ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΏΠΈΡΠΎΠΊΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ ΠΊΠΎΠΌΠ°Π½Π΄
.ΠΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΡΠΉΡΠ΅ ΡΠ°ΠΉΠ»
Routes.kt
:package org.remindme ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ com.fasterxml.jackson.databind.ObjectMapper ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ io.ktor.http.* ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ io.ktor.server.application.* ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ io.ktor.server.request.* ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ io.ktor.server.response.* ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ io.ktor.server.routing.* ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ kotlinx.coroutines.launch ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.helpers.command ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.helpers.readPayload ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.helpers.verifyWithPublicKey ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.types.ListCommandsPayload ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ space.jetbrains.api.runtime.types.MessagePayload Π²Π΅ΡΠ΅Π»ΠΎ Routing.api () { ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ("API/ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ") { // ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ΅Π»Π° Π·Π°ΠΏΡΠΎΡΠ° val body = call. receiveText() // ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, ΠΈΡΡ ΠΎΠ΄ΠΈΡ Π»ΠΈ Π·Π°ΠΏΡΠΎΡ ΠΎΡ Π΄ΠΎΠ²Π΅ΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ° Space val ΠΏΠΎΠ΄ΠΏΠΈΡΡ = call.request.header("X-Space-Public-Key-Signature") val timestamp = call.request.header("X-Space-Timestamp")?.toLongOrNull() // verifyWithPublicKey ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΊΠ»ΡΡ ΠΈΠ· Space, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π΅Π³ΠΎ Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ Ρ ΡΡΠ° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ // ΠΈ ΡΡΠ°Π²Π½ΠΈΠ²Π°Π΅Ρ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Ρ ΡΡ Ρ Ρ Π΅ΡΠ΅ΠΌ Π² ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΈ if (signature.isNullOrBlank() || ΠΌΠ΅ΡΠΊΠ° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ == null || !spaceClient.verifyWithPublicKey(ΡΠ΅Π»ΠΎ, ΠΌΠ΅ΡΠΊΠ° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΏΠΎΠ΄ΠΏΠΈΡΡ) ) { call.respond(HttpStatusCode.Unauthorized) Π²ΠΎΠ·Π²ΡΠ°Ρ@ΠΏΠΎΡΡΠ° } ΠΊΠΎΠ³Π΄Π° (Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΈ = readPayload (ΡΠ΅Π»ΠΎ)) { ΡΡΠΎ ListCommandsPayload -> { // ΠΡΠΎΠ±Π΅Π» Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ call. respondText( // Π‘Π΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡ JSON ObjectMapper().writeValueAsString(getSupportedCommands()), ContentType.Application.Json ) } ΡΡΠΎ MessagePayload -> { // ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΈΠ» ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ val ΠΈΠΌΡ_ΠΊΠΎΠΌΠ°Π½Π΄Ρ = ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ°.ΠΊΠΎΠΌΠ°Π½Π΄Π°() val command = supportedCommands.find { it.name == commandName } Π΅ΡΠ»ΠΈ (ΠΊΠΎΠΌΠ°Π½Π΄Π° == Π½ΠΎΠ»Ρ) { runHelpCommand (ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ°) } Π΅ΡΠ΅ { Π·Π°ΠΏΡΡΡΠΈΡΡ { command.run (ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ°) } } call.respond(HttpStatusCode.