asterisk ΡΠΊΡΠΈΠΏΡ Π½Π° ΡΠΎΠ±ΡΡΠΈΠ΅
Π‘ΠΈΡΡΠ΅ΠΌΠ° ΡΠΊΡΡΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΎΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΡ Π½Π° Π±Π°Π·Π΅ Asterisk
ΠΠΎΡΠ²ΠΈΠ»Π°ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Π·Π²ΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΡ Π½Π° ΡΠ»ΡΡΠ°ΠΉ ΡΡΠ΅Π·Π²ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΡΠ°ΡΠΈΠΉ. Π’.ΠΊ. Π½Π° Π·Π°ΠΊΡΠΏΠΊΡ ΠΈ ΠΌΠΎΠ½ΡΠ°ΠΆ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΈΡ Π΄Π΅Π½Π΅Π³ Π½ΠΈΠΊΡΠΎ Π½Π΅ Π΄Π°Π» β ΡΠ΅ΡΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ΄ ΡΡΠΎ Π΄Π΅Π»ΠΎ IP ΡΠ΅Π»Π΅ΡΠΎΠ½ΠΈΡ (Asterisk 13 Ρ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ°ΠΌΠΈ AudioCodes 420HD ΠΈ Grandstream GPX-1625).
Π‘ΡΡΡ ΡΠΊΡΡΡΠ΅Π½Π½ΡΡ ΠΎΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΠΉ ΠΏΡΠΎΡΡΠ° β ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΎΠ±ΡΡΠ΅Π½Π½ΡΠΉ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ ΠΏΠΎ ΡΠ°ΠΊΡΡ Π½Π°ΡΡΡΠΏΠ»Π΅Π½ΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΠΎΠ±ΡΡΠΈΠΉ (ΠΏΠΎΠΆΠ°Ρ, ΠΏΠΎΡΠΎΠΏ, ΠΏΡΠΈΠ΅Π·Π΄ ΠΊΡΡΡΠ΅ΡΠ° Ρ ΠΏΠΈΡΡΠ΅ΠΉ) Π½Π°Π±ΠΈΡΠ°Π΅Ρ Π½Π° VOIP-ΡΠ΅Π»Π΅ΡΠΎΠ½Π΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΠΊΠ»Π°Π²ΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ΅ΡΠ΅Π· Asterisk ΡΠΎΠ΅Π΄ΠΈΠ½ΡΠ΅ΡΡΡ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΌΠΈ Π½ΠΎΠΌΠ΅ΡΠ°ΠΌΠΈ, Π° Π°ΠΏΠΏΠ°ΡΠ°ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΠ΄Ρ Π²Π°ΡΡΠ²Π°ΡΡ Π²ΡΠ·ΠΎΠ² ΠΈ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π³ΡΠΎΠΌΠΊΡΡ ΡΠ²ΡΠ·Ρ (speaker).
Π’Π΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π²ΡΠ·ΠΎΠ²ΠΎΠ² Π΄Π΅Π»Π°Π΅ΡΡΡ ΠΏΡΠΎΡΡΠΎ β Π² Π½ΡΠΆΠ½ΠΎΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ extensions.conf Π·Π°Π²ΠΎΠ΄ΠΈΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΠΊΠ»Π°Π²ΠΈΡ ΠΈ Π½Π°ΠΏΡΠ°Π²Π»ΡΠ΅ΠΌ Π΅Π΅ Π½Π° Π½ΡΠΆΠ½ΡΠΉ Π½ΠΎΠΌΠ΅Ρ:
Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠΈ Π½Π°Π±ΠΎΡΠ΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ 999 Π·Π²ΠΎΠ½ΠΎΠΊ Π²ΡΠ·ΡΠ²Π°ΡΡΠ΅Π³ΠΎ Π°Π±ΠΎΠ½Π΅Π½ΡΠ° ΠΏΠΎΠΏΠ°Π΄Π΅Ρ Π½Π° Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΉ Π½ΠΎΠΌΠ΅Ρ 100. Π’Π΅ΠΏΠ΅ΡΡ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π½Π°ΡΡΠΈΡΡ Π΅Π³ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°ΡΡ ΡΡΡΠ±ΠΊΡ.
Π Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ VOIP-ΡΠ΅Π»Π΅ΡΠΎΠ½ΠΎΠ² ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Π° ΡΡΠ½ΠΊΡΠΈΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΎΡΠ²Π΅ΡΠ° (Auto Answer). ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΠΎΠ½Π° ΠΎΡΠΊΠ»ΡΡΠ΅Π½Π° ΠΈ Π½ΡΠΆΠ½ΠΎ Π²ΠΊΠ»ΡΡΠΈΡΡ Π΅Π΅ Π²ΡΡΡΠ½ΡΡ.
ΠΠ»Ρ AudioCodes 420HD ΡΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π· ΠΌΠ΅Π½Ρ Management β Manual Update β Configuration file. ΠΡΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ voip/auto_answer/enabled ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΅ΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 1.
ΠΠ»Ρ GrandStream GXP-1625 Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅: Accounts β Account X β Call Settings β Allow Auto Answer by Call-Info Β«YESΒ».
ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠ΅Π»Π΅ΡΠΎΠ½ Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π» ΡΡΠ½ΠΊΡΠΈΡ Auto Answer Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ SIP-Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π·Π²ΠΎΠ½ΠΊΠ° β Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΊ Π½Π΅ΠΌΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π΄Π°Π½Π½ΡΠΉ Π²ΡΠ·ΠΎΠ² ΠΏΠΎΠ΄Π»Π΅ΠΆΠΈΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΌΡ ΠΎΡΠ²Π΅ΡΡ. ΠΠ»Ρ AudioCodes ΡΡΠΎ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ:
ΠΠ»Ρ ΡΠ΅Π»Π΅ΡΠΎΠ½Π½ΡΡ Π°ΠΏΠΏΠ°ΡΠ°ΡΠΎΠ² ΡΠ°Π·Π½ΡΡ Π²Π΅Π½Π΄ΠΎΡΠΎΠ² Π½ΡΠΆΠ½ΠΎ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΡΠ°Π·Π½ΡΠ΅ SIP-Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ. ΠΠ°ΡΠΈΠ°Π½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠ½Π΅ ΡΠ΄Π°Π»ΠΎΡΡ Π½Π°Π³ΡΠ³Π»ΠΈΡΡ:
Asterisk ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π²Ρ ΠΎΠ΄ΡΡΠΈΡ Π·Π²ΠΎΠ½ΠΊΠ°Ρ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅ ΡΠ΅ΡΠ΅Π· Notifications
Π Π½Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ΅Π»Π΅ΡΠΎΠ½ 8800, Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΠΌΠΎΠ³Π»ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ Π·Π°ΠΊΠ°Π· Π±Π΅Π· Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ°ΠΉΡΡ. ΠΠ»Ρ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° Π²Ρ ΠΎΠ΄ΡΡΠΈΡ Π·Π²ΠΎΠ½ΠΊΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ call-ΡΠ΅Π½ΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ°.
ΠΠ»Ρ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΎΠ² ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΡΠ²Π΅ΡΠ° Π±ΡΠ»Π° Π²Π½Π΅Π΄ΡΠ΅Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΡ Π²Ρ ΠΎΠ΄ΡΡΠ΅Π³ΠΎ Π·Π²ΠΎΠ½ΠΊΠ° ΠΏΠΎ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΉ Π±Π°Π·Π΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ².
Π’Π°ΠΊ ΠΊΠ°ΠΊ cron Π·Π°Π΄Π°Π½ΠΈΡ Π±ΡΠ»ΠΈ Π±Ρ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΡΠ΅Π΄ΠΊΠΈΠΌΠΈ (ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ 1 ΡΠ°Π· Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ), ΡΠΎ Π·Π° ΠΎΡΠ½ΠΎΠ²Ρ Π±ΡΠ» Π²Π·ΡΡ Π΄Π΅ΠΌΠΎΠ½ Π½Π° php, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΊΠ°Π½ΠΈΡΡΠ΅Ρ ΠΊΠ°Π½Π°Π»Ρ ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π·Π²ΠΎΠ½ΠΊΠ΅ Π²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅. ΠΠ»Ρ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° Π±ΡΠ» ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ memcached.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠ°Ρ Π²Π΅ΡΡΠΈΡ Asteriskβa β 11.15.1.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ API ΡΠ²ΡΠ·ΠΊΠΈ php ΠΈ Asteriskaβa β ΠΌΠΎΠ΄ΡΠ»Ρ PAMI.
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π΄Π²Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ Π²Π°ΡΠΈΠ°Π½ΡΠ° ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΡ: ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠΎΠ±ΡΡΠΈΠΉ ΠΊΠ°Π½Π°Π»ΠΎΠ² ΠΈ ΡΡΡΠ½ΠΎΠΉ ΡΠ°Π·Π±ΠΎΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π² CoreShowChannel, ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π²ΡΠ΅ ΠΏΠΎ ΠΏΠΎΡΡΠ΄ΠΊΡ.
ΠΡΠΎΡΠ»ΡΡΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠΎΠ±ΡΡΠΈΠΉ
Π ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ Π΄Π΅ΠΌΠΎΠ½Π° Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠ»ΡΡΠ°ΡΠ΅Π»Ρ ΡΠΎΠ±ΡΡΠΈΠΉ AsteriskEventListener:
Π ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ ΡΠ°ΠΌ ΠΊΠ»Π°ΡΡ ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°Π½ΠΈΡ ΠΈ ΡΠ°Π±ΠΎΡΡ Ρ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΠΌ:
Π Π΄Π°Π½Π½ΠΎΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΊΠ°Π½Π°Π»ΠΎΠ². ΠΠ΅Π»ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π·Π²ΠΎΠ½ΠΊΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ°ΠΌΠΈ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Ρ call-ΡΠ΅Π½ΡΡΠ° Π½Π° ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ° ΠΎΠ±Π° ΠΊΠ°Π½Π°Π»Π° Π±ΡΠ΄ΡΡ ΡΠΎΠ·Π΄Π°Π½Ρ Π² ΡΠ²ΡΠ·ΠΊΠ΅ Ρ ΡΠ΅ΠΌ, ΠΊΡΠΎ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»ΡΠ», ΠΈ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠΈΡΡΡΡΠ΅ΠΉ ΡΠ²ΡΠ·ΠΊΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π½Π΅ Π±ΡΠ΄Π΅Ρ.
Π ΡΡΠ½ΠΎΠΉ ΡΠ°Π·Π±ΠΎΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ CoreShowChannel
ΠΠ»Ρ ΡΠ°Π±ΠΎΡΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΏΠΎΡΠΎΠ±Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ Π΄Π΅ΠΌΠΎΠ½, Π²ΡΠ·ΡΠ²Π°Π΅ΠΌ ΡΠΎΠ±ΡΡΠΈΠ΅ CoreShowChannel ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΠ°ΠΌ Asterisk Π΅Π³ΠΎ Π½Π΅ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ:
Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠΏΠΎΡΠΎΠ±Π΅ Π΅ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π½ΠΎΠΌΠ΅ΡΠ° ΡΠ΅Π»Π΅ΡΠΎΠ½Π° ΠΏΡΠΈ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΎΡ ΠΊΠ°Π½Π°Π»Π°. ΠΠ»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΠ±ΡΡΠΈΠ΅ ΡΠ°Π·ΡΡΠ²Π° ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ:
Π ΠΈΡΠΎΠ³Π΅ ΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ, ΡΡΠΎ Π²ΡΠΎΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΠ²Π»ΡΠ΅ΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΌ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΡΠΎΠ±ΡΡΠΈΡΠΌΠΈ asterisk ΡΠ°ΡΡΠΎ ΠΏΠ°Π΄Π°Π», ΠΈ, Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅, ΡΠ΅ΡΡΠ»ΠΈΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π·Π²ΠΎΠ½ΠΊΠΈ. Π’Π°ΠΊ ΠΆΠ΅ Π² ΠΏΠ΅ΡΠ²ΠΎΠΌ ΡΠΏΠΎΡΠΎΠ±Π΅ Π½Π΅ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π»ΠΈΡΡ Π·Π²ΠΎΠ½ΠΊΠΈ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ Ρ call-ΡΠ΅Π½ΡΡΠ°, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π½ΠΎΠΌΠ΅Ρ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ° ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π±ΡΠ»ΠΈ Π² ΡΠ°Π·Π½ΡΡ ΠΊΠ°Π½Π°Π»Π°Ρ (ΠΠ΅ΡΠ²ΡΠΉ ΠΊΠ°Π½Π°Π» ΡΠ²ΡΠ·ΡΠ²Π°Π΅Ρ call-ΡΠ΅Π½ΡΡ ΠΈ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ°, Π²ΡΠΎΡΠΎΠΉ ΠΊΠ°Π½Π°Π» ΡΠ²ΡΠ·ΡΠ²Π°Π΅Ρ call-ΡΠ΅Π½ΡΡ ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°).
ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π·Π²ΠΎΠ½ΠΊΠ΅ ΡΠ΅ΡΠ΅Π· Notifications
ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ Π²Ρ ΠΎΠ΄ΡΡΠΈΡ Π·Π²ΠΎΠ½ΠΊΠ°Ρ Π±ΡΠ» ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ ΠΏΠ»Π°Π³ΠΈΠ½ event-source-polyfill ΠΈ long-pull Π·Π°ΠΏΡΠΎΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ. ΠΠ°ΠΏΠΎΠΌΠ½Ρ ΠΌΡ Ρ ΡΠ°Π½ΠΈΠΌ Π²Ρ ΠΎΠ΄ΡΡΠΈΠ΅ Π·Π²ΠΎΠ½ΠΊΠΈ Π² memcached.
ΠΡΠ°ΠΊΡΠΈΠΊΠ° ΠΏΠΎΠΊΠ°Π·Π°Π»Π°, ΡΡΠΎ Π΅ΡΠ»ΠΈ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊ ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ ΠΌΠ½ΠΎΠ³ΠΎ Π²ΠΊΠ»Π°Π΄ΠΎΠΊ ΡΠΎ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΡΡΡ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π·Π°ΠΏΡΠΎΡΠΎΠ². ΠΠ»Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ Π±ΡΠ» ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ ΠΏΠ»Π°Π³ΠΈΠ½ wormhole, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΊΠ°Π½Π°Π»Π΅ ΠΌΠ΅ΠΆΠ΄Ρ Π²ΠΊΠ»Π°Π΄ΠΊΠ°ΠΌΠΈ.
Π Π°ΡΡΠΈΡΡΠ΅ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Asterisk, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ PHP
ΠΡΠ΅ ΡΠ»ΡΡΠ°Π»ΠΈ ΠΏΡΠΎ ΠΌΠΈΠ½ΠΈ-ΠΠ’Π‘ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠΊΠΎΠ»Π΅Π½ΠΈΡ ΠΈΠΌΡ ΠΊΠΎΡΠΎΡΠΎΠΉ Asterisk. Π’Π°ΠΊ ΡΠΆ ΡΠ»ΡΡΠΈΠ»ΠΎΡΡ ΡΡΠΎ Ρ Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π»ΡΡ ΡΡΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΠΈ Π΄Π°ΠΆΠ΅ ΡΡΠΏΠ΅Π» ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΠ°ΡΡ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ².
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ Ρ ΠΎΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°ΡΠΊΠ°Π·Π°ΡΡ ΠΎΠ± ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Π·Π²Π΅Π·Π΄ΠΎΡΠΊΠΈ Ρ ΡΠ·ΡΠΊΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ php. ΠΡΠΈ ΡΡΠΎΠΌ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ»Π°ΡΡ phpagi.
ΠΠΎΠ΄ ΠΊΠ°ΡΠΎΠΌ Ρ ΠΏΡΠΈΠ²Π΅Π΄Ρ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΡΡΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³Π»ΠΈ ΠΌΠ½Π΅.
ΠΠ΅ΡΠ²ΡΠΌ Π΄Π΅Π»ΠΎΠΌ ΠΊΠ°ΡΠ°Π΅ΠΌ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ phpagi ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΠΌ Π΅Π³ΠΎ Π² Π½Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡ, Π° ΡΠ°ΠΊ ΠΆΠ΅ ΠΏΡΠ°Π²ΠΈΠΌ ΡΠ°ΠΉΠ» /etc/asterisk/manager.conf
Π Π°ΡΡ
ΠΈΠ²Π΅ Ρ phpagi Π΅ΡΡΡ ΡΠ°ΠΉΠ» phpagi.conf, Π΅Π³ΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ Π² /etc/asterisk ΠΈ Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ.
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΌΠ΅Π»ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡΡ ΠΊ AMI ΠΈΠ· php ΡΠΊΡΠΈΠΏΡΠ°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ°ΠΊ:
ΠΠ΅ΡΠ²ΡΠΌ Π΄Π΅Π»ΠΎΠΌ Ρ Ρ
ΠΎΡΠ΅Π» Π±Ρ ΡΠ°ΡΠΊΠ°Π·Π°ΡΡ ΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΠΏΡΠΎΡΡΠ΅ΠΉΡΠ΅Π³ΠΎ ΠΌΠΎΠ½ΠΈΡΠΎΡΠ° ΡΠΎΠ±ΡΡΠΈΠΉ asterisk Π½Π° php.
ΠΠ°ΠΊ ΠΌΠ½Π΅ ΠΊΠ°ΠΆΠ΅ΡΡΡ ΡΡΠΎ ΡΠ°ΠΌΠ°Ρ ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ ΠΊΠ»Π°ΡΡΠ° phpagi.
ΠΠΎΡ ΡΠ°ΠΊΠΎΠΉ Ρ ΠΌΠ΅Π½Ρ Π²ΡΡΠ΅Π» ΠΌΠΎΠ½ΠΈΡΠΎΡ ΡΠΎΠ±ΡΡΠΈΠΉ:
ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΡΠΎΡ Ρ
Π΅Π½Π΄Π»Π΅Ρ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΊΠ°ΠΊΠΈΠ΅ Π½ΠΈΠ±ΡΠ΄Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠ²Π΅Π½ΡΠ°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ Π±Π°Π»Π°Π½Ρ Π½Π° sim-ΠΊΠ°ΡΡΠ΅ Π²ΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΉ Π² ΠΌΠΎΠ΄Π΅ΠΌ huawei ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Π½ΠΎΠΉ ΡΠ΅ΡΠ΅Π· chan_dongle.
ΠΡΠΈΠ²Π΅Π΄Ρ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ²ΠΎΠ΅ΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΌΠ΅ΡΠΎΠ΄ Command:
ΠΠ΅ΡΠ²ΡΠΉ ΡΠΊΡΠΈΠΏΡ Π»ΠΎΠ²ΠΈΡ ΡΠΎΠ±ΡΡΠΈΠ΅ newussd
ΠΡΠΎΡ ΡΠΊΡΠΈΠΏΡ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΠΎΠ±ΡΡΠΈΠ΅ donglenewussd Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π½Π°ΠΌ ΠΏΡΠΈΡ
ΠΎΠ΄ΠΈΡ ΠΎΡΠ²Π΅Ρ ΠΎΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΡ Π·Π°Π½ΠΎΡΠΈΠΌ Π² Π±Π°Π·Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ Π±Π°Π»Π°Π½ΡΠ°.
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΊΡΠΈΠΏΡ Π±ΡΠ΄Π΅Ρ ΠΏΠΎ ΠΊΡΠΎΠ½Ρ ΡΠΊΠ°ΠΆΠ΅ΠΌ ΡΠ°Π· Π² ΡΠ°Ρ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ussd Π·Π°ΠΏΡΠΎΡ Π½Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΡ Π±Π°Π»Π°Π½ΡΠ°.
ΠΠ°ΠΊ Π²Ρ ΠΌΠΎΠ³Π»ΠΈ Π·Π°ΠΌΠ΅ΡΠΈΡΡ Ρ ΠΈΡΠΏΠΎΡΠ·ΡΡ yii framework Π΄Π»Ρ ΡΠ²ΠΎΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², Ρ ΠΌΠ΅Π½Ρ Π΅ΡΡΡ ΠΌΠΎΠ΄Π΅Π»Ρ Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Ρ ΡΠ°Π½ΡΡΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΌΠΎΠ΄Π΅ΠΌΠ° (ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ ΠΈΠΌΡ, ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ, Π±Π°Π»Π°Π½Ρ, ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΈ Ρ.Π΄.)
ΠΠ°Π½Π½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ Π£ΠΊΡΠ°ΠΈΠ½ΡΠΊΠΈΠΌΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ°ΠΌΠΈ (ΠΠ’Π‘, ΠΠΈΠ΅Π²ΡΡΠ°Ρ ΠΈ Life)
Π Π½Π° Π΄Π΅ΡΠ΅ΡΡ Ρ Ρ ΠΎΡΡ ΠΠ°ΠΌ ΡΠ°ΡΠΊΠ°Π·Π°ΡΡ ΠΏΡΠΎ ΠΌΠ΅ΡΠΎΠ΄ Originate. ΠΡ Π΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ call ΡΠ°ΠΉΠ»Ρ? ΡΠΎΠ³Π΄Π° ΠΌΡ ΠΈΠ΄Π΅ΠΌ ΠΊ ΠΠ°ΠΌ.
ΠΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΠ½ΠΈΡΠΈΠΈΡΡΠ΅Ρ Π·Π²ΠΎΠ½ΠΎΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ AMI, Π° Π½Π΅ ΡΡΠ°ΡΡΠΉ Π΄Π΅Π΄ΠΎΠ²ΡΠΊΠΈΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΏΡΡΠ΅ΠΌ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ call ΡΠ°ΠΉΠ»Π° Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ /var/spool/asterisk/outgoing
ΠΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΡΠ΅ Π² ΡΡΠ½ΠΊΡΠΈΡ ΠΏΠΎΡΡΠΈ ΡΠ°ΠΊΠΈΠ΅ ΠΆΠ΅ ΠΊΠ°ΠΊ ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ call ΡΠ°ΠΉΠ»Π°:
ΠΡ Π° ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ Ρ ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ Ρ Π΄ΡΠΌΠ°Ρ ΠΡ ΠΏΡΠΈΠ΄ΡΠΌΠ°Π΅ΡΠ΅ ΡΠ°ΠΌΠΈ, Π° Π΅ΡΠ»ΠΈ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΡΡ Π΅Π΅ Ρ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠΎΠΌ ΡΠΎΠ±ΡΡΠΈΠΉ ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΅ΡΠ΅ ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΎΡΡΠ΅Ρ ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΈΡΡ ΠΎΠ΄ΡΡΠ΅Π³ΠΎ Π·Π²ΠΎΠ½ΠΊΠ°.
ΠΠ°Π΄Π΅ΡΡΡ ΠΌΠΎΡ ΡΡΠ°ΡΡΡ ΠΎΠΊΠ°ΠΆΠ΅ΡΡΡ ΠΊΠΎΠΌΡ Π½ΠΈΠ±ΡΠ΄Ρ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Ρ Π½Π΅ Π½Π°ΡΠ΅Π» ΡΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ phpagi Π½Π° Ρ Π°Π±ΡΠ΅, Π΄Π° ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅ Ρ ΡΡΡΠ΄ΠΎΠΌ Π½Π°ΡΠ΅Π» Ρ ΠΎΡΡ ΠΊΠ°ΠΊΠΈΠ΅ Π½ΠΈΠ±ΡΠ΄Ρ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΡΠΎΠΌΠ΅ ΡΠ΅Ρ ΡΡΠΎ ΠΈΠ΄ΡΡ Π² Π°ΡΡ ΠΈΠ²Π΅ Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ.
ΠΡΠ»ΠΈ Ρ ΠΊΠΎΠ³ΠΎ ΡΠΎ Π΅ΡΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΡΡΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ ΠΎΡΠ΅Π½Ρ Π±ΡΠ΄Ρ ΡΠ°Π΄ ΠΏΠΎΡΠΈΡΠ°ΡΡ ΠΎ Π½ΠΈΡ Π² ΠΊΠΎΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ .
Asterisk. ΠΠ°ΠΏΡΡΠΊ ΡΠΊΡΠΈΠΏΡΠ° ΠΏΡΠΈ ΠΏΠΎΠ΄ΡΠ΅ΠΌΠ΅ ΡΡΡΠ±ΠΊΠΈ
ΠΡΡΡ asterisk 1.8.11.0
ΠΠ°ΡΡΡΠΎΠ΅Π½Π° ΠΎΡΠ΅ΡΠ΅Π΄Ρ.
ΠΠ΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ, ΡΡΠΎ Π±Ρ ΠΈΡΠΏΠΎΠ»Π½ΡΠ»ΡΡ ΡΠΊΡΠΈΠΏΡ Π² ΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ, ΠΊΠΎΠ³Π΄Π° ΡΡΡΠ±ΠΊΡ ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°Π΅Ρ ΠΊΡΠΎ-Π»ΠΈΠ±ΠΎ ΠΈΠ· ΡΡΠΎΠΉ ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ. ΠΠ»ΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ° ΡΠΊΡΠΈΠΏΡΡ Π² ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ΅ Π½ΠΎΠΌΠ΅ΡΠ° Π·Π²ΠΎΠ½ΠΈΠ²ΡΠ΅Π³ΠΎ, ΡΡΠΎΠ± ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π²Π·ΡΡΡ ΠΈΠ· @ARGV.
ΠΠΎΠ΄ΡΠΊΠ°ΠΆΠΈΡΠ΅ Ρ ΠΎΡΡ Π±Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΏΠΎ ΡΡΠΎΠΉ ΡΠ΅ΠΌΠ΅ ΠΈΠ»ΠΈ ΡΡ Π΅ΠΌΡ, ΠΊΠ°ΠΊ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ.
Π§ΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅ ΡΠ°ΠΊΠΎΠ³ΠΎ?
ΠΠΎΠ΄ΡΠΊΠ°ΠΆΠΈΡΠ΅ Ρ ΠΎΡΡ Π±Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΏΠΎ ΡΡΠΎΠΉ ΡΠ΅ΠΌΠ΅ ΠΈΠ»ΠΈ ΡΡ Π΅ΠΌΡ, ΠΊΠ°ΠΊ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ.
Chaser_Andrey
Π’Π΅Π±Π΅ Π½ΡΠΆΠ½ΠΎ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ event Bridge.
ΠΠ΅ ΠΌΠΎΠ³ Π±Ρ ΠΏΠΎ-ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΏΠΎΠ΄ΡΠΊΠ°Π·Π°ΡΡ? ΠΠ°Π±ΡΠΎΡΠ°Π» ΡΠΊΡΠΈΠΏΡΠΈΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΌΠΎΡΡΠΈΡ Π·Π° ΡΠΎΠ±ΡΡΠΈΡΠΌΠΈ, Π²ΡΠ΅(ΠΊΠ°ΠΊ ΠΌΠ½Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ) Π΅ΡΡΡ Π² event Hangup, Π½ΠΎ ΡΠ°ΠΌ ΠΌΠ½ΠΎΠ³ΠΎ Π»ΠΈΡΠ½Π΅Π³ΠΎ. ΠΠ»ΠΈ Ρ ΡΡΠΎ-ΡΠΎ Π½Π΅ ΡΠ°ΠΊ ΠΏΠΎΠ½ΡΠ»?
ΠΠ°ΠΊ ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ Π² Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½Π΅ β Ρ Ρ Π·, Ρ Π½Π΅ Π·Π°Π½ΠΈΠΌΠ°Π»ΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΎΠΉ Asterisk, Π° Π»ΠΈΡΡ ΡΠ°Π±ΠΎΡΠ°Π» Ρ Π½ΠΈΠΌ ΡΠ΅ΡΠ΅Π· AMI.
Π₯ΠΎΡΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ²Π΅Π½ΡΡ/Ρ ΡΠΊΠΈ, ΠΏΡΠΎ ΠΊΠΎΡΠΎΡΡΠ΅ Ρ Π½Π΅ Π·Π½Π°Ρ.
ΠΡΠΈ ΠΏΠΎΠ΄Π½ΡΡΠΈΠΈ ΡΡΡΠ±ΠΊΠΈ Π°Π³Π΅Π½ΡΠΎΠΌ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ event AgentConnect.
Π Π΅ΡΠ΅ ΡΡΠΎΠΈΡ ΠΏΠΎΠ΄ΡΠΌΠ°ΡΡ, Π° ΠΎΠ½ΠΎ Π½Π°Π΄ΠΎ ΡΠ΅ΡΠ΅Π· AMI Π΄Π΅Π»Π°ΡΡ, Π΅ΡΠ»ΠΈ ΡΠΊΡΠΈΠΏΡ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅ΡΠ³Π°ΡΡ ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½Π°.
ΠΠ° Ρ ΡΠΎΠΆΠ΅ Π½Π΅ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π» ΠΡΡΠ΅ΡΠΈΡΠΊ.
Π― ΠΏΡΠΎΡΡΠΎ Π½Π΅ ΠΌΠΎΠ³Ρ ΠΏΠΎΠ½ΡΡΡ ΠΊΠ°ΠΊ Π΅Π³ΠΎ Π»ΠΎΠ²ΠΈΡΡ ΡΡΠΎΡ event Bridge
ΠΎΡΠΊΡΠΎΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΈ Asterisk Test Suite http://svn.asterisk.org/svn/testsuite/asterisk/trunk ΠΈ ΠΏΠΎΠ»ΡΡΠΈ Π³ΠΎΡΠΎΠ²ΡΠΉ ΠΊΠΎΠ΄ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ Π±Π΅Π· ΡΠΌΡ
ΡΠΊΡΠΈΠΏΡ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅ΡΠ³Π°ΡΡ ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½Π°
Π΅ΡΠ»ΠΈ Ρ Π½Π΅Π³ΠΎ Π² Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½Π΅ Dial() ΡΠΎ Π΄Π΅ΡΠ½ΡΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ²ΠΎΠΉ Π±ΠΎΠ»Ρ. Dial() ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΡΠΉ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ»ΠΊΠ° ΡΡΡΠ±ΠΊΠΈ Π½Π΅ ΠΏΠΎΠ»ΠΎΠΆΠ°Ρ.
Subnets.ru blog
Π‘Π΅ΡΠΈ, Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΈΡ, ΡΠ΅ΡΠ΅Π²ΡΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ.
Asterisk: Π°Π²ΡΠΎΠΎΠ±Π·Π²ΠΎΠ½ (auto-dial out) ΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΉ Π·Π²ΠΎΠ½ΠΎΠΊ (callback) Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ AGI
ΠΠ²ΡΠΎΠΎΠ±Π·Π²ΠΎΠ½
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π²Ρ ΡΠΈΡ.Π°Π΄ΠΌΠΈΠ½, Ρ Π²Π°Ρ Π΅ΡΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½Π°Ρ ΡΠ΅ΡΡ ΠΈ ΠΊΡΡΠ° ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΈΡ Π² Π½Π΅ΠΉ, Π½ΠΎ Π²Ρ ΠΆΠ΅ Π½Π΅ 24/7 Π½Π° ΡΠ°Π±ΠΎΡΠ΅, Π° ΡΠ°Π· ΡΠ°ΠΊ, ΡΠΎ Π² ΡΠ΅ΡΠΈ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠΎ ΡΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΡΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΠΎΠ±ΡΡΠΈΠ΅ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π°, Π° Π²Π°Ρ Π½Π΅Ρ Π½Π° ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΠΌΠ΅ΡΡΠ΅. ΠΠΎΠ½Π΅ΡΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠ΅Π±Π΅ SMS, Π΅ΡΠ»ΠΈ ΡΠ°ΠΊΠ°Ρ Π²ΠΎΠΆΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π΅ΡΡΡ, Π° ΠΈΠΌΠ΅Ρ ΡΠ΅ΡΠ²Π΅Ρ Asterisk ΠΌΠΎΠΆΠ½ΠΎ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ½ΠΈΡΡ ΠΈ ΡΠ°ΠΌΠΎΠΌΡ ΡΠ΅Π±Π΅ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ ΡΡΠΎ ΠΆΠ΅ ΡΠ»ΡΡΠΈΠ»ΠΎΡΡ 😉
ΠΠ»ΠΈ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ° ΡΠΈΡΡΠ΅ΠΌΠ° callback, ΡΡΠΎ Π±Ρ ΠΏΠΎΠ·Π²ΠΎΠ½ΠΈΠ² Π½Π° Π½ΠΎΠΌΠ΅Ρ Π·Π°Π²Π΅Π΄Π΅Π½Π½ΡΠΉ Π½Π° Asterisk, Π²Ρ ΠΌΠΎΠ³Π»ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ Ρ Π½Π΅Π³ΠΎ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΉ Π·Π²ΠΎΠ½ΠΎΠΊ ΠΈ Π½Π°Π±ΡΠ°ΡΡ Π΄ΡΡΠ³ΠΎΠΉ Π½ΠΎΠΌΠ΅Ρ.
ΠΡΠ°ΠΊ, ΡΡΠΈΡΠ°Π΅ΠΌ ΡΡΠΎ Ρ Π²Π°Ρ Ρ ΡΠΆΠ΅ Π΅ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΉ ΠΈ Π½Π°ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ Asterisk, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΠΌΠ΅Π΅Ρ Π²ΡΡ ΠΎΠ΄ Π² Π³ΠΎΡΠΎΠ΄.
Π§ΡΠΎ Π±Ρ ΡΠΎΠ²Π΅ΡΡΠΈΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π·Π²ΠΎΠ½ΠΎΠΊ Π½Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π²Π΅ΡΠΈ:
ΠΠ°ΡΠ½Π΅ΠΌ Ρ call ΡΠ°ΠΉΠ»Π°, Π΅Π³ΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
β Π‘ ΠΊΠ°ΠΊΠΎΠ³ΠΎ ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ° Π½Π°ΡΠΈΠ½Π°Π΅ΠΌ.
Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ Π·Π½Π°Ρ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΌΡ ΡΠ΅ΠΏΠ΅ΡΡ ΡΠΌΠΎΠΆΠ΅ΠΌ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°ΡΡ call ΡΠ°ΠΉΠ», Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π·Π²ΠΎΠ½ΠΊΠ° ΡΠ΅ΡΠ΅Π· SIP ΠΊΠ°Π½Π°Π»:
ΠΠ»Ρ ΡΠ΅Ρ ΠΊΡΠΎ Π² ΡΠ°Π½ΠΊΠ΅ 🙂 ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌ call ΡΠ°ΠΉΠ» ΠΏΠΎΡΡΡΠΎΡΠ½ΠΎ:
Π‘ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π² call ΡΠ°ΠΉΠ», Π΅Π³ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΡ Π² ΠΏΠ°ΠΏΠΊΡ: /var/spool/asterisk/outgoing/ ΡΠ΅ΡΠ²Π΅Ρ Asterisk ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ² Π² ΡΡΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ ΡΠ°ΠΉΠ» ΡΡΠ°Π·Ρ ΠΆΠ΅ ΠΏΠΎΠΏΡΡΠ°Π΅ΡΡΡ ΠΎΡΡΠ°Π±ΠΎΡΠ°ΡΡ Π΅Π³ΠΎ.
Π‘ΡΠ°Π·Ρ ΡΠΊΠ°ΠΆΡ, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈ Π·Π°Π΄Π΅ΡΠΆΠ°ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΡΠ°ΠΉΠ»Π°, Ρ.Π΅. Π·Π°Π΄Π΅ΡΠΆΠ°ΡΡ ΠΈΡΡ . Π·Π²ΠΎΠ½ΠΎΠΊ ΠΈ ΠΎΡΠ»ΠΎΠΆΠΈΡΡ Π΅Π³ΠΎ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π²Π°ΠΌΠΈ Π²ΡΠ΅ΠΌΡ.
Π‘Π΅ΡΠ²Π΅Ρ Asterisk ΡΠΌΠΎΡΡΠΈΡ Π½Π° Π΄Π°ΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ call ΡΠ°ΠΉΠ»Π° ΠΈ Π΅ΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π΄Π°ΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½Π° Π΄Π°ΡΡ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ, ΡΠΎ Asterisk Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΎΡΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ call ΡΠ°ΠΉΠ», ΠΏΠΎΠΊΠ° Π½Π΅ Π½Π°ΡΡΡΠΏΠΈΡ ΡΡΠ° ΡΠ°ΠΌΠ°Ρ Π΄Π°ΡΠ°.
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π»ΠΈ ΡΠ°ΠΌ call ΡΠ°ΠΉΠ» Π±Π΅ΡΠ΅ΠΌ ΠΈ ΠΌΠ΅Π½ΡΠ΅ΠΌ Π΄Π°ΡΡ Π΅Π³ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ, ΡΠ°Π±Π»ΠΎΠ½ Π΄Π°ΡΡ ΡΠ°ΠΊΠΎΠΉ:
ΠΠΠ ΠΠΠ‘Π―Π¦ ΠΠΠΠ¬ Π§ΠΠ‘Π« ΠΠΠΠ£Π’Π« . Π‘ΠΠΠ£ΠΠΠ« ( Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΏΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΊΡΠ½Π΄Π°ΠΌΠΈ ΡΡΠΎΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ» ΡΠΎΡΠΊΠΈ, ΡΡΠΎ ΡΠ°ΠΊ ΠΈ Π½ΡΠΆΠ½ΠΎ, Π° Π½Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΊΠ° ).
ΠΠ»Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ° Π²ΡΡΡΠ°Π²ΠΈΠΌ Π΄Π°ΡΡ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ, ΡΠΊΠ°ΠΆΠ΅ΠΌ ΡΡΠΎ 09.07.2010 19:18:55:
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΡΠ°ΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ (context), Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ°ΠΊΠΈΠΌ:
ΠΡΡ ΠΎΠ΄Ρ ΠΈΠ· Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° Asterisk Π΄ΠΎΠ·Π²ΠΎΠ½ΠΈΠ²ΡΠΈΡΡ Π΄ΠΎ 89161112233 (ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ Π²Π·ΡΠ» ΡΡΡΠ±ΠΊΡ) Π²ΡΠΏΠΎΠ»Π½ΠΈΡ ΡΠ»Π΅Π΄ΡΡΠ΅Π΅:
ΠΠ°ΠΊ Π·Π°ΠΏΠΈΡΠ°ΡΡ Π³ΠΎΠ»ΠΎΡΠΎΠ²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ (ΡΠΎ ΡΡΠΎ Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°ΡΡ) Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ·Π½Π°ΡΡ ΠΈΠ· ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠΈ.
ΠΠΎΠΆΠ΅Ρ ΠΏΠΎΡΠ²ΠΈΡΡΡ Π΅ΡΡ ΠΎΠ΄Π½Π° Π·Π°Π΄Π°ΡΠ°, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ: Π΅ΡΠ»ΠΈ ΠΏΡΠΈ Π°Π²ΡΠΎΠ΄ΠΎΠ·Π²ΠΎΠ½Π΅ ΡΡΡΠ±ΠΊΡ ΡΠ°ΠΊ ΠΈ Π½Π΅ ΠΏΠΎΠ΄Π½ΡΠ»ΠΈ, ΡΠΎ ΡΡΠ°Π·Ρ Π½Π°Π±ΡΠ°ΡΡ Π΄ΡΡΠ³ΠΎΠΉ Π½ΠΎΠΌΠ΅Ρ. ΠΡΠΈΠΌΠ΅Ρ ΡΠ°ΠΊΠΎΠΉ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ:
ΠΠ°ΠΆΠ΅ΡΡΡ, Π½Ρ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΎΡΠ΅, Π½Π°ΠΏΠΈΡΠ°ΡΡ:
Π Π²ΠΎΡ ΡΡΡ ΡΠΎ ΠΈ Π²ΡΡΡΠ½ΠΈΠ»ΠΎΡΡ, ΡΡΠΎ Π½Π΅ Π²ΡΠ΅ ΡΠ°ΠΊ ΠΏΡΠΎΡΡΠΎ. ΠΠ° ΡΠ°ΠΊΠΎΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΎ Π²Ρ Π² ΠΊΠΎΠ½ΡΠΎΠ»Π΅ (Π²ΡΡΡΠ°Π²ΠΈΠ² core set verbose 3 ) ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅:
β Executing [failed@dialsip:1] Dial(Β«OutgoingSpoolFailedΒ», Β«SIP/6003Β») in new stack
[Feb 11 16:57:44] WARNING[94371]: channel.c:3441 ast_request: No translator path exists for channel type SIP (native 65535) to 0
[Feb 11 16:57:44] WARNING[94371]: app_dial.c:1296 dial_exec_full: Unable to create channel of type βSIPβ (cause 58 β Bearer capability not available)
== Everyone is busy/congested at this time (1:0/0/1)
== Auto fallthrough, channel βOutgoingSpoolFailedβ status is βCHANUNAVAILβ
[Feb 11 16:57:54] NOTICE[94371]: pbx_spool.c:356 attempt_thread: Call failed to go through, reason (8) Congestion (circuits busy)
Π£ΡΠ΅β¦ ΠΏΡΠΈΠ΅Ρ Π°Π»ΠΈβ¦. ΠΠ°Π·Π°Ρ ΠΏΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌ ΠΏΠΎΠΈΡΠΊΠ° Π² Π³ΡΠ³Π»Π΅ Ρ Π½Π°ΡΡΠΊΠ°Π»ΡΡ Π½Π° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ:
ΠΠ°Π½Π°Π» ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ OutgoingSpoolFailed ΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ Π² Π½Π΅Π³ΠΎ ΠΏΡΡΠ°Π΅ΡΡΡ Π·Π²ΠΎΠ½ΠΈΡΡ ΠΈ Dial ΠΈ ΠΈΠ³ΡΠ°ΡΡ Playback. ΠΠ°ΠΊ ΠΌΠ½Π΅ Π½Π°Ρ ΠΎΠ΄ΡΡΡ Π² failed ΡΠ΄Π΅Π»Π°ΡΡ Π·Π²ΠΎΠ½ΠΎΠΊ Π½Π° SIP ΠΈ ΠΏΡΠΎΠΈΠ³ΡΠ°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅?
Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ ΡΠΎΡΠ½ΠΎ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅ Π²ΠΎΠΏΡΠΎΡ Π·Π°Π΄Π°Π²Π°Π» ΡΠ΅Π±Π΅ ΠΈ Ρ ΡΠ°ΠΌ, Π½ΠΎ ΠΎΡΠ²Π΅ΡΠ° Π½Π° Π½Π΅Π³ΠΎ Π½ΠΈ Π² ΠΠ½Π΅ΡΠ΅ Π½ΠΈ Ρ ΠΌΠ΅Π½Ρ Π½Π΅ Π±ΡΠ»ΠΎ.
Π’Π°ΠΊ ΠΆΠ΅ ΠΊΠ°ΠΊ ΠΈ Ρ Π½Π°ΡΠΎΠ΄ ΠΏΡΡΠ°Π»ΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π· failed c Goto, System ΠΈ Ρ.ΠΏ., Π½ΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΏΠΎΠ»ΡΡΠ°Π»ΡΡ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅ β Π½ΠΈΠΊΠ°ΠΊΠΈΠΌ 🙁
ΠΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΠΈΠ· starndart extention failed ΡΠ΄Π΅Π»Π°ΡΡ Π½Π°Π±ΠΎΡ (Dial) Π΄ΡΡΠ³ΠΎΠ³ΠΎ Π½ΠΎΠΌΠ΅ΡΠ° Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΡΡΡβ¦..
Π― ΡΠΆΠ΅ Π±ΡΠ»ΠΎ ΠΏΠΎΠ΄ΡΠΌΠ°Π», ΡΡΠΎ Π½Π΅ ΡΡΠ΄ΡΠ±Π° ΠΈ ΠΌΠ½Π΅ ΠΏΡΠΈΠ΄Π΅ΡΡΡ Π»ΠΎΠ²ΠΈΡΡ DIALSTATUS, ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ Π΅Π³ΠΎ AGI ΡΠΊΡΠΈΠΏΡΡ (ΠΊΠΎΡΠΎΡΡΠΉ Π΅ΡΡ ΠΈ ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΈΠ΄Π΅ΡΡΡ) ΠΈ ΡΠΎΡ ΡΠΆΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠ΅ΡΠ°ΡΡ ΡΡΠΎ Ρ ΡΡΠΈΠΌ Π΄Π΅Π»Π°ΡΡ (ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½ΠΎΠ²ΡΠΉ call ΡΠ°ΠΉΠ» ΠΈΠ»ΠΈ Π΅ΡΡ ΡΡΠΎ ΡΠΎ), Π½ΠΎ ΡΡΡ ΡΠΎΠ΄ΠΈΠ»ΡΡ Π΅ΡΡ ΠΎΠ΄ΠΈΠ½ Π²Π°ΡΠΈΠ°Π½Ρ:
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ call-ΡΠ°ΠΉΠ» ΡΠΆΠ΅ ΡΡΡΡ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΡ:
Π’Π΅ΠΌ ΡΠ°ΠΌΡΠΌ ΠΌΡ ΠΊΠ°ΠΊ Π±Ρ Π½Π°Π±ΠΈΡΠ°Π΅ΠΌ ΡΠΆΠ΅ Π½Π΅ Π½ΠΎΠΌΠ΅Ρ, Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ exten Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ ΠΈ Π² Π½Π΅ΠΌ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΠΌ Π²ΡΠ·ΠΎΠ² Π² ΠΌΠ°ΠΊΡΠΎ, ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΠΈ ΠΌΠ°ΠΊΡΠΎ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΡΡΠΎΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅:
Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ ΡΡΠΎΡ ΠΌΠ°ΠΊΡΠΎ Π΄Π°Π΅Ρ Π½Π°ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΆΠ΅ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΊΡΠ΄Π° ΠΈ Π² ΠΊΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΠΎΠΉΠ΄Π΅Ρ Π²ΡΠ·ΠΎΠ². ΠΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ Β«Π³ΡΡΠ±ΡΠΉΒ», Π½ΠΎ Π³Π»Π°Π²Π½ΠΎΠ΅ Π²Π΅Π΄Ρ ΠΏΡΠΈΠ½ΡΠΈΠΏ, Π° Π΄Π°Π»ΡΡΠ΅ ΡΠΆΠ΅ Π²Π°ΡΠ΅ ΡΠ²ΠΎΡΡΠ΅ΡΡΠ²ΠΎ 😉
Π Π²ΠΎΡ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΠΈΡΠΊΠΎΠΌΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ.
[ΠΠΎΠ½Π΅Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΠΎΠ³ΠΎ 11.02.2011]
Callback
ΠΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΠΎ ΡΠΎΠΌΡ ΠΆΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ, ΡΡΠΎ ΠΈ ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π²ΡΡΠ΅ Π°Π²ΡΠΎΠΎΠ±Π·Π²ΠΎΠ½, Π·Π° Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌΠΈ:
Π§ΡΠΎ Π½Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅:
AGI β ΡΡΠΎ Asterisk Gateway Interface.
Asterisk Gateway Interface ΡΡΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ°ΡΡΠΈΡΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» Asterisk`Π° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΊΡΠΈΠΏΡΠΎΠ² Π½Π° ΠΌΠ½ΠΎΠ³ΠΈΡ
ΡΠ·ΡΠΊΠ°Ρ
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Perl, PHP, C, Pascal, Bourne Shell.
ΠΠ°ΡΠ½Π΅ΠΌ Ρ Π½ΠΎΠΌΠ΅ΡΠ°, Π΄ΠΎΠΏΡΡΡΠΈΠΌ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ Π³ΠΎΡ. Π½ΠΎΠΌΠ΅Ρ 84955556677. ΠΠΎΠ±Π°Π²ΠΈΠΌ Π² extensions.conf Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ (context) ΠΊΡΠ΄Π° ΠΏΠΎΡΡΡΠΏΠ°ΡΡ Π²ΡΠ΅ Π²Ρ ΠΎΠ΄ΡΡΠΈΠ΅ Π·Π²ΠΎΠ½ΠΊΠΈ: