рддрд╛рд░рд╛рдВрдХрди рдкреНрд░рдмрдВрдзрдХ рдкреНрд░рдмрдВрдзрдХ (рдПрдПрдордЖрдИ) рдПрдХ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╣реИ рдЬреЛ рдмрд╛рд╣рд░реА рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЛ рддрд╛рд░рд╛рдВрдХрди рдкреНрд░рдгрд╛рд▓реА рдХреЛ рдкреНрд░рдмрдВрдзрд┐рдд рдФрд░ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рджреЛрдиреЛрдВ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдПрдПрдордЖрдИ рдЯреАрд╕реАрдкреА рдкреЛрд░реНрдЯ рдкрд░ рдХрдиреЗрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рд╕реБрдирддрд╛ рд╣реИ; рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдпрд╣ 5038 рд╣реИред рдХреНрд▓рд╛рдЗрдВрдЯ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдПрдПрдордЖрдИ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдПрд╕реНрдЯрд░рд┐рд╕реНрдХ рдХреЛ рдХрдорд╛рдВрдб рднреЗрдЬ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрди рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдЗрд╕ рдкреЛрд╕реНрдЯ рдореЗрдВ, рд╣рдо рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдПрдПрдордЖрдИ рдХреЗ рдЙрдкрдпреЛрдЧ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗ: рдПрдХ рджрд┐рдП рдЧрдП рдпреВрдЖрд░рдПрд▓ рджреНрд╡рд╛рд░рд╛ рдХреЙрд▓ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддрд╛рд░рд╛рдВрдХрди рдЪрд┐рд╣реНрди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ, рдЬрд┐рд╕рдореЗрдВ рдХреЙрд▓ рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗрдЯ рдХрд┐рдП рдЬрд╛рдиреЗ рдЪрд╛рд╣рд┐рдПред
рдПрд╕реНрдЯрд░рд┐рд╕реНрдХ рдПрдПрдордЖрдИ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛
рдкрд╣рд▓реА рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдПрдПрдордЖрдИ рд╕рдХреНрд╖рдо рд╣реИ рдФрд░ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдЧреНрд░рд╛рд╣рдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдкреНрд░рдорд╛рдгрд┐рдд рдХрд░реЗрдЧрд╛:
/etc/asterisk/manager.conf
[general] enabled = yes port = 5038 bindaddr = 0.0.0.0
/etc/asterisk/manager.conf
[c2call] secret=FrUyHn6FSaX deny=0.0.0.0/0.0.0.0 permit=192.168.0.0/255.255.0.0 read=system,call,log,verbose,command,agent,user,config,command,dtmf,reporting,cdr,dialplan,originate write=system,call,log,verbose,command,agent,user,config,command,dtmf,reporting,cdr,dialplan,originate
рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреБрдирдГ рд▓реЛрдб рдХрд░реЗрдВ:
asterisk -rx "module reload manager"
рдЕрдм рд╣рдореЗрдВ рдПрдХ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдирдВрдмрд░ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рддрдерд╛рдХрдерд┐рдд рдЧреНрд░рд╛рд╣рдХ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реЛрдЧрд╛:
/etc/asterisk/sip.conf
[3200] deny=0.0.0.0/0.0.0.0 permit=192.168.0.0/255.255.0.0 secret=3200 dtmfmode=rfc2833 canreinvite=no context=OUT_IN1 host=dynamic type=friend nat=yes port=5060 qualify=yes callcounter=yes faxdetect=no
рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ Asterisk рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдлрд┐рд░ рд╕реЗ рдкрдврд╝рдирд╛ рд╣реЛрдЧрд╛:
asterisk -rx "sip reload"
рдпрд╣ Asterisk рдХрд╛ рд╕реЗрдЯрдЕрдк рдкреВрд░рд╛ рдХрд░рддрд╛ рд╣реИред
рдХреЙрд▓рдмреИрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ
рдЕрдм PHP рдореЗрдВ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВ:
callback.php
<?php
рдЕрдм рдЖрдк рдирд┐рдореНрди URL рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреЙрд▓ рдХреА рдкреАрдврд╝реА рдХреА рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
http://domain.com/callback.php?p=1&c=OUT_EXT2&cid=3200&num=84951234567
рд╣рдо рдХрдВрд╕реЛрд▓ рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рджреЗрдЦрддреЗ рд╣реИрдВ:
*CLI> == Manager 'c2call' logged on from 192.168.0.11 == Using SIP RTP CoS mark 5 -- Executing [84951234567@OUT_EXT2:1] Dial("SIP/3200-0000000a", "SIP/84951234567@TRK1") in new stack == Manager 'c2call' logged off from 192.168.0.11 == Using SIP RTP CoS mark 5 -- Called SIP/84951234567@TRK1 -- SIP/TRK1-0000000b is ringing == Spawn extension (OUT_EXT2, 84951234567, 1) exited non-zero on 'SIP/3200-0000000a'
рдпрд╣рд╛рдБ рдХреБрдЫ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рд╣реИрдВ рдЬреЛ рдЪрд┐рдХрд┐рддреНрд╕рдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддреА рд╣реИрдВ:
\ _ рдпрд╣ рдЖрдорддреМрд░ рдкрд░ рдПрдВрдЯрд░ рдХреБрдВрдЬреА рджрдмрд╛рдХрд░ рдкреНрд░реЗрд╖рд┐рдд рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдХрдорд╛рдВрдб рдХреЗ рдкреНрд░рд╕рд╛рд░рдг рдХреЗ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрддрд╛ рд╣реИред
рдШрдЯрдирд╛рдХреНрд░рдо: рдмрдВрджрдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рд╣рдо рдИрдПрдордЖрдИ рдХрдиреЗрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдИрд╡реЗрдВрдЯ рднреЗрдЬрдиреЗ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рддреЗ рд╣реИрдВред рдореВрд▓ рд░реВрдк рд╕реЗ рдЗрд╕рдХрд╛ рдореВрд▓реНрдп рд╣рдореЗрд╢рд╛ рдмрдВрдж рд╣реЛрддрд╛ рд╣реИ
рдЪреИрдирд▓: SIP / $ cidрдЙрд╕ рдЪреИрдирд▓ рдХрд╛ рдирд╛рдо, рдЬрд┐рд╕реЗ рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдХреЙрд▓ рдХреЛ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдПрд╕рдЖрдИрдкреА / 3200 рдЧреНрд░рд╛рд╣рдХ рдХреЛ рднреЗрдЬрд╛ рдЬрд╛рдПрдЧрд╛, рдЬреИрд╕реЗ рд╣реА рд╡рд╣ рдХреЙрд▓ рдЙрдард╛рдПрдЧрд╛, рдХреЙрд▓ 84951234567 рдирдВрдмрд░ рдкрд░ рд░реАрдбрд╛рдпрд░реЗрдХреНрдЯ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред
Callerid: $ cidрдирд┐рд╡рд░реНрддрдорд╛рди рдЪреИрдирд▓ рдХреЗ рд▓рд┐рдП рдХреЙрд▓рд░ рдЖрдИрдбреА рд╕реЗрдЯ рдХреА рдЬрд╛рдиреА рд╣реИред
рдЯрд╛рдЗрдордЖрдЙрдЯ: 15000рдХреЙрд▓ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреАрдХреНрд╖рд╛ рд╕рдордп рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ - 15 рд╕реЗрдХрдВрдб
Async: рд╣рд╛рдБрдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдХреЙрд▓ рдкреАрдврд╝реА рдЖрдкрдХреЛ рддрддреНрдХрд╛рд▓ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд┐рдП рдмрд┐рдирд╛ рдПрдХ рдпрд╛ рдЕрдзрд┐рдХ рдХреЙрд▓ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред