рдПрдХ рдЕрджреНрднреБрдд рдЙрдкрдХрд░рдг рдХреЗ рд▓рд┐рдП рдХрдИ рддрд╛рд░рд╛рдВрдХрди рд╕рд░реНрд╡рд░реЛрдВ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╕рдорд╛рдзрд╛рди рдЦреЛрдЬрдирд╛:

рдЕрд╡рд╕рд░ рдирд┐рд░реАрдХреНрд╖рдг
рдореЛрдирд╛рд╕реНрдЯ рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ рдПрдХ рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рдЯреВрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рддреИрдирд╛рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рдПрд╕реНрдЯрд░рд┐рд╕реНрдХ рдХреЗ рд▓рд┐рдП рдСрдкрд░реЗрдЯрд░ рдкреИрдирд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИред рдмреАрдПрд╕рдбреА рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреЗ рддрд╣рдд рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ред рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдкрд╛рдпрдерди (рдПрдПрдордЖрдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рддрд╛рд░рд╛рдВрдХрди рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХреЗ рд▓рд┐рдП рдбреЗрдореЙрди), PHP, JS (AJAX) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИред
рджреЗрдЦрдиреЗ рдХреЗ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдореЗрдВ рд╕реЗ (рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдореЛрдб рдореЗрдВ) - рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд:
- рдХрдИ рд╕рд░реНрд╡рд░реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВ (рдЙрдирдХреЗ рдмреАрдЪ рд╕реНрд╡рд┐рдЪ рдХрд░рдХреЗ)
- рдПрдХреНрд╕реЗрд╕ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдмрд╣реБ-рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдореЛрдб
- рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдФрд░ рд╕рд╛рдерд┐рдпреЛрдВ рдХреЛ рдореИрдк рдХрд░рдирд╛ (SIP, IAX, DAHDI, рдЦреЛрдордк, рдЖрджрд┐ ...)
- рд╕рдХреНрд░рд┐рдп рдЪреИрдирд▓ рдФрд░ рдХреЙрд▓ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ (рдЪреИрдирд▓ рдирд╛рдо рдФрд░ рдХреЙрд▓рд░ рдХреЗ рд╕рд╛рде)
- рд╕рдореНрдореЗрд▓рди рдЪреИрдирд▓ (рдЬреБрдбрд╝реЗ рд╣реБрдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджрд┐рдЦрд╛ рд░рд╣реЗ рд╣реИрдВ)
- рдЦрдбрд╝реА рдХреЙрд▓
- рдХрддрд╛рд░ (рдЖрдВрдХрдбрд╝реЛрдВ, рдкреНрд░рддрд┐рднрд╛рдЧрд┐рдпреЛрдВ рдФрд░ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХреЗ рд╕рд╛рде)
рдСрдкрд░реЗрд╢рди рдХрд░рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛рдУрдВ рд╕реЗ:
- рдХреЙрд▓ рдХрд░рдирд╛ (рдЖрд░рдВрдн рдХрд░рдирд╛)
- рдХреЙрд▓ рдЯреНрд░рд╛рдВрд╕рдлрд░
- рдХреЙрд▓ рд░рд┐рд╕реЗрдЯ рдХрд░реЗрдВ
- рдХреЙрд▓ рдкрд╛рд░реНрдХ
- рдХреЙрд▓ (рд╕реНрдкрд╛рдИ рдХреЙрд▓) рд╕реБрдирдХрд░
- рдкреНрд░рддрд┐рднрд╛рдЧрд┐рдпреЛрдВ рдХреЛ рд╕рдореНрдореЗрд▓рди рдореЗрдВ рдЖрдордВрддреНрд░рд┐рдд рдХрд░рдирд╛
- рд╕рдореНрдореЗрд▓рди рдХреЗ рдкреНрд░рддрд┐рднрд╛рдЧрд┐рдпреЛрдВ рдХреЛ рд╣рдЯрд╛рдирд╛
- рдХрд┐рд╕реА рднреА рдХрддрд╛рд░ рдХреЗ рд╕рджрд╕реНрдп рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ (рдпрд╛ рд╕рд╛рдерд┐рдпреЛрдВ) рдХреЛ рдЬреЛрдбрд╝рдирд╛
- рдПрдХ рдХрддрд╛рд░ рд╕реЗ рд╕рджрд╕реНрдпреЛрдВ рдХреЛ рд╣рдЯрд╛рдирд╛
- рдХрддрд╛рд░ рдореЗрдВ рднрд╛рдЧ рд▓реЗрдиреЗ рд╡рд╛рд▓реЗ рдФрд░ рд░реБрдХрдиреЗ рд╡рд╛рд▓реЗ
- рд╕реАрдПрд▓рдЖрдИ рдХрдорд╛рдВрдбреЛрдВ рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ - рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреА рд╕реВрдЪреА рдХрд╛рдлреА рд╡реНрдпрд╛рдкрдХ рд╣реИред
рд╕реНрдерд╛рдкрдирд╛
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЬреЛ рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рдкреНрд░рдгрд╛рд▓реА рд╣реИ рд╡рд╣ рдЖрдзрд╛рд░рднреВрдд рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдФрд░ рдЕрдкрдбреЗрдЯ рдХреЗ рд╕рд╛рде рдЙрдмрдВрдЯреВ 10.10 рдХреЛ рд╕рд╛рдл рдХрд░рддреА рд╣реИред рдореЙрдирд╕реНрдЯ рдХреЛ рдПрд╕реНрдЯреЗрд░рд┐рд╕реНрдХ рдХреЗ рд╕рд╛рде рд╣реЛрд╕реНрдЯ рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рд╣реЛрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореЗрд░реЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рд▓реИрдкрдЯреЙрдк рдкрд░ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдореЛрдирд╛рд╕реНрдЯ рд╣реИ - рдФрд░ рдореИрдВ Asterisk рдХреЗ рд╕рд╛рде рд╣рдорд╛рд░реЗ рд╕рднреА 6 рд╕рд░реНрд╡рд░реЛрдВ рдкрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдирд┐рдЧрд░рд╛рдиреА рд░рдЦрддрд╛ рд╣реВрдВред
рдореЛрдирд╛рд╕реНрдЯ рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рд╕рд╛рде рдЖрдЧреЗ рдмрдврд╝рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ - рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдкрд░ рдЬрд╛рдПрдВред
рдЪреВрдВрдХрд┐ рдбреЗрдореЙрди рдПрд╕реНрдЯрд░рд┐рд╕реНрдХ рдФрд░ рдореЛрдирд╛рд╕реНрдЯ рдХреЗ рдмреАрдЪ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХрд░рддреЗ рдереЗ (рдПрдПрдордЖрдИ - рдПрд╕реНрдЯрд░рд┐рд╕реНрдХ рдореИрдиреЗрдЬрд░ рдПрдкреАрдЖрдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ) рдкрд╛рдпрдерди рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдкрд╣рд▓реА рдЪреАрдЬ рдЬреЛ рд╣рдо рдХрд░рддреЗ рд╣реИрдВ рд╡рд╣ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдЗрд╕рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИ:
it@ubuntu-test ~ $ python --version Python 2.6.6
рдпрджрд┐ рд╣рдо рдРрд╕рд╛ рдХреБрдЫ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рд╕рдм рдХреБрдЫ рдХреНрд░рдо рдореЗрдВ рд╣реИред рдпрджрд┐ рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рдпрд╣ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рд╣рдо рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ:
it@ubuntu-test ~ $ sudo apt-get update && sudo apt-get install python
рд╣рдо рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВред
рдЪреВрдВрдХрд┐ рдпрд╣ рд╕рдм рд╡реЗрдм-рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ php рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде-рд╕рд╛рде php-pear рдХреЗ рд╕рд╛рде http рд╕рд░реНрд╡рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдпрджрд┐ рдпрд╣ рдХрд┐рдЯ рдкрд╣рд▓реЗ рдирд╣реАрдВ рдЦрдбрд╝реА рд╣реЛрддреА рд╣реИ, рддреЛ рд╣рдо рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ (рд╣рдо рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЖрд╕рд╛рди рдиреЗрд╡рд┐рдЧреЗрд╢рди рдФрд░ рд╕рдВрдкрд╛рджрди рдХреЗ рд▓рд┐рдП mc рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВрдЧреЗ):
it@ubuntu-test ~ $ sudo apt-get install apache2 php5 php-pear mc
рдФрд░ рдЕрдВрдд рдореЗрдВ - рдЪрд░реНрдЪрд╛ рдХреЗ рддрд╣рдд рдЙрддреНрдкрд╛рдж рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрднрд░рддрд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ред рдпрд╣ рд╕реВрдЪреА рд╣рдорд╛рд░реЗ рд╕рд╛рде рдмрдбрд╝реА рдирд╣реАрдВ рд╣реИ:
- рдореБрдбрд╝ рдкрд╛рдпрдерди 10.1+
- zope.interface 3.6+
- рд╕реНрдЯрд╛рд░реНрдкреА рдПрд╕рд╡реАрдПрди-рдЯреНрд░рдВрдХ
- PHP PEAR рдкреИрдХреЗрдЬ: (HTTP_Client)
Zope.interface рдкреИрдХреЗрдЬ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдерд╛ (рдпрд╣ рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рдЙрдкрд▓рдмреНрдз рдерд╛)ред
рд╣рдордиреЗ HTTP_Client рдкреИрдХреЗрдЬ рдбрд╛рд▓рд╛:
it@ubuntu-test:/usr/src$ sudo pear install HTTP_Client WARNING: "pear/HTTP_Client" is deprecated in favor of "pear/HTTP_Request2" WARNING: channel "pear.php.net" has updated its protocols, use "pear channel-update pear.php.net" to update WARNING: "pear/HTTP_Request" is deprecated in favor of "pear/HTTP_Request2" WARNING: "pear/Net_URL" is deprecated in favor of "pear/Net_URL2" downloading HTTP_Client-1.2.1.tgz ... Starting to download HTTP_Client-1.2.1.tgz (10,202 bytes) .....done: 10,202 bytes downloading HTTP_Request-1.4.4.tgz ... Starting to download HTTP_Request-1.4.4.tgz (17,109 bytes) ...done: 17,109 bytes downloading Net_URL-1.0.15.tgz ... Starting to download Net_URL-1.0.15.tgz (6,303 bytes) ...done: 6,303 bytes downloading Net_Socket-1.0.10.tgz ... Starting to download Net_Socket-1.0.10.tgz (5,429 bytes) ...done: 5,429 bytes install ok: channel://pear.php.net/Net_URL-1.0.15 install ok: channel://pear.php.net/Net_Socket-1.0.10 install ok: channel://pear.php.net/HTTP_Request-1.4.4 install ok: channel://pear.php.net/HTTP_Client-1.2.1
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╕реНрдерд╛рдкрдирд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рджреМрд░рд╛рди рдпрд╣ рдХрд╣рддрд╛ рд╣реИ рдХрд┐ рдкреИрдХреЗрдЬ рдкреБрд░рд╛рдирд╛ рд╣реИ рдФрд░ рдПрдХ рдирдпрд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдкреЗрд╢рдХрд╢ рдХрд░рддрд╛ рд╣реИ:
it@ubuntu-test:/usr/src$ sudo pear install HTTP_Request2
рд╣рдо рд╕реНрд░реЛрдд рд╕реЗ рдЯреНрд╡рд┐рд╕реНрдЯреЗрдб рдФрд░ рд╕реНрдЯрд╛рд░рдкреА рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВрдЧреЗред рд▓реЗрдХрд┐рди рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рджреМрд░рд╛рди, рдХреБрдЫ рдФрд░ рдирд┐рд░реНрднрд░рддрд╛рдПрдВ рд╕рд╛рдордиреЗ рдЖрдИрдВ, рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдо рдареАрдХ рдХрд░ рд░рд╣реЗ рд╣реИрдВ (рдЧреБрдЬрд░рддреЗ рд╕рдордп рдореЗрдВ, рд╣рдо рд╕реБрдкрд░рд╕реБрдЕрд░ рдореЛрдб рдореЗрдВ рдЪрд▓реЗ рдЬрд╛рдПрдВрдЧреЗ):
it@ubuntu-test:~$ sudo su root@ubuntu-test:~$ cd /usr/src/ root@ubuntu-test:/usr/src
рдпрджрд┐ рд╣рдо рд╢рд┐рд▓рд╛рд▓реЗрдЦ "
рдореБрдбрд╝ == 12.0.0 " рдХреЗ
рд▓рд┐рдП рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдирд┐рд░реНрднрд░рддрд╛ рджреЗрдЦрддреЗ рд╣реИрдВ - рддреЛ рд╕реНрдерд╛рдкрдирд╛ рд╕рдлрд▓ рд░рд╣реА рдФрд░ рдЖрдЧреЗ
рдмрдврд╝реА ред рдпрджрд┐ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рд╕рд╛рдордиреЗ рдЖрддреА рд╣реИ, рддреЛ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдХреБрдЫ рдШрдЯрдХ рдЧрд╛рдпрдм рд╣реИред рд╕реВрдЪреА рдЬрд╛рдВрдЪреЗрдВ - рдХреНрдпрд╛ рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдПрдВ рд╕реНрдерд╛рдкрд┐рдд рд╣реИрдВ? рдЖрдЧреЗ рдмрдврд╝реЛ:
root@ubuntu-test:/usr/src/Twisted-12.0.0
рдЦреИрд░, рдЗрд╕ рдЕрд╡рд╕рд░ рдХреЗ рдореБрдЦреНрдп рдирд╛рдпрдХред рд▓реЗрдЦрди рдХреЗ рд╕рдордп, рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг 3.0b4 рд╣реИ:
root@ubuntu-test:/usr/src
рд╕реНрдерд╛рдкрдирд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рджреМрд░рд╛рди, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрдереЛрдВ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдХреБрдЫ рдкреНрд░рд╢реНрди рдкреВрдЫреЗрдЧрд╛ред рдпрджрд┐ рдЙрд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╡рд┐рдХрд▓реНрдк рд╕рдВрддреБрд╖реНрдЯ рд╣реИрдВ, рддреЛ рд╣рдо рд╕рд╣рдордд рд╣реИрдВред рдЕрдиреНрдпрдерд╛, рд╣рдо рдЕрдкрдирд╛ рдбреЗрдЯрд╛ рд▓рд┐рдЦрддреЗ рд╣реИрдВред рдореИрдВрдиреЗ рд╕рд┐рд░реНрдл .php рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдкрде рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд┐рдпрд╛ рд╣реИ
MonAst HTML path [/var/www/html/monast]: /var/www/asterisk/monast/
рдРрд╕рд╛ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╕реНрдерд╛рдкрдирд╛ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдИ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд╣рд╛рдБ рдирд╣реАрдВ рдерд╛ред рд╕реНрдЯрд╛рд░реНрдЯ рд╕реНрдХреНрд░рд┐рдкреНрдЯ /etc/init.d/monast рдХреЗрд╡рд▓ SuSE, RedHat, Debian, Gentoo, Slackware, FreeBSD рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдкрд┐рдд рд╣реИред рд▓реЗрдХрд┐рди рдЙрдмрдВрдЯреВ рдФрд░ рдкрд╕рдВрдж рдирд╣реАрдВред рдЗрд╕рд▓рд┐рдП, рд╣рдо рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдбреЗрдмрд┐рдпрди рд╕реЗ рдХреЙрдкреА рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдореЗрдВ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ:
root@ubuntu-test:/usr/src/monast-3.0b4
рдЕрдм рд╕реНрдерд╛рдкрдирд╛ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдИ рд╣реИред рдЖрдк рд╕реЗрдЯрд┐рдВрдЧ рдореЗрдВ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред
рд╕рдорд╛рдпреЛрдЬрди
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЖрдкрдХреЛ рд╕реНрд╡рдпрдВ рдПрд╕реНрдЯрд░рд┐рд╕реНрдХ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ рд╕рдмреНрдЬрд╝реЗ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдХрдиреЗрдХреНрдЯ рдФрд░ рдПрдХреНрд╕рдЪреЗрдВрдЬ рдХрд░ рд╕рдХреЗред рддрд╛рд░рд╛рдВрдХрди рдЪрд┐рд╣реНрди рд╡рд╛рд▓реЗ рд╕рд░реНрд╡рд░ рдкрд░, рдкрде
/ рдЖрджрд┐ / рддрд╛рд░рд╛рдВрдХрди / рдкрд░ рдЬрд╛рдПрдВ рдФрд░ manager.conf рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВред рдпрджрд┐ рдХрдИ рд╕рд░реНрд╡рд░ рд╣реИрдВ, рддреЛ рд╣рдо рдЖрд╡рд╢реНрдпрдХ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рд╕реБрдзрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред
root@asterisk ~ $ mcedit /etc/asterisk/manager.conf
; ; AMI - The Asterisk Manager Interface ; [general] enabled = yes ; AMI port = 5038 ; , MonAst bindaddr = 0.0.0.0 ; displayconnects = yes ; Asterisk webenabled = no ; Asterisk static_http allowmultiplelogin = yes ; . timestampevents = yes ; ; debug = on ; AMI [monast_user] secret=qwerty123 ; deny=0.0.0.0/0.0.0.0 ; permit=127.0.0.1/255.255.255.0 ; permit=192.168.1.10/255.255.255.0 ; permit=192.168.2.0/255.255.255.0 ; writetimeout=100 ; ; . all, read=system,call,log,verbose,command,agent,user,config,originate,reporting write=system,call,log,verbose,command,agent,user,config,originate,reporting
рдлрд┐рд░ рдкреНрд░рдмрдВрдзрдХ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рддрд╛рд░рд╛рдВрдХрди рд╡рд┐рдиреНрдпрд╛рд╕ рдкреБрдирдГ рд▓реЛрдб рдХрд░реЗрдВ:
root@asterisk$ asterisk -rx "manager reload"
рдпрд╣ Asterisk рдХрд╛ рд╕реЗрдЯрдЕрдк рдкреВрд░рд╛ рдХрд░рддрд╛ рд╣реИред рд╣рдо рд╕реНрд╡рдпрдВ рдореЛрдирд╛рд╕реНрдЯ рдХреЗ рд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВред
рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд╕рд╛рде рдлрд╝рд╛рдЗрд▓ рдкрде
/etc/monast.conf рдкрд░ рд╕реНрдерд┐рдд рд╣реИред рдЙрд╕реЗ рдФрд░ рд╢рд╛рд╕рдиред рдореИрдВ рдкрд╣рд▓реЗ рд╕реЗ рдХрд╣реВрдВрдЧрд╛ - рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рдереА, рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рджрд┐рдП рдЧрдП рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдПрдХ рдпрд╛ рджреВрд╕рд░реЗ рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛ рд╡рд░реНрдгрди рд╣реИред рд▓реЗрдХрд┐рди рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдореИрдВ рдЕрдкрдиреА рдЙрджрд╛рд╣рд░рдг рдлрд╝рд╛рдЗрд▓ рджреВрдВрдЧрд╛
root@ubuntu-test:/usr/src/monast-3.0b4
# Copyright (c) 2008-2011, Diego Aguirre # All rights reserved. ## ## Global Section ## [global] # Bind client connetions on host:port bind_host = 127.0.0.1 ; bind_port = 5039 ; . # Use client autentication on browser auth_required = true ; ## =================================== ## ## Servers Definitions ## [server: Server1] ; hostname = 192.168.1.1 hostport = 5038 username = monast_user password = qwerty123 # Default user context default_context = default # Context to use in transfer calls transfer_context = default # Context and prefix for meetme meetme_context = default meetme_prefix = [server: Server2] ; hostname = 192.168.2.1 hostport = 5038 username = monast_user password = qwerty123 # Default user context default_context = default # Context to use in transfer calls transfer_context = default # Context and prefix for meetme meetme_context = default meetme_prefix = ## =================================== ## ## Peers Definitions ## [peers] # sort peers (options: channel, callerid) sortby = callerid # default show/hide default = show # hide peer when default = show ;<Server Name>/SIP/user-1 = hide # show peer when default = hide ;<Server Name>/SIP/user-2 = show # always show peer. ;<Server Name>/SIP/user-3 = force # force CallerID (only in forced mode) ;<Server Name>/SIP/user-4 = force,Diego Aguirre <5555> # Create peer groups ;<Server Name>/@group/Group 1 = SIP/user-1,SIP/user-2 ;<Server Name>/@group/Group 2 = SIP/user-3,SIP/user-4 ## =================================== ## ## Meetmes / Conferences Definitions ## [meetmes] # default show/hide default = hide # hide meetme when default = show ;<Server Name>/1234 = hide # show meetme when default = hide ;<Server Name>/1234 = show # always show meetme ;<Server Name>/1234 = force ## =================================== ## ## Queues Definitions ## [queues] # defualt show/hide default = hide # show queue queue01 ;<Server Name>/queue01 = show # show queue queue02 with display name Support ;<Server Name>/queue02 = show,Support # hide queue queue03 ;<Server Name>/queue03 = hide # Map Member name ;<Server Name>/@member/SIP/user-1 = Diego Aguirre <5555> ## =================================== ## Define users and roles to use on auth_required is set to true ## roles must be: ## originate : user can originate, transfer, park and drop calls ## agent : user cans add, remove, pause and unpause members on queues ## command : user can execute asterisk cli commands ## spy : user can start a spy [user: admin] ; - secret = SuperPuperDruper roles = originate,queue,command,spy servers = ALL [user: manager] ; () secret = password roles = originate servers = ALL [user: server1] ; () secret = 12345 roles = originate servers = Server1 [user: server2] ; () secret = 54321 roles = originate,command servers = Server2
рдкрд░рд┐рд╡рд░реНрддрди рд╕рд╣реЗрдЬреЗрдВ рдФрд░ рдбреЗрдореЙрди рдХреЛ рд░реАрдмреВрдЯ рдХрд░реЗрдВ:
root@ubuntu-test:/etc
рд╡рд╣ рд╕рдм рд╣реИред рдЖрдк рдХрдиреЗрдХреНрдЯ рдФрд░ рдЬрд╛рдБрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдПрдбреНрд░реЗрд╕ рдмрд╛рд░ рдореЗрдВ рдмреНрд░рд╛рдЙрдЬрд░ рдЦреЛрд▓реЗрдВ рдФрд░ рдбреНрд░рд╛рдЗрд╡ рдХрд░реЗрдВ:
http: // localhost / asterisk / monast /рдпрджрд┐ рдЖрдкрдиреЗ "
рдУрдбрд┐рдЯ_рдЗрдХреНрд╡рд╛рдпрд░реНрдб = рдЯреНрд░реВ " рд╕реЗрдЯ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдпреВрдЬрд╝рд░рдиреЗрдо, рдкрд╛рд╕рд╡рд░реНрдб рджрд░реНрдЬ рдХрд░реЗрдВ - рдФрд░ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЯреВрд▓ рдХрд╛ рдЖрдирдВрдж рд▓реЗрдВ :)

рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕реВрдЪрдирд╛ред "рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЗ рдмрд┐рдирд╛" рдореЛрдб рдореЗрдВ, рд╕рднреА рдЬреЛ рдореЛрдирд╛рд╕реНрдЯ рдСрдкрд░реЗрдЯрд░ рдкреИрдирд▓ рдореЗрдВ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдЙрдирдХреЗ рдкрд╛рд╕ рдкреВрд░реЗ рдЕрдзрд┐рдХрд╛рд░ рд╣реИрдВ, рдЕрд░реНрдерд╛рддреНред "рд╕реБрдкрд░рд╕реБрд╕рд░" рд╣реИрдВред рдФрд░ рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рдЬрд╛рдирддреЗ рд╣реИрдВ, "рдЕрдпреЛрдЧреНрдп рд╣рд╛рдереЛрдВ рдХреЛ рджрд┐рдП рдЧрдП рд╣рдерд┐рдпрд╛рд░ рдмрд╣реБрдд рдиреБрдХрд╕рд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред" рд╕рд╛рд╡рдзрд╛рди рд░рд╣реЗрдВред
/Var/www/asterisk/monast/lib/config.php рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рднреА рдкрддрд╛ рдФрд░ рдкреЛрд░реНрдЯ рдкреИрд░рд╛рдореАрдЯрд░ рд╣реИрдВ, рдЬрд╣рд╛рдВ monast.py daemon рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ,
рдбрд┐рдмрдЧ рдФрд░ рдХреНрд▓реА
рдЯреИрдм рдкреНрд░рджрд░реНрд╢рд┐рдд
рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреИрд░рд╛рдореАрдЯрд░, рд╕рд╛рде рд╣реА рдХреБрдЫ рдХрдо рджрд┐рд▓рдЪрд╕реНрдк рдкреИрд░рд╛рдореАрдЯрд░ред
рдлрд╝реАрдЪрд░ рдЕрд╡рд▓реЛрдХрди
рдЕрдм рдЗрд╕ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдЙрддреНрдкрд╛рдж рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдкрд░ рдЪрд▓рддреЗ рд╣реИрдВред
рд╡реЗрдм-рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдХрдИ рдЯреИрдм рджреЗрдЦрддреЗ рд╣реИрдВред рдФрд░ рдЕрдзрд┐рдХ рд╕рдЯреАрдХ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП:
- рдорд┐рд╢реНрд░рд┐рдд рдкреИрдирд▓ - рдПрдХ рдмрд╛рд░ рдореЗрдВ рд▓рдЧрднрдЧ рд╕рднреА рд╡рд░реНрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдЯреИрдмред рд╕реБрд╡рд┐рдзрд╛ рдЗрд╕ рддрдереНрдп рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИ рдХрд┐ рдЖрдк рдХреЗрд╡рд▓ рдЖрд╡рд╢реНрдпрдХ рд▓реЛрдЧреЛрдВ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░, рдмрд┐рдирд╛ рд╕реНрд╡рд┐рдЪ рдХрд┐рдП, рдЖрд╡рд╢реНрдпрдХ рдЬрд╛рдирдХрд╛рд░реА рдПрдХ рд╣реА рд╕реНрдерд╛рди рдкрд░ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред
- рд╕рд╛рдерд┐рдпреЛрдВ / рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ - рд╕реБрд▓рдн рд╕рд╛рдерд┐рдпреЛрдВ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рджреЗрдЦреЗрдВ рдФрд░ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░реЗрдВред
- рдореАрдЯрдо рд░реВрдо - рдЕрдкрдиреЗ рд╕рдореНрдореЗрд▓рдиреЛрдВ рдХреЛ рджреЗрдЦреЗрдВ рдФрд░ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░реЗрдВ
- рдЪреИрдирд▓ / рдХреЙрд▓ - рд╕рдХреНрд░рд┐рдп рдХреЙрд▓ рдФрд░ рдЙрдард╛рдП рдЧрдП рдЪреИрдирд▓ рджреЗрдЦреЗрдВ рдФрд░ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░реЗрдВред
- рдкрд╛рд░реНрдЪреНрдб рдХреЙрд▓ - рдЕрдкрдиреЗ рдкрд╛рд░реНрдХ рдХрд┐рдП рдЧрдП рдХреЙрд▓ рджреЗрдЦреЗрдВ рдФрд░ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░реЗрдВ
- рдХрддрд╛рд░ - рдХреЙрд▓ рдХрддрд╛рд░ рджреЗрдЦреЗрдВ рдФрд░ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░реЗрдВ
- рддрд╛рд░рд╛рдВрдХрди рдЪрд┐рд╣реНрди CLI - рддрд╛рд░рд╛рдВрдХрди рдЖрджреЗрд╢ рдкрдВрдХреНрддрд┐ред рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдЕрдзрд┐рдХрд╛рд░ рд╣реИ, рддреЛ рдпрд╣рд╛рдВ рдЖрдк "рдХреЛрд░ рд╢реЛ рд╕рдВрд╕реНрдХрд░рдг" рдХреЗ рд╕рдорд╛рди рдХреБрдЫ рджрд░реНрдЬ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ :)
рд╕рдВрднрд╛рд╡рдирд╛рдУрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИ рдФрд░, рд╢рд╛рдпрдж, рдпрд╣ рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЖрдк рдПрдХ рд░рди рдХреЗ рд▓рд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдЙрдкрд▓рдмреНрдз рдХрд╛рд░реНрдпреЛрдВ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕рдордЭ рдкрд╛рдПрдВрдЧреЗ рдХрд┐ рдпрд╣ рдХреНрдпрд╛ рдФрд░ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдореИрдВ рдЕрднреА рднреА рджрд┐рд▓рдЪрд╕реНрдк рд▓реЛрдЧреЛрдВ рдХреЗ рдПрдХ рдЬреЛрдбрд╝реЗ рдХрд╛ рд╡рд░реНрдгрди :)
рдХреЙрд▓ рдХреА рд╢реБрд░реБрдЖрдд рдХрд░реЗрдВ (рдХреЙрд▓ рджреАрдХреНрд╖рд╛) ред рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдирд╛рдо рд╕реЗ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ - рдЖрдк рдЖрдВрддрд░рд┐рдХ рдЧреНрд░рд╛рд╣рдХ рдХреЛ рдХреБрдЫ рдирдВрдмрд░ рд╕реЗ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ (рдпрджрд┐ рд╡рд╣, рдирдВрдмрд░, рдЖрдкрдХреЗ рдбрд╛рдпрд▓рдкреНрд▓рд╛рди рджреНрд╡рд╛рд░рд╛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред рдлрд╝рдВрдХреНрд╢рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╡рд╛рдВрдЫрд┐рдд рдЦрд╛рддреЗ рдкрд░ рд░рд╛рдЗрдЯ-рдХреНрд▓рд┐рдХ (рдмрд╛рдж рдореЗрдВ рдкреАрд╕реАрдПрдо рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрджрд░реНрднрд┐рдд) рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рдЙрдЪрд┐рдд рдЖрдЗрдЯрдо рдХрд╛ рдЪрдпрди рдХрд░реЗрдВред рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рд╡рд╛рд▓реА рдЦрд┐рдбрд╝рдХреА рдореЗрдВ, рд╡рд╛рдВрдЫрд┐рдд рд╕рдВрдЦреНрдпрд╛ рджрд░реНрдЬ рдХрд░реЗрдВ рдФрд░, рд╡реЙрдЗрд▓рд╛ - рдЯреЗрд▓реАрдлреЛрди рдЪрдпрдирд┐рдд рд╡реНрдпрдХреНрддрд┐ рд╕реЗ рдмрдЬ рд░рд╣рд╛ рд╣реИ, рд╡рд╣ рдлреЛрди рдЙрдард╛рддрд╛ рд╣реИ рдФрд░ рддрд╛рд░рд╛рдВрдХрди рдЪрд┐рд╣реНрди рдЗрд╕реЗ рдЙрд╕ рдирдВрдмрд░ рд╕реЗ рдЬреЛрдбрд╝рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдордиреЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рд╣реИред рдЖрдк рдорд╛рдЙрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рдЦрд╛рддреЗ рдХреЛ рджреВрд╕рд░реЗ рдореЗрдВ рднреА рдЦреАрдВрдЪ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕рд╣рдордд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдЙрдирдХреЗ рдмреАрдЪ рдПрдХ рд╕рдВрдмрдВрдз рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдореАрдЯрдореА рд░реВрдо (рд╕рдореНрдореЗрд▓рди рдХрдХреНрд╖) ред рдЗрд╕ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдЬрд╛рдХрд░, рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдмрдирд╛рдП рдЧрдП рд╕рдореНрдореЗрд▓рдиреЛрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдПрдХ рдирдпрд╛ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╡рд╣рд╛рдВ рдХреБрдЫ рдкреНрд░рддрд┐рднрд╛рдЧрд┐рдпреЛрдВ рдХреЛ рдЖрдордВрддреНрд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдкрдирд╛ рд╕рдореНрдореЗрд▓рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрдкрдпреБрдХреНрдд рдЕрдиреБрднрд╛рдЧ рдкрд░ рдЬрд╛рдПрдБ, "
рдбрд╛рдпрдирд╛рдорд┐рдХ рдореАрдЯрдореЗ рдмрдирд╛рдПрдБ " рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдФрд░ рд╡рд┐рдВрдбреЛ рдореЗрдВ рдорд╛рдВрдЧреА рдЧрдИ рдЬрд╛рдирдХрд╛рд░реА рдбрд╛рд▓реЗрдВред рдХреНрд▓рд┐рдХ рдХрд┐рдпрд╛ "рдареАрдХ рд╣реИ" - рдФрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЪрд▓реА рдЧрдИ :)
рдЬрд╛рд╕реВрд╕ (рдПрдХ рдХреЙрд▓ рд╕реБрдирдиреЗ рдХреЗ рд▓рд┐рдП) ред рд╡рд╣ рдХреНрдпрд╛ рдХрд░ рд░рд╣реА рд╣реИ? рдирд╛рдо рд╕реЗ рдЖрдк рд╕рдордЭ рд╕рдХрддреЗ рд╣реИрдВ - рдЪрдпрдирд┐рдд рд╡рд╛рд░реНрддрд╛рд▓рд╛рдк рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛ рдФрд░ рднрд╛рд╖рдг рд╕реНрдЯреНрд░реАрдо рд╕реБрдирдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рддрд╛ рд╣реИред рдПрдЬреЗрдВрдЯреЛрдВ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдФрд░ рд╕рддреНрдпрд╛рдкрди рдХреЗ рд▓рд┐рдП рдХреЙрд▓ рд╕реЗрдВрдЯрд░ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рдкрд░ рдлрд╝рдВрдХреНрд╢рди рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд╕рд╛рде рд╣реА, рдмрд╛рддрдЪреАрдд рдХреЗ рджреМрд░рд╛рди, рд╡рд╛рд░реНрддрд╛рдХрд╛рд░ рд╕реБрдирдиреЗ рдХреЗ рддрдереНрдп рдкрд░ рднреА рд╕рдВрджреЗрд╣ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рддреЗ рд╕рдордп, рдХрдо рд╕реЗ рдХрдо рдореИрдВрдиреЗ, рдХреЛрдИ рд╕рдВрдХреЗрдд рдпрд╛ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдирд╣реАрдВ рд╕реБрдиреАред рдкреИрдирд▓ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рд╕реБрдирдиреЗ рдХрд╛ рдЕрдзрд┐рдХрд╛рд░ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐
рдЬрд╛рд╕реВрд╕реА рдЙрд╕рдХреЗ рдЙрдкрдпреЛрдЧ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреА
рднреВрдорд┐рдХрд╛рдУрдВ рдХреЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдореМрдЬреВрдж рд╣реЛред рдЗрд╕рд▓рд┐рдП, рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рдЦрд░рд╛рдм рдЗрд░рд╛рджреЗ рд╕реЗ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреИрдирд▓ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╕рдХреНрд╖рдо рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ рдХреЗрд╡рд▓ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдЕрдзрд┐рдХрд╛рд░ рджреЗрдВред рд╡рд┐рднрд╛рдЧ рдкреНрд░рдореБрдЦ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП :)
рдирд┐рд╖реНрдХрд░реНрд╖
рдореЛрдирд╛рд╕реНрдЯ, рд╕рдорд╛рди рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ (FOP, рд▓рд┐рдВрдХ, рдЖрджрд┐) рдХреЗ рд╕рд╛рде рд╡реИрдХрд▓реНрдкрд┐рдХ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреА рддрд░рд╣ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рд╣реИ рдФрд░ рддрджрдиреБрд╕рд╛рд░, рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдЕрдзрд┐рдХрд╛рд░ рд╣реИред
рдЙрдкрдпреЛрдЧ рдореЗрдВ рдЖрд╕рд╛рдиреА, рд╕реНрдерд╛рдкрдирд╛ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ рдЖрд╕рд╛рдиреА, рдПрдХ рдЬрдЧрд╣ рд╕реЗ рдХрдИ рд╕рд░реНрд╡рд░реЛрдВ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░рдирд╛ - рдпрд╣ рд╕рдм, рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдкрд░реНрдпрд╛рдкреНрдд рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛрдЧрд╛ред
рд╕рдВрджрд░реНрдн
UPD: рдХрд╖реНрдЯрдкреНрд░рдж рдкрд╛рда рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреА рдПрдХ рдЬреЛрдбрд╝реА рдлрд┐рдХреНрд╕реНрдбред