ΠΠ°Π²Π΅ΡΠ½ΡΠΊΠ° Ρ ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΈΠ· Π²Π°Ρ, ΠΊΠ°ΠΊ ΠΈ Ρ ΠΌΠ΅Π½Ρ, Π±ΡΠ»Π° ΠΈΠ΄Π΅Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ΅. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ ΠΎΠΏΠΈΡΡ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ, Ρ ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΏΡΠΈΡΠ»ΠΎΡΡ ΡΡΠΎΠ»ΠΊΠ½ΡΡΡΡΡ ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΠ’Π‘. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΡΠΎ ΠΊΠΎΠΌΡ-ΡΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΡΠ΅ΡΠΈΡΡΡΡ Π½Π° ΡΠ²ΠΎΡ ΠΈΠ΄Π΅Ρ, Π° ΠΊΠΎΠΌΡ-ΡΠΎ ΠΏΡΠΎΠΉΡΠΈ ΠΏΠΎ ΠΏΡΠΎΡΠΎΠΏΡΠ°Π½Π½ΠΎΠΉ Π΄ΠΎΡΠΎΠΆΠΊΠ΅, Π²Π΅Π΄Ρ Ρ ΡΠΎΠΆΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ ΠΎΠΏΡΡΠΎΠΌ ΠΏΠ΅ΡΠ²ΠΎΠΏΡΠΎΡ ΠΎΠ΄ΡΠ΅Π².
ΠΠ΄Π΅Ρ ΠΈ ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ
Π Π½Π°ΡΠ°Π»ΠΎΡΡ Π²ΡΡ Π±Π°Π½Π°Π»ΡΠ½ΠΎ Ρ Π»ΡΠ±Π²ΠΈ ΠΊ Asterisk (framework Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ), Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΡΠ΅Π»Π΅ΡΠΎΠ½ΠΈΠΈ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΎΠΊ FreePBX (Π²Π΅Π± ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄Π»Ρ Asterisk). ΠΡΠ»ΠΈ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π±ΡΠ»ΠΈ Π±Π΅Π· ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠ΅ΠΉ ΠΈ ΡΠΊΠ»Π°Π΄ΡΠ²Π°Π»ΠΈΡΡ Π² Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ FreePBX β Π²ΡΡ ΡΡΠΏΠ΅Ρ. ΠΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΠ»Π° Π·Π° ΡΡΡΠΊΠΈ, ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ ΠΏΠΎΠ»ΡΡΠ°Π»Π° Π½Π°ΡΡΡΠΎΠ΅Π½Π½ΡΡ ΠΠ’Π‘, ΡΠ΄ΠΎΠ±Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΈ ΠΊΡΠ°ΡΠΊΠΎΠ΅ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΠ»ΡΡ ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΆΠ΅Π»Π°Π½ΠΈΡ.
ΠΠΎ ΡΠ°ΠΌΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ Π±ΡΠ»ΠΈ Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΌΠΈ ΠΈ ΡΠΎΠ³Π΄Π° Π±ΡΠ»ΠΎ Π½Π΅ ΡΠ°ΠΊ ΡΠΊΠ°Π·ΠΎΡΠ½ΠΎ. Asterisk ΠΌΠΎΠΆΠ΅Ρ ΠΌΠ½ΠΎΠ³ΠΎΠ΅, Π½ΠΎ ΡΡΠΎΠ±Ρ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΌ Π²ΠΈΠ΄Π΅ Π²Π΅Π±-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΠ»ΠΎΡΡ ΠΏΠΎΡΡΠ°ΡΠΈΡΡ Π² ΡΠ°Π·Ρ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. Π’Π°ΠΊ Π½Π΅Π±ΠΎΠ»ΡΡΠ°Ρ ΠΌΠ΅Π»ΠΎΡΡ ΠΌΠΎΠ³Π»Π° Π·Π°Π½ΡΡΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π²ΡΠ΅ΠΉ ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΠ’Π‘. Π Π΄Π΅Π»ΠΎ Π½Π΅ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΏΠΈΡΠ°ΡΡ Π²Π΅Π± ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄ΠΎΠ»Π³ΠΎ, Π° ΡΠΊΠΎΡΠ΅Π΅ Π΄Π΅Π»ΠΎ Π² ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ FreePBX. ΠΠΎΠ΄Ρ ΠΎΠ΄Ρ ΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ FreePBX Π·Π°ΠΊΠ»Π°Π΄ΡΠ²Π°Π»Π°ΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π° php4, Π° Π² ΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠΆΠ΅ Π±ΡΠ» php5.6Β Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π²ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΠΎΡΠ΅ ΠΈ ΡΠ΄ΠΎΠ±Π½Π΅Π΅.
ΠΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΠΊΠ°ΠΏΠ»Π΅ΠΉ ΡΡΠ°Π»ΠΈ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½Ρ Π² Π²ΠΈΠ΄Π΅ ΡΡ Π΅ΠΌΡ. ΠΠΎΠ³Π΄Π° ΠΏΠΎΠΏΡΡΠ°Π»ΡΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅ ΠΏΠΎΡΡΡΠΎΠΈΡΡ Π΄Π»Ρ FreePBX, ΠΏΠΎΠ½ΡΠ», ΡΡΠΎ ΠΏΡΠΈΠ΄ΡΡΡΡ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ Π΅Π³ΠΎ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠ°ΡΡ ΠΈ ΠΏΡΠΎΡΠ΅ ΡΠΆΠ΅ ΠΏΠΎΡΡΡΠΎΠΈΡΡ ΡΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ Π½ΠΎΠ²ΠΎΠ΅.
ΠΠ»ΡΡΠ΅Π²ΡΠΌΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌΠΈ ΡΡΠ°Π»ΠΈ:
- ΠΏΡΠΎΡΡΠ°Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°, ΠΈΠ½ΡΡΠΈΡΠΈΠ²Π½ΠΎ Π΄ΠΎΡΡΡΠΏΠ½Π°Ρ Π΄Π°ΠΆΠ΅ Π½Π°ΡΠΈΠ½Π°ΡΡΠ΅ΠΌΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΡ. Π’Π΅ΠΌ ΡΠ°ΠΌΡΠΌ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΠΌ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΠ’Π‘ Π½Π° Π½Π°ΡΠ΅ΠΉ ΡΡΠΎΡΠΎΠ½Π΅,
- Π»Π΅Π³ΠΊΠ°Ρ Π΄ΠΎΡΠ°Π±ΠΎΡΠΊΠ°, ΡΡΠΎΠ±Ρ Π·Π°Π΄Π°ΡΠΈ ΡΠ΅ΡΠ°Π»ΠΈΡΡ Π·Π° Π°Π΄Π΅ΠΊΠ²Π°ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ,
- ΡΠ΄ΠΎΠ±ΡΡΠ²ΠΎ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Ρ ΠΠ’Π‘. Π£ FreePBX Π½Π΅ Π±ΡΠ»ΠΎ API Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π°ΡΡΡΠΎΠ΅ΠΊ, Ρ.Π΅. Π½Π΅Π»ΡΠ·Ρ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π³ΡΡΠΏΠΏΡ ΠΈΠ»ΠΈ Π³ΠΎΠ»ΠΎΡΠΎΠ²ΡΠ΅ ΠΌΠ΅Π½Ρ ΠΈΠ· ΡΡΠΎΡΠΎΠ½Π½Π΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠΎΠ»ΡΠΊΠΎ API ΡΠ°ΠΌΠΎΠ³ΠΎ Asterisk,
- opensource β Π΄Π»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ² ΡΡΠΎ ΠΊΡΠ°ΠΉΠ½Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π»Ρ Π΄ΠΎΡΠ°Π±ΠΎΡΠΎΠΊ ΠΏΠΎΠ΄ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°.
ΠΠ΄Π΅Ρ Π±ΠΎΠ»Π΅Π΅ Π±ΡΡΡΡΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π±ΡΠ»Π° Π² ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ Π²Π΅ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» ΡΠΎΡΡΠΎΡΠ» ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π² Π²ΠΈΠ΄Π΅ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ². ΠΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΠ»ΠΈ ΠΈΠΌΠ΅ΡΡ ΠΎΠ±ΡΠΈΠΉ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΊΠ»Π°ΡΡ, Π° Π·Π½Π°ΡΠΈΡ Π½Π°Π·Π²Π°Π½ΠΈΡ Π²ΡΠ΅Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ ΡΠΆΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ½Ρ ΠΈ Π·Π½Π°ΡΠΈΡ ΡΠΆΠ΅ Π΅ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ. ΠΠ±ΡΠ΅ΠΊΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ ΡΠ΅Π·ΠΊΠΎ ΡΠΎΠΊΡΠ°ΡΠΈΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² Π² Π²ΠΈΠ΄Π΅ Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠ²Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² ΡΠΎ ΡΡΡΠΎΠΊΠΎΠ²ΡΠΌΠΈ ΠΊΠ»ΡΡΠ°ΠΌΠΈ, ΡΠ·Π½Π°ΡΡ ΠΊΠΎΡΠΎΡΡΠ΅ Π² FreePBX ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ, ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π² Π²ΡΡ ΡΡΠ½ΠΊΡΠΈΡ ΠΈ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ. Π ΡΠ»ΡΡΠ°Π΅ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π±Π°Π½Π°Π»ΡΠ½ΠΎΠ΅ Π°Π²ΡΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ Π²ΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π°, Π΄Π° ΠΈ ΡΠ΅Π»ΠΎΠΌ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°Π· ΡΠΏΡΠΎΡΡΠΈΡ ΠΆΠΈΠ·Π½Ρ. ΠΠ»ΡΡ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠΆΠ΅ Π·Π°ΠΊΡΡΠ²Π°Π΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Ρ Π΄ΠΎΡΠ°Π±ΠΎΡΠΊΠ°ΠΌΠΈ.
Π‘Π»Π΅Π΄ΡΡΡΠ΅Π΅, ΡΡΠΎ Π·Π°ΠΌΠ΅Π΄Π»ΡΠ»ΠΎ Π²ΡΠ΅ΠΌΡ Π΄ΠΎΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈ ΡΠ΅Π³ΠΎ ΡΡΠΎΠΈΠ»ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ β ΡΡΠΎ Π΄ΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. ΠΡΠ»ΠΈ Π΅ΡΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΡΠΉ Π·Π° Π΄ΠΎΠ·Π²ΠΎΠ½ Π΄ΠΎ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ°, ΡΠΎ Π²ΡΠ΅ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ, ΠΊΠΎΡΠΎΡΡΠΌ Π½ΡΠΆΠ½ΠΎ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ Π·Π²ΠΎΠ½ΠΎΠΊ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΡ, Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Π΅Π³ΠΎ, Π° Π½Π΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ²ΠΎΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΊΠΎΠΏΠΈΠΈ. Π’Π°ΠΊ, Π΅ΡΠ»ΠΈ Π½ΡΠΆΠ½ΠΎ ΡΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΏΠΎΠΌΠ΅Π½ΡΡΡ, ΡΠΎ ΠΌΠ΅Π½ΡΡΡ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅ ΠΈ ΠΏΠΎΠΈΡΠΊ Β«ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΒ» ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ°, Π° Π½Π΅ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡ ΠΏΠΎΠΈΡΠΊ ΠΏΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡΡ.
ΠΠ΅ΡΠ²Π°Ρ Π²Π΅ΡΡΠΈΡ ΠΈ ΠΏΠ΅ΡΠ²ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ
ΠΠ΅ΡΠ²ΡΠΉ ΠΏΡΠΎΡΠΎΡΠΈΠΏ Π±ΡΠ» Π³ΠΎΡΠΎΠ² ΡΠΆΠ΅ ΡΠ΅ΡΠ΅Π· Π³ΠΎΠ΄. ΠΡΡ ΠΠ’Π‘, ΠΊΠ°ΠΊ ΠΈ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π»ΠΎΡΡ, Π±ΡΠ»Π° ΠΌΠΎΠ΄ΡΠ»ΡΠ½Π°Ρ, ΠΈ ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΌΠΎΠ³Π»ΠΈ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π½ΠΎΠ²ΡΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π·Π²ΠΎΠ½ΠΊΠΎΠ², Π½ΠΎ ΠΈ ΠΌΠ΅Π½ΡΡΡ ΡΠ°ΠΌ Π²Π΅Π±-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ.
ΠΠ°, ΠΈΠ΄Π΅Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½Π° Π² Π²ΠΈΠ΄Π΅ ΡΠ°ΠΊΠΎΠΉ ΡΡ
Π΅ΠΌΡ Π½Π΅ ΠΌΠΎΡ, Π½ΠΎ ΠΎΠ½Π° Π²Π΅ΡΡΠΌΠ° ΡΠ΄ΠΎΠ±Π½Π°Ρ ΠΈ Ρ ΡΠ΄Π΅Π»Π°Π» ΡΠΎΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅ Π΄Π»Ρ Asterisk.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ ΡΠΆΠ΅ ΠΌΠΎΠ³Π»ΠΈ:
- ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π·Π²ΠΎΠ½ΠΊΠ° ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π», ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΡ Π½Π° ΡΡ Π΅ΠΌΠ΅, Π° ΡΠ°ΠΊΠΆΠ΅ Π² ΠΌΠ΅Π½Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠ»Π΅Π²Π°,
- ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ Π΄Π»Ρ Π²Π΅Π±-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΡΠ²ΠΎΠΈ ΡΠ°Π±Π»ΠΎΠ½Ρ Π½Π° ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ (Π΅ΡΠ»ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΡΡΠ°Π½ΠΈΡΡ ΡΡΠΎ ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π»),
- Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΡΠ²ΠΎΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π½Π°ΡΡΡΠΎΠ΅ΠΊ ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ Π²ΠΊΠ»Π°Π΄ΠΊΡ Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΠΌΠΈ,
- ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠ½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡΡΡ ΠΎΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ°ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π° ΠΈ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠ΄ Π½ΠΎΠ²ΡΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΈΠ»ΠΈ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΡΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΎΡ ΡΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ²ΠΎΡ Π³ΠΎΠ»ΠΎΡΠΎΠ²ΠΎΠ΅ ΠΌΠ΅Π½Ρ:
......
class CPBX_MYIVR extends CPBX_IVR
{
function __construct()
{
parent::__construct();
$this->_module = "myivr";
}
}
.....
$myIvrModule = new CPBX_MYIVR();
CPBXEngine::getInstance()->registerModule($myIvrModule,__DIR__); //ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ
CPBXEngine::getInstance()->registerModuleExtension($myIvrModule,'ivr',__DIR__); //ΠΠΎΠ΄ΠΌΠ΅Π½ΠΈΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ
ΠΠ΅ΡΠ²ΡΠ΅ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ ΠΏΡΠΈΠ½Π΅ΡΠ»ΠΈ ΠΏΠ΅ΡΠ²ΡΡ Π³ΠΎΡΠ΄ΠΎΡΡΡ ΠΈ ΠΏΠ΅ΡΠ²ΡΠ΅ ΡΠ°Π·ΠΎΡΠ°ΡΠΎΠ²Π°Π½ΠΈΡ. Π Π°Π΄ΠΎΠ²Π°Π»ΠΎ ΡΠΎ, ΡΡΠΎ ΠΎΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π»ΠΎ, ΡΡΠΎ Ρ ΡΠΆΠ΅ ΡΠΌΠΎΠ³ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ FreePBX. Π Π°Π΄ΠΎΠ²Π°Π»ΠΎ, ΡΡΠΎ Π»ΡΠ΄ΡΠΌ ΠΈΠ΄Π΅Ρ ΡΡ Π΅ΠΌΡ ΠΏΡΠΈΡΠ»Π°ΡΡ ΠΏΠΎ Π΄ΡΡΠ΅. ΠΡΠ»ΠΎ Π΅ΡΡ ΠΌΠ½ΠΎΠ³ΠΎ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² ΡΠΏΡΠΎΡΡΠΈΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ, Π½ΠΎ ΠΈ Π½Π° ΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠ°ΡΡΡ Π·Π°Π΄Π°Ρ ΡΠΆΠ΅ Π΄Π΅Π»Π°Π»Π°ΡΡ ΠΏΡΠΎΡΠ΅.
Π Π°Π·ΠΎΡΠ°ΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ°Π»ΠΎ API Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΠ’Π‘ β ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ ΡΠΎ, ΡΡΠΎ Ρ ΠΎΡΠ΅Π»ΠΎΡΡ. Π― Π²Π·ΡΠ» ΡΠΎΡ ΠΆΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏ, ΡΡΠΎ ΠΈ Π²ΠΎ FreePBX, ΠΏΠΎ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ Apply ΠΏΠ΅ΡΠ΅ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π²ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΈ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ ΠΌΠΎΠ΄ΡΠ»ΠΈ.
ΠΡΠ³Π»ΡΠ΄ΠΈΡ ΡΡΠΎ ΡΠ°ΠΊ:
*ΠΠΈΠ°Π»ΠΏΠ»Π°Π½ β ΠΏΡΠ°Π²ΠΈΠ»ΠΎ(Π°Π»Π³ΠΎΡΠΈΡΠΌ), ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ Π·Π²ΠΎΠ½ΠΎΠΊ.
ΠΠΎ ΠΏΡΠΈ ΡΠ°ΠΊΠΎΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠ΅ API Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π°ΡΡΡΠΎΠ΅ΠΊ ΠΠ’Π‘. ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ
, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΊ Asterisk ΡΠ»ΠΈΡΠΊΠΎΠΌ Π΄ΠΎΠ»Π³Π°Ρ ΠΈ ΡΠ΅ΡΡΡΡΠΎΠ΅ΠΌΠΊΠ°Ρ.
ΠΠΎ-Π²ΡΠΎΡΡΡ
, Π½Π΅Π»ΡΠ·Ρ Π²ΡΠ·Π²Π°ΡΡ Π΄Π²Π΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ, Ρ.ΠΊ. ΠΎΠ±Π΅ Π±ΡΠ΄ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ.
Π-ΡΡΠ΅ΡΡΠΈΡ
, ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅Ρ Π²ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΡΠ΄Π΅Π»Π°Π½Π½ΡΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠΌ.
Π ΡΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ, ΠΊΠ°ΠΊ ΠΈ Π² Askozia, ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π³Π΅Π½Π΅ΡΠΈΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΈ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ, Π½ΠΎ ΡΡΠΎ Π²ΡΡ ΠΏΠΎΠ»ΡΠΌΠ΅ΡΡ. ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π±ΡΠ»ΠΎ ΠΌΠ΅Π½ΡΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄.
ΠΡΠΎΡΠ°Ρ Π²Π΅ΡΡΠΈΡ. ΠΠΎΡ Π²ΡΡΠ°ΡΠΈΠ» Ρ Π²ΠΎΡΡ ΡΠ²ΡΠ·
ΠΠ΄Π΅Π΅ΠΉ Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΡΠ°Π»ΠΎ Π½Π΅ ΠΏΠ΅ΡΠ΅ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΈ Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½ Π΄Π»Ρ Asterisk, Π° ΡΠΎΡ ΡΠ°Π½ΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² Π±Π°Π·Ρ ΠΈ ΡΠΈΡΠ°ΡΡ ΠΈΠ· Π±Π°Π·Ρ ΠΏΡΡΠΌΠΎ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π·Π²ΠΎΠ½ΠΊΠ°. Asterisk ΡΠΆΠ΅ ΡΠΌΠ΅Π» ΡΠΈΡΠ°ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΈΠ· Π±Π°Π·Ρ, Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² Π±Π°Π·Π΅ ΠΈ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π·Π²ΠΎΠ½ΠΎΠΊ ΡΠΆΠ΅ Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ Ρ ΡΡΠ΅ΡΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π° Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½Π° ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΠΏΠΎΠ΄ΠΎΡΠ»Π° ΡΡΠ½ΠΊΡΠΈΡ REALTIME_HASH.
Π ΠΈΡΠΎΠ³Π΅ Π½Π΅ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΠ»ΠΎΡΡ Π΄Π°ΠΆΠ΅ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Asterisk ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π½Π°ΡΡΡΠΎΠ΅ΠΊ ΠΈ Π²ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΡΠ°Π»ΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΡΡΠ°Π·Ρ ΠΊ Asterisk.
ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½Π° β ΡΡΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΡ Π½ΠΎΠΌΠ΅ΡΠΎΠ² ΠΈ hints. ΠΠΎ ΡΡΠΎ Π±ΡΠ»ΠΈ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΠ΅ ΡΠΎΡΠ΅ΡΠ½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ
exten=>101,1,GoSub(βsub-callusersβ,s,1(1)); - ΡΠΎΡΠ΅ΡΠ½ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅, Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ/ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΡΠ΅ΡΠ΅Π· ami
; sub-callusers β ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ Π³Π΅Π½Π΅ΡΠΈΡΡΡ ΠΏΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ.
[sub-callusers]
exten =>s,1,Noop()
exten =>s,n,Set(LOCAL(TOUSERID)=${ARG1})
exten =>s,n,ClearHash(TOUSERPARAM)
exten =>s,n,Set(HASH(TOUSERPARAM)=${REALTIME_HASH(rl_users,id,${LOCAL(TOUSERID)})})
exten =>s,n,GotoIf($["${HASH(TOUSERPARAM,id)}"=""]?return)
...
ΠΠΎΠ±Π°Π²ΠΈΡΡ ΠΈΠ»ΠΈ ΠΏΠΎΠΌΠ΅Π½ΡΡΡ ΡΡΡΠΎΠΊΡ Π² Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½Π΅ Π»Π΅Π³ΠΊΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅ΡΠ΅Π· Ami (ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Asterisk) ΠΈ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π²ΡΠ΅Π³ΠΎ Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½Π° Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ.
Π’Π°ΠΊ Π±ΡΠ»Π° ΡΠ΅ΡΠ΅Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Ρ API Π΄Π»Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ. ΠΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π΄Π°ΠΆΠ΅ Π½Π°ΠΏΡΡΠΌΡΡ Π·Π°ΠΉΡΠΈ Π² Π±Π°Π·Ρ ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½ΠΎΠ²ΡΡ Π³ΡΡΠΏΠΏΡ ΠΈΠ»ΠΈ ΠΏΠΎΠΌΠ΅Π½ΡΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΡΠ΅ΠΌΡ Π΄ΠΎΠ·Π²ΠΎΠ½Π° Π² ΠΏΠΎΠ»Π΅ βdialtimeβ Ρ Π³ΡΡΠΏΠΏΡ ΠΈ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π·Π²ΠΎΠ½ΠΎΠΊ ΡΠΆΠ΅ Π±ΡΠ΄Π΅Ρ Π΄Π»ΠΈΡΡΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ (ΠΡΠΎ Π½Π΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡ ΠΊ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, Ρ.ΠΊ. Π΄Π»Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ API ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΡΠ΅Π±ΡΡΡΡΡ Ami Π²ΡΠ·ΠΎΠ²Ρ).
ΠΠ΅ΡΠ²ΡΠ΅ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ ΠΎΠΏΡΡΡ ΠΏΡΠΈΠ½Π΅ΡΠ»ΠΈ ΠΏΠ΅ΡΠ²ΡΡ Π³ΠΎΡΠ΄ΠΎΡΡΡ ΠΈ ΡΠ°Π·ΠΎΡΠ°ΡΠΎΠ²Π°Π½ΠΈΠ΅. Π Π°Π΄ΠΎΠ²Π°Π»ΠΎ ΡΠΎ, ΡΡΠΎ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. ΠΠ°Π·Π° Π΄Π°Π½Π½ΡΡ ΡΡΠ°Π»Π° ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈ Π²Π°ΠΆΠ½ΡΠΌ Π·Π²Π΅Π½ΠΎΠΌ, Π²ΡΡΠΎΡΠ»Π° Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΠΎΡ Π΄ΠΈΡΠΊΠ°, ΡΠΈΡΠΊΠΎΠ² Π±ΠΎΠ»ΡΡΠ΅, Π½ΠΎ Π²ΡΡ ΡΠ°Π±ΠΎΡΠ°Π»ΠΎ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎ ΠΈ Π±Π΅Π· ΠΏΡΠΎΠ±Π»Π΅ΠΌ. Π Π³Π»Π°Π²Π½ΠΎΠ΅ ΡΠ΅ΠΏΠ΅ΡΡ Π²ΡΡ, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ΅ΡΠ΅Π· Π²Π΅Π±-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΈ ΡΠ΅ΡΠ΅Π· API ΠΈ ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈΡΡ ΠΎΠ΄Π½ΠΈ ΠΈ ΡΠ΅ ΠΆΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ, Π²Π΅Π±-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΈΠ·Π±Π°Π²ΠΈΠ»ΡΡ ΠΎΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ Β«ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΊ ΠΠ’Π‘Β», ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΉ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΡ ΡΠ°ΡΡΠΎ Π·Π°Π±ΡΠ²Π°Π»ΠΈ.
Π Π°Π·ΠΎΡΠ°ΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ°Π»ΠΎ ΡΡΠ»ΠΎΠΆΠ½Π΅Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. ΠΡΡ Ρ ΠΏΠ΅ΡΠ²ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΡΠ·ΡΠΊ php Π³Π΅Π½Π΅ΡΠΈΡ Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½ Π½Π° ΡΠ·ΡΠΊΠ΅ Asterisk ΠΈ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΡΠΎ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ Π½Π΅ΡΠΈΡΠ°Π΅ΠΌΠΎ, ΠΏΠ»ΡΡ ΡΠ°ΠΌ ΡΠ·ΡΠΊ Asterisk Π΄Π»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½Π° ΠΊΡΠ°ΠΉΠ½Π΅ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π΅Π½.
ΠΠ°ΠΊ ΡΡΠΎ Π²ΡΠ³Π»ΡΠ΄Π΅Π»ΠΎ:
$usersInitSection = $dialplan->createExtSection('usersinit-sub','s');
$usersInitSection
->add('',new Dialplanext_gotoif('$["${G_USERINIT}"="1"]','exit'))
->add('',new Dialplanext_set('G_USERINIT','1'))
->add('',new Dialplanext_gosub('1','s','sub-AddOnAnswerSub','usersconnected-sub'))
->add('',new Dialplanext_gosub('1','s','sub-AddOnPredoDialSub','usersinitondial-sub'))
->add('',new Dialplanext_set('LOCAL(TECH)','${CUT(CHANNEL(name),/,1)}'))
->add('',new Dialplanext_gotoif('$["${LOCAL(TECH)}"="SIP"]','sipdev'))
->add('',new Dialplanext_gotoif('$["${LOCAL(TECH)}"="PJSIP"]','pjsipdev'))
ΠΠΎ Π²ΡΠΎΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½ ΡΡΠ°Π» ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΌ, Π² Π½Π΅Π³ΠΎ Π±ΡΠ»ΠΈ Π·Π°Π»ΠΎΠΆΠ΅Π½Ρ Π²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΈ Π΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π²ΡΡΠΎΡ. ΠΡΡ ΡΡΠΎ ΡΠΈΠ»ΡΠ½ΠΎ Π·Π°ΠΌΠ΅Π΄Π»ΡΠ»ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΠΈ ΡΠ°ΠΌΠ° ΠΌΡΡΠ»Ρ ΡΡΠΎ Π² ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΠΉ ΡΠ°Π· Π½ΡΠΆΠ½ΠΎ Π²ΠΌΠ΅ΡΠΈΠ²Π°ΡΡΡΡ Π² Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½ Π½Π°Π²ΠΎΠ΄ΠΈΠ»Π° Π³ΡΡΡΡΡ.
Π’ΡΠ΅ΡΡΡ Π²Π΅ΡΡΠΈΡ
ΠΠ΄Π΅Π΅ΠΉ Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΡΠ°Π»ΠΎ Π½Π΅ Π³Π΅Π½Π΅ΡΠΈΡΡ Asterisk Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½ ΠΈΠ· php, Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ FastAGI ΠΈ Π²ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΠΈΡΠ°ΡΡ ΡΠΆΠ΅ Π½Π° ΡΠ°ΠΌΠΎΠΌ php. FastAGI ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Asterisk, Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π·Π²ΠΎΠ½ΠΊΠ°, ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡΡΡ ΠΊ ΡΠΎΠΊΠ΅ΡΡ. ΠΠΎΠ»ΡΡΠ°ΡΡ ΠΎΡΡΡΠ΄Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π»ΠΎΠ³ΠΈΠΊΠ° Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½Π° Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ ΡΠΆΠ΅ Π·Π° Π³ΡΠ°Π½ΠΈΡΠ°ΠΌΠΈ Asterisk ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π°ΠΏΠΈΡΠ°Π½Π° Π½Π° Π»ΡΠ±ΠΎΠΌ ΡΠ·ΡΠΊΠ΅, Π² ΠΌΠΎΡΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π° php.
Π’ΡΡ Π±ΡΠ»ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ± ΠΈ ΠΎΡΠΈΠ±ΠΎΠΊ. ΠΠ»Π°Π²Π½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ ΡΠ²Π»ΡΠ»ΠΎΡΡ, ΡΡΠΎ Ρ ΠΌΠ΅Π½Ρ ΡΠΆΠ΅ Π±ΡΠ»ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠΎΠ²/ΡΠ°ΠΉΠ»ΠΎΠ². ΠΠ° ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈ Π²Π·Π°ΠΈΠΌΠ½ΡΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ Π½ΠΈΠΌΠΈ ΡΡ ΠΎΠ΄ΠΈΠ»ΠΎ ΠΎΠΊΠΎΠ»ΠΎ 1,5 ΡΠ΅ΠΊΡΠ½Π΄, ΠΈ ΡΡΠ° Π·Π°Π΄Π΅ΡΠΆΠΊΠ° Π½Π° ΠΊΠ°ΠΆΠ΄ΡΠΉ Π·Π²ΠΎΠ½ΠΎΠΊ Π½Π΅ ΡΠΎ, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ.
ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΠ»Π° Π±ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ 1 ΡΠ°Π· ΠΈ ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΠΎΠΈΡΠΊΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π½Π°ΡΠ°Π»ΠΈΡΡ Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠ΅ΡΠ²ΠΈΡΠ° Π½Π° php Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Pthreads. Π‘ΠΏΡΡΡΡ Π½Π΅Π΄Π΅Π»Ρ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΎΠ² ΡΡΠΎΡ Π²Π°ΡΠΈΠ°Π½Ρ Π±ΡΠ» ΠΎΡΠ»ΠΎΠΆΠ΅Π½ ΠΈΠ·-Π·Π° ΡΠΎΠ½ΠΊΠΎΡΡΠ΅ΠΉ ΡΠ°Π±ΠΎΡΡ ΡΡΠΎΠ³ΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ. ΠΡ Π°ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π° php ΠΏΠΎΡΠ»Π΅ ΠΌΠ΅ΡΡΡΠ° ΡΠ΅ΡΡΠΎΠ² ΡΠΎΠΆΠ΅ ΠΏΡΠΈΡΠ»ΠΎΡΡ ΠΎΡΠΊΠ°Π·Π°ΡΡΡΡ, Π½ΡΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΡΡΠΎ-ΡΠΎ ΠΏΡΠΎΡΡΠΎΠ΅, Π·Π½Π°ΠΊΠΎΠΌΠΎΠ΅ Π»ΡΠ±ΠΎΠΌΡ Π½ΠΎΠ²ΠΈΡΠΊΡ php, Π΄Π° ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ Π΄Π»Ρ php ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΡΠ΅.
Π Π΅ΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΡΠ°Π» ΡΠ²ΠΎΠΉ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½ΡΠΉ ΡΠ΅ΡΠ²ΠΈΡ Π½Π° βΡΠΈβ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π»ΡΡ Ρ PHPLIB. ΠΠ½ ΠΏΠΎΠ΄Π³ΡΡΠΆΠ°Π΅Ρ Π²ΡΠ΅ php ΡΠ°ΠΉΠ»Ρ ΠΠ’Π‘, ΠΆΠ΄ΡΡ, ΠΊΠΎΠ³Π΄Π° Π²ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΡΡΡΡ, Π΄ΠΎΠ±Π°Π²ΡΡ ΠΊΠΎΠ»Π»Π±ΡΠΊ Π΄ΡΡΠ³ ΠΊ Π΄ΡΡΠ³Ρ ΠΈ ΠΊΠΎΠ³Π΄Π° Π²ΡΡ Π³ΠΎΡΠΎΠ²ΠΎ β ΠΊΡΡΠΈΡΡΠ΅Ρ. ΠΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΏΠΎ FastAGI ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΏΠΎΡΠΎΠΊ, Π² Π½ΡΠΌ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ ΠΊΠΎΠΏΠΈΡ ΠΈΠ· ΠΊΡΡΠ° Π²ΡΠ΅Ρ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈ Π΄Π°Π½Π½ΡΡ ΠΈ Π·Π°ΠΏΡΠΎΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ Π² php ΡΡΠ½ΠΊΡΠΈΡ.
ΠΡΠΈ ΡΠ°ΠΊΠΎΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠΈ Π²ΡΠ΅ΠΌΡ ΠΎΡ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ Π·Π²ΠΎΠ½ΠΊΠ° Π² Π½Π°Ρ ΡΠ΅ΡΠ²ΠΈΡ Π΄ΠΎ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Asterisk ΡΠΎΠΊΡΠ°ΡΠΈΠ»ΠΎΡΡ Ρ 1,5Ρ Π΄ΠΎ 0,05Ρ ΠΈ ΡΡΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ»Π°Π±ΠΎ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ°.
Π ΠΈΡΠΎΠ³Π΅, Π²ΡΠ΅ΠΌΡ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½Π° ΡΠΎΠΊΡΠ°ΡΠΈΠ»ΠΎΡΡ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ, ΠΈ Ρ ΠΌΠΎΠ³Ρ ΡΡΠΎ ΠΎΡΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΌΠ½Π΅ ΠΏΡΠΈΡΠ»ΠΎΡΡ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠ°ΡΡ Π²Π΅cΡ Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½ Π²ΡΠ΅Ρ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π½Π° php. ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , Π² php ΡΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Π½Π°ΠΏΠΈΡΠ°Π½Ρ ΠΌΠ΅ΡΠΎΠ΄Ρ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΈΠ· Π±Π°Π·Ρ, ΠΎΠ½ΠΈ Π±ΡΠ»ΠΈ Π½ΡΠΆΠ½Ρ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π² Π²Π΅Π±-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅, Π° Π²ΠΎ-Π²ΡΠΎΡΡΡ , ΠΈ ΡΡΠΎ Π³Π»Π°Π²Π½ΠΎΠ΅ β Π½Π°ΠΊΠΎΠ½Π΅Ρ-ΡΠΎ ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ΄ΠΎΠ±Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ ΡΠΎ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ Ρ ΡΠΈΡΠ»Π°ΠΌΠΈ Ρ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ Ρ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½ΡΡ ΠΏΠ»ΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ php.
ΠΠ»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½Π° Π² ΠΊΠ»Π°ΡΡΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ Π½ΡΠΆΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ dialplanDynamicCall ΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ pbxCallRequest Π±ΡΠ΄Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ Π΄Π»Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ Asterisk.
Π Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΡΠ»Π°ΠΆΠΈΠ²Π°ΡΡ Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½ (Π² php Π΅ΡΡΡ xdebug ΠΈ Π΄Π»Ρ Π½Π°ΡΠ΅Π³ΠΎ ΡΠ΅ΡΠ²ΠΈΡΠ° ΠΎΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ), ΠΌΠΎΠΆΠ½ΠΎ Π΄Π²ΠΈΠ³Π°ΡΡΡΡ ΠΏΠΎ ΡΠ°Π³Π°ΠΌ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ .
ΠΠ°Π½Π½ΡΠ΅ ΠΏΠΎ Π·Π²ΠΎΠ½ΠΊΠ°ΠΌ
ΠΠ»Ρ Π»ΡΠ±ΠΎΠΉ Π°Π½Π°Π»ΠΈΡΠΈΠΊΠΈ ΠΈ ΠΎΡΡΡΡΠΎΠ² Π½ΡΠΆΠ½Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΠΎΠ±ΡΠ°Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈ ΡΡΠΎΡ Π±Π»ΠΎΠΊ ΠΠ’Π‘ ΡΠΎΠΆΠ΅ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΠ» ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ± ΠΈ ΠΎΡΠΈΠ±ΠΎΠΊ Ρ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΏΠΎ ΡΡΠ΅ΡΡΡ Π²Π΅ΡΡΠΈΡ. ΠΠ°ΡΠ°ΡΡΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎ Π·Π²ΠΎΠ½ΠΊΠ°ΠΌ β ΡΡΠΎ ΡΠ°Π±Π»ΠΈΡΠΊΠ°. ΠΠ΄ΠΈΠ½ Π·Π²ΠΎΠ½ΠΎΠΊ = ΠΎΠ΄Π½Π° Π·Π°ΠΏΠΈΡΡ: ΠΊΡΠΎ Π·Π²ΠΎΠ½ΠΈΠ», ΠΊΡΠΎ ΠΎΡΠ²Π΅ΡΠΈΠ», ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠ»ΠΈ. Π Π±ΠΎΠ»Π΅Π΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ Π²Π°ΡΠΈΠ°Π½ΡΠ°Ρ Π΅ΡΡΡ Π΅ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΡΠ°Π±Π»ΠΈΡΠΊΠ°, ΠΊΠΎΠ³ΠΎ ΠΈΠ· ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΎΠ² ΠΠ’Π‘ Π²ΡΠ·ΡΠ²Π°Π»Π° Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π·Π²ΠΎΠ½ΠΊΠ°. ΠΠΎ Π²ΡΡ ΡΡΠΎ Π·Π°ΠΊΡΡΠ²Π°Π΅Ρ Π»ΠΈΡΡ ΡΠ°ΡΡΡ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΠ΅ΠΉ.
ΠΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΡΠΌΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌΠΈ ΡΡΠ°Π»ΠΈ:
- ΡΠΎΡ ΡΠ°Π½ΡΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠΌΡ Π·Π²ΠΎΠ½ΠΈΠ»Π° ΠΠ’Π‘, Π½ΠΎ ΠΈ ΠΊΡΠΎ ΠΎΡΠ²Π΅ΡΠΈΠ», Ρ.ΠΊ. ΡΡΡΠ΅ΡΡΠ²ΡΡΡ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΡ ΠΈ ΠΏΡΠΈ Π°Π½Π°Π»ΠΈΠ·Π΅ Π·Π²ΠΎΠ½ΠΊΠΎΠ² ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΡΠΈΡΡΠ²Π°ΡΡ,
- Π²ΡΠ΅ΠΌΡ Π΄ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Ρ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΎΠΌ. ΠΠΎ FreePBX ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ Π΄ΡΡΠ³ΠΈΡ ΠΠ’Π‘, Π·Π²ΠΎΠ½ΠΎΠΊ ΡΡΠΈΡΠ°Π΅ΡΡΡ ΠΎΡΠ²Π΅ΡΠ΅Π½Π½ΡΠΌ, ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΠΠ’Π‘ ΠΏΠΎΠ΄Π½ΠΈΠΌΠ΅Ρ ΡΡΡΠ±ΠΊΡ. ΠΠΎ Π΄Π»Ρ Π³ΠΎΠ»ΠΎΡΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ΅Π½Ρ ΡΠΆΠ΅ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ΄Π½ΡΡΡ ΡΡΡΠ±ΠΊΡ, ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π²ΡΠ΅ Π·Π²ΠΎΠ½ΠΊΠΈ ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ ΠΎΡΠ²Π΅ΡΠ΅Π½Π½ΡΠΌΠΈ ΠΈ Π²ΡΠ΅ΠΌΡ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ ΠΎΡΠ²Π΅ΡΠ° ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ 0-1 ΡΠ΅ΠΊΡΠ½Π΄Ρ. ΠΠΎΡΡΠΎΠΌΡ ΡΠ΅ΡΠ΅Π½ΠΎ Π±ΡΠ»ΠΎ ΡΠΎΡ ΡΠ°Π½ΡΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π²ΡΠ΅ΠΌΡ Π΄ΠΎ ΠΎΡΠ²Π΅ΡΠ°, Π½ΠΎ Π²ΡΠ΅ΠΌΡ Π΄ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Ρ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌΠΈ ΠΌΠΎΠ΄ΡΠ»ΡΠΌΠΈ (ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠ°ΠΌ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ Ρ ΡΠ΅Π±Ρ ΡΡΠΎ ΡΠ»Π°Π³. Π‘Π΅ΠΉΡΠ°Ρ ΡΡΠΎ Β«Π‘ΠΎΡΡΡΠ΄Π½ΠΈΠΊΒ», Β«ΠΠ½Π΅ΡΠ½ΡΡ Π»ΠΈΠ½ΠΈΡΒ»),
- Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΠΎΠ³ΠΎ Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½Π°, ΠΊΠΎΠ³Π΄Π° Π·Π²ΠΎΠ½ΠΎΠΊ Π³ΡΠ»ΡΠ΅Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π½ΡΠΌΠΈ Π³ΡΡΠΏΠΏΠ°ΠΌΠΈ, Π½ΡΠΆΠ½Π° Π±ΡΠ»Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΠΏΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΡΡΠΈ.
ΠΡΡΡΠΈΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠΌ ΠΎΠΊΠ°Π·Π°Π»ΡΡ Π²Π°ΡΠΈΠ°Π½Ρ, ΠΊΠΎΠ³Π΄Π° ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΠ’Π‘ ΡΠ°ΠΌΠΈ ΠΎ ΡΠ΅Π±Π΅ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΏΠΎ Π·Π²ΠΎΠ½ΠΊΠ°ΠΌ ΠΈ Π² ΠΈΡΠΎΠ³Π΅ ΡΠΎΡ ΡΠ°Π½ΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² Π²ΠΈΠ΄Π΅ Π΄Π΅ΡΠ΅Π²Π°.
ΠΡΠ³Π»ΡΠ΄ΠΈΡ ΡΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΠΎΠ±ΡΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π·Π²ΠΎΠ½ΠΊΠ΅(ΠΊΠ°ΠΊ Ρ Π²ΡΠ΅Ρ β Π½ΠΈΡΠ΅Π³ΠΎ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΠ³ΠΎ).
- ΠΠΎΡΡΡΠΏΠΈΠ» Π·Π²ΠΎΠ½ΠΎΠΊ ΠΏΠΎ Π²Π½Π΅ΡΠ½Π΅ΠΉ Π»ΠΈΠ½ΠΈΠΈ Β«ΠΠ»Ρ ΡΠ΅ΡΡΠ°Β» Π² 05:55:52 Ρ Π½ΠΎΠΌΠ΅ΡΠ° 89295671458 Π½Π° Π½ΠΎΠΌΠ΅Ρ 89999999999, Π² ΠΈΡΠΎΠ³Π΅ Π½Π° Π½Π΅Π³ΠΎ ΠΎΡΠ²Π΅ΡΠΈΠ» ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊ Β«Π‘Π΅ΠΊΡΠ΅ΡΠ°ΡΡ2Β» Ρ Π½ΠΎΠΌΠ΅ΡΠΎΠΌ 104. ΠΠ»ΠΈΠ΅Π½Ρ ΠΏΡΠΎΠΆΠ΄Π°Π» 60 ΡΠ΅ΠΊΡΠ½Π΄ ΠΈ ΡΠ°Π·Π³ΠΎΠ²Π°ΡΠΈΠ²Π°Π» 36 ΡΠ΅ΠΊΡΠ½Π΄.
- Π‘ΠΎΡΡΡΠ΄Π½ΠΈΠΊ Β«Π‘Π΅ΠΊΡΠ΅ΡΠ°ΡΡ2Β» Π΄Π΅Π»Π°Π΅Ρ Π·Π²ΠΎΠ½ΠΎΠΊ Π½Π° Π½ΠΎΠΌΠ΅Ρ 112 ΠΈ Π½Π° Π½Π΅Π³ΠΎ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊ Β«ΠΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ1Β» ΡΠΏΡΡΡΡ 8 ΡΠ΅ΠΊΡΠ½Π΄. Π Π°Π·Π³ΠΎΠ²Π°ΡΠΈΠ²Π°ΡΡ 14 ΡΠ΅ΠΊΡΠ½Π΄.
- ΠΠ»ΠΈΠ΅Π½ΡΠ° ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΡΡ Π½Π° Π‘ΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ° Β«ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ1Β» Π³Π΄Π΅ ΠΎΠ½ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡ ΡΠ°Π·Π³ΠΎΠ²Π°ΡΠΈΠ²Π°ΡΡ Π΅ΡΡ 13 ΡΠ΅ΠΊΡΠ½Π΄
ΠΠΎ ΡΡΠΎ Π²Π΅ΡΡΠΈΠ½Π° Π°ΠΉΡΠ±Π΅ΡΠ³Π°, ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ΅ ΠΏΡΠΎΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Π·Π²ΠΎΠ½ΠΊΠ° ΠΏΠΎ ΠΠ’Π‘.
ΠΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π² Π²ΠΈΠ΄Π΅ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡΠΈ Π²ΡΠ·ΠΎΠ²ΠΎΠ²:
- ΠΠΎΡΡΡΠΏΠΈΠ» Π·Π²ΠΎΠ½ΠΎΠΊ ΠΏΠΎ Π²Π½Π΅ΡΠ½Π΅ΠΉ Π»ΠΈΠ½ΠΈΠΈ Β«ΠΠ»Ρ ΡΠ΅ΡΡΠ°Β» Π² 05:55:52 Ρ Π½ΠΎΠΌΠ΅ΡΠ° 89295671458 Π½Π° Π½ΠΎΠΌΠ΅Ρ 89999999999.
- Π 05:55:53 Π²Π½Π΅ΡΠ½ΡΡ Π»ΠΈΠ½ΠΈΡ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π·Π²ΠΎΠ½ΠΎΠΊ Π½Π° ΠΡ ΠΎΠ΄ΡΡΡΡ ΡΡ Π΅ΠΌΡ Β«testΒ»
- ΠΠΎ Π²ΡΠ΅ΠΌΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π·Π²ΠΎΠ½ΠΊΠ° ΠΏΠΎ ΡΡ Π΅ΠΌΠ΅ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ Β«Π²ΡΠ·ΠΎΠ² ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ°Β», Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π·Π²ΠΎΠ½ΠΎΠΊ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ 16 ΡΠ΅ΠΊΡΠ½Π΄. ΠΡΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠΉ ΠΏΠΎΠ΄ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΌΠΎΠ΄ΡΠ»Ρ.
- ΠΠΎΠ΄ΡΠ»Ρ Β«Π²ΡΠ·ΠΎΠ² ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ°Β» ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π·Π²ΠΎΠ½ΠΎΠΊ Π½Π° ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ Π·Π° Π½ΠΎΠΌΠ΅Ρ (ΠΊΠ»ΠΈΠ΅Π½ΡΠ°) ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ° Β«ΠΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ1Β» ΠΈ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ ΠΎΡΠ²Π΅ΡΠ° 5 ΡΠ΅ΠΊΡΠ½Π΄. ΠΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ Π½Π΅ ΠΎΡΠ²Π΅ΡΠΈΠ».
- ΠΠΎΠ΄ΡΠ»Ρ Β«Π²ΡΠ·ΠΎΠ² ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ°Β» ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π·Π²ΠΎΠ½ΠΎΠΊ Π½Π° Π³ΡΡΠΏΠΏΡ Β«ΠΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΡ ΠΠΠ ΠΒ». ΠΡΠΎ Π΄ΡΡΠ³ΠΈΠ΅ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΡ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΆΠ΅ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ (ΡΠΈΠ΄ΡΡ Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ½Π°ΡΠ΅) ΠΈ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ ΠΎΡΠ²Π΅ΡΠ° 11 ΡΠ΅ΠΊΡΠ½Π΄.
- ΠΡΡΠΏΠΏΠ° Β«ΠΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΡ ΠΠΠ ΠΒ» Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΎΠ² Β«ΠΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ1, ΠΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ2, ΠΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ3Β» ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎ 11 ΡΠ΅ΠΊΡΠ½Π΄. ΠΡΠ²Π΅ΡΠ° Π½Π΅Ρ.
- ΠΡΠ·ΠΎΠ² ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ° Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ. Π ΡΡ Π΅ΠΌΠ° Π·Π²ΠΎΠ½ΠΎΠΊ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π½Π° ΠΌΠΎΠ΄ΡΠ»Ρ Β«ΠΡΠ±ΠΎΡ ΠΌΠ°ΡΡΡΡΡΠ° ΠΈΠ· 1ΡΒ». Π’ΠΎΠΆΠ΅ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ ΠΏΠΎΠ΄ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΌΠΎΠ΄ΡΠ»Ρ. Π’ΡΡ Π·Π²ΠΎΠ½ΠΎΠΊ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π»ΡΡ 0 ΡΠ΅ΠΊΡΠ½Π΄.
- Π‘Ρ Π΅ΠΌΠ° ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π·Π²ΠΎΠ½ΠΎΠΊ Π½Π° Π³ΠΎΠ»ΠΎΡΠΎΠ²ΠΎΠ΅ ΠΌΠ΅Π½Ρ Β«ΠΡΠ½ Ρ Π΄ΠΎΠ½Π°Π±ΠΎΡΠΎΠΌΒ». ΠΠ»ΠΈΠ΅Π½Ρ Π² Π½ΡΠΌ ΠΏΡΠΎΠΆΠ΄Π°Π» 31 ΡΠ΅ΠΊΡΠ½Π΄Ρ, Π΄ΠΎΠ½Π°Π±ΠΎΡΠ° Π½Π΅ Π±ΡΠ»ΠΎ.
- Π‘Ρ Π΅ΠΌΠ° ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π·Π²ΠΎΠ½ΠΎΠΊ Π½Π° ΠΡΡΠΏΠΏΡ Β«Π‘Π΅ΠΊΡΠ΅ΡΠ°ΡΠΈΒ», Π³Π΄Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΏΡΠΎΠΆΠ΄Π°Π» 12 ΡΠ΅ΠΊΡΠ½Π΄.
- Π Π³ΡΡΠΏΠΏΠ΅ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ 2 ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ° Β«Π‘Π΅ΠΊΡΠ΅ΡΠ°ΡΡ1Β» ΠΈ Β«Π‘Π΅ΠΊΡΠ΅ΡΠ°ΡΡ2Β» ΠΈ ΡΠΏΡΡΡΡ 12 ΡΠ΅ΠΊΡΠ½Π΄ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊ Β«Π‘Π΅ΠΊΡΠ΅ΡΠ°ΡΡ2Β». ΠΡΠ²Π΅Ρ Π½Π° Π²ΡΠ·ΠΎΠ² Π΄ΡΠ±Π»ΠΈΡΡΠ΅ΡΡΡ Π² ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠ΅ Π²ΡΠ·ΠΎΠ²Ρ. ΠΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΠΈ Π² Π³ΡΡΠΏΠΏΠ΅ ΠΎΡΠ²Π΅ΡΠΈΠ» Β«Π‘Π΅ΠΊΡΠ΅ΡΠ°ΡΡ2Β», ΠΏΡΠΈ Π²ΡΠ·ΠΎΠ²Π΅ ΡΡ Π΅ΠΌΡ ΠΎΡΠ²Π΅ΡΠΈΠ» Β«Π‘Π΅ΠΊΡΠ΅ΡΠ°ΡΡ2Β» ΠΈ Π½Π° Π·Π²ΠΎΠ½ΠΎΠΊ ΠΏΠΎ Π²Π½Π΅ΡΠ½Π΅ΠΉ Π»ΠΈΠ½ΠΈΠΈ ΠΎΡΠ²Π΅ΡΠΈΠ» Β«Π‘Π΅ΠΊΡΠ΅ΡΠ°ΡΡ2Β».
ΠΠΌΠ΅Π½Π½ΠΎ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΈ ΠΈΡ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΠΏΡΠΎΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΎΡΡΡΡΡ. ΠΡΡΡΡ ΠΏΠΎ Π³ΠΎΠ»ΠΎΡΠΎΠ²ΠΎΠΌΡ ΠΌΠ΅Π½Ρ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²ΡΡΡΠ½ΠΈΡΡ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΠ½ΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΈΠ»ΠΈ ΠΌΠ΅ΡΠ°Π΅Ρ. ΠΠΎΡΡΡΠΎΠΈΡΡ ΠΎΡΡΡΡ ΠΎ ΠΏΡΠΎΠΏΡΡΠ΅Π½Π½ΡΡ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ°ΠΌΠΈ Π·Π²ΠΎΠ½ΠΊΠ°Ρ Ρ ΡΡΡΡΠΎΠΌ, ΡΡΠΎ Π·Π²ΠΎΠ½ΠΎΠΊ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΠΈΠ»ΠΈ ΠΈ Π·Π½Π°ΡΠΈΡ Π½Π΅ ΡΡΠΈΡΠ°Π΅ΡΡΡ ΠΏΡΠΎΠΏΡΡΠ΅Π½Π½ΡΠΌ, ΠΈ Ρ ΡΡΡΡΠΎΠΌ, ΡΡΠΎ ΡΡΠΎ Π±ΡΠ» Π³ΡΡΠΏΠΏΠΎΠ²ΠΎΠΉ Π·Π²ΠΎΠ½ΠΎΠΊ, ΠΈ ΠΊΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ Π΄ΡΡΠ³ΠΎΠΉ Π²Π·ΡΠ» ΡΠ°Π½ΡΡΠ΅, Π° Π·Π½Π°ΡΠΈΡ ΡΠΎΠΆΠ΅ Π·Π²ΠΎΠ½ΠΎΠΊ Π½Π΅ ΠΏΡΠΎΠΏΡΡΠ΅Π½Π½ΡΠΉ.
Π’Π°ΠΊΠΎΠ΅ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π²Π·ΡΡΡ ΠΊΠ°ΠΆΠ΄ΡΡ Π³ΡΡΠΏΠΏΡ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΠ½Π° ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, ΠΏΠΎΡΡΡΠΎΠΈΡΡ Π³ΡΠ°ΡΠΈΠΊ ΠΎΡΠ²Π΅ΡΠ΅Π½Π½ΡΡ ΠΈ ΠΏΡΠΎΠΏΡΡΠ΅Π½Π½ΡΡ Π³ΡΡΠΏΠΏΡ ΠΏΠΎ ΡΠ°ΡΠ°ΠΌ. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ³Π°Π΄ΡΠ²Π°Π΅Ρ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Ρ ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΡΠΌ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠΎΠΌ, Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΡ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Ρ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Ρ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠΎΠΌ.
Π ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π½Π΅ΡΠΈΠΏΠΈΡΠ½ΡΠ΅ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠ°ΠΊ ΡΠ°ΡΡΠΎ Π½ΠΎΠΌΠ΅ΡΠ°, ΠΊΠΎΡΠΎΡΡΡ Π½Π΅Ρ Π² Π±Π°Π·Π΅, Π½Π°Π±ΠΈΡΠ°ΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ Π΄ΠΎΠ±Π°Π²ΠΎΡΠ½ΡΠΉ ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΎΠΉ ΠΏΡΠΎΡΠ΅Π½Ρ ΠΈΡΡ ΠΎΠ΄ΡΡΠΈΡ Π·Π²ΠΎΠ½ΠΊΠΎΠ² ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π°Π΄ΡΠ΅ΡΠ°ΡΠΈΠ΅ΠΉ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΠΉ.
Π§ΡΠΎ Π² ΠΈΡΠΎΠ³Π΅?
ΠΠ»Ρ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΠ’Π‘ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡ, Ρ ΡΡΠΈΠΌ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΡΠ°ΠΌΡΠΉ ΠΎΠ±ΡΡΠ½ΡΠΉ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡ β ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½ΠΎ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅.
ΠΠ»Ρ Π΄ΠΎΡΠ°Π±ΠΎΡΠΎΠΊ Π½Π΅ Π½ΡΠΆΠ½Ρ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΡ Ρ ΡΠ΅ΡΡΡΠ·Π½ΠΎΠΉ ΠΊΠ²Π°Π»ΠΈΡΠΈΠΊΠ°ΡΠΈΠ΅ΠΉ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π·Π½Π°Π½ΠΈΠΉ php, Ρ.ΠΊ. ΡΠΆΠ΅ Π½Π°ΠΏΠΈΡΠ°Π½Ρ ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΈ Π΄Π»Ρ sip ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π°, ΠΈ Π΄Π»Ρ ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ, ΠΈ Π΄Π»Ρ Π²ΡΠ·ΠΎΠ²Π° ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ° ΠΈ Π΄ΡΡΠ³ΠΈΠ΅. ΠΡΡΡ ΠΊΠ»Π°ΡΡ ΠΎΠ±ΡΡΡΠΊΠ° Π΄Π»Ρ Asterisk. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΌΠΎΠΆΠ΅Ρ (ΠΈ ΠΏΠΎ-Ρ ΠΎΡΠΎΡΠ΅ΠΌΡ Π΄ΠΎΠ»ΠΆΠ΅Π½) Π²ΡΠ·ΡΠ²Π°ΡΡ ΡΠΆΠ΅ Π³ΠΎΡΠΎΠ²ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ. Π Π·Π½Π°Π½ΠΈΡ Asterisk ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ Π½Π΅ Π½ΡΠΆΠ½Ρ, Π΅ΡΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΏΡΠΎΡΠΈΡ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΡΡΠ°Π½ΠΈΡΡ Ρ ΠΊΠ°ΠΊΠΈΠΌ-Π½ΠΈΠ±ΡΠ΄Ρ Π½ΠΎΠ²ΡΠΌ ΠΎΡΡΡΡΠΎΠΌ. ΠΠΎ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ° ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΡΠΎ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ Ρ ΠΎΡΡ ΠΈ ΡΠΏΡΠ°Π²Π»ΡΡΡΡΡ, Π½ΠΎ Π±Π΅Π· Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠΊΡΡΡΠΈΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌΠΈ ΡΡΠ²ΡΡΠ²ΡΡΡ ΡΠ΅Π±Ρ Π½Π΅ΡΠ²Π΅ΡΠ΅Π½Π½ΠΎ, ΠΏΠΎΡΡΠΎΠΌΡ Π΅ΡΡ Π΅ΡΡΡ ΠΊΡΠ΄Π° Π΄Π²ΠΈΠ³Π°ΡΡΡΡ.
ΠΠΎΠ΄ΡΠ»ΠΈ ΠΌΠΎΠ³ΡΡ:
- ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ Π·Π²ΠΎΠ½ΠΊΠ°,
- Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π½ΠΎΠ²ΡΠ΅ Π±Π»ΠΎΠΊΠΈ Π² Π²Π΅Π±-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ,
- ΠΏΡΠΎΠ½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡΡΡ ΠΎΡ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΈΠ· ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ ΠΏΠΎΠ΄ΠΌΠ΅Π½ΠΈΡΡ Π΅Π³ΠΎ ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ Π±ΡΡΡ ΡΠ»Π΅Π³ΠΊΠ° ΠΈΠ·ΠΌΠ΅Π½ΡΠ½Π½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠ΅ΠΉ,
- Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΡΠ²ΠΎΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π² ΡΠ°Π±Π»ΠΎΠ½ Π½Π°ΡΡΡΠΎΠ΅ΠΊ Π΄ΡΡΠ³ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅.
ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ ΠΠ’Π‘ ΡΠ΅ΡΠ΅Π· API. ΠΠ°ΠΊ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π²ΡΡΠ΅, Π²ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Ρ ΡΠ°Π½ΡΡΡΡ Π² Π±Π°Π·Π΅ ΠΈ ΡΠΈΡΠ°ΡΡΡΡ Π² ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ·ΠΎΠ²Π°, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ΅ΡΠ΅Π· API ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠ΅Π½ΡΡΡ Π²ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΠ’Π‘. ΠΡΠΈ Π²ΡΠ·ΠΎΠ²Π΅ API Π½Π΅ ΠΏΠ΅ΡΠ΅ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΈ Π½Π΅ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ ΠΌΠΎΠ΄ΡΠ»ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, Π½Π΅ Π²Π°ΠΆΠ½ΠΎ Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Ρ Π²Π°Ρ Π½Π°ΡΡΡΠΎΠ΅ΠΊ ΠΈ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΎΠ². API Π·Π°ΠΏΡΠΎΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π±ΡΡΡΡΠΎ ΠΈ Π½Π΅ Π±Π»ΠΎΠΊΠΈΡΡΡΡ Π΄ΡΡΠ³ Π΄ΡΡΠ³Π°.
ΠΠ’Π‘ ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ Π²ΡΠ΅ ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠΎ Π·Π²ΠΎΠ½ΠΊΠ°ΠΌΠΈ Ρ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΠΌΠΈ (ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ/ΡΠ°Π·Π³ΠΎΠ²ΠΎΡΠ°), Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡΡΠΌΠΈ ΠΈ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Ρ ΠΠ’Π‘ (ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊ, Π³ΡΡΠΏΠΏΠ°, Π²Π½Π΅ΡΠ½ΡΡ Π»ΠΈΠ½ΠΈΡ, Π° Π½Π΅ ΠΊΠ°Π½Π°Π», Π½ΠΎΠΌΠ΅Ρ). ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΡΠΎΠΈΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΎΡΡΡΡΡ ΠΏΠΎΠ΄ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΠΈ Π±ΠΎΠ»ΡΡΠ°Ρ ΡΠ°ΡΡΡ ΡΠ°Π±ΠΎΡΡ β ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ΄ΠΎΠ±Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ.
Π§ΡΠΎ Π±ΡΠ΄Π΅Ρ Π΄Π°Π»ΡΡΠ΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ Π²ΡΠ΅ΠΌΡ. ΠΡΡΡ Π΅ΡΡ ΠΌΠ½ΠΎΠ³ΠΎ Π½ΡΠ°Π½ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠΎΠΈΡ ΠΏΠ΅ΡΠ΅Π΄Π΅Π»Π°ΡΡ, Π΅ΡΡΡ Π΅ΡΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½ΠΎΠ², Π½ΠΎ ΠΎΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ 3-Π΅ΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΏΡΠΎΡΡΠ» ΡΠΆΠ΅ Π³ΠΎΠ΄ ΠΈ ΡΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΈΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. ΠΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΌΠΈΠ½ΡΡ 3-ΠΉ Π²Π΅ΡΡΠΈΠΈ β ΡΡΠΎ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ, Π½ΠΎ Π·Π° ΡΠ΄ΠΎΠ±ΡΡΠ²ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΎΠ±ΡΡΠ½ΠΎ Π²ΡΠ΅Π³Π΄Π° ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ°ΠΊ ΠΈ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΠΏΠ»Π°ΡΠΈΡΡ.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com