{"id":180265,"date":"2013-05-20T16:50:03","date_gmt":"2013-05-20T12:50:03","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=180265"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=180265","title":{"rendered":"<span class=\"post_title\">\u041a\u043e\u0440\u043f\u043e\u0440\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0410\u0422\u0421 \u043d\u0430 \u0431\u0430\u0437\u0435 Asterisk<\/span>"},"content":{"rendered":"<div class=\"content html_format\">   \t<b>\u041f\u0440\u0435\u0434\u043f\u043e\u0441\u044b\u043b\u043a\u0438<\/b><\/p>\n<p>  \u0412 \u0436\u0438\u0437\u043d\u0438 \u043b\u044e\u0431\u043e\u0439 \u043a\u0440\u0443\u043f\u043d\u043e\u0439 \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0435\u0439\u0441\u044f \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u0440\u0430\u043d\u043e \u0438\u043b\u0438 \u043f\u043e\u0437\u0434\u043d\u043e \u0432\u0441\u0442\u0430\u0451\u0442 \u0432\u043e\u043f\u0440\u043e\u0441 \u043e \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u043d\u0446\u0438\u0438 \u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0435 \u043e\u0442 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0438\u0438 \u043a IP.<\/p>\n<p>  \u0414\u0430\u043b\u0451\u043a\u043e\u0439 \u0432\u0435\u0441\u043d\u043e\u0439 2011 \u0438 \u043f\u0435\u0440\u0435\u0434 \u043d\u0430\u0448\u0435\u0439 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0435\u0439 \u0432\u0441\u0442\u0430\u043b \u0442\u0430\u043a\u043e\u0439 \u0432\u043e\u043f\u0440\u043e\u0441, \u0442.\u00a0\u043a. \u0432\u043d\u0435\u0448\u043d\u0438\u0435 \u0438 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u043b\u0438\u043d\u0438\u0438 \u0442\u0440\u0435\u0431\u0443\u044e\u0442 \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e\u0433\u043e \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f, \u0430 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u0440\u0442\u043e\u0432 \u043d\u0430 \u0441\u0442\u0430\u0440\u043e\u043c Panasonic KX-TA624 \u0431\u044b\u043b\u043e \u0437\u0430\u0434\u0430\u043d\u043e \u0441\u0442\u0430\u0442\u0438\u0447\u043d\u043e \u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044e \u043d\u0435 \u043f\u043e\u0434\u043b\u0435\u0436\u0430\u043b\u043e. \u041e\u0442\u043a\u0440\u044b\u0442\u0438\u0435 \u043e\u0444\u0438\u0441\u043e\u0432 \u0432 \u0434\u0440\u0443\u0433\u0438\u0445 \u0433\u043e\u0440\u043e\u0434\u0430\u0445 \u0438 \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u0435 \u0435\u0434\u0438\u043d\u043e\u0439 \u0441\u043b\u0443\u0436\u0431\u044b \u043f\u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c\u0438 \u0432 \u0434\u0440\u0443\u0433\u0438\u0445 \u0433\u043e\u0440\u043e\u0434\u0430\u0445 \u0442\u0430\u043a \u0436\u0435 \u043f\u043e\u0434\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u043b\u043e \u043a \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u0430\u043c.<\/p>\n<p>  <b>\u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435<\/b><\/p>\n<p>  \u041a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 \u043f\u0440\u043e\u0434\u0443\u043a\u0442 \u0434\u043e\u043b\u0436\u0435\u043d \u0438\u043c\u0435\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438:<br \/>  1) \u0438\u043c\u0435\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e (\u0432 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043d\u0435 \u043c\u0435\u043d\u0435\u0435 100) \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u0438 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0445 \u043b\u0438\u043d\u0438\u0439 \u0438 \u0431\u044b\u0442\u044c \u0433\u043e\u0442\u043e\u0432\u044b\u043c \u043a \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044e;<br \/>  2) \u0443\u043c\u0435\u0442\u044c \u043f\u0440\u0438\u0432\u0435\u0442\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0432 \u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u0438 \u0441\u043e\u043e\u0431\u0449\u0430\u0442\u044c \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u043e\u043d\u0438 \u043f\u043e\u0437\u0432\u043e\u043d\u0438\u043b\u0438 \u0432 \u043d\u0435\u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0432\u0440\u0435\u043c\u044f, \u043a\u043e\u0433\u0434\u0430 \u043d\u0438\u043a\u043e\u0433\u043e \u043d\u0435\u0442 \u043d\u0430 \u043c\u0435\u0441\u0442\u0435;<br \/>  3) \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u044b \u043f\u0435\u0440\u0435\u0430\u0434\u0440\u0435\u0441\u0430\u0446\u0438\u0438 \u043f\u0440\u0438 \u043d\u0435 \u043e\u0442\u0432\u0435\u0442\u0435\/\u0437\u0430\u043d\u044f\u0442\u043e\u0441\u0442\u0438\/\u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0438\u043d\u0434\u0438\u0432\u0438\u0434\u0443\u0430\u043b\u044c\u043d\u043e;<br \/>  4) \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u044b \u043e\u0447\u0435\u0440\u0435\u0434\u0438. \u041e\u0447\u0435\u0440\u0435\u0434\u044c \u2014 \u0433\u0440\u0443\u043f\u043f\u0430 \u043d\u043e\u043c\u0435\u0440\u043e\u0432, \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0437\u0432\u043e\u043d\u043a\u043e\u0432 \u0432\u043d\u0443\u0442\u0440\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043f\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u043c \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u043c;<br \/>  5) \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u043b\u043e\u0433 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 (\u043a\u0430\u043a \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0439, \u0442\u0430\u043a \u0438 \u0430\u0443\u0434\u0438\u043e);<br \/>  6) \u0438\u043c\u0435\u0442\u044c \u0433\u0438\u0431\u043a\u0443\u044e \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043f\u0440\u0430\u0432 \u043d\u0430 \u0432\u043d\u0435\u0448\u043d\u0438\u0435 \u0437\u0432\u043e\u043d\u043a\u0438. \u0414\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u044b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u0437\u0432\u043e\u043d\u0438\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u043d\u043e\u043c\u0435\u0440\u0430; \u043d\u0430 \u0433\u043e\u0440\u043e\u0434\u0441\u043a\u0438\u0435 \u043d\u043e\u043c\u0435\u0440\u0430; \u043d\u0430 \u043b\u044e\u0431\u044b\u0435 \u043d\u043e\u043c\u0435\u0440\u0430;<br \/>  7) \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0441\u0443\u0442\u043e\u043a, \u0437\u0432\u043e\u043d\u0438\u0442\u044c \u043d\u0430 \u0442\u043e\u0442 \u0438\u043b\u0438 \u0438\u043d\u043e\u0439 \u043d\u043e\u043c\u0435\u0440. <a name=\"habracut\"><\/a><\/p>\n<p>  <b>\u041d\u0435\u0443\u0434\u0430\u0447\u043d\u044b\u0439 \u043e\u043f\u044b\u0442<\/b><\/p>\n<p>  \u041f\u0435\u0440\u0432\u043e\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0439 \u0432\u044b\u0431\u043e\u0440 \u043f\u0430\u043b \u043d\u0430 Planet ipx-1900. \u0421 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0430\u043c\u0438 \u043c\u043e\u0436\u043d\u043e \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0437\u0434\u0435\u0441\u044c:<br \/>  <a href=\"http:\/\/www.planet.com.ru\/en\/product\/product_keyf.php?id=18500\">www.planet.com.ru\/en\/product\/product_keyf.php?id=18500<\/a><\/p>\n<p>  \u0421\u0440\u0435\u0434\u0438 \u043f\u0440\u043e\u0447\u0435\u0433\u043e \u0437\u0430\u044f\u0432\u043b\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430:<br \/>  \u2022 \u0410\u0432\u0442\u043e\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0442\u043e\u0440 (AA) <br \/>  \u2022 \u0418\u043d\u0442\u0435\u0440\u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0435 \u0433\u043e\u043b\u043e\u0441\u043e\u0432\u044b\u0435 \u043e\u0442\u0432\u0435\u0442\u044b (IVR) <br \/>  \u2022 \u0414\u0435\u0442\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043e\u0442\u0447\u0435\u0442 \u043f\u043e \u0432\u044b\u0437\u043e\u0432\u0430\u043c (CDR)<\/p>\n<p>  \u041d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0438 \u043e\u0434\u0438\u043d \u0438\u0437 \u044d\u0442\u0438\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432. \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 Planet&#8217;\u0430 \u0432\u043e\u043f\u0440\u043e\u0441\u044b \u0438\u0433\u043d\u043e\u0440\u0438\u0440\u043e\u0432\u0430\u043b\u0430. \u0417\u0430\u0432\u0435\u0441\u0442\u0438 \u043d\u0430 \u044d\u0442\u043e \u0436\u0435\u043b\u0435\u0437\u043e 8800 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u043c\u0438 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u043c\u0438 \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u043b\u043e\u0441\u044c.<\/p>\n<p>  \u041f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u043a\u043e\u0432\u044b\u0440\u044f\u0442\u044c \u0433\u043b\u0443\u0431\u0436\u0435. \u041d\u0430 \u044d\u0442\u043e\u0439 PBX \u0435\u0441\u0442\u044c com-\u043f\u043e\u0440\u0442 \u0438 telnet, \u043f\u0440\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0438 \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043b\u043e\u0433\u0438\u043d \u0438 \u043f\u0430\u0440\u043e\u043b\u044c. \u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 Planet&#8217;\u0430 \u0441\u043e\u043e\u0431\u0449\u0430\u0442\u044c \u0440\u0435\u043a\u0432\u0438\u0437\u0438\u0442\u044b \u0434\u043b\u044f \u0432\u0445\u043e\u0434\u0430 \u043e\u0442\u043a\u0430\u0437\u0430\u043b\u0430\u0441\u044c\u2026 \u0442\u043e\u0447\u043d\u0435\u0435 \u043f\u0440\u043e\u0438\u0433\u043d\u043e\u0440\u0438\u0440\u043e\u0432\u0430\u043b\u0430 \u043f\u0440\u043e\u0441\u044c\u0431\u0443. \u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u043e\u0439 \u0434\u043b\u044f \u0434\u0435\u0432\u0430\u0439\u0441\u0430 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 \u0437\u0434\u0435\u0441\u044c:<br \/>  <a href=\"http:\/\/planet.com.ru\/en\/support\/download2.php?id=18500&#038;file_type=65&#038;prod_model=IPX-1900\">planet.com.ru\/en\/support\/download2.php?id=18500&#038;file_type=65&#038;prod_model=IPX-1900<\/a><\/p>\n<p>  \u041f\u0440\u043e\u0448\u0438\u0432\u043a\u0430 \u043e\u043a\u0430\u0437\u0430\u043b\u0430\u0441\u044c \u043d\u0435 \u0447\u0435\u043c \u0438\u043d\u044b\u043c, \u043a\u0430\u043a \u0430\u0440\u0445\u0438\u0432\u043e\u043c:  <\/p>\n<pre><code class=\"bash\">$ mkdir untar && cd untar && tar xvf ..\/FW-IPX1900_1.16.8.dat rootfs.jffs2 vmImage start_install.sh aimage.tar.gz <\/code><\/pre>\n<p>  \u0421\u0430\u043c\u044b\u043c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u043c \u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f start_install.sh \u2014 \u044d\u0442\u043e\u0442 \u0441\u043a\u0440\u0438\u043f\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0441\u0440\u0430\u0437\u0443 \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u043d\u0430 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e. \u0421\u0440\u0430\u0437\u0443 \u043f\u043e\u0441\u043b\u0435 \u0441\u0442\u0440\u043e\u043a\u0438:  <\/p>\n<pre><code class=\"bash\">#!\/bin\/sh <\/code><\/pre>\n<p>  \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0441\u0442\u0440\u043e\u0447\u043a\u0443:  <\/p>\n<pre><code class=\"bash\">useradd -groot -proot toor <\/code><\/pre>\n<p>  \u041f\u0430\u043a\u0443\u0435\u043c \u0432\u0441\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u043e \u0432 \u0430\u0440\u0445\u0438\u0432 \u0438 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0443 \u043d\u0430 \u0441\u0442\u0430\u043d\u0446\u0438\u044e.<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0432\u0441\u0451 \u043f\u0440\u043e\u0439\u0434\u0451\u0442 \u0443\u0434\u0430\u0447\u043d\u043e, \u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u043b\u043e\u0433\u0438\u043d\u0438\u0442\u0441\u044f \u043d\u0430 \u0441\u0442\u0430\u043d\u0446\u0438\u044e \u0447\u0435\u0440\u0435\u0437 com-\u043f\u043e\u0440\u0442 \u0438\u043b\u0438 telnet.<br \/>  \u0412\u043d\u0443\u0442\u0440\u0438 \u0431\u044b\u043b \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d \u03bcClinux \u0441 Asterix 1.4<\/p>\n<p>  \u0418 \u043d\u0430\u0447\u0430\u043b\u043e\u0441\u044c \u0434\u043e\u043f\u0438\u043b\u0438\u0432\u0430\u043d\u0438\u0435 \u0441\u0442\u0430\u043d\u0446\u0438\u0438 \u0434\u043e \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f. \u0421\u043f\u0438\u0441\u043e\u043a \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0432\u044b\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0442\u044c \u043d\u0435 \u0431\u0443\u0434\u0435\u043c, \u043f\u043e\u0442\u043e\u043c\u0443 \u043a\u0430\u043a \u043e\u043d, \u043a \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u043c\u0443 \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0431\u0435\u0437\u0432\u043e\u0437\u0432\u0440\u0430\u0442\u043d\u043e \u0443\u0442\u0435\u0440\u044f\u043d. <\/p>\n<p>  \u0411\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0443 \u043a \u043a\u043e\u043d\u0441\u043e\u043b\u0438 \u0441\u0442\u0430\u043d\u0446\u0438\u0438, \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043f.1-4 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0437\u0430\u0434\u0430\u043d\u0438\u044f. \u0418 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043d\u0430 \u0441\u0442\u0430\u043d\u0446\u0438\u0438 8800, \u0447\u0442\u043e \u0442\u043e\u0436\u0435 \u043d\u0435 \u043f\u043b\u043e\u0445\u043e, \u0435\u0441\u043b\u0438 \u0431\u044b \u043d\u0435:<br \/>  1) \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u044b\u0435 \u0437\u0430\u0432\u0438\u0441\u0430\u043d\u0438\u044f \u0441\u0442\u0430\u043d\u0446\u0438\u0438 \u0438 \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u043f\u043e\u0440\u0442\u043e\u0432;<br \/>  2) \u0435\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0441\u0442\u0430\u043d\u0446\u0438\u0438 \u043f\u043e \u043d\u043e\u0447\u0430\u043c;<br \/>  3) \u0432\u0440\u0435\u043c\u0435\u043d\u0430\u043c\u0438, \u043f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438, \u0441\u0442\u0430\u043d\u0446\u0438\u0438 \u043d\u0435 \u0443\u0434\u0430\u0432\u0430\u043b\u043e\u0441\u044c \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0441 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c, \u0438 \u043e\u043d\u0430 \u0441\u043e\u043e\u0431\u0449\u0430\u043b\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c, \u0447\u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043d\u0435 \u0440\u0430\u0431\u043e\u0447\u0435\u0435, \u0445\u043e\u0442\u044f \u043d\u0430 \u0434\u0435\u043b\u0435 \u0432\u0440\u0435\u043c\u044f \u0431\u044b\u043b\u043e \u0440\u0430\u0431\u043e\u0447\u0438\u043c.<\/p>\n<p>  \u0422\u0435\u043c \u043d\u0435 \u043c\u0435\u043d\u0435\u0435, \u0432 \u0442\u0430\u043a\u043e\u043c \u0432\u0438\u0434\u0435 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0438\u044f \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043e\u0432\u0430\u043b\u0430 \u0432 \u0420\u0435\u0433\u0442\u0430\u0439\u043c \u043e\u043a\u043e\u043b\u043e \u043f\u043e\u043b\u0443\u0442\u043e\u0440\u0430 \u043b\u0435\u0442. \u0422\u0435\u043c \u043d\u0435 \u043c\u0435\u043d\u0435\u0435 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u043b\u043e \u00ab\u043f\u0438\u043d\u0430\u0442\u044c\u00bb \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 (\u0434\u0430-\u0434\u0430, \u0438\u043c\u0435\u043d\u043d\u043e \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443) \u043d\u0430 \u0442\u0435\u043c\u0443 \u0432\u043e\u043f\u043b\u043e\u0449\u0435\u043d\u0438\u044f \u0432 \u0436\u0438\u0437\u043d\u044c \u043c\u0435\u0447\u0442\u044b \u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u043e\u043c \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u043c \u0437\u0430\u0434\u0430\u043d\u0438\u0438, \u0438 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0440\u0430\u0437\u0440\u043e\u0434\u0438\u043b\u0430\u0441\u044c.<\/p>\n<p>  <b>\u0416\u0435\u043b\u0435\u0437\u043e<\/b><\/p>\n<p>  \u041d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0430 \u0441 planet \u043d\u0430 \u043e\u0431\u044b\u0447\u043d\u044b\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 \u0432 \u0440\u0430\u0441\u043f\u043e\u0440\u044f\u0436\u0435\u043d\u0438\u0438 \u0438\u043c\u0435\u043b\u043e\u0441\u044c:<br \/>  1) \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0433\u043e\u043b\u043e\u0441\u043e\u0432\u044b\u0445 \u0448\u043b\u044e\u0437\u043e\u0432 planet ata-150s (2 fxs \u043f\u043e\u0440\u0442\u0430);<br \/>  2) linksys spa-3000 (1fxo + 1 fxs \u043f\u043e\u0440\u0442) \u2014 2 \u0448\u0442\u0443\u043a\u0438;<br \/>  3) \u0441\u0432\u044f\u0437\u043a\u0430 \u0430\u043d\u0430\u043b\u043e\u0433\u043e\u0432\u044b\u0445 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 (\u043d\u0430\u0441\u043b\u0435\u0434\u0438\u0435 Panasonic);<br \/>  4) VoIP phone dlink-dph150s, dlink-dph150se;<br \/>  5) \u0441\u0435\u0440\u0432\u0435\u0440 \u0441 \u041e\u0421 Debian;<br \/>  6) \u0441\u0435\u0442\u0435\u0432\u044b\u0435 \u0444\u0438\u043b\u044c\u0442\u0440\u044b, \u0432\u0438\u0442\u0430\u044f \u043f\u0430\u0440\u0430, \u0441\u0432\u0438\u0442\u0447 \ud83d\ude42<\/p>\n<p>  <b>\u0421\u0443\u0431\u044a\u0435\u043a\u0442\u0438\u0432\u043d\u044b\u0439 \u043e\u0442\u0437\u044b\u0432 \u043e \u0436\u0435\u043b\u0435\u0437\u0435 <\/b><\/p>\n<p>  VoIP dlink \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u0445\u043e\u0440\u043e\u0448\u043e. \u0417\u0430\u0432\u0438\u0441\u0430\u043d\u0438\u0439 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435 \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0435\u0442\u0441\u044f. \u0411\u044b\u043b\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0441 \u0431\u0440\u0430\u043a\u043e\u043c, \u043d\u043e \u0438\u0445 \u0431\u0435\u0437 \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u0432 \u043f\u043e\u043c\u0435\u043d\u044f\u043b\u0438 \u043d\u0430 \u043d\u043e\u0432\u044b\u0435.<\/p>\n<p>  Linksys \u2014 \u043d\u0435\u043f\u043b\u043e\u0445\u043e. \u0418\u043d\u043e\u0433\u0434\u0430 \u0441\u043b\u0443\u0447\u0430\u044e\u0442\u0441\u044f \u0437\u0430\u0432\u0438\u0441\u0430\u043d\u0438\u044f, \u043f\u0440\u0438 \u0447\u0435\u043c \u0437\u0430\u0432\u0438\u0441\u0430\u0435\u0442 \u043d\u0435 \u0441\u0430\u043c \u0433\u043e\u043b\u043e\u0441\u043e\u0432\u043e\u0439 \u0448\u043b\u044e\u0437, \u0430 \u043f\u043e\u0440\u0442 FXO \u043d\u0430 \u043d\u0451\u043c. \u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u044e \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432. <\/p>\n<p>  Planet ata-150s \u2014 \u043f\u043b\u043e\u0445\u043e. \u041e\u0447\u0435\u043d\u044c \u0447\u0430\u0441\u0442\u043e \u0441\u043b\u0443\u0447\u0430\u044e\u0442\u0441\u044f \u0437\u0430\u0432\u0438\u0441\u0430\u043d\u0438\u044f, \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u043e\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0448\u0443\u043c\u044b \u0432 \u0442\u0440\u0443\u0431\u043a\u0435. \u041f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430. \u0411\u044b\u043b\u0438 \u043a\u0443\u043f\u043b\u0435\u043d\u044b \u043f\u0430\u0447\u043a\u043e\u0439 \u2014 \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u0442\u0435\u043c, \u0447\u0442\u043e \u0435\u0441\u0442\u044c.<\/p>\n<p>  <b>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 Asterisk<\/b><\/p>\n<p>  \u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u043b\u043e\u0433 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 asterisk \u043d\u0430 debian \u043d\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u043b\u0441\u044f. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0434\u043b\u044f \u0441\u0442\u0430\u0442\u044c\u0438 \u0431\u0443\u0434\u0443\u0442 \u043f\u0435\u0440\u0435\u0432\u0435\u0434\u0435\u043d\u044b \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u043d\u0430 Ubuntu 12.04. \u041e\u0442\u043b\u0438\u0447\u0438\u0439, \u043f\u043e \u0431\u043e\u043b\u044c\u0448\u043e\u043c\u0443 \u0441\u0447\u0435\u0442\u0443, \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u043e\u0447\u0435\u043d\u044c \u043c\u0430\u043b\u043e, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u0430\u0440\u0438\u0439 debian \u043d\u0435 \u0432\u043a\u043b\u044e\u0447\u0435\u043d Asterisk 1.8, \u043d\u043e \u043e\u043d \u0435\u0441\u0442\u044c \u0432 backports. <\/p>\n<p>  \u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u0430\u043a\u0435\u0442\u044b:<br \/>   1 asterisk \u2014 Asterisk 1.8<br \/>   2 libasterisk-agi-perl \u2014 AGI \u043c\u043e\u0434\u0443\u043b\u044c \u0434\u043b\u044f perl. \u041e\u0431 \u044d\u0442\u043e\u043c \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u0437\u0436\u0435.<br \/>   3 asterisk-mysql \u2014 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 Asterisk, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0443 \u043d\u0435 \u0432 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u043c \u0444\u0430\u0439\u043b\u0435, \u0430 \u0432 \u0431\u0430\u0437\u0435 \u0434\u0430\u043d\u043d\u044b\u0445<\/p>\n<pre><code class=\"bash\">$ sudo aptitude install asterisk libasterisk-agi-perl asterisk-mysql mysql-server <\/code><\/pre>\n<p>  <b>\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043b\u043e\u0433\u0430 \u0437\u0432\u043e\u043d\u043a\u043e\u0432<\/b><\/p>\n<p>  1) \u0418\u0437-\u043f\u043e\u0434 root&#8217;\u0430 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043d\u043e\u0432\u0443\u044e \u0431\u0430\u0437\u0443 \u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f:  <\/p>\n<pre><code class=\"bash\">CREATE DATABASE astr; GRANT ALL PRIVILEGES ON astr.* TO 'asterisk'@'localhost' IDENTIFIED BY 'super-pass' WITH GRANT OPTION; EXIT; <\/code><\/pre>\n<p>  2) \u0417\u0430\u0445\u043e\u0434\u0438\u043c \u043f\u043e\u0434 \u0442\u043e\u043b\u044c\u043a\u043e \u0447\u0442\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c:  <\/p>\n<pre><code class=\"bash\">$ mysql -uasterisk -psuper-pass astr <\/code><\/pre>\n<p>  3) \u0421\u043e\u0437\u0434\u0430\u0451\u043c \u0442\u0430\u0431\u043b\u0438\u0446\u0443:  <\/p>\n<pre><code class=\"bash\">CREATE TABLE `cdr` ( `calldate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',  `clid` varchar(80) NOT NULL DEFAULT '',  `src` varchar(80) NOT NULL DEFAULT '',  `dst` varchar(80) NOT NULL DEFAULT '',  `dcontext` varchar(80) NOT NULL DEFAULT '',  `channel` varchar(80) NOT NULL DEFAULT '',  `dstchannel` varchar(80) NOT NULL DEFAULT '',  `lastapp` varchar(80) NOT NULL DEFAULT '',  `lastdata` varchar(80) NOT NULL DEFAULT '',  `duration` int(11) NOT NULL DEFAULT '0',  `billsec` int(11) NOT NULL DEFAULT '0',  `disposition` varchar(45) NOT NULL DEFAULT '',  `amaflags` int(11) NOT NULL DEFAULT '0',  `accountcode` varchar(20) NOT NULL DEFAULT '',  `userfield` varchar(255) NOT NULL DEFAULT '',  KEY `calldate` (`calldate`),  KEY `dst` (`dst`),  KEY `accountcode` (`accountcode`) ); EXIT; <\/code><\/pre>\n<p>  4) \u041f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u043a\u043e\u043d\u0444\u0438\u0433\u043e\u0432 \u0430\u0441\u0442\u0435\u0440\u0438\u0441\u043a (\u0432\u0441\u0435 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u043e\u0442 \u0438\u043c\u0435\u043d\u0438 \u0441\u0443\u043f\u0435\u0440-\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f) \u0438 \u0434\u0435\u043b\u0430\u0435\u043c \u043a\u043e\u043f\u0438\u044e \u0432\u0441\u0435\u0433\u043e \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0433\u043e \u043d\u0430 \u0432\u0441\u044f\u043a\u0438\u0439 \u0441\u043b\u0443\u0447\u0430\u0439:  <\/p>\n<pre><code class=\"bash\"># cp -r ..\/asterisk\/ ~\/asterisk_config # echo '' &gt; cdr_mysql.conf && mcedit cdr_mysql.conf  <\/code><\/pre>\n<p>  \u0423 \u043d\u0430\u0441 \u043e\u043d \u0438\u043c\u0435\u0435\u0442 \u0432\u0438\u0434:  <\/p>\n<pre><code class=\"bash\">[global] hostname=localhost dbname=astr table=cdr password=super-pass user=asterisk  [columns] alias start =&gt; calldate <\/code><\/pre>\n<p>  \u041a\u043e\u043d\u0444\u0438\u0433 cdr.conf \u043e\u0441\u0442\u0430\u043b\u0441\u044f \u0431\u0435\u0437 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439.<\/p>\n<p>  <b>\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u0438 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u044b \u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u0437\u0432\u043e\u043d\u043a\u043e\u0432<\/b><\/p>\n<p>  \u0414\u043b\u044f \u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u0437\u0432\u043e\u043d\u043a\u043e\u0432 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c 4 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0430:<br \/>   1 phone_int \u2014 \u0434\u0435\u0444\u043e\u043b\u0442\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435. \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u044b \u0437\u0432\u043e\u043d\u043a\u0438 \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 3-\u0445 \u0437\u043d\u0430\u0447\u043d\u044b\u0435 \u043d\u043e\u043c\u0435\u0440\u0430.<br \/>   2 phone_local \u2014 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c \u043c\u043e\u0436\u043d\u043e \u0437\u0432\u043e\u043d\u0438\u0442\u044c \u043d\u0430 7-\u0437\u043d\u0430\u0447\u043d\u044b\u0435 \u0432\u043d\u0443\u0442\u0440\u0438\u0433\u043e\u0440\u043e\u0434\u0441\u043a\u0438\u0435 \u043d\u043e\u043c\u0435\u0440\u0430;<br \/>   3 phone_long_d \u2014 \u044d\u0442\u0438\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u044b \u0437\u0432\u043e\u043d\u043a\u0438 \u0432\u043d\u0443\u0442\u0440\u0438 \u0441\u0442\u0440\u0430\u043d\u044b;<br \/>   4 phone_too_long_d \u2014 \u043c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u044b\u0435 \u0437\u0432\u043e\u043d\u043a\u0438.<\/p>\n<p>  \u041a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u044b \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u044b \u0434\u0440\u0443\u0433 \u0432 \u0434\u0440\u0443\u0433\u0430, \u0442.\u0435. \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c phone_too_long_d \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u043e \u0437\u0432\u043e\u043d\u0438\u0442\u044c \u0438 \u043d\u0430 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u043d\u043e\u043c\u0435\u0440\u0430 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432, \u0438 \u0432\u043d\u0443\u0442\u0440\u0438 \u0433\u043e\u0440\u043e\u0434\u0430.<\/p>\n<p>  \u041f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u043c:<\/p>\n<p>  1) \u0420\u0430\u0437\u043e\u0431\u044c\u0451\u043c sip.conf \u043d\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e:  <\/p>\n<pre><code class=\"bash\"># mcedit sip.conf   #include sip_general.conf #include sip_trunk.conf #include sip_internal.conf <\/code><\/pre>\n<p>  sip_general.conf \u2014 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 asterisk.<br \/>  sip_internal.conf \u2014 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u043d\u043e\u043c\u0435\u0440\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439;<br \/>  sip_trunk.conf \u2014 \u0432\u043d\u0435\u0448\u043d\u0438\u0435 \u043b\u0438\u043d\u0438\u0438;<\/p>\n<p>  2) \u041f\u0440\u0438\u043c\u0435\u0440 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 3-\u0445 \u043d\u043e\u043c\u0435\u0440\u0432 \u0432 sip_internal.conf:<\/p>\n<pre><code class=\"bash\">[defaults](!) type = friend qualify = yes ; \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u044b \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 ; \u0437\u0432\u043e\u043d\u043a\u0438, \u043d\u043e \u0441 \u043b\u044e\u0431\u043e\u0433\u043e \u0445\u043e\u0441\u0442\u0430 context = phone_int canreinvite = no host = dynamic callgroup = 1 pickupgroup = 1  [101](defaults)  secret = pass_for_reception  callerid = &quot;Sveta&quot;&lt;101&gt;  context = phone_long_d  [112](defaults)  secret = pass_for_artur  callerid = \u201cArtur&quot;&lt;112&gt;  context = phone_local  [106](defaults)  secret = pass_for_fax  callerid = &quot;Fax&quot;&lt;106&gt;  context = phone_too_long_d  [495](defaults)  secret = pass_msk  callerid = &quot;MSK&quot;&lt;495&gt; <\/code><\/pre>\n<p>  \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e 101 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u044b \u0437\u0432\u043e\u043d\u043a\u0438 \u0432\u043d\u0443\u0442\u0440\u0438 \u0420\u043e\u0441\u0441\u0438\u0438 ( context = phone_long_d ); \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e 112 ( phone_local ) \u043c\u043e\u0436\u043d\u043e \u0437\u0432\u043e\u043d\u0438\u0442\u044c \u0432\u043d\u0443\u0442\u0440\u0438 \u0433\u043e\u0440\u043e\u0434\u0430; 106 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u043e \u0437\u0432\u043e\u043d\u0438\u0442\u044c \u043a\u0443\u0434\u0430 \u0443\u0433\u043e\u0434\u043d\u043e; \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e 495 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u044b \u0437\u0432\u043e\u043d\u043a\u0438 \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u043d\u043e\u043c\u0435\u0440\u0430 (\u0435\u0441\u043b\u0438 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442 \u043d\u0435 \u0437\u0430\u0434\u0430\u043d, \u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442 phone_int). \u041f\u043e\u043b\u0435 secret \u2014 \u043f\u0430\u0440\u043e\u043b\u044c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d \u0434\u043b\u044f \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438.<\/p>\n<p>  <b>\u0412\u0445\u043e\u0434\u044f\u0449\u0438\u0435 \u043b\u0438\u043d\u0438\u0438<\/b><\/p>\n<p>  \u041f\u0440\u0438\u043c\u0435\u0440 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u043a\u043e\u043d\u0444\u0438\u0433\u0430:<\/p>\n<pre><code class=\"bash\"># mcedit sip_general.conf  [general] bindport = 5060 bindaddr=0.0.0.0 allowguest = no allowtransfer = yes allowoverlap = no tos_sip = cs3 tos_audio = ef tos_video = af41 srvlookup = no minexpiry = 900 maxexpiry = 3600 defaultexpiry = 360 checkmwi = 10 language = en relaxdtmf = no rtptimeout = 550 rtpholdtimeout = 600 progressinband = never useragent = PBX dtmfmode = rfc2833 disallow = all domain = pbx.webnames.ru ; \u0434\u043e\u043c\u0435\u043d\u043d\u043e\u0435 \u0438\u043c\u044f \u0441\u0442\u0430\u043d\u0446\u0438\u0438 allow = ulaw,alaw,gsm,ilbc,g726,g729,g723 ; \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u043a\u043e\u0434\u0435\u043a\u0438 registertimeout = 60 registerattempts = 65535 externip = 8.8.8.8 ;\u0432\u043d\u0435\u0448\u043d\u0438\u0439 ip \u0441\u0442\u0430\u043d\u0446\u0438\u0438 externrefresh = 10 nat = yes canreinvite = nonat insecure = invite  register = example_num:pass_for_example_num:example_num@proxyreg_time\/example_num <\/code><\/pre>\n<p>  \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 trunk&#8217;\u0430:<\/p>\n<pre><code class=\"bash\"># mcedit sip_trunk.conf  [trunk](!)  type = friend  call-limit=1  canreinvite=no  qualify=yes  context= from_external  disallow=all                    ; need to disallow=all before we can use allow=  allow=ulaw                      ; Note: In user sections the order of codecs  allow=alaw  allow=g723.1                    ; Asterisk only supports g723.1 pass-thru!  allow=g729                      ; Pass-thru only unless g729 license obtained  allow=gsm  ;;   example_num [example_num]  type = peer  username = example_num  fromuser = example_num  secret = pass_for_example_num  fromdomain = 1.1.1.1 ; external pbx ip  host = 1.1.1.1 ; external pbx ip  port = 5060  outboundproxy = 1.1.1.1 ; external pbx ip  outboundproxyport = 5060  context = from_external  ; \u043d\u0430\u0437\u0435\u043c\u043d\u0430\u044f \u043b\u0438\u043d\u0438\u044f \u0431\u0438\u043b\u0430\u0439\u043d [pstn_beeline](trunk)  username = pstn_beeline  fromuser = pstn_beeline  host = dynamic  secret = pass_for_beeline  ;;   88001004022 (RosTelecom) [RTK]  username = trace_num  type = peer  host = 2.2.2.2 ; external pbx ip  insecure=port,invite  context= from_external <\/code><\/pre>\n<p>  \u041b\u0438\u043d\u0438\u044f example_num \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044e \u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044e \u043d\u0430 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u043d\u0446\u0438\u0438, \u0434\u043b\u044f \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f. \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0434\u043b\u044f \u044d\u0442\u043e\u0439 \u043b\u0438\u043d\u0438\u0438 \u043f\u0440\u043e\u043f\u0438\u0441\u0430\u043d\u043e:  <\/p>\n<pre><code class=\"bash\">register = example_num:pass_for_example_num:example_num@proxyreg_time\/example_num <\/code><\/pre>\n<p>  \u0432 sip_general.conf.<\/p>\n<p>  \u041b\u0438\u043d\u0438\u044f pstn_beeline \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u2014 \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u044d\u0442\u0430 \u043e\u0434\u043d\u0430 \u0438\u0437 \u201c\u043d\u0430\u0437\u0435\u043c\u043d\u044b\u0445\u201d \u043b\u0438\u043d\u0438\u0439, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0445 \u0447\u0435\u0440\u0435\u0437 fxo \u043f\u043e\u0440\u0442 linksys spa 3000, \u043d\u043e \u043e\u0431 \u044d\u0442\u043e\u043c \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u0437\u0436\u0435.<\/p>\n<p>  \u041b\u0438\u043d\u0438\u044f RTK \u2014 \u0437\u0434\u0435\u0441\u044c \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043d\u0438 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u043d\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438. \u041d\u0430 \u0441\u0442\u0430\u043d\u0446\u0438\u0438 \u043d\u0443\u0436\u0435\u043d \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0438 ip (\u043f\u043e\u043b\u0435 host), \u0441 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0431\u0443\u0434\u0443\u0442 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u044c \u0437\u0432\u043e\u043d\u043a\u0438. \u042d\u0442\u043e \u043d\u043e\u043c\u0435\u0440 8800 \u2014 \u043d\u0430 \u043d\u0435\u0433\u043e \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u0445\u043e\u0434\u044f\u0449\u0430\u044f \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0438\u044f. \u0412 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u0445 \u0420\u043e\u0441\u0442\u0435\u043b\u0435\u043a\u043e\u043c\u0430 \u0438\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u2014 \u044d\u0442\u043e \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u043d\u044b\u0439 \u043d\u043e\u043c\u0435\u0440.<\/p>\n<p>  \u0414\u043b\u044f \u0432\u0441\u0435\u0445 \u0432\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u0437\u0432\u043e\u043d\u043a\u043e\u0432 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442 \u043e\u0434\u0438\u043d \u2014 from_external.<\/p>\n<p>  <b>Dialplan (\u041f\u043b\u0430\u043d \u043d\u0430\u0431\u043e\u0440\u0430) \u2014 \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0430\u0446\u0438\u044f \u0437\u0432\u043e\u043d\u043a\u043e\u0432<\/b><\/p>\n<p>  \u0421\u0430\u043c\u043e\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0435 \u0432 \u0440\u0430\u0431\u043e\u0442\u0435 \u043b\u044e\u0431\u043e\u0439 \u0410\u0422\u0421 \u2014 \u044d\u0442\u043e \u043f\u043b\u0430\u043d \u043d\u0430\u0431\u043e\u0440\u0430. \u041f\u043b\u0430\u043d \u043d\u0430\u0431\u043e\u0440\u0430 \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0438\u0440\u0443\u0435\u0442 \u0437\u0432\u043e\u043d\u043a\u0438 \u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432 \u043d\u0451\u043c \u043e\u043f\u0438\u0441\u0430\u043d\u044b. \u0418\u0442\u0430\u043a:<\/p>\n<p>  1) \u0418\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0435 \u0437\u0432\u043e\u043d\u043a\u0438.<\/p>\n<pre><code class=\"bash\"> # mcedit extensions.conf  [globals]  [general] autofallthrough=yes    ; \u0437\u0432\u043e\u043d\u043e\u043a \u043d\u0430 \u0442\u0440\u0435\u0445\u0437\u043d\u0430\u0447\u043d\u044b\u0439 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 \u043d\u043e\u043c\u0435\u0440 ; \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u0437\u0432\u043e\u043d\u043a\u0438 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0437 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 ; dial_internal.pl - \u043e\u0431 \u044d\u0442\u043e\u043c \u0447\u0443\u0442\u044c \u043f\u043e\u0437\u0436\u0435 [out_int] ; \u043d\u0430 \u0437\u0432\u0435\u0437\u0434\u043e\u0447\u043a\u0443 \u043d\u0438\u043a\u0430\u043a \u043d\u0435 \u043d\u0443\u0436\u043d\u043e \u0440\u0435\u0430\u0433\u0438\u0440\u043e\u0432\u0430\u0442\u044c exten =&gt; *, 1, NoOp() exten =&gt; _[1-9]XX, 1, Macro(monitor) exten =&gt; _[1-9]XX, n, Macro(int-dial,${EXTEN}) exten =&gt; _[1-9]XX, n, Hangup()  ; \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0435 \u0437\u0432\u043e\u043d\u043a\u0438 - \u0441\u0430\u043c\u0430\u0440\u0430 [out_local] ; \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0437\u0430\u043f\u0438\u0441\u044c exten =&gt; _X., 1, Macro(monitor) exten =&gt; _[1-79]XXXXXX, 2, Dial(SIP\/${EXTEN}@pstn_beeline&SIP\/${EXTEN}@example_num) exten =&gt; _0[1-79]XXXXXX, 2, Dial(SIP\/${EXTEN:1}@pstn_beeline&SIP\/${EXTEN:1}@example_num) exten =&gt; _83[1-79]XXXXXX, 2, Dial(SIP\/${EXTEN:2}@pstn_beeline) exten =&gt; _85[1-79]XXXXXX, 2, Dial(SIP\/${EXTEN:2}@example_num) ; \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 - \u0437\u0432\u043e\u043d\u043e\u043a \u043d\u0430 \u043d\u0430\u0448 \u043c\u043e\u0441\u043a\u043e\u0432\u0441\u043a\u0438\u0439 \u043d\u043e\u043c\u0435\u0440 \u0431\u0443\u0434\u0435\u0442 \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0442\u044c\u0441\u044f \u0447\u0435\u0440\u0435\u0437 \u043d\u0430\u0437\u0435\u043c\u043d\u0443\u044e ; \u043b\u0438\u043d\u0438\u044e. \u0434\u043b\u044f \u0442\u0435\u0441\u0442\u0430 \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0441\u043a\u043e\u0432\u0441\u043a\u043e\u0439 \u043b\u0438\u043d\u0438\u0438 exten =&gt; _094959874596, 2, Dial(SIP\/${EXTEN:1}@pstn_beeline) ; msk line  ; \u043c\u0435\u0436\u0433\u043e\u0440\u043e\u0434 [out_long_d] ; \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0437\u0430\u043f\u0438\u0441\u044c exten =&gt; _X., 1, Macro(monitor) ; \u043a\u0430\u043a \u0431\u0443\u0434\u0435\u043c \u0437\u0432\u043e\u043d\u0438\u0442\u044c \u043c\u0435\u0436\u0433\u043e\u0440\u043e\u0434 ; 1) - \u0431\u0438\u043b\u0430\u0439\u043d ; 2) - \u0434\u0440\u0443\u0433\u0430\u044f \u043b\u0438\u043d\u0438\u044f exten =&gt; _08X., 2, Dial(SIP\/${EXTEN:1}@pstn_beeline&SIP\/${EXTEN:1}@example_num) ; \u043f\u043e\u0437\u0432\u043e\u043d\u0438\u0442\u044c \u043d\u0430 \u043c\u0435\u0436\u0433\u043e\u0440\u043e\u0434 \u0447\u0435\u0440\u0435\u0437 \u0431\u0438\u043b\u0430\u0439\u043d \u0438\u043b\u0438 \u0434\u0440\u0443\u0433\u0443\u044e \u043b\u0438\u043d\u0438\u044e exten =&gt; _838X., 2, Dial(SIP\/${EXTEN:2}@pstn_beeline) exten =&gt; _858X., 2, Dial(SIP\/${EXTEN:2}@example_num)  ; \u043c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u044b\u0435 \u0437\u0432\u043e\u043d\u043a\u0438 [out_too_long_d] exten =&gt; _X., 1, Macro(monitor) exten =&gt; _0X., 2, Dial(SIP\/${EXTEN:1}@pstn_beeline&SIP\/${EXTEN:1}@example_num) ; \u043f\u043e\u0437\u0432\u043e\u043d\u0438\u0442\u044c \u043d\u0430 \u043c\u0435\u0436\u0433\u043e\u0440\u043e\u0434 \u0447\u0435\u0440\u0435\u0437 \u0431\u0438\u043b\u0430\u0439\u043d exten =&gt; _83X., 2, Dial(SIP\/${EXTEN:2}@pstn_beeline) exten =&gt; _85X., 2, Dial(SIP\/${EXTEN:2}@example_num)  ; \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u043d\u043e\u043c\u0435\u0440\u0430 [phone_int] include =&gt; out_int  ; \u0432\u043d\u0443\u0442\u0440\u0438\u0433\u043e\u0440\u043e\u0434\u0441\u043a\u0438\u0435 \u0437\u0432\u043e\u043d\u043a\u0438 [phone_local] include =&gt; phone_int include =&gt; out_local  ; \u043c\u0435\u0436\u0433\u043e\u0440\u043e\u0434 [phone_long_d] include =&gt; phone_local include =&gt; out_long_d  ; \u043c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u044b\u0435 \u0437\u0432\u043e\u043d\u043a\u0438 [phone_too_long_d] include =&gt; phone_long_d include =&gt; out_too_long_d ; ========\u0418\u0421\u0425\u041e\u0414\u042f\u0429\u0418\u0415 \u0417\u0412\u041e\u041d\u041a\u0418==============  <\/code><\/pre>\n<p>  \u0420\u0430\u0437\u0431\u043e\u0440 \u0441\u0442\u0440\u043e\u043a\u0438:  <\/p>\n<pre><code class=\"bash\">exten =&gt; _0[1-79]XXXXXX, 2, Dial(SIP\/${EXTEN:1}@pstn_beeline&SIP\/${EXTEN:1}@example_num) <\/code><\/pre>\n<p>  _0[1-79]XXXXXX \u2014 \u043c\u0430\u0441\u043a\u0430 \u043d\u0430\u0431\u0440\u0430\u043d\u043d\u043e\u0433\u043e \u043d\u043e\u043c\u0435\u0440\u0430. \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u0437\u0434\u0435\u0441\u044c ( <a href=\"http:\/\/voip.rus.net\/tiki-index.php?page=Asterisk+Dialplan+Patterns\">voip.rus.net\/tiki-index.php?page=Asterisk+Dialplan+Patterns<\/a> )<\/p>\n<p>  0 \u2014 \u043f\u0435\u0440\u0432\u0430\u044f \u0446\u0438\u0444\u0440\u0430, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u0440\u0438\u0448\u043b\u0430<br \/>   [1-79] \u2014 \u0432\u0442\u043e\u0440\u043e\u0439 \u0446\u0438\u0444\u0440\u043e\u0439 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043b\u044e\u0431\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u043a\u0440\u043e\u043c\u0435 8, \u0442.\u043a. \u044d\u0442\u043e \u0432\u044b\u0445\u043e\u0434 \u043d\u0430 \u043c\u0435\u0436\u0433\u043e\u0440\u043e\u0434<br \/>  XXXXXX \u2014 \u043b\u044e\u0431\u044b\u0435 7 \u0446\u0438\u0444\u0440<\/p>\n<p>  X \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043b\u044e\u0431\u043e\u043c\u0443 \u0447\u0438\u0441\u043b\u0443 \u043e\u0442 0 \u0434\u043e 9<br \/>   Z \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043b\u044e\u0431\u043e\u043c\u0443 \u0447\u0438\u0441\u043b\u0443 \u043e\u0442 1 \u0434\u043e 9<br \/>   N \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043b\u044e\u0431\u043e\u043c\u0443 \u0447\u0438\u0441\u043b\u0443 \u043e\u0442 2 \u0434\u043e 9<\/p>\n<p>  2 \u2014 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442, \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u044d\u0442\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043e \u0432\u0442\u043e\u0440\u044b\u043c \u043f\u043e \u0441\u0447\u0435\u0442\u0443.<\/p>\n<p>  Dial \u2014 \u044d\u0442\u043e \u0438\u0437 \u0441\u0430\u043c\u044b\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 asterisk. \u041e\u043d\u043e \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043e \u0434\u043b\u044f \u0437\u0432\u043e\u043d\u043a\u0430 \u043d\u0430 \u043d\u043e\u043c\u0435\u0440 \u0447\u0435\u0440\u0435\u0437 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u0443\u044e \u043b\u0438\u043d\u0438\u044e. \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043e\u0431 \u044d\u0442\u043e\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0437\u0434\u0435\u0441\u044c ( <a href=\"http:\/\/voip.rus.net\/tiki-index.php?page=Asterisk+cmd+Dial\">voip.rus.net\/tiki-index.php?page=Asterisk+cmd+Dial<\/a> )<\/p>\n<p>  SIP\/${EXTEN:1} \u2014 \u043d\u0435\u043a\u043e\u0435 \u043f\u043e\u0434\u043e\u0431\u0438\u0435 regexp\u2019\u043e\u0432. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u0440\u0438 \u043d\u0430\u0431\u043e\u0440\u0435 \u043d\u043e\u043c\u0435\u0440\u0430 03799039 \u0432 \u043a\u0430\u043d\u0430\u043b \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d \u043d\u043e\u043c\u0435\u0440 3799039.<\/p>\n<p>  @pstn_beeline \u2014 \u043a\u0430\u043d\u0430\u043b \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u0435\u043d \u0437\u0432\u043e\u043d\u043e\u043a.<\/p>\n<p>  &#038;SIP\/${EXTEN:1}@example_num \u2014 \u0434\u0440\u0443\u0433\u043e\u0439 \u043a\u0430\u043d\u0430\u043b \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u0435\u043d \u0437\u0432\u043e\u043d\u043e\u043a \u0432 \u0441\u043b\u0443\u0447\u0430\u0435, \u0435\u0441\u043b\u0438 \u043b\u0438\u043d\u0438\u044f \u0431\u0438\u043b\u0430\u0439\u043d\u0430 \u0437\u0430\u043d\u044f\u0442\u0430 \u0438\u043b\u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430.<\/p>\n<pre><code class=\"bash\">; \u0432\u043d\u0443\u0442\u0440\u0438\u0433\u043e\u0440\u043e\u0434\u0441\u043a\u0438\u0435 \u0437\u0432\u043e\u043d\u043a\u0438 [phone_local] include =&gt; phone_int include =&gt; out_local <\/code><\/pre>\n<p>  \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442 phone_local \u2014 \u043d\u0443\u0436\u043d\u043e \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0432 \u043d\u0435\u0433\u043e 2 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0430 \u2014 phone_int \u0438 out_local; \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e, \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d \u0442\u0430\u043a\u043e\u0439 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442 (\u0432 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0432\u044b\u0448\u0435 \u044d\u0442\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c 112), \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u044b \u0437\u0432\u043e\u043d\u043a\u0438 \u043d\u0430 \u0433\u043e\u0440\u043e\u0434\u0441\u043a\u0438\u0435 \u043d\u043e\u043c\u0435\u0440\u0430.<\/p>\n<p>  2) \u0412\u0445\u043e\u0434\u044f\u0449\u0438\u0435 \u0437\u0432\u043e\u043d\u043a\u0438 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0442\u0430\u043a:<\/p>\n<pre><code class=\"bash\"> ; =========\u0412\u0445\u041e\u0414\u042f\u0429\u0418\u0415 \u0417\u0412\u041e\u041d\u041a\u0418==============  [from_external] exten =&gt; _X., 1, Macro(dial) exten =&gt; s, 1, Macro(dial)  ; =========\u0412\u0445\u041e\u0414\u042f\u0429\u0418\u0415 \u0417\u0412\u041e\u041d\u041a\u0418==============  <\/code><\/pre>\n<p>  3) \u041c\u0430\u043a\u0440\u043e\u0441\u044b<\/p>\n<p>  \u041f\u043e \u0441\u0443\u0442\u0438 \u0441\u0432\u043e\u0435\u0439 \u043c\u0430\u043a\u0440\u043e\u0441\u044b \u2014 \u044d\u0442\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u0438. \u041c\u0430\u043a\u0440\u043e\u0441\u0443 \u043c\u043e\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0430. \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u044c\u0441\u044f \u043a \u043c\u0430\u043a\u0440\u043e\u0441\u0443 \u043c\u043e\u0436\u043d\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:  <\/p>\n<pre><code class=\"bash\">exten =&gt; _[1-79]XX, n, Macro(int-dial,${EXTEN}) <\/code><\/pre>\n<p>  _[1-9]XX \u2014 \u043d\u043e\u043c\u0435\u0440 \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0434\u043e\u0437\u0432\u043e\u043d.<br \/>  n \u2014 \u043f\u0440\u0438\u0440\u0438\u0442\u0435\u0442;<br \/>  Macro \u2014 \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043c\u0430\u043a\u0440\u043e\u0441.<br \/>  int-dial \u2014 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043c\u0430\u043a\u0440\u043e\u0441\u0430.<br \/>  ${EXTEN} \u2014 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u043f\u0435\u0440\u0435\u0434\u0430\u043d \u043c\u0430\u043a\u0440\u043e\u0441\u0443 ( \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043d\u043e\u043c\u0435\u0440 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430 )<\/p>\n<p>  \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043e \u043c\u0430\u043a\u0440\u043e\u0441\u0430\u0445 \u0447\u0438\u0442\u0430\u0439\u0442\u0435 \u0437\u0434\u0435\u0441\u044c ( <a href=\"http:\/\/voip.rus.net\/tiki-index.php?page=Asterisk+cmd+Macro&#038;highlight=Macro\">voip.rus.net\/tiki-index.php?page=Asterisk+cmd+Macro&#038;highlight=Macro<\/a>() ).<\/p>\n<p>  \u041c\u0430\u043a\u0440\u043e\u0441\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0432 \u043f\u043b\u0430\u043d\u0435 \u043d\u0430\u0431\u043e\u0440\u0430:<\/p>\n<pre><code class=\"bash\">; =========\u041c\u0410\u041a\u0420\u041e\u0421\u042b====================== ; \u043c\u0430\u043a\u0440\u043e\u0441 \u0434\u043b\u044f \u0437\u0432\u043e\u043d\u043a\u0430 \u043d\u0430 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 \u043d\u043e\u043c\u0435\u0440 ; \u0441\u043c\u043e\u0442\u0440\u0438 \u0441\u043a\u0440\u0438\u043f\u0442 \/var\/lib\/asterisk\/agi\/dial_internal.pl ; \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442 \u043b\u043e\u0433\u0438\u043a\u0443 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043f\u0440\u0438 \u043d\u0435\u043e\u0442\u0432\u0435\u0442\u0435 (\u043f\u043e\u043c\u0435\u0449\u0435\u043d\u0438\u0435 \u0432 \u043e\u0447\u0435\u0440\u0435\u0434\u044c) ; \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u044b \u043f\u043e \u0440\u0430\u0437\u043d\u044b\u043c \u043d\u043e\u043c\u0435\u0440\u0430\u043c ; \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0437\u0430\u0431\u0438\u0440\u0430\u0435\u0442\u0441\u044f \u0438\u0437 \u0442\u0430\u0431\u043b\u0438\u0446\u044b users \u0431.\u0434. asterisk [macro-int-dial] exten =&gt; s, 1, NoOp() exten =&gt; s, 2, AGI(\/var\/lib\/asterisk\/agi\/dial_internal.pl, ${ARG1}) exten =&gt; s, n, Hangup()  ; \u043c\u0430\u043a\u0440\u043e\u0441 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0430 (\u0437\u0430\u043f\u0438\u0441\u044c \u0440\u0430\u0437\u0433\u043e\u0432\u043e\u0440\u043e\u0432) ; \u043f\u0440\u0438\u0437\u0432\u0430\u043d \u0441\u043b\u0435\u0434\u0438\u0442\u044c \u0437\u0430 \u043b\u0438\u0447\u043d\u043e\u0439 \u0436\u0438\u0437\u043d\u044c\u044e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 \u041e\u041e\u041e \u0420\u0435\u0433\u0442\u0430\u0439\u043c ; \u0434\u043b\u044f \u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 [phone_int] ; \u0434\u043b\u044f \u0432\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \/var\/lib\/asterisk\/agi\/ivr.pl [macro-monitor] exten =&gt; s, 1, AGI(\/var\/lib\/asterisk\/agi\/monitor.pl)  ; \u043f\u043e\u043c\u0435\u0449\u0435\u043d\u0438\u0435 \u0437\u0432\u043e\u043d\u043a\u0430 \u0432 \u043e\u0447\u0435\u0440\u0435\u0434\u044c [macro-groupe-dial] exten =&gt; s, 1, Queue(${ARG1}, rtT,,,100)  ; \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442 \u043f\u043e\u0441\u0442\u0443\u043f\u0430\u044e\u0449\u0438\u0435 \u0438\u0437\u0432\u043d\u0435 \u0437\u0432\u043e\u043d\u043a\u0438 ; \u0432\u044b\u0434\u0430\u0451\u0442 \u043f\u0440\u0438\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435 - \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442 ( \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 ) ; \u043a\u043e\u043c\u0443 \u043d\u0443\u0436\u043d\u043e ( \u0441\u0435\u043a\u0440\u0435\u0442\u0430\u0440\u044c&lt;-&gt;\u0442\u0435\u0445.\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 ), ; \u043b\u0438\u0431\u043e \u0441\u043e\u043e\u0431\u0449\u0430\u0435\u0442 - \u201c\u0444\u0441\u0435 \u0434\u0430\u0432\u0430\u0439 \u0434\u043e\u0441\u0432\u0438\u0434\u0430\u043d\u0438\u044f, \u0437\u0432\u043e\u043d\u0438 \u0432 \u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0432\u0440\u0435\u043c\u044f&quot; [macro-dial] exten =&gt; s, 1, AGI(\/var\/lib\/asterisk\/agi\/ivr.pl) exten =&gt; s, n, Hangup() ; =========\u041c\u0410\u041a\u0420\u041e\u0421\u042b======================  <\/code><\/pre>\n<p>  \u041f\u043e\u0447\u0442\u0438 \u0432\u043e \u0432\u0441\u0435\u0445 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0430\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 AGI. \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0437\u0434\u0435\u0441\u044c ( <a href=\"http:\/\/voip.rus.net\/tiki-index.php?page=Asterisk+cmd+AGI&#038;highlight=AGI\">voip.rus.net\/tiki-index.php?page=Asterisk+cmd+AGI&#038;highlight=AGI<\/a>() ).<\/p>\n<p>  \u041e \u0442\u043e\u043c, \u043a\u0430\u043a \u044d\u0442\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u043c\u044b \u2014 \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0440\u0430\u0437\u0434\u0435\u043b\u0435.<\/p>\n<p>  <b>AGI \u043f\u0440\u0438\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435<\/b><\/p>\n<p>  \u0417\u0430\u0434\u0430\u0447\u0430.<br \/>  \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u0435\u043d\u044e, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<br \/>  1) \u0412\u044b\u0445\u043e\u0434\u043d\u044b\u0435 \u0434\u043d\u0438 \u0438 \u043d\u0435\u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u2014 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u043a\u043b\u0438\u0435\u043d\u0442 \u043f\u043e\u0437\u0432\u043e\u043d\u0438\u043b \u0432 \u043d\u0435\u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0432\u0440\u0435\u043c\u044f; \u043e\u0437\u0432\u0443\u0447\u0438\u0442\u044c \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b.<br \/>  2) \u0420\u0430\u0431\u043e\u0447\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u2014 \u043f\u0440\u0438\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435; \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u043d\u0430<br \/>   \u2022 \u0441\u0435\u043a\u0440\u0435\u0442\u0430\u0440\u044f ( \u0435\u0441\u043b\u0438 \u043a\u043b\u0438\u0435\u043d\u0442 \u043f\u043e\u043f\u0430\u043b \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043e\u0444\u0438\u0441\u0430 );<br \/>   \u2022 \u0442\u0435\u0445.\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0432 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0432\u0440\u0435\u043c\u044f<\/p>\n<p>  \u0420\u0430\u0431\u043e\u0447\u0438\u043c \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a-\u043f\u044f\u0442\u043d\u0438\u0446\u0430 \u0441 9 \u0434\u043e 21; \u043e\u0444\u0438\u0441 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441 9 \u0434\u043e 13 \u0438 \u0441 14 \u0434\u043e 18 \u043f\u043e \u0431\u0443\u0434\u043d\u0438\u043c \u0434\u043d\u044f\u043c (\u0441 \u0447\u0430\u0441\u0443 \u0434\u043e \u0434\u0432\u0443\u0445 \u0432 \u043e\u0444\u0438\u0441\u0435 \u043e\u0431\u0435\u0434).<\/p>\n<p>  \u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u0434\u0430\u0447\u0438.<br \/>  \u0414\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u0434\u0430\u0447\u0438 \u0431\u044b\u043b \u0432\u044b\u0431\u0440\u0430\u043d \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 AGI.<br \/>  AGI (Asterisk Gateway Interface) \u2014 \u044d\u0442\u043e \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0439 \u0432 Asterisk \u043c\u0435\u0442\u043e\u0434 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432 (\u043f\u043e \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0438 \u0441 CGI \u0434\u043b\u044f http \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432), \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u0435\u0442 \u0440\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c asterisk \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0434\u0440\u0443\u0433\u0438\u0445 \u044f\u0437\u044b\u043a\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f.<br \/>  \u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u044f\u0437\u044b\u043a\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432\u044b\u0431\u0440\u0430\u043d perl \u2014 \u043a\u0430\u043a \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u044b\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043b\u044e\u0431\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438. \ud83d\ude42 <br \/>  \u041d\u0430 cpan \u0435\u0441\u0442\u044c \u043c\u043e\u0434\u0443\u043b\u044c Asterisk::AGI <a href=\"http:\/\/search.cpan.org\/\">search.cpan.org\/<\/a>~jamesgol\/asterisk-perl-1.03\/lib\/Asterisk\/AGI.pm.<\/p>\n<p>  \u041f\u043b\u044e\u0441\u044b AGI \u2014 \u043f\u0440\u043e\u0441\u0442\u043e\u0442\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438; \u0433\u0438\u0431\u043a\u043e\u0441\u0442\u044c. \u041c\u0438\u043d\u0443\u0441\u044b \u2014 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430\u0435\u0442 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440. \u0421\u043a\u0440\u0438\u043f\u0442 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043a\u0430\u0436\u0434\u043e\u043c \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0438, \u0430 \u043d\u0435 \u043a\u044d\u0448\u0438\u0440\u0443\u0435\u0442\u0441\u044f; \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430\u0445 \u043f\u0438\u0448\u0443\u0442, \u0447\u0442\u043e AGI \u0433\u043b\u044e\u0447\u0438\u0442, \u043d\u043e \u0437\u0430 \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0443 \u043d\u0430\u0441 ( ~ 0.5 \u0433\u043e\u0434\u0430 ) \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441 \u044d\u0442\u0438\u043c \u043d\u0435 \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u043b\u043e\u0441\u044c. \u041f\u0440\u043e\u0431\u043b\u0435\u043c \u0441 \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u043c\u043e\u0449\u043d\u043e\u0441\u0442\u044f\u043c\u0438 \u0443 \u043d\u0430\u0441 \u0442\u0430\u043a\u0436\u0435 \u043d\u0435\u0442.<\/p>\n<p>  \u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\u0438.<br \/>  \u0412\u0441\u0435 \u0432\u0445\u043e\u0434\u044f\u0449\u0438\u0435 \u0437\u0432\u043e\u043d\u043a\u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c \u0441\u044e\u0434\u0430 (\u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0439 \u0440\u0430\u0437\u0434\u0435\u043b):  <\/p>\n<pre><code class=\"bash\">exten =&gt; s, 1, AGI(\/var\/lib\/asterisk\/agi\/ivr.pl)  <\/code><\/pre>\n<p>  \u041e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0432\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0437\u0432\u043e\u043d\u043a\u0430 (\/var\/lib\/asterisk\/agi\/ivr.pl) \u0431\u0443\u0434\u0435\u0442 \u0438\u043c\u0435\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0432\u0438\u0434:  <\/p>\n<pre><code class=\"bash\">use Data::Dumper;  use warnings;  use strict;  use Asterisk::AGI;  use Time::localtime;    my $AGI = new Asterisk::AGI;  my  %input = $AGI-&gt;ReadParse();   # \u0433\u0434\u0435 \u0445\u0440\u0430\u043d\u0438\u0442\u0441\u044f &quot;\u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435&quot; \u0432\u0440\u0435\u043c\u044f  # \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0431\u0443\u0434\u043d\u0438\u0439 \u0434\u0435\u043d\u044c  # \u0434\u043b\u044f check_ivr  my $schedule_time = '\/var\/lib\/asterisk\/agi\/schedule.conf';   # \u043d\u043e\u043c\u0435\u0440 \u043e\u0447\u0435\u0440\u0435\u0434\u0438 \u0441\u0430\u043f\u043f\u043e\u0440\u0442\u0430  my $support = '300';   # \u043d\u043e\u043c\u0435\u0440 \u0441\u0435\u043a\u0440\u0435\u0442\u0430\u0440\u044f  my $recep = '101';   # non_working - \u043d\u0435\u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0432\u0440\u0435\u043c\u044f  # working     - \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432\u0435\u0441\u044c \u043e\u0444\u0438\u0441 ( \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e 9-13;14-18 )  # work_supp   - \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u043b\u0443\u0436\u0431\u0430 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 (default 13-14; 18-21)  my @ivr = (\\&non_working, \\&working, \\&work_supp);   #START  $AGI-&gt;answer();   # \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c \u043a\u0430\u043a\u043e\u0439 \u0438\u0437 \u0440\u0435\u0436\u0438\u043c\u043e\u0432 \u0440\u0430\u0431\u043e\u0442\u044b \u0430\u043a\u0442\u0443\u0430\u043b\u0435\u043d \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0437\u0432\u043e\u043d\u043a\u0430  my $mode = &check_ivr();   # $AGI-&gt;verbose( &quot;Mode =&gt; $mode&quot;, 0);   &{$ivr[$mode]};  # \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0435 \u0437\u0432\u043e\u043d\u043a\u0430  $AGI-&gt;hangup();  exit();   sub non_working{     # \u0432 \u043d\u0435\u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0440\u043e\u0438\u0433\u0440\u0430\u0442\u044c \u043f\u0440\u0438\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435     $AGI-&gt;exec('Playback', 'offduty');  }   sub working{     # \u043f\u0440\u0438\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435         $AGI-&gt;exec('Playback', 'welcome');     # \u0432 \u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0437\u0430\u043f\u0438\u0441\u044c \u0437\u0432\u043e\u043d\u043a\u043e\u0432     $AGI-&gt;exec('Macro', &quot;monitor&quot;);     # \u0437\u0432\u043e\u043d\u0438\u043c \u0441\u0435\u043a\u0440\u0435\u0442\u0430\u0440\u044e     $AGI-&gt;exec('Macro', &quot;int-dial,$recep&quot;);  }   sub work_supp{     $AGI-&gt;exec('Playback', 'welcome');     $AGI-&gt;exec('Macro', &quot;monitor&quot;);     # \u0437\u0432\u043e\u043d\u043e\u043a \u0443\u0445\u043e\u0434\u0438\u0442 \u043d\u0430 \u0441\u0443\u043f\u043f\u043e\u0440\u0442     $AGI-&gt;exec('Macro', &quot;groupe-dial,$support&quot;);  }   ################# check_ivr #####################################  # \u043d\u0430 \u0432\u0445\u043e\u0434\u0435( \u043d\u0435\u043e\u0431\u0437\u044f\u0442\u0435\u043b\u044c\u043d\u043e. \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u0434\u0430\u0442\u044b ):#  # $wday - \u043d\u043e\u043c\u0435\u0440 \u0434\u043d\u044f \u043d\u0435\u0434\u0435\u043b\u0438 ( \u0444\u043e\u0440\u043c\u0430\u0442 \u0447\u0438\u0441\u043b\u0430 - 0..6 )###############  # $hour - \u0447\u0430\u0441 ( \u0444\u043e\u0440\u043c\u0430\u0442 \u0447\u0438\u0441\u043b\u0430 - 0..23 )###########################  # $date - \u0434\u0430\u0442\u0430 ( \u0444\u043e\u0440\u043c\u0430\u0442 \u0441\u0442\u0440\u043e\u043a\u0438 - \u0447\u0438\u0441\u043b\u043e.\u043c\u0435\u0441\u044f\u0446 )###################  # \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u0447\u0438\u0441\u043b\u043e( 0..2 ):#######################################  # 0 - \u043d\u0435\u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0432\u0440\u0435\u043c\u044f;###########################################  # 1 - \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0434\u0435\u043d\u044c;##############################################  # 2 - \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435\u0445.\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430.######################################  sub check_ivr {     my ( $wday, $hour, $date ) = @_;     # \u0435\u0441\u043b\u0438 \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d \u0445\u043e\u0442\u044f \u0431\u044b \u043e\u0434\u0438\u043d \u0438\u0437 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 - \u0431\u0435\u0440\u0435\u043c \u0442\u0435\u043a\u0443\u0449\u0438\u0435     ($wday, $hour, $date ) = &_date_now_ if !$date||!$hour||!$date;      my ( %check, $check);      #\u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f - \u0434\u0430\u0442\u044b \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u0442\u0430\u043d\u0446\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0438\u043a\u0430\u043a \u043e\u0431\u044b\u0447\u043d\u043e     my %sch_dates;     open ( SCH, $schedule_time );     while ( &lt;SCH&gt; ) {         if ( $_ =~ \/^(\\d{1,2}\\.\\d{1,2})\\s*(.*)[\\r\\n]*$\/) {             my ( $sch_date, $sch ) = ($1, $2);             $date =~ s\/^0(\\d)\/$1\\.\/; $date =~ s\/0(\\d)$\/$1\/;             $sch ||= '0';             $sch_dates{$sch_date} = $sch;         }     }     close(SCH);      foreach my $schedule_d (keys %sch_dates){         if ( $date eq $schedule_d ) {             if ( $sch_dates{$date} ) {                 return &_check_time_( $hour, $sch_dates{$date} );             }             else { return $sch_dates{$date} }         }     }      # \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u043b\u0438 \u0434\u0435\u043d\u044c? \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 1( \u0440\u0430\u0431\u043e\u0447\u0438\u0439 ) \u0438 0 ( \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 )     $check{wday} = $wday&gt;0&&$wday&lt;6 ? '1':'0';     # \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f 0, 1, 2 - \u0441\u043c\u043e\u0442\u0440\u0438 _check_time_     $check{hour} = &_check_time_( $hour );      $check = 1;     foreach ( values %check ) { $check *= $_; }     return $check;      sub _check_time_ {         # $hour_tm - \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f         # $wr_time - work time ( \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043e\u0444\u0438\u0441\u0430 ) \u0441\u0442\u0440\u043e\u043a\u0430 \u0432\u0438\u0434\u0430 [9,13,18,21]         my ( $hour_tm, $wr_time) = @_;          # $wr_time - work time ( \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043e\u0444\u0438\u0441\u0430 )         # \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430 (\u0445\u044d\u0448)         my %wr_time = &_parse_work_time_( $wr_time );          # 0 - \u043d\u0435 \u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0432\u0440\u0435\u043c\u044f         # 1 - \u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u043e\u0444\u0438\u0441\u0430 ( 9-13; 14-18 )         # 2 - c 13 \u0434\u043e 14; \u0441 18 \u0434\u043e 21         my $check_tm = 0;         if( $hour_tm&gt;$wr_time{st_office}&&$hour_tm&lt;$wr_time{end_support} ) {             if ( $hour_tm==$wr_time{lunch}||$hour_tm&gt;$wr_time{end_office} ) {                 $check_tm = 2;             }             else { $check_tm = 1 }         }         return $check_tm;     }      # \u0434\u0435\u043b\u0430\u0435\u0442 \u0438\u0437 \u0441\u0442\u0440\u043e\u043a\u0438 \u0432\u0438\u0434\u0430 [9,13,18,21]     # \u0445\u044d\u0448 \u043c\u0430\u0441\u0441\u0438\u0432 \u0432\u0438\u0434\u0430     # %work_time = ( st_office   =&gt; 8,     #                lunch       =&gt; 13,     #                end_office  =&gt; 17,     #                end_support =&gt; 21);     sub _parse_work_time_ {         my ( $work_time ) = @_;         # \u0435\u0441\u043b\u0438 \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043e \u043b\u0438\u0431\u043e \u0440\u0430\u0432\u043d\u043e 1         # \u0434\u0435\u0444\u043e\u043b\u0442\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438.         $work_time = &quot;[9,13,18,21]&quot; if (!$work_time||$work_time eq 1 );         $work_time =~ s\/^\\[(.+)\\][\\r\\n]*$\/$1\/;         my %work_time;         ( $work_time{st_office}, $work_time{lunch}, $work_time{end_office}, $work_time{end_support}, $work_time{lunch_support} ) = split \/\\s*,\\s*\/, $work_time;         $work_time{st_office} -= 1;         $work_time{end_office} -= 1;         return %work_time;     }       sub _date_now_ {         return ( localtime-&gt;wday,                  localtime-&gt;hour,                  localtime-&gt;mday.'.'.(localtime-&gt;mon+1) );     }   }   __END__  <\/code><\/pre>\n<p>  \u0424\u0430\u0439\u043b \/var\/lib\/asterisk\/agi\/schedule.conf \u0445\u0440\u0430\u043d\u0438\u0442 \u0432 \u0441\u0435\u0431\u0435 \u00ab\u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435\u00bb \u0432\u0440\u0435\u043c\u044f, \u0442.\u0435. \u0432\u0440\u0435\u043c\u044f \u043a\u043e\u0433\u0434\u0430 \u043e\u0444\u0438\u0441 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0435 \u043a\u0430\u043a \u043e\u0431\u044b\u0447\u043d\u043e, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u0440\u0430\u0437\u0434\u043d\u0438\u0447\u043d\u044b\u0439 \u0438\u043b\u0438 \u0441\u043e\u043a\u0440\u0430\u0449\u0435\u043d\u043d\u044b\u0439 \u0434\u0435\u043d\u044c. \u041f\u0440\u0438\u043c\u0435\u0440:<\/p>\n<p>  # 1 \u2014 \u0434\u0430\u0442\u0430 (\u0434\u0435\u043d\u044c.\u043c\u0435\u0441\u044f\u0446)<br \/>  # 2 \u2014 \u043a\u0430\u043a\u043e\u0439 \u0434\u0435\u043d\u044c (\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u043d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u0435)<br \/>  # 0-\u043d\u0435\u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u043b\u0438\u0431\u043e \u043f\u0443\u0441\u0442\u043e\u0439<br \/>  # 1- \u043e\u0431\u044b\u0447\u043d\u044b\u0439 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 ( [9,13,18,21] ) \u043b\u0438\u0431\u043e \u043c\u0430\u0441\u0441\u0438\u0432<br \/>  # 2.1 \u2014 \u0432\u0440\u0435\u043c\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u0440\u0430\u0431\u043e\u0442\u044b \u043e\u0444\u0438\u0441\u0430 (9)<br \/>  # 2.2 \u2014 \u043e\u0431\u0435\u0434 ( 13, \u0442.\u0435. \u0441 13 \u0434\u043e 14 )<br \/>  # 2.3 \u2014 \u0432\u0440\u0435\u043c\u044f \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043e\u0444\u0438\u0441\u0430 (18)<br \/>  # 2.4 \u2014 \u0432\u0440\u0435\u043c\u044f \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0442\u0435\u0445.\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438<br \/>  # \u0434\u0430\u0442\u0430 \u0432\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0431\u0435\u0437 \u043d\u0443\u043b\u0435\u0439. 06.11 \u2014 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442; 6.11 \u2014 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442<br \/>  29.12 [9,11,17,20]<br \/>  31.12<\/p>\n<p>  29.12 [9,11,17,20] ( 29 \u0434\u0435\u043a\u0430\u0431\u0440\u044f ) \u2014 \u0441\u043e\u043a\u0440\u0430\u0449\u0435\u043d\u043d\u044b\u0439 \u0434\u0435\u043d\u044c. \u041e\u0444\u0438\u0441 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441 9 \u0434\u043e 17; \u043e\u0431\u0435\u0434 \u0441 11 \u0434\u043e 12; \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0434\u043e 20. <br \/>  31.12 \u2014 \u043d\u0435\u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0434\u0435\u043d\u044c.<\/p>\n<p>  <b>AGI \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0434\u043b\u044f \u0437\u0432\u043e\u043d\u043a\u043e\u0432<\/b><\/p>\n<p>  \u0417\u0430\u0434\u0430\u0447\u0430.<br \/>  \u041f\u0440\u0438 \u0437\u0432\u043e\u043d\u043a\u0435 \u043d\u0430 \u043d\u043e\u043c\u0435\u0440 \u0437\u0432\u043e\u043d\u043e\u043a \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043f\u0435\u0440\u0435\u0430\u0434\u0440\u0435\u0441\u043e\u0432\u0430\u043d \u0447\u0435\u0440\u0435\u0437 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\/\u0437\u0430\u043d\u044f\u0442\u043e\u0441\u0442\u0438\/\u043d\u0435 \u043e\u0442\u0432\u0435\u0442\u0443\/\u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 \u043d\u0430 \u0434\u0440\u0443\u0433\u043e\u0439 \u043d\u043e\u043c\u0435\u0440 (\u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u044d\u0442\u043e \u043e\u0434\u043d\u0430 \u0438\u0437 \u043e\u0447\u0435\u0440\u0435\u0434\u0435\u0439). \u00ab\u0422\u0430\u0439\u043c\u0430\u0443\u0442\u00bb \u0438 \u00ab\u0434\u0440\u0443\u0433\u043e\u0439 \u043d\u043e\u043c\u0435\u0440\u00bb \u2014 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u043d\u044b\u0435 \u2014 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043d\u043e\u043c\u0435\u0440\u0430 \u043e\u043d\u0438 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0437\u0430\u0434\u0430\u043d\u044b \u0438\u043d\u0434\u0438\u0432\u0438\u0434\u0443\u0430\u043b\u044c\u043d\u043e.<\/p>\n<p>  \u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442.<br \/>  \u041a\u0430\u043a \u0438 \u0432 \u043f\u0440\u043e\u0448\u043b\u043e\u043c \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u2014 AGI.<\/p>\n<p>  \u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\u0438.<\/p>\n<p>  \u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u043d\u043e\u043c\u0435\u0440\u0430 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 \u0445\u0440\u0430\u043d\u0438\u0442 \u0431\u0430\u0437\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 mysql \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 users. <br \/>  \u0421\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u0442\u0430\u0431\u043b\u0438\u0446\u0443:  <\/p>\n<pre><code class=\"bash\">CREATE TABLE `users` (  `num` int(11) PRIMARY KEY NOT NULL,  `timeout` tinyint(4) NOT NULL DEFAULT '10',  `queue` int(11) DEFAULT NULL ); <\/code><\/pre>\n<p>  num \u2014 \u043d\u043e\u043c\u0435\u0440 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430;<br \/>  timeout \u2014 \u0432\u0440\u0435\u043c\u044f \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0430\u0445, \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0437\u0432\u043e\u043d\u043e\u043a \u0431\u0443\u0434\u0435\u0442 \u043f\u0435\u0440\u0435\u0430\u0434\u0440\u0435\u0441\u043e\u0432\u0430\u043d;<br \/>  queue \u2014 \u043d\u043e\u043c\u0435\u0440 \u043e\u0447\u0435\u0440\u0435\u0434\u0438, \u043a\u0443\u0434\u0430 \u0431\u0443\u0434\u0435\u0442 \u043f\u0435\u0440\u0435\u0430\u0434\u0440\u0435\u0441\u043e\u0432\u0430\u043d \u0437\u0432\u043e\u043d\u043e\u043a.<\/p>\n<p>  \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0437\u0430\u043f\u0438\u0441\u0438 \u0434\u043b\u044f \u043d\u043e\u043c\u0435\u0440\u043e\u0432:  <\/p>\n<pre><code class=\"bash\">INSERT INTO `users` VALUES (101,10,300), (106,20,0), (112,20,0); <\/code><\/pre>\n<p>  \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043c, \u0447\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c:<br \/>  SELECT * FROM users;<br \/>  +&#8212;&#8212;+&#8212;&#8212;&#8212;+&#8212;&#8212;-+<br \/>  | num | timeout | queue |<br \/>  +&#8212;&#8212;+&#8212;&#8212;&#8212;+&#8212;&#8212;-+<br \/>  | 101 | 10 | 300 |<br \/>  | 106 | 20 | 0 |<br \/>  | 112 | 20 | 0 |<br \/>  +&#8212;&#8212;+&#8212;&#8212;&#8212;+&#8212;&#8212;-+<\/p>\n<p>  \u041f\u0440\u0438 \u0437\u0432\u043e\u043d\u043a\u0435 \u043d\u0430 101 \u0447\u0435\u0440\u0435\u0437 10 \u0441\u0435\u043a\u0443\u043d\u0434 \u0437\u0432\u043e\u043d\u043e\u043a \u0443\u0439\u0434\u0435\u0442 \u043d\u0430 300 \u043d\u043e\u043c\u0435\u0440 (\u0443 \u043d\u0430\u0441 \u044d\u0442\u043e \u043d\u043e\u043c\u0435\u0440 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438); \u043f\u0440\u0438 \u0437\u0432\u043e\u043d\u043a\u0435 \u043d\u0430 112 \u0438\u043b\u0438 106 \u0437\u0432\u043e\u043d\u043e\u043a \u043d\u0438\u043a\u0443\u0434\u0430 \u043d\u0435 \u0443\u0439\u0434\u0451\u0442, \u0430 \u043f\u0440\u043e\u0441\u0442\u043e \u0437\u0430\u0432\u0435\u0440\u0448\u0438\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0437 20 \u0441\u0435\u043a\u0443\u043d\u0434.<\/p>\n<p>  \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u044c\u0441\u044f \u043a \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0443 \u043c\u043e\u0436\u043d\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c( AGI(\/var\/lib\/asterisk\/agi\/dial_internal.pl, ${ARG1}) ):<\/p>\n<p>  \u0412 dialplan\u0435 \u044d\u0442\u043e:  <\/p>\n<pre><code class=\"bash\">exten =&gt; _[1-9]XX, n, Macro(int-dial,${EXTEN})  [macro-int-dial] exten =&gt; s, 1, NoOp() exten =&gt; s, 2, AGI(\/var\/lib\/asterisk\/agi\/dial_internal.pl, ${ARG1}) exten =&gt; s, n, Hangup() <\/code><\/pre>\n<p>  \u041d\u043e\u043c\u0435\u0440 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430 \u043f\u043e\u043f\u0430\u0434\u0430\u0435\u0442 \u0432 \u043c\u0430\u043a\u0440\u043e\u0441 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 ${EXTEN}, \u0430 \u043f\u043e\u0442\u043e\u043c \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442\u0441\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0443 \/var\/lib\/asterisk\/agi\/dial_internal.pl \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e ${ARG1}.<\/p>\n<p>  \u041a\u043e\u0434 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430:<\/p>\n<pre><code class=\"bash\">#!\/usr\/bin\/perl use Data::Dumper; use warnings; use strict; use Asterisk::AGI; use DBI;  my $user = 'asterisk'; my $pass = 'super-pass'; my $db = 'astr';  my $AGI = new Asterisk::AGI; my  %input = $AGI-&gt;ReadParse();  $AGI-&gt;answer();  # \u043d\u0430 \u043a\u0430\u043a\u043e\u0439 \u043d\u043e\u043c\u0435\u0440 \u0437\u0432\u043e\u043d\u043e\u043a my $exten = $input{arg_1};  # \u0431\u0435\u0440\u0451\u043c \u0442\u0430\u0439\u043c\u0430\u0443\u0442 \u0438 \u043e\u0447\u0435\u0440\u0435\u0434\u044c, \u043a \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u0438\u0432\u044f\u0437\u0430\u043d \u0437\u0432\u043e\u043d\u043e\u043a \u0438\u0437 \u0431\u0430\u0437\u044b my ($timeout, $queue) = &get_timeout($exten); # \u0434\u0435\u0444\u043e\u043b\u0442\u043d\u044b\u0439 \u0442\u0430\u0439\u043c\u0430\u0443\u0442 \u043f\u0440\u0438 \u0437\u0432\u043e\u043d\u043a\u0435 # \u043d\u0430 \u0441\u043b\u0443\u0447\u0430\u0439, \u0435\u0441\u043b\u0438 \u0432 \u0431\u0430\u0437\u0435 \u043d\u0435\u0442. $timeout ||= '10'; #$AGI-&gt;verbose(&quot;$timeout $queue&quot;, 0); $AGI-&gt;exec('Dial', &quot;SIP\/$exten, $timeout, Tt&quot;); # \u0435\u0441\u043b\u0438 \u0434\u043b\u044f \u043d\u043e\u043c\u0435\u0440\u0430 \u043f\u043e \u0437\u0430\u043d\u044f\u0442\u043e\u0441\u0442\u0438 \u043b\u0438\u0431\u043e \u043d\u0435 \u043e\u0442\u0432\u0435\u0442\u0443 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u043e\u0447\u0435\u0440\u0435\u0434\u0438 if ( $queue ) { #    $AGI-&gt;verbose('$queue', 0);    $AGI-&gt;exec('Macro', &quot;groupe-dial,$queue&quot;) if ( $AGI-&gt;get_variable('DIALSTATUS') ne 'ANSWER'); } $AGI-&gt;hangup(); exit();  sub get_timeout {    my ($num) = @_;    my $dbh = DBI-&gt;connect(&quot;DBI:mysql:database=$db;host=localhost&quot;,                            $user, $pass,                            {'RaiseError' =&gt; 1});     my $sth = $dbh-&gt;prepare(&quot;SELECT * FROM users WHERE num like $num&quot;);    $sth-&gt;execute();    my $ref = $sth-&gt;fetchrow_hashref();    ( $timeout, $queue ) = ( ${$ref}{timeout}, ${$ref}{queue});    $sth-&gt;finish ();    $dbh-&gt;disconnect();    return ($timeout, $queue); }  __END__ <\/code><\/pre>\n<p>  <b>\u0410\u0443\u0434\u0438\u043e\u043b\u043e\u0433\u0438 \u0437\u0432\u043e\u043d\u043a\u043e\u0432<\/b><\/p>\n<p>  \u0412\u0441\u0435 \u0437\u0432\u043e\u043d\u043a\u0438 \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0432 \u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0432\u0440\u0435\u043c\u044f. \u0412 \u0437\u0430\u043f\u0438\u0441\u0438 \u0437\u0432\u043e\u043d\u043a\u043e\u0432 \u0442\u0430\u043a \u0436\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f AGI. \u041c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0431\u044b \u043e\u0431\u043e\u0439\u0442\u0438\u0441\u044c \u0438 \u0431\u0435\u0437 \u043d\u0435\u0433\u043e, \u043d\u043e \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u0443\u0434\u043e\u0431\u043d\u0435\u0435, \u043a\u043e\u0433\u0434\u0430 \u043b\u043e\u0433\u0438 \u0440\u0430\u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438. <br \/>  \u041f\u0440\u0438\u043c\u0435\u0440 \u0444\u0430\u0439\u043b\u0430 \u043b\u043e\u0433\u0430: .\/2013\/03\/28\/20130328.150550.9033779401.wav,<br \/>  \u0442.\u0435. .\/\u0433\u043e\u0434\/\u043c\u0435\u0441\u044f\u0446\/\u0434\u0435\u043d\u044c\/\u0433\u043e\u0434_\u043c\u0435\u0441\u044f\u0446_\u0447\u0438\u0441\u043b\u043e.\u0447\u0430\u0441_\u043c\u0438\u043d\u0443\u0442_\u0441\u0435\u043a\u0443\u043d\u0434\u0430.\u043d\u043e\u043c\u0435\u0440_\u0441_\u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e_\u043e\u0441\u0443\u0449._\u0437\u0432\u043e\u043d\u043e\u043a.wav<\/p>\n<p>  \u0438\u043c\u044f \u0444\u0430\u0439\u043b\u0430 \u0441\u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0431\u044b \u0441\u043b\u043e\u0436\u0438\u0442\u044c \u0432\u0441\u0435 \u0444\u0430\u0439\u043b\u044b \u0432 \u043e\u0434\u043d\u0443 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044e \u0438 grep&#8217;\u043d\u0443\u0442\u044c \u043f\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u043c\u0443 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0443 (\u043d\u043e\u043c\u0435\u0440\u0443 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430\/\u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0438 \u0442.\u043f.)<\/p>\n<p>  \u041a\u043e\u0434 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \/var\/lib\/asterisk\/agi\/monitor.pl:  <\/p>\n<pre><code class=\"bash\">#!\/usr\/bin\/perl use Data::Dumper; use warnings; use strict; use Asterisk::AGI; use File::Path qw(make_path);  # \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f \u0441 \u0430\u0443\u0434\u0438\u043e\u043b\u043e\u0433\u0430\u043c\u0438 my $dir = '\/mnt\/pbx\/';  my $AGI = new Asterisk::AGI; my %input = $AGI-&gt;ReadParse(); # \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e - \u0435\u0441\u043b\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043e, \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432 \u043a\u043e\u043d\u0435\u0446 # \u0438\u043c\u0435\u043d\u0438 \u0444\u0430\u0439\u043b\u0430  my $prop = $input{arg_1};  $AGI-&gt;answer();  my ($date, $time) = split \/ \/, $AGI-&gt;get_variable('CDR(start)');  $time =~ s\/:\/\/g; $date =~ s\/-\/\\\/\/g; $date .= '\/';  my $dir = $dir.$date; # \u0434\u043b\u044f \u0438\u043c\u0435\u043d\u0438 \u0444\u0430\u0439\u043b\u0430 \u0443\u0431\u0435\u0440\u0435\u043c \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u0438 \u0432 \u0434\u0430\u0442\u0435 $date =~ s\/\\\/\/\/g; # \u0435\u0441\u043b\u0438 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043e \u043f\u0438\u0448\u0435\u043c \u043e\u0442\u043a\u0443\u0434\u0430 \u0437\u0432\u043e\u043d\u043e\u043a # \u043d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e \u043c\u043e\u0433\u043b\u043e \u0431\u044b\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e - 'ivr' $prop ||= $AGI-&gt;get_variable('CDR(src)'); # \u0443\u0431\u0435\u0440\u0435\u043c \u043b\u0438\u0448\u043d\u0438\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u044b $prop =~ s\/[\\+\\.\\'\\&quot;\\:\\(\\)\\[\\]\\&\\^\\$\\#\\@\\!\\%\\*\\s]\/\/g; my $file = $prop ? $dir.$date.&quot;.$time.$prop&quot; : $dir.$date.&quot;.$time.anon&quot;; # \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u0430 $file .= '.wav';  $AGI-&gt;exec('MixMonitor', &quot;$file, a&quot;); exit(); __END__  <\/code><\/pre>\n<p>  \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 MixMonitor \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0437\u0434\u0435\u0441\u044c ( <a href=\"http:\/\/www.voip-info.org\/wiki\/view\/MixMonitor\">www.voip-info.org\/wiki\/view\/MixMonitor<\/a> )<\/p>\n<p>  <b>\u041e\u0447\u0435\u0440\u0435\u0434\u0438<\/b><\/p>\n<p>  \u0421 \u043e\u0447\u0435\u0440\u0435\u0434\u044f\u043c\u0438 \u0432\u0441\u0451 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e. \u041a\u043e\u043d\u0444\u0438\u0433 \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f queues.conf. \u041e\u0447\u0435\u0440\u0435\u0434\u0438 \u0443 \u043d\u0430\u0441 2 \u2014 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 (\u043d\u043e\u043c\u0435\u0440 300) \u0438 \u0431\u0443\u0445\u0433\u0430\u043b\u0442\u0435\u0440\u0438\u044f (301):<\/p>\n<pre><code class=\"bash\">[general] persistentmembers=yes autofill=yes autopause=no monitor-type=MixMonitor strategy=ringall ; \u0437\u0432\u043e\u043d\u0438\u0442\u044c \u0432\u0441\u0435\u043c. ringinuse=no timeout=100 retry=2 wrapuptime=0 maxlen=0 defaultrule = plus10  [301] member =&gt; SIP\/105,1 member =&gt; SIP\/109,1  [300] member =&gt; SIP\/102,1 member =&gt; SIP\/108,1  <\/code><\/pre>\n<p>  \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044f\u0445 \u043e\u0447\u0435\u0440\u0435\u0434\u0435\u0439 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0437\u0434\u0435\u0441\u044c:<br \/>  <a href=\"http:\/\/www.voip-info.org\/wiki\/view\/Asterisk+config+queues.conf\">www.voip-info.org\/wiki\/view\/Asterisk+config+queues.conf<\/a><\/p>\n<p>  <b>\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u043b\u0438\u043d\u0438\u0439 \u0447\u0435\u0440\u0435\u0437 linksys spa-3000<\/b><\/p>\n<p>  \u0417\u0430\u0434\u0430\u0447\u0430.<br \/>  \u0412 linksys spa-3000 \u0435\u0441\u0442\u044c \u043e\u0434\u0438\u043d fxo-\u043f\u043e\u0440\u0442 \u0438 \u043e\u0434\u0438\u043d fxs. \u041f\u0440\u0438 \u0437\u0432\u043e\u043d\u043a\u0435 \u043f\u043e \u043d\u043e\u043c\u0435\u0440\u0443, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u043c\u0443 \u043a \u0433\u043e\u043b\u043e\u0441\u043e\u0432\u043e\u043c\u0443 \u0448\u043b\u044e\u0437\u0443 ( \u0434\u0430\u043b\u0435\u0435 \u0433.\u0448. ), \u0437\u0432\u043e\u043d\u043e\u043a \u043d\u0443\u0436\u043d\u043e \u043d\u0430\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043d\u0430 fxs \u043f\u043e\u0440\u0442 (\u0442\u0430\u043c \u0443 \u043d\u0430\u0441 \u0441\u0442\u043e\u0438\u0442 \u0444\u0430\u043a\u0441). \u041f\u0440\u0438 \u044d\u0442\u043e\u043c \u0443 \u043d\u0430\u0441 \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c<br \/>  1) \u0441\u043e\u0432\u0435\u0440\u0448\u0430\u0442\u044c \u0437\u0432\u043e\u043d\u043a\u0438 \u0447\u0435\u0440\u0435\u0437 \u043b\u0438\u043d\u0438\u044e, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u0443\u044e \u043a fxo \u043f\u043e\u0440\u0442\u0443 \u0438\u0437 \u043e\u0444\u0438\u0441\u0430;<br \/>  2) \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u043d\u0430 \u043d\u043e\u043c\u0435\u0440 \u0444\u0430\u043a\u0441\u0430, \u0435\u0441\u043b\u0438 \u0437\u0432\u043e\u043d\u043e\u043a \u043f\u0440\u0438\u0448\u0451\u043b \u0447\u0435\u0440\u0435\u0437 \u0434\u0440\u0443\u0433\u0443\u044e \u043b\u0438\u043d\u0438\u044e;<br \/>  3) \u0437\u0432\u043e\u043d\u0438\u0442\u044c \u0441 \u0444\u0430\u043a\u0441\u0430 \u0447\u0435\u0440\u0435\u0437 \u043b\u044e\u0431\u0443\u044e \u043b\u0438\u043d\u0438\u044e, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u0443\u044e \u043a \u0441\u0442\u0430\u043d\u0446\u0438\u0438.<\/p>\n<p>  \u0420\u0435\u0448\u0435\u043d\u0438\u0435.<br \/>  \u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0438\u0442\u044c \u0437\u0430\u0434\u0443\u043c\u0430\u043d\u043d\u043e\u0435, \u043d\u0443\u0436\u043d\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0433.\u0448. \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c. \u041f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 Admin login-&gt;Advanced-&gt;PSTN Line:<br \/>  Proxy: 10.0.0.5 # (ip \u0441\u0442\u0430\u043d\u0446\u0438\u0438)<br \/>  Outbound Proxy: 10.0.0.5 # (ip \u0441\u0442\u0430\u043d\u0446\u0438\u0438)<br \/>  Register: yes<br \/>  User ID: pstn_beeline<br \/>  Password: pass_for_beeline <\/p>\n<p>  # \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0437\u0432\u043e\u043d\u043e\u043a \u043f\u043e\u0441\u0442\u0443\u043f\u0430\u043b \u0432 \u043e\u0431\u0445\u043e\u0434 \u0441\u0442\u0430\u043d\u0446\u0438\u0438 \u0441\u0440\u0430\u0437\u0443 \u043d\u0430 \u0444\u0430\u043a\u0441.<br \/>  Dial Plan 2: (&lt;:@gw0&gt;)<br \/>  PSTN Caller Default DP:2<\/p>\n<p>  \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0432\u043d\u0435\u0448\u043d\u0435\u0439 \u043b\u0438\u043d\u0438\u0438 \u043d\u0430 \u0441\u0442\u0430\u043d\u0446\u0438\u0438 \u043e\u043f\u0438\u0441\u0430\u043d\u0430 \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u0432\u043d\u0435\u0448\u043d\u0438\u0435 \u043b\u0438\u043d\u0438\u0438 (pstn_beeline).<\/p>\n<p>  106 \u043d\u043e\u043c\u0435\u0440 fax:<br \/>  Proxy: 10.0.0.5 # (ip \u0441\u0442\u0430\u043d\u0446\u0438\u0438)<br \/>  Outbound Proxy: 10.0.0.5 # (ip \u0441\u0442\u0430\u043d\u0446\u0438\u0438)<br \/>  Register: yes<br \/>  User ID: 106<br \/>  Password: pass_for_fax<\/p>\n<p>  \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0433\u043e \u043d\u043e\u043c\u0435\u0440\u0430 \u043d\u0430 \u0441\u0442\u0430\u043d\u0446\u0438\u0438 \u043e\u043f\u0438\u0441\u0430\u043d\u0430 \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u0438 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u044b \u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u0437\u0432\u043e\u043d\u043a\u043e\u0432 (106)<\/p>\n<p>  <b>\u041f\u043e\u043b\u0435\u0437\u043d\u044b\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b<\/b><\/p>\n<p>  asterisk -r \u2014 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435 asterisk<br \/>  asterisk -rx &#8216;sip show peers&#8217; \u2014 \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0431\u0435\u0437 \u0432\u0445\u043e\u0434\u0430 \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c asterisk. \u0421 \u043a\u043b\u044e\u0447\u043e\u043c -x \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u043b\u044e\u0431\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443, \u043d\u0435 \u0437\u0430\u0445\u043e\u0434\u044f \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c asterisk<\/p>\n<p>  \u041a\u043e\u043c\u0430\u043d\u0434\u044b, \u043a\u043e\u043d\u0441\u043e\u043b\u0438 asterisk, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0443 \u043d\u0430\u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0447\u0430\u0449\u0435 \u0432\u0441\u0435\u0433\u043e:<br \/>  sip reload \u2014 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0438\u0437 \u043a\u043e\u043d\u0444\u0438\u0433\u0430 sip.conf<br \/>  dialplan reload \u2014 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u043f\u043b\u0430\u043d \u043d\u0430\u0431\u043e\u0440\u0430<br \/>  sip show channels \u2014 \u0441\u043f\u0438\u0441\u043e\u043a \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0445 \u043a\u0430\u043d\u0430\u043b\u043e\u0432<br \/>  sip set debug ip ip_\u0430\u0434\u0440\u0435\u0441_peer&#8217;a \u2014 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c debug \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u043a\u0430\u043d\u0430\u043b\u0430. \u041f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043f\u0430\u043a\u0435\u0442\u044b \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0445\u043e\u0434\u044f\u0442 \u043c\u0435\u0436\u0434\u0443 \u043d\u0430\u0448\u0435\u0439 \u0441\u0442\u0430\u043d\u0446\u0438\u0435\u0439 \u0438 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u043d\u0446\u0438\u0435\u0439. \u041d\u0435\u0437\u0430\u043c\u0435\u043d\u0438\u043c\u043e \u0434\u043b\u044f \u043e\u0442\u043b\u0430\u0434\u043a\u0438<br \/>  core set verbose 3 \u2014 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0440\u0435\u0436\u0438\u043c \u043e\u0442\u043b\u0430\u0434\u043a\u0438. \u041f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043a\u0430\u043a\u0438\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0442\u0441\u044f \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043a\u0430\u043d\u0430\u043b\u0430.    \t \t\t   \t<\/p>\n<div class=\"clear\"><\/div>\n<\/p><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"http:\/\/habrahabr.ru\/company\/webnames\/blog\/180265\/\"> http:\/\/habrahabr.ru\/company\/webnames\/blog\/180265\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"content html_format\">   \t<b>\u041f\u0440\u0435\u0434\u043f\u043e\u0441\u044b\u043b\u043a\u0438<\/b><\/p>\n<p>  \u0412 \u0436\u0438\u0437\u043d\u0438 \u043b\u044e\u0431\u043e\u0439 \u043a\u0440\u0443\u043f\u043d\u043e\u0439 \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0435\u0439\u0441\u044f \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u0440\u0430\u043d\u043e \u0438\u043b\u0438 \u043f\u043e\u0437\u0434\u043d\u043e \u0432\u0441\u0442\u0430\u0451\u0442 \u0432\u043e\u043f\u0440\u043e\u0441 \u043e \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u043d\u0446\u0438\u0438 \u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0435 \u043e\u0442 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0438\u0438 \u043a IP.<\/p>\n<p>  \u0414\u0430\u043b\u0451\u043a\u043e\u0439 \u0432\u0435\u0441\u043d\u043e\u0439 2011 \u0438 \u043f\u0435\u0440\u0435\u0434 \u043d\u0430\u0448\u0435\u0439 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0435\u0439 \u0432\u0441\u0442\u0430\u043b \u0442\u0430\u043a\u043e\u0439 \u0432\u043e\u043f\u0440\u043e\u0441, \u0442.\u00a0\u043a. \u0432\u043d\u0435\u0448\u043d\u0438\u0435 \u0438 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u043b\u0438\u043d\u0438\u0438 \u0442\u0440\u0435\u0431\u0443\u044e\u0442 \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e\u0433\u043e \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f, \u0430 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u0440\u0442\u043e\u0432 \u043d\u0430 \u0441\u0442\u0430\u0440\u043e\u043c Panasonic KX-TA624 \u0431\u044b\u043b\u043e \u0437\u0430\u0434\u0430\u043d\u043e \u0441\u0442\u0430\u0442\u0438\u0447\u043d\u043e \u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044e \u043d\u0435 \u043f\u043e\u0434\u043b\u0435\u0436\u0430\u043b\u043e. \u041e\u0442\u043a\u0440\u044b\u0442\u0438\u0435 \u043e\u0444\u0438\u0441\u043e\u0432 \u0432 \u0434\u0440\u0443\u0433\u0438\u0445 \u0433\u043e\u0440\u043e\u0434\u0430\u0445 \u0438 \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u0435 \u0435\u0434\u0438\u043d\u043e\u0439 \u0441\u043b\u0443\u0436\u0431\u044b \u043f\u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c\u0438 \u0432 \u0434\u0440\u0443\u0433\u0438\u0445 \u0433\u043e\u0440\u043e\u0434\u0430\u0445 \u0442\u0430\u043a \u0436\u0435 \u043f\u043e\u0434\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u043b\u043e \u043a \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u0430\u043c.<\/p>\n<p>  <b>\u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435<\/b><\/p>\n<p>  \u041a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 \u043f\u0440\u043e\u0434\u0443\u043a\u0442 \u0434\u043e\u043b\u0436\u0435\u043d \u0438\u043c\u0435\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438:<br \/>  1) \u0438\u043c\u0435\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e (\u0432 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043d\u0435 \u043c\u0435\u043d\u0435\u0435 100) \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u0438 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0445 \u043b\u0438\u043d\u0438\u0439 \u0438 \u0431\u044b\u0442\u044c \u0433\u043e\u0442\u043e\u0432\u044b\u043c \u043a \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044e;<br \/>  2) \u0443\u043c\u0435\u0442\u044c \u043f\u0440\u0438\u0432\u0435\u0442\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0432 \u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u0438 \u0441\u043e\u043e\u0431\u0449\u0430\u0442\u044c \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u043e\u043d\u0438 \u043f\u043e\u0437\u0432\u043e\u043d\u0438\u043b\u0438 \u0432 \u043d\u0435\u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u0432\u0440\u0435\u043c\u044f, \u043a\u043e\u0433\u0434\u0430 \u043d\u0438\u043a\u043e\u0433\u043e \u043d\u0435\u0442 \u043d\u0430 \u043c\u0435\u0441\u0442\u0435;<br \/>  3) \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u044b \u043f\u0435\u0440\u0435\u0430\u0434\u0440\u0435\u0441\u0430\u0446\u0438\u0438 \u043f\u0440\u0438 \u043d\u0435 \u043e\u0442\u0432\u0435\u0442\u0435\/\u0437\u0430\u043d\u044f\u0442\u043e\u0441\u0442\u0438\/\u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0438\u043d\u0434\u0438\u0432\u0438\u0434\u0443\u0430\u043b\u044c\u043d\u043e;<br \/>  4) \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u044b \u043e\u0447\u0435\u0440\u0435\u0434\u0438. \u041e\u0447\u0435\u0440\u0435\u0434\u044c \u2014 \u0433\u0440\u0443\u043f\u043f\u0430 \u043d\u043e\u043c\u0435\u0440\u043e\u0432, \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0437\u0432\u043e\u043d\u043a\u043e\u0432 \u0432\u043d\u0443\u0442\u0440\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043f\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u043c \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u043c;<br \/>  5) \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u043b\u043e\u0433 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 (\u043a\u0430\u043a \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0439, \u0442\u0430\u043a \u0438 \u0430\u0443\u0434\u0438\u043e);<br \/>  6) \u0438\u043c\u0435\u0442\u044c \u0433\u0438\u0431\u043a\u0443\u044e \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043f\u0440\u0430\u0432 \u043d\u0430 \u0432\u043d\u0435\u0448\u043d\u0438\u0435 \u0437\u0432\u043e\u043d\u043a\u0438. \u0414\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u044b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u0437\u0432\u043e\u043d\u0438\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u043d\u043e\u043c\u0435\u0440\u0430; \u043d\u0430 \u0433\u043e\u0440\u043e\u0434\u0441\u043a\u0438\u0435 \u043d\u043e\u043c\u0435\u0440\u0430; \u043d\u0430 \u043b\u044e\u0431\u044b\u0435 \u043d\u043e\u043c\u0435\u0440\u0430;<br \/>  7) \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0441\u0443\u0442\u043e\u043a, \u0437\u0432\u043e\u043d\u0438\u0442\u044c \u043d\u0430 \u0442\u043e\u0442 \u0438\u043b\u0438 \u0438\u043d\u043e\u0439 \u043d\u043e\u043c\u0435\u0440. <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-180265","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/180265","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=180265"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/180265\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=180265"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=180265"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=180265"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}