рд╕реНрдХрд╛рдЗрдк, рдЬреИрдмрд░ рдФрд░ рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЪреИрдЯрдмреЛрдЯ рдПрдкреНрд▓рд┐рдХреЗрд╢рди

рдирдорд╕реНрддреЗ!

рдореИрдВ рдЖрдкрдХреЛ рдПрдХ рд╕реАрдзреА рдордиреЛрд░рдВрдЬрди рд╕реЗрд╡рд╛ рдЪреИрдЯ рдмреЙрдЯ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреА рдХрд╣рд╛рдиреА рдмрддрд╛рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред



рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐


рдореЗрд░реЗ рдмрд╛рд░реЗ рдореЗрдВ: рдореИрдВ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ (рд▓рдЧрднрдЧ 5 рд╕рд╛рд▓) рд╕реЗ рд╣реИрдмрд░ рдкрдврд╝ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдПрдХ рдорд╣реАрдиреЗ рдкрд╣рд▓реЗ рдкрдВрдЬреАрдХрд░рдг рдХрд┐рдпрд╛ рдерд╛, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред рдореИрдВ рдПрдХ рдЖрдИрдЯреА рдХрдВрдкрдиреА рдореЗрдВ рдЯреЗрд╕реНрдЯрд┐рдВрдЧ рдЗрдВрдЬреАрдирд┐рдпрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реВрдВред рд▓реЗрдХрд┐рди рдореИрдВ рд╣рдореЗрд╢рд╛ рд╡рд┐рдХрд╛рд╕ рдХреА рдУрд░ рдЖрдХрд░реНрд╖рд┐рдд рд░рд╣рд╛ред рдФрд░ рд▓рдЧрднрдЧ 7 рд╕рд╛рд▓ рдкрд╣рд▓реЗ, рдлреНрд░реАрд▓рд╛рдВрд╕ рдореБрдЦреНрдп рдХрд╛рд░реНрдп рдХреЗ рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ рд▓рдЧреЗ рд╣реБрдП рдереЗред рдЙрд╕рдиреЗ рд╢реБрд░реВ рдХрд┐рдпрд╛, рдЬреИрд╕реЗ рд╕рдм рдХреБрдЫ рдЫреЛрдЯрд╛, рдЧреВрдЧрд▓ рдХреА рдорджрдж рд╕реЗ рд╕рдордЭрд╛ред рдЙрдиреНрд╣реЛрдВрдиреЗ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреА рд╡реЗрдм рдЕрд╢реНрд▓реАрд▓рддрд╛рдПрдБ рд▓рд┐рдЦреАрдВред рдпрд╣ рд╕рдм рдХреБрдЫ рд╡рд┐рддреНрддреАрдп рд▓рдХреНрд╖реНрдпреЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╕рднреА рдЬреАрд╡рди рдореЗрдВ рдПрдХ рдЪрдХреНрд░ рд╢рд╛рдорд┐рд▓ рдерд╛: рдХрд┐рд╕реА рд▓рдХреНрд╖реНрдп рдХреА рдЦреЛрдЬ - рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдЙрдкрд▓рдмреНрдзрд┐ - рд╕рдВрддреБрд╖реНрдЯрд┐ - рдПрдХ рдирдП рд▓рдХреНрд╖реНрдп рдХреА рдЦреЛрдЬред рддреЛ рдпрд╣ рдлреНрд░реАрд▓рд╛рдВрд╕ рдХреЗ рд╕рд╛рде рдерд╛ред



рдЯрд┐рдкрд┐рдВрдЧ рдмрд┐рдВрджреБ


2012-2013 рдХреА рд╕рд░реНрджреА рдереАред рдореИрдВрдиреЗ рдПрдХ рдСрдирд▓рд╛рдЗрди рд╕рд▓рд╛рд╣рдХрд╛рд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рдлреНрд░реАрд▓рд╛рдиреНрд╕ рдкрд░ рдХрд╛рдо рдХрд┐рдпрд╛, рдФрд░ рдореБрдЭреЗ рдЬреИрдмрд░ рдФрд░ рд╕реНрдХрд╛рдЗрдк рдХреЗ рд╕рд╛рде рдПрдХреАрдХрд░рдг рдХрд░рдирд╛ рдерд╛, рдЕрд░реНрдерд╛рдд рдСрдкрд░реЗрдЯрд░ рдЕрдкрдиреЗ рдЧреНрд░рд╛рд╣рдХ рдХреЗ рд╕рд╛рде рдЯрд╛рдЗрдк рдХрд░рдХреЗ рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рдереЗ, рдФрд░ рд╕рд╛рдЗрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдпрд╣ рд╕рдм рд╡реЗрдм рдкрд░ рдорд┐рд▓реЗрдЧрд╛ред Google рдкрд░ рдЦреЛрдЬ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдЬреИрдмрд░ рдХреЗ рд╕рд╛рде рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рд╣реИ, рдХрд┐рд╕реА рднреА xmpp рд╕рд░реНрд╡рд░ рд╕реЗ рдЪреБрдирдиреЗ рдХреЗ рд▓рд┐рдП (рдореИрдВрдиреЗ ejabbered рдЪреБрдирд╛) рдФрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЗрдмреНрд░реЗрд░реА JAXL (рдореИрдВрдиреЗ рдЗрд╕реЗ github рдкрд░ рд▓рд┐рдпрд╛), рдлрд┐рд░ рд╕рдВрд╕реНрдХрд░рдг 2.x рд▓реЗрдХрд┐рди рд╕реНрдХрд╛рдЗрдк рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдПрдВ рдереАрдВ: рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рд╕рд╛рдЗрдЯ рдкрд░ рдкреИрд╕реЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдХрд┐рдЯ рдХреА рдкреЗрд╢рдХрд╢ рдХреА рдЧрдИ рдереА (рдФрд░ рд╕рд░реНрд╡рд░ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдПрдХ рд▓рд╛рдЗрд╕реЗрдВрд╕), рдореЗрд░реЗ рд▓рд┐рдП рдЕрдирд╛рд╡рд╢реНрдпрдХ рд╕рдХреНрд░рд┐рдпрдг рдХреЗ рд╕рд╛рде рдФрд░ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреА рдПрдкреАрдЖрдИ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЙрд▓реНрд▓реЗрдЦ рдХреЗ рд╕рд╛рдеред рдФрд░ рдореБрдЭреЗ рдХреБрдЫ рд╕рд░рд▓ рдЪрд╛рд╣рд┐рдП рдерд╛ред рдФрд░ рдлрд┐рд░ рдореИрдВ "рдирд┐рдХреНрд╕ рд╕рд┐рд╕реНрдЯрдо * рдкрд░ PHP рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ Skype API рдПрдХреНрд╕реЗрд╕ рдХрд░рдирд╛" рдореЗрдВ рдЗрд╕ рдПрдкреАрдЖрдИ рдкрд░ рдЖрдпрд╛, рдЕрдм рд╕реНрдХрд╛рдЗрдк рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рдВрджрд░реНрдн рдирд╣реАрдВ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рддрдм рдпрд╣ рдерд╛, рдореИрдВрдиреЗ dbus рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреАрдбреАрдПрдл рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдерд╛ред рд╡рд╣рд╛рдВ рд╡рд╣ рд╕рдм рдХреБрдЫ рдерд╛ рдЬрд┐рд╕рдХреА рдореБрдЭреЗ рддрд▓рд╛рд╢ рдереАред



рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдкрдврд╝реЗ рдЧрдП рд▓реЗрдЦ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдПрдХ рдмрд╛рд░ рдореЗрдВ рдХрдИ рд╕рдорд╕реНрдпрд╛рдПрдВ рдереАрдВ, рдпрджрд┐ рд╕рд┐рд╕реНрдЯрдо x64 рд╣реИ, рддреЛ рд╕реНрдХрд╛рдЗрдк рдХреЛ рдХреБрдЫ x рдирд┐рд░реНрднрд░рддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:



sudo dpkg --add-architecture i386 sudo aptitude update
      
      







рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдкрд░ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛:



 preg_match('#RECEIVED|SENT#Uis')
      
      





- рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕рднреА рд╕рдВрджреЗрд╢реЛрдВ рдХрд╛ рдЬрд╡рд╛рдм рджреЗрддрд╛ рд╣реИ

- рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╕рдВрджреЗрд╢реЛрдВ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдбрдм рдХреА рдЧрд╣рд░рд╛рдИ рдореЗрдВ рдЧрд╛рдпрдм рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ php рдЙрдиреНрд╣реЗрдВ рдирд╣реАрдВ рдорд┐рд▓рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЕрдХреНрд╕рд░ рд╕рднреА рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдпрд╛ (рдЬрдмрдХрд┐) рдЪрдХреНрд░ рдХреЗ рджреМрд░рд╛рди рд╕рднреА рдХреЛ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдкрд░реАрдХреНрд╖рдг рдФрд░ рддреНрд░реБрдЯрд┐ рдХреЗ рджреНрд╡рд╛рд░рд╛, рдПрдХ рддрд░реАрдХрд╛ рдкрд╛рдпрд╛ рдЧрдпрд╛ рдХрд┐ 100% рд╕рднреА рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдХреИрдкреНрдЪрд░ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдпрд╛ рдкреБрдирдГ рд▓реЛрдб рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рднреА, рдпрд╣рд╛рдБ рд╣реИ:



 $oSkype->Invoke('SEARCH MISSEDMESSAGES')
      
      





рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА
 class phpSkype { private static $iLastId; public static function notify($sNotify) { //.... //.... //.... /* Message serving 4 */ if (preg_match('/^CHATMESSAGES/', $sNotify)) { $sNotify = str_replace('CHATMESSAGES ', '', $sNotify); if ($sNotify != '') { $aMessages = explode(', ', $sNotify); if (sizeof($aMessages)) { foreach ($aMessages as $iMessageId) { $sAuthRaw = $oSkype->Invoke('GET CHATMESSAGE ' . $iMessageId . ' FROM_HANDLE'); $sMessageRaw = $oSkype->Invoke('GET CHATMESSAGE ' . $iMessageId . ' BODY'); $aMessage = explode('BODY ', $sMessageRaw); $aUsernameSkype = explode('FROM_HANDLE ', $sAuthRaw); $aChatHash = explode('CHATNAME ', $oSkype->Invoke('GET CHATMESSAGE ' . $iMessageId . ' CHATNAME')); verifyUserSkypeChatId($aUsernameSkype[1], $aChatHash[1]); if (self::$iLastId < $iMessageId) { self::$iLastId = $iMessageId; addLog($aUsernameSkype[1], $aMessage[1]); self::received($aUsernameSkype[1], trim(strtolower($aMessage[1])), $iMessageId); } else { $oSkype->Invoke('SET CHATMESSAGE ' . $iMessageId . ' SEEN'); } } } } } //.... //.... //.... } public static function received($sUid, $sMessage, $iLastMsgId) { $oSkype = Zend_Registry::get('$oSkype'); // Mark received message as read $oSkype->Invoke('SET CHATMESSAGE ' . $iLastMsgId . ' SEEN'); /* Prepare */ $sChatIdRaw = $oSkype->Invoke('GET CHATMESSAGE ' . $iLastMsgId . ' CHATNAME'); $aChatId = explode('CHATNAME ', $sChatIdRaw); $sMembers = $oSkype->Invoke("GET CHAT " . $aChatId[1] . " ACTIVEMEMBERS"); $sMembers = str_replace('CHAT ' . $aChatId[1] . ' ACTIVEMEMBERS ', '', $sMembers); $aMembers = explode(' ', $sMembers); if (sizeof($aMembers) > 2) { $oSkype->Invoke("ALTER CHAT " . $aChatId[1] . " CLEARRECENTMESSAGES"); $oSkype->Invoke("ALTER CHAT " . $aChatId[1] . " DISBAND"); $oSkype->Invoke("ALTER CHAT " . $aChatId[1] . " LEAVE"); return false; } //.... //.... //.... } } $oDbus->registerObject('/com/Skype/Client', 'com.Skype.API.Client', 'phpSkype'); $bSMLastUpdate = 0; while (true) { $s = $oDbus->waitLoop(1); /* Get new skype messages */ global $bSMLastUpdate; if (time() - $bSMLastUpdate >= $aConfig['skype_get_new_message']) { $bSMLastUpdate = time(); $oSkype->Invoke('SET USERSTATUS ONLINE'); $oSkype->Invoke('SEARCH MISSEDMESSAGES'); } }
      
      







рдбрдм рдореЗрдВ рдЬреЛ рд╕рднреА рд╕рдВрд╕рд╛рдзрд┐рдд рд╕рдВрджреЗрд╢ рдирд╣реАрдВ рднреЗрдЬрддрд╛ рд╣реИ (рдЬрд┐рд╕ рдкрд░ рдХреЛрдИ рдзреНрд╡рдЬ рдирд╣реАрдВ рд╣реИ):

 $oSkype->Invoke('SET CHATMESSAGE ' . $iMessageId . ' SEEN');
      
      





рдФрд░ рдореБрдЦреНрдп рд▓реВрдк рдореЗрдВ рд╣рдо рдЙрдиреНрд╣реЗрдВ рдкрдХрдбрд╝рддреЗ рд╣реИрдВ:

 preg_match('/^CHATMESSAGES/', $sNotify)
      
      





рдпрд╣ рдмреЙрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рд╕реЗ рдкреНрд░рд╛рдзрд┐рдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдПрдХ рднрд╛рд╡реА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗрд╡рд▓ рд╕реНрдХрд╛рдЗрдк рдореЗрдВ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рднреЗрдЬрдХрд░ рдкрдВрдЬреАрдХрд░рдг рдХрд░ рд╕рдХрддрд╛ рд╣реИ), рдЕрд░реНрдерд╛рддреН:

 $oSkype->Invoke("SEARCH USERSWAITINGMYAUTHORIZATION")
      
      





рдкреНрд░рддреАрдХреНрд╖рд╛ рдХреЗ рдмрдЬрд╛рдп:

 preg_match('/^USER ([a-zA-Z0-9_\.]+) RECEIVEDAUTHREQUEST (.)+/', $sNotify, $aMatches)
      
      





рдЬреЛ рдХрднреА-рдХрднреА рдирд┐рд░рд╛рд╢ рдХрд░рддрд╛ рдерд╛ред рдЗрд╕рдХреЗ рд╕рд╛рде рдПрдХ рдФрд░ рдЕрддрд┐ рд╕реВрдХреНрд╖реНрдо рдЕрдВрддрд░ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ, рдЕрдЧрд░ рд╣рдореЗрдВ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдиреЗ рдмреЙрдЯ рдХреЛ рд╕рдВрдкрд░реНрдХ рд╕реВрдЪреА рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рд╣реИ, рддреЛ рдпрд╣ рдЖрд░рдВрдн рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

 /* Client unlink */ if (preg_match('/BUDDYSTATUS 2/', $sNotify)) { //... }
      
      





рд▓реЗрдХрд┐рди рдмреЙрдЯ рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рднреЗрдЬрддреЗ рд╕рдордп рдЗрд╕реА рддрд░рд╣ рдХреА рд╕рдорд╕реНрдпрд╛ рд╣реЛрдиреЗ рдкрд░ рдЖрдкрдХреЛ рд╕рд╛рд╡рдзрд╛рди рд░рд╣рдиреЗ рдФрд░ рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдкрд░ рдирдЬрд░ рд░рдЦрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ:

 $oSkype->Invoke("SET USER [USER_NAME] BUDDYSTATUS 2 [AUTH_MESSAGE]");
      
      





рд▓реЗрдХрд┐рди рдореИрдВ рдЕрднреА рднреА рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдирд╣реАрдВ рдХрд░ рд╕рдХрд╛ рдХрд┐ рдУрдПрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рдирд┐рд╖реНрдХреНрд░рд┐рдпрддрд╛ рдХреЗ рдмрд╛рдж рдмрд┐рд╕реНрддрд░ рдкрд░ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж рд╕реНрдХрд╛рдЗрдк рдмреЙрдЯ рдЪрд▓реЗ рдЬрд╛рддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╕реНрдХрд╛рдЗрдк рд╕реЗрдЯрд┐рдВрдЧ рдореЗрдВ рдпрд╣ рджреВрд░_рдореЛрдб = рджреВрд░ рд░рд╣рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рд▓рд╛рдЗрди рдорджрдж рдирд╣реАрдВ рдХрд░рддреА рд╣реИ:

 $oSkype->Invoke('SET USERSTATUS ONLINE');
      
      





рдЗрд╕рдХреЗ рдмрд╛рдж рд╣реА, рд╕реНрдХрд╛рдЗрдк рдиреЗ рдХрд╛рдлреА рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ред



рдФрд░ рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЗрд╕рдХреА рд╕реНрдерд╛рдкрдирд╛ рд╢реБрд░реВ рдХрд░ рджреА ... рдлрд╝реНрд░реАрдмрд╕реНрдб рд╡рд╛рдкрд╕ рдлрд┐рд░ 9.x, рдореЗрд░реЗ рд╕рднреА рдШрдЯрдирд╛рдХреНрд░рдореЛрдВ рдХреА рддрд░рд╣, рдУрд╣ рдФрд░ рдореБрдЭреЗ рдпрд╣ рдкреНрд░рдгрд╛рд▓реА рдкрд╕рдВрдж рдЖрдИ, рдореИрдВрдиреЗ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЗрд╕рдХреЗ рд╕рд╛рде рд╕рдВрдШрд░реНрд╖ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдбрдм рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдХрд╛рдЗрдк рд╢реБрд░реВ рдирд╣реАрдВ рдХрд┐рдпрд╛, рдлрд┐рд░ рдореИрдВ рдПрдХ рд╕рддреНрд░ рдореЗрдВ рднрд╛рдЧ рдЧрдпрд╛ x- рдкреНрд░рдмрдВрдзрдХ рдФрд░ рджрд╛рд╕ рдФрд░ рдЙрдирдХреА рдЕрд╕рдВрдЧрддрд┐ рдФрд░:

   /root/.dbus/session-bus/ id  dbus      export DBUS_SESSION_BUS_ADDRESS=8c9916eb531f5f9a0458961c000033bc-1
      
      





рд╣рдореЗрд╢рд╛ рдорджрдж рдирд╣реАрдВ рдХреА, рдореБрдЭреЗ рд▓рд╛рдЗрдирдХреНрд╕ рдкрд░ рд╕рдм рдХреБрдЫ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдкрдбрд╝рд╛, рдЬреИрд╕рд╛ рдХрд┐ рд╣реИрдмрд░ рдкрд░ рд▓реЗрдЦ рдореЗрдВ рд╕рдВрдХреЗрдд рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдореИрдВрдиреЗ рдбреЗрдмрд┐рдпрди рдХреЛ рдЪреБрдирд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдмреИрдХрдПрдВрдб рд╡реЗрдм рдлрд╝реНрд░реАрдмрд▓реНрдб рдкрд░ рд░рд╣рд╛ рдФрд░ рдЙрдиреНрд╣реЛрдВрдиреЗ рдореЗрдореНрдЪреЗ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ-рджреВрд╕рд░реЗ рд╕реЗ рдмрд╛рдд рдХреАред рд╣рд╛рдВ, рд╣рд╛рдВ, рдПрдХ рдорд╣рд╛рди "рдмрд╛рдЗрдХ", рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдиреАрдЪреЗ рдФрд░ рднреА рдмрд╣реБрдд рдХреБрдЫред

рдЪреИрдЯрдмреЛрдЯ рдХреЛрдб рд╡реЗрдм рдХреЛрдб рдХреЗ рд╕рд╛рде рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рдерд╛, рдореИрдВ рдЗрд╕реЗ рдЬрд▓реНрдж рд╕реЗ рдЬрд▓реНрдж рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдФрд░ рдЗрд╕рд▓рд┐рдП "рд╕рдВрджреЗрд╢ рдХреНрд╡реАрдиреНрд╕" рдкрд░ рдЕрдЪреНрдЫреЗ рдирд┐рд░реНрдгрдп рд▓реЗрдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдЬрд┐рд╕рдХрд╛ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛, рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрдпрд╛, рдореИрдВрдиреЗ рдЕрдкрдиреЗ рддрд░реНрдХ рдХреЗ рд╕рд╛рде php + memcache рд╕реЗ рдЕрдкрдиреА рдмрд╛рд░реА рдХрд╛ рдХрд╛рдо рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ред рдкрдВрдЬреАрдХрд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддрд╛рд▓реЗ, рдФрд░ рд╕рдВрдЪрд╛рд▓рдХреЛрдВ рдХреЗ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдкрдВрдЬреАрдХрд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдФрд░ рд╕рдВрджреЗрд╢ рднреЗрдЬрдирд╛ред рдпрд╣ рдПрдХ рднрдпрд╛рдирдХ "рдорд╢реАрди" рдерд╛ рдЬрд┐рд╕рдореЗрдВ рдЖрдк рдЕрдкрдиреА рдЖрдБрдЦреЗрдВ рддреЛрдбрд╝ рд╕рдХрддреЗ рдереЗ - рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рдо рдХрд┐рдпрд╛ рдФрд░ рдЕрднреА рднреА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЬрд╣рд╛рдБ рддрдХ рдореБрдЭреЗ рдкрддрд╛ рд╣реИред рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ: рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ 6 рдмреЙрдЯ / рдУрдПрд╕, 6 рдиреЗ рдкреНрд░рддреНрдпреЗрдХ рдбреЗрдмрд┐рдпрди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд░реНрдЪреБрдЕрд▓ рдбреЗрд╕реНрдХрдЯреЙрдк рдЙрдард╛рдП, 6 vnc рд╡рд┐рдВрдбреЛ, рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдореЗрдВ 4 рд╕реНрдХреНрд░рд┐рдкреНрдЯ (рд╕реНрдХрд╛рдЗрдк рдФрд░ рдЬреИрдмрд░ рдмреЙрдЯ, рдореЗрд░реА рд▓рд┐рдЦрд┐рдд рдХрддрд╛рд░ рдХреЗ рдХрд╛рд░реНрдпрдХрд░реНрддрд╛) рд╣реИрдВред рд╕рд░реНрд╡рд░ рдХрд╛ рдкреНрд░рддреНрдпреЗрдХ рд░рд┐рдмреВрдЯ рд╢реНрд░рдорд╕рд╛рдзреНрдп рдХрд╛рд░реНрдп рдореЗрдВ рдмрджрд▓ рдЧрдпрд╛, рдЫрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рд▓реЙрдЧ рдЗрди рдХрд░реЗрдВ, рдкреНрд░рддреНрдпреЗрдХ рдХреЗ рд▓рд┐рдП vnc рдЦреЛрд▓реЗрдВ, рдПрдХ рдЯрд░реНрдорд┐рдирд▓ рдЦреЛрд▓реЗрдВ рдФрд░ рд╡рд╣рд╛рдВ 4 php рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рдПрдВред рдмреЙрдЯреНрд╕ рдЕрдм рдФрд░ рдлрд┐рд░ рдХреБрдЫ рдЕрдЬреАрдм рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реЛ рдЧрдпрд╛, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ JAXL рдореЗрдВ, рдЬрдм рд╡реАрдПрдирд╕реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдпрд╣ рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реЛ рдЧрдпрд╛:

 Interrupted system call  jaxl_loop.php
      
      





рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕реНрдерд╛рди "рдирдпрд╛ JAXL ()" рдореЗрдВ рдлрд╝реАрд▓реНрдбреНрд╕ рдХреЛ рдмрджрд▓рдХрд░ / рд╣рдЯрд╛рдХрд░ рдЗрд╕рдХрд╛ рдЗрд▓рд╛рдЬ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рддрдВрдЧ рд╕рдордп рд╕реАрдорд╛ рдХреЗ рднреАрддрд░ Google рдХреА рдЦреЛрдЬ рдиреЗ рд╣рдореЗрдВ рд╕рд╛рд╡рдзрд╛рдиреАрдкреВрд░реНрд╡рдХ рдЙрдиреНрд╣реЗрдВ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреАред



рддреИрдпрд╛рд░, рд╕реНрдерд┐рд░, рдЬрд╛рдУ


2013 рдХреЗ рд╡рд╕рдВрдд рдореЗрдВ, рдореИрдВрдиреЗ рдЕрдкрдиреА рдкреВрд░реНрдгрддрд╛рд╡рд╛рдж рдХреЛ рд╡рд┐рд╕реНрдорд┐рдд рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдФрд░ рд╕реЛрдЪрд╛ рдХрд┐ рдореБрдЭреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдХреБрдЫ рджрд┐рд▓рдЪрд╕реНрдк рдФрд░ рдЖрд╡рд╢реНрдпрдХ рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдХреЛрдб рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рд╕реБрдВрджрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣ рдирд╣реАрдВред рдФрд░ рдЙрд╕рдиреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреА рдЦреЛрдЬ рд╢реБрд░реВ рдХрд░ рджреАред рдФрд░ рд╡рд╣, рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рдирд┐рдХрд▓рд╛, рдореЗрд░реА рдмрд╣реБрдд рдирд╛рдХ рдХреЗ рдиреАрдЪреЗ рдерд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореИрдВ рдЕрдХреНрд╕рд░ рд╡рд┐рдВрдбреЛ 7 рдпрд╛ рдореИрдХреЛрд╕ рдореЗрдВ рдХреИрд▓рдХреБрд▓реЗрдЯрд░ рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реВрдВ рдпрд╛ рдЕрдкрдиреЗ рдлреЛрди рдкрд░ рдореМрд╕рдо рджреЗрдЦрддрд╛ рд╣реВрдВред рдФрд░ рд▓рдЧрднрдЧ рдкреВрд░рд╛ рджрд┐рди, рдЬрдм рдореИрдВ рдЬрд╛рдЧрддрд╛ рд╣реВрдВ, рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдмрд┐рддрд╛рддрд╛ рд╣реВрдВред рдирд┐рд╖реНрдХрд░реНрд╖ рдЦреБрдж рд╕реЗ рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдореМрдЬреВрджрд╛ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд▓рдЧрд╛рддрд╛рд░ рдЦреЛрд▓рдиреЗ рдФрд░ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдХреНрд╕рд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдмрд┐рдВрдЧреЛред рдореИрдВ рддреИрдпрд╛рд░ рдХрд┐рдП рдЧрдП рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП Google рдореЗрдВ рднрдпрд╛рд╡рд╣ рд░реВрдк рд╕реЗ рдЪрдврд╝ рдЧрдпрд╛, рдЕрд░реНрдерд╛рддреН рд▓реЛрдХрдкреНрд░рд┐рдп im рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЪреИрдЯ рдмреЙрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд╛рдЧреВ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧред рдФрд░ рдЙрд╕ рд╕рдордп рдореБрдЭреЗ рдПрдХ рднреА рдирд╣реАрдВ рдорд┐рд▓рд╛ (рдХреНрдпрд╛ рдореИрдВ рдмреБрд░реА рддрд░рд╣ рд╕реЗ рджреЗрдЦрддрд╛ рд╣реВрдВ?)ред рдЖрдкрдХреЛ рдЕрдкрдирд╛ рдЦреБрдж рдХрд╛ рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛, рдпрд╣ рдореБрдлрд╝реНрдд рд╣реЛрдЧрд╛ рдФрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдореИрдВ рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдЦреБрдж рдХрд░реВрдВрдЧрд╛ред рдореБрдЭреЗ рдмреЙрдЯреНрд╕ рдХреА рдПрдХ рдЪреИрдЯ рд▓рд┐рдЦрдиреА рдереА рдЬреЛ рдпреВрдПрд╕рдПрд╕рдбреА рдХрдорд╛рдВрдбреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реНрдХрд╛рдЗрдк рдФрд░ рдЬреИрдмрд░ (рдмрд╛рдж рдореЗрдВ рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк) рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░ рд╕рдХрддреА рдереА, рдмрд╕ рдкрд╣рд▓реЗ рд╕реЗ рдмреЗрд╣рддрд░ рд▓рд┐рдЦрд┐рдП рдФрд░ рдПрдХ рд╕рдВрдкреВрд░реНрдг рд╕рдорд╛рдзрд╛рди рдмрдирд╛рдЗрдП, рдПрдХ рдбреЛрдореЗрди рдирд╛рдо, рд▓реЛрдЧреЛ, рд╡реЗрдмрд╕рд╛рдЗрдЯ рдбрд┐рдЬрд╛рдЗрди, рд╕рд╛рдЗрдЯ рдХреЛ рд╣реА рдФрд░ рд╕рднреА рдХреЛ рдЪреБрдирд┐рдПред рдмрд╛рдХреА рд╡рд╣ рд╣реИ рдЬреЛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдЕрд░реНрдерд╛рддреН рдкреВрд░реНрдг рд╡рд┐рдХрд╛рд╕ рдЪрдХреНрд░ рдФрд░ рдЙрддреНрдкрд╛рджреЛрдВ рдореЗрдВ рддреИрдирд╛рддреАред



рдХрд╛рд░реНрдп рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИ, рдФрд░ рдореИрдВрдиреЗ рдЗрд╕реЗ рдкрд╣рд▓реЗ рдХрднреА рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛ред рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рд╕рд┐рд░реНрдл 1 рдХрджрдо рдЙрдард╛рдирд╛ рд╣реЛрдЧрд╛ ...ред рдФрд░ рд╡рд╣ рдкрд╣рд▓реЗ рд╣реА рд╣реЛ рдЪреБрдХрд╛ рдерд╛ред рдИрдорд╛рдирджрд╛рд░ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рддреБрд░рдВрдд рд╕реЛрдЪрд╛ рдХрд┐ рд╕рд░реНрд╡рд░ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░рдирд╛ рдХрд┐рддрдирд╛ рд╢рд╛рдВрдд рд╣реЛрдЧрд╛ рдФрд░ рд╕рд░реНрд╡рд░ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рд╕реНрдХрд╛рдЗрдк / рдЬреИрдмрд░ / рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк рдореЗрдВ рдХрдВрд╕реЛрд▓ рдПрдорд╢ рдЗрдореНрдпреВрд▓реЗрд╢рди рд╣реЛрдЧрд╛ (рдЕрднреА рдХреЗ рд▓рд┐рдП, рдпрд╣ рдХрд╛рд░реНрдп рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдП рд╕реНрдердЧрд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреБрдЫ рдШрдЯрдирд╛рдХреНрд░рдо рд╣реИрдВ)ред

рдФрд░ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ "10 рдорд┐рдирдЯ рдХреЗ рд▓рд┐рдП рдИрдореЗрд▓" рд╕реЗрд╡рд╛ рдХрд╛ рдПрдХ рдПрдирд╛рд▓реЙрдЧ рд╣реЛрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рдЦрджрд╛рди рдореЗрдВ рдПрдХреАрдХрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд▓реЛрдХрдкреНрд░рд┐рдп рд╕реЗрд╡рд╛ рдХреЗ рдорд╛рд▓рд┐рдХ рдХреЛ рд▓рд┐рдЦрдирд╛, рдореБрдЭреЗ рдХреБрдЫ рднреА рдЕрдЪреНрдЫрд╛ рд╣реЛрдиреЗ рдХреА рдЙрдореНрдореАрдж рдирд╣реАрдВ рдереА, рдореЗрд░реЗ рдЕрдВрддрд░реНрдЬреНрдЮрд╛рди рдиреЗ рдирд┐рд░рд╛рд╢ рдирд╣реАрдВ рдХрд┐рдпрд╛, рдЗрд╕ рдкреНрд░рдгрд╛рд▓реА рдХреЗ рдбреЗрд╡рд▓рдкрд░ рдиреЗ рд╡рд┐рдирдореНрд░рддрд╛ рд╕реЗ рдордирд╛ рдХрд░ рджрд┐рдпрд╛, рдпрд╣ рдХрд╣рддреЗ рд╣реБрдП рдХрд┐ рд╕реЗрд╡рд╛ рдореБрдлреНрдд рд╣реИ, рдФрд░ рдбреЗрд╡рд▓рдкрд░ рдореБрд╢реНрдХрд┐рд▓ рд╕реЗ рдЕрдкрдиреЗ рдХрд╡рд░ рдХрд░рддрд╛ рд╣реИ рдЗрд╕ рд╕реЗрд╡рд╛ рдкрд░ рд╕рдордп рдмрд┐рддрд╛рдпрд╛ рд╡рд┐рдЬреНрдЮрд╛рдкрдиред рдФрд░ рдореИрдВ рдЗрд╕реЗ рдЗрддрдиреА рдмрд╛рд░ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред рдареАрдХ рд╣реИ, рдареАрдХ рд╣реИ, рдореИрдВрдиреЗ рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдЕрдкрдиреА рдмрд╛рдЗрдХ рдХреЗ рд╕рд╛рде рдЫреЗрдбрд╝рдЫрд╛рдбрд╝ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ рдореИрдВрдиреЗ рдЗрд╕реЗ рд╕рдорд╛рдкреНрдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕рднреА рдХреЛрд╢рд┐рд╢ рдХреА рдЧрдИ рдФрд░ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдП рдЧрдП рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рдмрдирд╛рдирд╛ рдмрд╣реБрдд рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рдерд╛ред

рдпрд╣ рдлреНрд░реАрд▓рд╛рдиреНрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рдерд╛ (рд▓реЗрдХрд┐рди рдореИрдВ рдмрд╣реБрдд рдкрд░реЗрд╢рд╛рди рдирд╣реАрдВ рдерд╛, рдЗрд╕рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рд╡рд┐рддреНрддреАрдп рдерд╛, рдлреНрд░реАрд▓рд╛рдВрд╕ рдиреЗ рдЗрд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХреА, рдХреЛрдИ рдЕрдиреНрдп рд▓рдХреНрд╖реНрдп рдирд╣реАрдВ рдереЗ, рдУрд╣ рд╣рд╛рдБ, рдореИрдВрдиреЗ рдПрдХ рд╕реНрдкреЛрд░реНрдЯреНрд╕ рдмрд╛рдЗрдХ рд▓реА рдФрд░ рдЕрдм рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдХреЛрдИ рдФрд░ рд▓рдХреНрд╖реНрдп рдирд╣реАрдВ рдерд╛ рдФрд░ рдЦрд╛рд▓реА рд╕рдордп рдерд╛ (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВрдиреЗ рдкрд┐рдЫрд▓реА рдЖрдИрдЯреА рдХрдВрдкрдиреА рдореЗрдВ рд▓рдЧрд╛рддрд╛рд░ рдХрд╛рдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрд╛, рд▓реЗрдХрд┐рди рдЕрдзрд┐рдХ рджрд┐рд▓рдЪрд╕реНрдк рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдкрд░, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдЕрднреА рддрдХ рдореБрдЭреЗ рдЬреЛ рдкрд╕рдВрдж рдЖрдпрд╛ рд╣реИ)ред рджреЛ рдорд╣реАрдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ рдХреЛрдб рджреЗрдЦрд╛, рд╡реИрд╕реЗ рднреА рдпрд╣ рдЪреИрдЯ рдмреЙрдЯ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ php рдХреЛрдб рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдХрд┐рд╕реА рддрд░рд╣ рдХрд╛ рд░рд╛рдХреНрд╖рд╕ рдерд╛ред рд▓реЗрдХрд┐рди рд╕рд╛рдЗрдЯ рдХрд╛ рдбрд┐рдЬрд╝рд╛рдЗрди рдЕрднреА рднреА рд▓рдЧрднрдЧ рдЕрдЫреВрддрд╛ рдирд╣реАрдВ рд░рд╣рд╛, рдореИрдВрдиреЗ рддреБрд░рдВрдд рдлреНрд▓реИрдЯ рдпреВрдИ рдмрдирд╛рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ - рдпрд╣ рдореБрдЭреЗ рдирд┐рдХрдЯ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЙрд╕рдХреЗ рд▓рд┐рдП рд╕рдлрд▓рддрд╛ рд▓рдЧ рд░рд╣рд╛ рдерд╛ред рд╡рд╕рдВрдд рдХрд╛ рдЕрдВрдд, рдореИрдВ рдПрдХ рдЕрд▓рдЧ рдкреНрд░рдХреГрддрд┐ рдХреА рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдФрд░ рдЗрд╕ рд╕реЗрд╡рд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреВрд▓ рдЬрд╛рддрд╛ рд╣реВрдВ рдФрд░ рдирд╡рдВрдмрд░ 2013 рдореЗрдВ рдореИрдВ рдЗрд╕рдХреЗ рд╡рд┐рдХрд╛рд╕ рдкрд░ рд▓реМрдЯреВрдВрдЧрд╛ рдФрд░ рд╕рдмрд╕реЗ рдкрд╣рд▓реА рдмрд╛рдд рдореИрдВ рд╕рднреА рдЪреИрдЯ рдмреЙрдЯреНрд╕ рдХреЛрдб рдХреЛ рд╣рдЯрд╛ рджреВрдВрдЧрд╛ред рдФрд░ рдореИрдВ рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддрд╛ рд╣реВрдВ рдФрд░ рдореЗрдореЗрдЪреЗ рдкрд░ рдХрддрд╛рд░ рдХреЗ рдмрд┐рдирд╛ред



рдЦрд░реЛрдВрдЪ рд╕реЗ


рдЙрдиреНрд╣реЛрдВрдиреЗ рднрд╡рд┐рд╖реНрдп рдХреА рд╡рд╛рд╕реНрддреБрдХрд▓рд╛, рдореЙрдбреНрдпреВрд▓ рдХреА рд╕рдВрд░рдЪрдирд╛ (рд╡реЗрдм, рдПрдкреА, рдмреЙрдЯ) рдХрд╛ рдкрд╛рда рд▓рд┐рдЦрд╛ред рдореЗрдХрдЪреЗ рдореЗрдВ рднрдВрдбрд╛рд░рдг рд╕рдВрд░рдЪрдирд╛ рдкрд░ рд╕рдВрдХрд▓рд┐рдд рдкреНрд░рд▓реЗрдЦрди - рднрд╡рд┐рд╖реНрдп рдореЗрдВ, рдпрд╣ рд╕рдм рдмрд╣реБрдд рдорджрдж рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЕрдкрдиреЗ "рдореЗрдореЛрд░реА рдкреИрд▓реЗрд╕" рдореЗрдВ рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рддрд░реНрдХ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВред

рд╢реБрд░реБрдЖрдд рдореЗрд░реЗ рд╕рд┐рд░ рдореЗрдВ рдереА:

рд╡реЗрдм : freebsd 10 + php 5.x + apache + mysql 5.x + apc



, рджреВрд╕рд░рд╛ рдкрдврд╝рд╛

php 5.x nginx + php-fpm, apc, opcache.





рдЪреИрдЯрдмреЙрдЯ : debian wheezy gnome + php 5.x + skype + memcache ( , ) + ejabbered JAXL 2.x ( 3.x)+ rabbitMQ ( ) PhpAmqpLib ( memcache github).



рд╡реНрд╣реАрдЬрд╝реА debian wheezy gnome + php 5.x + skype + memcache ( , ) + ejabbered JAXL 2.x ( 3.x)+ rabbitMQ ( ) PhpAmqpLib ( memcache github).







рдкреНрд░рддреНрдпреЗрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░: рд╕реНрдХрд╛рдЗрдк рдХреЗ рд▓рд┐рдП рдмреЙрдЯ-рд▓рд┐рд╕реНрдЯ, рдЬреИрдмрд░ рдХреЗ рд▓рд┐рдП рдмреЙрдЯ-рд▓рд┐рд╕реНрдЯ, рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк рдХреЗ рд▓рд┐рдП рдмреЙрдЯ-рд▓рд┐рд╕реНрдЯ, рдпреВрдЬрд░ рд╡рд░реНрдХрд░ рдХреЛ рдЬреЛрдбрд╝рдиреЗ / рдбрд┐рд▓реАрдЯ рдХрд░рдиреЗ рдФрд░ рдЬреЛрдбрд╝рдиреЗ / рдбрд┐рд▓реАрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд┐рд╕ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдкрд┐ рд╡рд░реНрдХрд░ (rabbitMQ) рдХреЛ рдПрдкрд┐ рдореЗрдЯреНрд╕ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рд╡рд╛рд▓реЗ рдФрд░ рддреАрди рд╣реЗрд▓реНрдкрд░реНрд╕ (рд╕рднреА рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд▓рд┐рдП) рд╕реНрдкреИрдорд░ рд╡рд░реНрдХрд░ (rabbitMQ) рд╕рдмрд╕реЗ рд╕рд░рд▓ рдкреНрд░реЗрд╖рдХ рдмреЙрдЯ рд╣реИрдВ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рдФрд░ рд╕реНрдкреИрдорд░ рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рд╕реЗ рдХрдорд╛рдВрдб рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдЙрдиреНрд╣реЗрдВ рдкреГрд╖реНрдарднреВрдорд┐ рдореЗрдВ рднреА рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдХрд╛рдо рдХреЗ рдмрд╛рдж, рд╕рднреА рдмреЙрдЯ рдЧрддрд┐рд╡рд┐рдзрд┐ рдХреЛ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЛ рдирд┐рд░рд╕реНрдд рдХрд░реЗрдВ, рд╕рдВрджреЗрд╢ "X" рдХреЗ рд╕рд╛рде рдкреНрд░рд╛рдзрд┐рдХрд░рдг рднреЗрдЬреЗрдВ, рдФрд░ рд╕рдВрджреЗрд╢ рднреЗрдЬреЗрдВ)ред



рдЬрдм рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдФрд░ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛, рддреЛ рдХрд╛рдо рдХреЗ рдПрдХ рд╕рд╣рдпреЛрдЧреА, рдЬрд┐рд╕рдиреЗ рдореЗрд░реЗ рдХрд╛рдо рдХреЛ рджреЗрдЦрд╛, рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛:

рдФрд░ рдЖрдУ рдФрд░ рд╡рд╛рдЗрдмрд░!


рдФрд░ рдореИрдВ рдлрд┐рд░ рд╕реЗ рдЕрдкрдиреЗ рдЕрдкрд░рд┐рд╣рд╛рд░реНрдп рд╕рд╣рд╛рдпрдХ - Google рдХреА рдУрд░ рдореБрдбрд╝ рдЧрдпрд╛ред рдУрдкрди рдПрдкреАрдЖрдИ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рдерд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдорд┐рд▓реЗ рдФрд░ рдЗрд╕реЗ рд╕реЗрд╡рд╛ рдореЗрдВ рдлрд╛рд╕реНрдЯ рдХрд░ рджрд┐рдпрд╛ (рдореИрдВрдиреЗ рдЬреАрде рдкрд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛрдб "рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк" рд▓рд┐рдпрд╛)ред рд▓реЗрдХрд┐рди рд░реБрдХреЗрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдЧреИрд░-рд░реВрд╕реА рд╡рдХреНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╣реИ, рдЖрдкрдХреЛ рдмреЙрдЯреНрд╕ рдФрд░ рд╕рд╛рдЗрдЯ рдкрд░ рдЕрдиреБрд╡рд╛рдж рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдореИрдВрдиреЗ рдкрдврд╝рд╛ "рдЖрдк рдкрд╣рд▓реА рдмрд╛рд░ рдХрд┐рд╕ рднрд╛рд╖рд╛ рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?" рдФрд░ рдЕрдВрдЧреНрд░реЗрдЬреА, рд░реВрд╕реА, рдЪреАрдиреА рд╕рд░рд▓реАрдХреГрдд, рдЬрд░реНрдорди рдФрд░ рд╕реНрдкреИрдирд┐рд╢ рдХреЛ рдЪреБрдирд╛, рдлрд┐рд░ рдЪреАрдиреА рдХреЛ рдордирд╛ рдХрд░ рджрд┐рдпрд╛, рдореЗрд░реЗ рджреЛрд╕реНрддреЛрдВ рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдиреЗ рдЗрд╕реЗ рдХрд▓рд╛рддреНрдордХ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╕рдордЭрд╛ред

рд╡реЗрдм рдХреЗ рд▓рд┐рдП рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ ZF 2.x рд▓рд┐рдпрд╛ред рдореИрдВрдиреЗ рд╕рднреА рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдПрдХ рд╣реА рдмреЙрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдИ, рдФрд░ рдлрд┐рд░ рдПрдХ рдЕрд▓рдЧ рдмреЙрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧред рдкрд╣рд▓реА рдпреЛрдЬрдирд╛ рдмрд╣реБрдд рдЕрд╕реНрдерд┐рд░ рдереА (рдЬрдм рд╕реЗ рдореИрдВ рдЕрднреА рднреА рдЧреИрд░-рдкреНрд░рд▓реЗрдЦрд┐рдд рдХреИрд╢ рдХреЗ рд░реВрдк рдореЗрдВ рдФрд░ "рд╕рдВрджреЗрд╢ рдХрддрд╛рд░" рдХреЗ рд░реВрдк рдореЗрдВ рдореЗрдХрдЪреЗ рдкрд░ рдирд┐рд░реНрднрд░ рдерд╛), рдФрд░ рдореИрдВрдиреЗ рдЗрд╕реЗ рдордирд╛ рдХрд░ рджрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдлрд┐рд░ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рд╡рд╛рдкрд╕ рдЖ рдЧрдпрд╛ред рдФрд░ рджреВрд╕рд░рд╛ рдПрдХ, рдкрд╣рд▓реЗ рд╕реЗ рд╣реА 8 рдмреЙрдЯ рдХреЗ рдмрд╛рдж, рд╕реНрдХрд╛рдЗрдк рдФрд░ рдЬреИрдмрд░ рдореЗрдВ рдореЗрд░реА рд╕рдВрдкрд░реНрдХ рд╕реВрдЪреА рдХреЛ рдЕрд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛, рдФрд░ рдЕрдкрдиреЗ рд╕реНрдерд╛рдиреАрдп рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рдкрд░ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдЧрддрд┐ рд╕реЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд┐рдпрд╛, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЦреБрдж рдХреЛ рд╕реНрдХрд╛рдЗрдк рдХрд┐рдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдмреЙрдЯ рдХреЗ рд▓рд┐рдП рдореБрдЭреЗ рдЕрдкрдиреЗ рдбреЗрд╕реНрдХрдЯреЙрдк рдФрд░ рд╕реНрдХрд╛рдЗрдк рдХреЗ рд╕рд╛рде рдПрдХ рдЕрд▓рдЧ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЪрд▓рд╛рдирд╛ рдкрдбрд╝рд╛ ( рд╣рд╛рд▓рд╛рдБрдХрд┐ рдпрд╣ рдПрдХ рд╣реА рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕реНрдХрд╛рдЗрдк рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрднрд╡ рд╣реИ, рдФрд░ рдЖрдИрдбреА рдбрдм рд╕рддреНрд░ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рддреНрдпреЗрдХ рдХреЗ рдПрдкреА рдХреЛ рдмрд╛рдБрдзрддрд╛ рд╣реИ - рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдЕрднреА рддрдХ рдЗрд╕рдХреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХреА рд╣реИ), рдФрд░ рдореИрдВрдиреЗ рдЗрд╕ рдпреЛрдЬрдирд╛ рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛, рдмрд╛рдж рдореЗрдВ рдореИрдВрдиреЗ рдЙрдиреНрд╣реЗрдВ рд╕рдВрдпреБрдХреНрдд рдХрд░ рджрд┐рдпрд╛, рдЕрдм рдкреНрд░рддреНрдпреЗрдХ рдмреЙрдЯ рдиреЗ рдХрдИ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рд╕рдореВрд╣реАрдХреГрдд рдХрд┐рдпрд╛ред рд╡рд┐рдЪрд╛рд░ред рдореИрдВрдиреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдЗрд╕ рд╕реЗрдЯ рдХреЗ рд╕рд╛рде рд╢реБрд░реБрдЖрдд рдХреА:



рдирд╡рдВрдмрд░ рдФрд░ рджрд┐рд╕рдВрдмрд░ рдФрд░ рдЬрдирд╡рд░реА рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рд▓рдЧрднрдЧ рд╕реНрдерд┐рд░ рд╕рдВрд╕реНрдХрд░рдг рд▓рд┐рдЦрд╛ рдФрд░, рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг, рдЕрдкрдиреЗ рджреЛрд╕реНрддреЛрдВ рдкрд░ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрддред

рд▓реЗрдХрд┐рди рдлрд┐рд░ рдореБрдЭреЗ рдПрдХ рд▓реЗрдЦ "XMPP рдХреЗ рд▓рд┐рдП Google рд╕рдорд░реНрдерди рджреЗ рд░рд╣рд╛ рд╣реИ" рдЖрдпрд╛, рдФрд░ рдореИрдВ рдереЛрдбрд╝рд╛ рдкрд░реЗрд╢рд╛рди рдерд╛ред рд▓реЗрдХрд┐рди рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рдмрд╛рдж, рд▓реЗрдЦ "рдХреЛрдИ рдШрдмрд░рд╛рд╣рдЯ рдирд╣реАрдВ! Google рдиреЗ XMPP рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд┐рдпрд╛ тАЭ , рдореИрдВрдиреЗ рдорд╣рд╕реВрд╕ рдХрд┐рдпрд╛ рдХрд┐ рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИ рдФрд░ рдореИрдВ рд▓рдЧрд╛рддрд╛рд░ Google xmpp рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдкрд░ рд╕рдм рдХреБрдЫ рдбрд╛рд▓рдиреЗ рдХрд╛ рд╕рдордп рдЖ рдЧрдпрд╛ рд╣реИред рдореЗрд░рд╛ рдкрд░реАрдХреНрд╖рдг рд╡реАрдПрдо 7 рдмреЙрдЯ рд╣реИ (рдкреНрд░рддреНрдпреЗрдХ рдмреЙрдЯ / рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рддреАрди рд╕реНрдХреНрд░рд┐рдкреНрдЯ (рд╕реНрдХрд╛рдЗрдк-рдЬреИрдмрд░-рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк) рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП 3 рдХрд╛рд░реНрдпрдХрд░реНрддрд╛: рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛рд░реНрдпрдХрд░реНрддрд╛, рдПрдкреАрдЖрдИ рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ (рдореИрдВрдиреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рд╕рднреА рдмрд╛рддрдЪреАрдд рдХреЛ рдПрдкреАрдЖрдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд▓рд┐рдЦрд╛ рдерд╛ - рд▓реЗрдХрд┐рди рдХреНрдпреЛрдВ, рдЕрдм рддрдХ) рдореБрдЭреЗ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрдпрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдорд╛рдореВрд▓реА рд░реВрдк рд╕реЗ рдмрджрд▓ рдЧрдпрд╛ рдФрд░ рд╡реЗрдм рдФрд░ рдмреЙрдЯреНрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдмрд┐рдВрджреБ рдХреЗ рд╕рд╛рде, рдпрд╣ рдкрд░реАрдХреНрд╖рдг рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЧрдпрд╛), рдФрд░ рд╕реНрдкреИрдо рдХрд╛рд░реНрдпрдХрд░реНрддрд╛, рд╕рднреА рд╢реНрд░рдорд┐рдХреЛрдВ рдиреЗ рд╣рд░реЗрдХ MQ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд╛рдо рдХрд┐рдпрд╛) рдиреЗ 3.5 рдЬреАрдмреА рд░реИрдо рдХреА рдЦрдкрдд рдХреА, рдФрд░ рд╕рднреА рд╣реЛрд╕реНрдЯрд░реЛрдВ рдХреА рд▓рд╛рдЧрдд рдХреЗ рд╕рд╛рде 2 рдФрд░ 4 рдЬреАрдмреА рдЯреИрд░рд┐рдл рдереЗред 4GB рдХреЗ рд▓рд┐рдП 2 рдЧреБрдирд╛ рдЕрдзрд┐рдХ, рдЬреЛ рдореБрдЭреЗ рд╢реЛрднрд╛ рдирд╣реАрдВ рджреЗрддрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕рдм рдХреБрдЫ рдЬреЗрдм рд╕реЗ рдмрд╛рд╣рд░ рд╣реИ рдФрд░ рд╕реЗрд╡рд╛ рдореБрдлреНрдд рд╣реИ, рдореИрдВрдиреЗ "рдбрд┐рдЬрд┐рдЯрд▓ рдорд╣рд╛рд╕рд╛рдЧрд░" (рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВрдиреЗ рднреА рдкрдврд╝рд╛ рдерд╛) рдХреЛ рд▓рд┐рдЦрд╛ рдерд╛ рдПрд▓ Habr├й) рдЗрд╕ рд╕реЗрд╡рд╛ рдХреА рдЬрд░реВрд░рддреЛрдВ рдХреЗ рдЕрдиреБрд░реЛрдз рдкрд░ рд░рд╛рдо рдХреА рдПрдХ рдЕрд▓рдЧ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд╕рд╛рде рд╡реА рдПрдо рджреЗ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рдХрдордЬреЛрд░ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд╕рд╛рде, рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рдерд╛ред рдЙрдиреНрд╣реЛрдВрдиреЗ рдореБрдЭреЗ рдордирд╛ рдХрд░ рджрд┐рдпрд╛ред рдЙрдореНрдореАрджред рдореБрдЭреЗ рд╣реЙрд╕реНрдЯрд░реЛрдВ рдХреА рддреБрд▓рдирд╛ "рддреБрд▓рдирд╛рддреНрдордХ" рдкрд░ рдФрд░ 2GB рдХреЗ рд╕рдорд╛рди рдкреИрд╕реЗ рдХреЗ рд▓рд┐рдП рдорд┐рд▓реА, рдореИрдВрдиреЗ 4GB рдХреЗ рд╕рд╛рде рдПрдХ рдкреНрд░рдгрд╛рд▓реА рд▓реА, рд╣рд╛рд▓рд╛рдБрдХрд┐ рдЗрд╕ рд╣реЙрд╕реНрдЯрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдЕрдиреБрднрд╡ рдЙрдореНрдореАрдж рд╕реЗ рдереЛрдбрд╝рд╛ рдЦрд░рд╛рдм рд░рд╣рд╛, рд╕рдм рдХреБрдЫ рдЗрд╕рдХреЗ рдкреИрд╕реЗ рдЦрд░реНрдЪ рд╣реБрдП (рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ)ред рдФрд░ рдЙрд╕рдиреЗ рдЬрд▓реНрджреА рд╕реЗ рдЦрд░реАрджреЗ рдЧрдП VPS рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╕реЗрд╡рд╛ рдХреЗ рдЪрд░рдг рдореЗрдВ рдлреНрд░реАрдмреЗрд╕ рдФрд░ рдПрдХ рдбреЗрдмрд┐рдпрди рд╕рд░реНрд╡рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреЛ рдХрджрдо-рджрд░-рдЪрд░рдг рдирд┐рд░реНрджреЗрд╢ рд▓рд┐рдЦреЗред



рд▓реЗрдХрд┐рди рджреЛ рд╕рд░реНрд╡рд░ рд▓реЗрдирд╛ (рдЪреИрдЯ рдмреЙрдЯреНрд╕ рдХреЗ рд▓рд┐рдП рд╡реЗрдм + рдбреЗрдмрд┐рдпрди рдХреЗ рд▓рд┐рдП рдлреНрд░реАрдмреЗрд╕) рдХрд╛рдо рдирд╣реАрдВ рдерд╛, рдореИрдВрдиреЗ рдПрдХ рдкрд░ рд╕рдм рдХреБрдЫ рдбрд╛рд▓рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ред рдФрд░ рдпрд╣ рдбреЗрдмрд┐рдпрди рдерд╛, рдореИрдВ рдЕрдкреНрд░рд┐рдп рд░реВрдк рд╕реЗ рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рдерд╛ рдХрд┐ рдореИрдВ рдкреИрдХреЗрдЬреЛрдВ рд╕реЗ рдЬреЛ рдХреБрдЫ рднреА рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдЙрд╕рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдирд╣реАрдВ рдбрд╛рд▓ рд╕рдХрд╛, рдореИрдВ рдЗрд╕реЗ рдлрд╝реНрд░реАрдмрд╕реЗрдб рдЕрд╕реЗрдВрдмрд▓реА рдФрд░ рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдкрд░ рдХреИрд╕реЗ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рддрдм рдореБрдЭреЗ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдПрдХ рд▓рд┐рдирдХреНрд╕ рдФрд░ рдбреЗрдмрд┐рдпрди рд╣реИрдЯрд░ рдХреИрд╕реЗ рдФрд░ рдХреНрдпрд╛ рд╣реЛрдирд╛ рдмрдВрдж рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдПрдХ рдЕрдЪреНрдЫреЗ рддрд░реАрдХреЗ рд╕реЗ рдПрдХ рдХрдЯреНрдЯрд░рдкрдВрдереА рдмрди рдЧрдпрд╛ (рдЕрдм рдореЗрд░реЗ рдкрд╛рд╕ "рд░реЗрдб рд╣реИрдЯ" рдореЗрдВ "рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП")ред



рдореИрдВрдиреЗ рдЕрдкрдиреЗ рджреЛрд╕реНрддреЛрдВ рдХреЗ рдЯрд┐рдк рд╕реЗ рдирдП рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЬреЛрдбрд╝реЗ:



рдкреНрд░рддреНрдпреЗрдХ 6 рд▓рд┐рдкрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП 11 рдмреЙрдЯреНрд╕ рдереЗ (1st -skype, 2nd -jabber, 3rd - whatsapp рдФрд░ рддреАрди рд╡рд░реНрдХрд░реНрд╕), рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ 4GB рдХреА рднреА рдХрдореА рдереАред рдпрд╣ рд╕рдордЭрдиреЗ рдХрд╛ рд╕рдордп рдЖ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рд╡рд┐рд╖рдпрдЧрдд рдмреЙрдЯ рдореЗрдВ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдХрд╣рд╛ рдерд╛, рдпрд╣ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ - рдХрд┐рдпрд╛ред рдЖрдзрд╛рд░, рдХрд╛рд░реНрдпрд╛рд▓рдп (рдХреИрд▓рдХреБрд▓реЗрдЯрд░, рд╡рд┐рдирд┐рдордп рджрд░реЗрдВ, рджреБрдирд┐рдпрд╛ рдХреА рдШрдбрд╝рд┐рдпрд╛рдВ), рдЬреАрд╡рдирд╢реИрд▓реА (рдореМрд╕рдо, рдХреБрдВрдбрд▓реА, 8ka), рдбреЗрд╡рд▓рдкрд░ (рд╣реИрдмреНрд░рд╛, рд╣реИрд╢рд╕) рджрд┐рдЦрд╛рдИ рджрд┐рдПред рдЕрдм 2.5GB рдФрд░ рд╕рдм рдареАрдХ рд╣реИред рдлрд┐рд░ рдореИрдВ рдереЛрдбрд╝рд╛ рдердХ рдЧрдпрд╛, рдзреАрд░реЗ-рдзреАрд░реЗ "рдЬрдмрд░реА рд╕реНрд╡рд┐рдЪ рдЯреВ рдлреБрд▓ рдПрдирдХреНрд░рд┐рдкреНрд╢рди" рдкрдврд╝рд╛ рдФрд░ рдЕрдкрдиреЗ рд╕рд░реНрд╡рд░ рдХреЛ xmpp.net рдкрд░ рдЯреЗрд╕реНрдЯ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдФрд░ рдП-рд░реЗрдЯрд┐рдВрдЧ рдкреНрд░рд╛рдкреНрдд рдХреА, рдЬреЛ рдХреГрдкрдпрд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрд╛ред рд╡реИрд╕реЗ, рдЬрдм рддрдХ рдореИрдВрдиреЗ рдбреАрдПрдирдПрд╕ рдореЗрдВ рдРрд╕рд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рддрдм рддрдХ рдореИрдВ рдЕрдкрдиреЗ рдИрдЬрд╝рдмрд░реНрдб рд╕рд░реНрд╡рд░ рдХреЛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП (рдФрд░ рд╕рд╛рде рд╣реА рд╕рд╛рде рдЗрдВрдЯрд░рд╕реЗрд╡рд░ рдЗрдВрдЯрд░реИрдХреНрд╢рди рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП) рдмрд╛рдзреНрдп рдирд╣реАрдВ рдХрд░ рд╕рдХрд╛ред

рдЫрд╡рд┐



рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдкрд╛рд╕ рдЕрднреА рднреА рдЬреИрдмрд░ рдпрд╛ рд╕рд╛рдЗрдЯ рдХреЗ рд▓рд┐рдП рдПрд╕рдПрд╕рдПрд▓ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдирд╣реАрдВ рдереЗред рджреЛ $ 60 рдХреЗ рд▓рд┐рдП рдореИрдВ рдореБрд╕реНрдХреБрд░рд╛рдпрд╛ рдирд╣реАрдВ рдерд╛, рдФрд░ рдлрд┐рд░ рдореБрдЭреЗ рд▓реЗрдЦ рдорд┐рд▓рд╛ "рдирд┐рд╢реБрд▓реНрдХ рдПрд╕рдПрд╕рдПрд▓ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ" рдФрд░ рдкрд╣реБрдВрдЪреЗред рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рдФрд░ рд╕реНрдкрд╖реНрдЯ рд╣реИред



рд▓рдЧрд╛рддрд╛рд░ рдПрдХ рд╕рдорд╕реНрдпрд╛ рдереА рдЬреЛ рдореБрдЭреЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЬрдЦреНрдореА рдХрд░ рд░рд╣реА рдереА: рдореИрдВ рд╣рд╛рде рд╕реЗ рд╕рднреА рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдмрд╣рд╛рд▓ рдХрд░рдиреЗ рд╕реЗ рдмрд╣реБрдд рдердХ рдЧрдпрд╛ рдерд╛, рдЬрдм рд╣реЛрд╕реНрдЯ рдХреЗ рдХрд╛рд░рдг рд╕рд░реНрд╡рд░ рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реЛ рдЧрдпрд╛ рдерд╛ рдпрд╛ рд░рд┐рдмреВрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдореИрдВ рдмрд╕ рдПрдХ рдЦрд╛рд▓реА рдЦрдбрд╝рд╛ рдерд╛, рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛ рдЬреЛ рдореБрдЭреЗ рдХреЗрд╡рд▓ рд╕реЛрдорд╡рд╛рд░ рдХреЛ рдорд┐рд▓рд╛, рдЕрдЧрд░ рд╢рдирд┐рд╡рд╛рд░ рдХреЛ рдРрд╕рд╛ рд╣реА рд╣реБрдЖред рдореИрдВрдиреЗ рдмрд╣реБрдд рд╕реА рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЪреАрдЬреЛрдВ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдЕрдВрдд рдореЗрдВ, рд░рд┐рдмреВрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рд╕рд┐рд╕реНрдЯрдо, рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕рднреА * рдирд┐рдХреНрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ (рд╕реНрдХрд╛рдЗрдк рдХреЗ рд▓рд┐рдП) рдореЗрдВ рд▓реЙрдЧ рдЗрди рдХрд░рддрд╛ рд╣реИ, рдЙрдирдХреЗ рддрд╣рдд рдЧреНрд░рд╛рдлрд┐рдХрд▓ рд╢реЗрд▓ рдореЗрдВ рдЯрд░реНрдорд┐рдирд▓ рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИ, рдЫрд╣ рдЯреИрдм рдЦреЛрд▓рддрд╛ рд╣реИ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ php рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓реЙрдиреНрдЪ рдХрд░рддрд╛ рд╣реИ рддрд╛рдХрд┐ рдореИрдВ рдЕрдВрджрд░ рдЬрд╛рдХрд░ рджреЗрдЦ рд╕рдХреВрдВ рдХрд┐рд╕реА рднреА рд╕рдордп рдЖрдЙрдЯрдкреБрдЯ (рдбрд┐рдмрдЧ рдХреЗ рд▓рд┐рдП рдХрднреА-рдХрднреА рдЫреЛрдЯреА рд╕рдорд╕реНрдпрд╛рдПрдВ):

рд╕рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдбреЗрдмрд┐рдпрди рдСрдЯреЛрд▓реЙрдЧрд┐рди рдФрд░ рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдЖрд▓реЗрдЦреАрдп рдореЛрдб рдореЗрдВ рдЪрд▓ рд░рд╣реЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ
 >>nano /etc/inittab 8:2345:respawn:/bin/login -f _ tty8 </dev/tty8 >/dev/tty8 2>&1 9:2345:respawn:/bin/login -f lifestyle tty9 </dev/tty9 >/dev/tty9 2>&1 10:2345:respawn:/bin/login -f developer tty10 </dev/tty10 >/dev/tty10 2>&1 11:2345:respawn:/bin/login -f xmess tty11 </dev/tty11 >/dev/tty11 2>&1 12:2345:respawn:/bin/login -f office tty12 </dev/tty12 >/dev/tty12 2>&1 >>nano /etc/profile sleep 8 [ `tty` == '/dev/tty8' ] && startx -- :1 sleep 8 [ `tty` == '/dev/tty9' ] && startx -- :2 sleep 8 [ `tty` == '/dev/tty10' ] && startx -- :3 sleep 8 [ `tty` == '/dev/tty11' ] && startx -- :4 sleep 8 [ `tty` == '/dev/tty12' ] && startx -- :5
      
      





рд╕реНрдХрд╛рдЗрдк рд╕рд╣рд┐рдд, рд╕рдм рдХреБрдЫ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "рдиреАрдВрдж" рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

рдФрд░ рдкреНрд░рддреНрдпреЗрдХ OS рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ (рдЬреЛ рдмреЙрдЯ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ) рдХреЗ рд╕реВрдХреНрддрд┐ рдСрдЯреЛрд▓реИрдб рдореЗрдВ рд╕реНрдХрд╛рдЗрдк рдФрд░ рдмреЙрдЯ рд░рдЦрд░рдЦрд╛рд╡ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ:

 /home/USERNAME/.config/autostart/
      
      





 [Desktop Entry] Type=Application Exec=skype Hidden=false X-GNOME-Autostart-enabled=true Name[en_US]=skype Name=skype Comment[en_US]= Comment=
      
      





 [Desktop Entry] Type=Application Exec=gnome-terminal --tab --title="skype" -e "/usr/local/bin/php /home/_/utils/assistant/_skype_assistant/base_assistant.php" --tab --title="jabber" -e "/usr/local/bin/php /home/_/utils/assistant/_jabber_assistant/base_assistant.php" --tab --title="whatsapp" -e "/usr/local/bin/php /home/_/utils/assistant/_whatsapp_assistant/base_assistant.php" --tab --title="user_op" -e "/usr/local/bin/php /home/_/utils/assistant/lib/worker/user_operations_worker.php base_assistant" --tab --title="api" -e "/usr/local/bin/php /home/_/utils/assistant/lib/worker/api_worker.php base_assistant" --tab --title="spamer" -e "/usr/local/bin/php /home/_/utils/assistant/lib/worker/spamer_worker.php base_assistant" Hidden=false X-GNOME-Autostart-enabled=true Name[en_US]=all_tabs Name=all_tabs Comment[en_US]= Comment=
      
      







рдкреВрд░реЗ рдмреЙрдЯ рдХреЛ рд░рд┐рдмреВрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ:

 killall -u lifestyle   background  /bin/login -f lifestyle tty9 </dev/tty9 >/dev/tty9 2>&1 &
      
      







рдФрд░ рд╢рдЯрдбрд╛рдЙрди рдФрд░ / рдпрд╛ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдХреЗ рджреМрд░рд╛рди рдИрдореЗрд▓ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред рдЕрдм рдореБрдЭреЗ рд╣рдореЗрд╢рд╛ рдкрддрд╛ рдерд╛ рдХрд┐ рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рдерд╛ рдФрд░ рдЬрд╛рдирддрд╛ рдерд╛ рдХрд┐ рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдкрдиреЗ рдЖрдк рдЙрда рдЬрд╛рдПрдЧрд╛ рдФрд░ рд╕рднреА рдмреЙрдЯ рдЖрд╢реНрдЪрд░реНрдп рдХреЗ рдмрд╛рдж рднреА рдХрд╛рдо рдХрд░реЗрдВрдЧреЗред рд╕рд╛рде рд╣реА, рдореИрдВрдиреЗ рдореЗрд▓ рджреНрд╡рд╛рд░рд╛ рд░реЛрдЯреЗрд╢рди рдФрд░ рдбрдВрдк рдбрдВрдкрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдмреИрдХрдЕрдк рдмреАрдбреА рд╕реЗрдЯ рдХрд┐рдпрд╛ (рд╡реЗ рдЕрднреА рднреА рдЫреЛрдЯреЗ рд╣реИрдВ)ред



рдореИрдВрдиреЗ рд╣рд╛рд░реНрдмреЗрд▓реЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрдврд╝рд╛, рд╣реГрджрдпрд╣реАрди рдФрд░ рд╢рд╛рдпрдж рд╕рдм рдХреБрдЫ рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВрдиреЗ рдЕрдкрдиреЗ рд╕рд░реНрд╡рд░ рдХреА рдЬрд╛рдБрдЪ рдХреА - рд╕рдм рдХреБрдЫ рдареАрдХ рдерд╛, рд▓реЗрдХрд┐рди рдореИрдВ рдЯреАрдПрд▓рдПрд╕ 1.2 рдХреЛ рдЪрд╛рд▓реВ рдирд╣реАрдВ рдХрд░ рдкрд╛рдпрд╛ рдФрд░ рдПрдл рдХреЛ рд╣рд░ рд╕рдордп рдорд┐рд▓рд╛, рдЙрд╕реА рд╕рдордп рдореИрдВрдиреЗ рд╡рд┐рднрд┐рдиреНрди рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд╛рд░реНрджрд┐рдХ рд╢реЛрд╖рдг рдХрд┐рдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рдРрд╕рд╛ рдХрднреА рдирд╣реАрдВ рд╣реБрдЖ рдерд╛ рдореИрдВрдиреЗ рдРрд╕рд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛, рдЦреБрдж рдХреЛ рдПрдХ рд╕реБрд░рдХреНрд╖рд╛ рдЗрдВрдЬреАрдирд┐рдпрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЖрдЬрд╝рдорд╛рдирд╛ рджрд┐рд▓рдЪрд╕реНрдк рдерд╛, рдЙрд╕реА рд╕рдордп рдореИрдВрдиреЗ "nikto.pl" рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ "рдиреЗрд╕рд╕" рд╕реНрдХреИрдирд░ рд╕реЗ рдкреНрд░реЗрд░рд┐рдд рдерд╛ред рд▓реЗрдХрд┐рди рдЪреИрдЯ рдмреЙрдЯреНрд╕ рдХреЗ рд▓рд┐рдП, рдореИрдВ рд▓рд┐рдмрд╛рд╕рдПрд▓рдПрд▓ рдФрд░ рд░реАрдЧреНрд░реИрдЬреНрдб рдУрдкрдирд╕реЗрд▓ рд╣реИ, рдЬреЛ "рдЬреА" рд╣реИ рдФрд░ рдирдЧреНрдиреЗрдХреНрд╕ рдирд┐рд░реНрднрд░рддрд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░ рд░рд╣рд╛ рд╣реИ, рд▓рдЧрд╛рддрд╛рд░ рджреЗрдЦрд╛ рдХрд┐ рдпрд╣ рдкреБрд░рд╛рдиреЗ рд▓рд┐рдм рдХреЗ рд╕рд╛рде рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рдерд╛, рдпрд╣ рдирд┐рдХрд▓рд╛ рдХрд┐ рдореИрдВрдиреЗ рдордЯреНрдареЗ рдХреЗ рдмрдЬрд╛рдп рдирд┐рдЪреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдирдЧрдиреЗрдХреНрд╕ рдбрд╛рд▓ рджрд┐рдпрд╛ред рдпрджреНрдпрдкрд┐ рдпрд╣ рдкреБрд░рд╛рдиреЗ рд▓рд┐рдмрд╛рд╕рд▓ рдХреЗ рдХрд╛рд░рдг рдирдЧрдиреЗрдХреНрд╕ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рдерд╛, рдЬрд┐рд╕рдХреА рд╡рдЬрд╣ рд╕реЗ рдореБрдЭреЗ рдХреЛрдИ рднреЗрджреНрдпрддрд╛ рдирд╣реАрдВ рдереАред "рджреБрд░реНрдШрдЯрдирд╛," рдЖрдк рдХрд╣рддреЗ рд╣реИрдВред "рджреБрд░реНрдШрдЯрдирд╛рдПрдВ рдЖрдХрд╕реНрдорд┐рдХ рдирд╣реАрдВ рд╣реИрдВ," рдореИрдВ рдЬрд╡рд╛рдм рджреВрдВрдЧрд╛ред



рд╡реИрд╕реЗ, рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк рдХреЗ рд▓рд┐рдП, рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдЗрд╕реЗ рд╕рдордЭрддрд╛ рд╣реВрдВ, рдХрд┐рд╕реА рдЦрд╛рддреЗ рд╕реЗ рдкрд╛рд╕рд╡рд░реНрдб рдХреА рдореБрдлреНрдд рд░рд╕реАрдж рдХреБрдЫ рд╕рдордп рдмрд╛рдж рдмрдВрдж рд╣реЛ рдЬрд╛рдПрдЧреА, рдЕрдм рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ:

рдЕрдкрдиреЗ рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк рдЕрдХрд╛рдЙрдВрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд╛рд╕рд╡рд░реНрдб рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ
 /* Request sms code */ $username = ""; $token = md5($username); $nickname = "__"; $w = new WhatsProt($username, $token, $nickname, true); $w->codeRequest();
      
      





рддреЛ

 /* Get password */ $username = ""; $token = md5($username); echo $token; $nickname = "__"; $w = new WhatsProt($username, $token, $nickname, true); $result = $w->codeRegister("SMS___"); $password = $result->pw; echo "Password is $password";
      
      







рд▓реЗрдХрд┐рди рдПрдХ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдирдпрд╛ рдХрдиреЗрдХреНрд╢рди (рдореЗрд░реА рдпреЛрдЬрдирд╛ рдореЗрдВ, рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЖрджреЗрд╢реЛрдВ рдХреЗ рд▓рд┐рдП рд╕реБрдирддрд╛ рд╣реИ, рдФрд░ рджреВрд╕рд░рд╛ рдХрддрд╛рд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рднреЗрдЬрддрд╛ рд╣реИ) рд╡рд░реНрддрдорд╛рди рдХреЛ рдмрд╛рдзрд┐рдд рдХрд░рддрд╛ рд╣реИред рдореЗрд░реЗ рдкрд╛рд╕ рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк рдХреЗ рд▓рд┐рдП рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдХрддрд╛рд░реЛрдВ рдХреЛ рдЫреЛрдбрд╝рдиреЗ рдФрд░ рд╕реНрд╡рдпрдВ php рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдПрдХ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкреБрдирд░рд╛рд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдерд╛ред

рдпрд╣рд╛рдБ рдЬрдмреНрдмрд╛рд░ рдмреЙрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рд╕рдВрдХреЗрдд рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рддрд╛рдХрд┐ рдпрд╣ "рдЯрд╛рдЗрдкрд┐рдВрдЧ" рд╕реНрдерд┐рддрд┐ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗ рдЬрдм рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЙрд╕реЗ рдХреБрдЫ рд▓рд┐рдЦрддрд╛ рд╣реИ:

JAXL рдмреЙрдЯ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреА рд╕реНрдерд┐рддрд┐
 $oJabber->add_cb('on_chat_message', function($oStanza) { sMessage = trim(strtolower($oStanza->body)); if (!$sMessage) { $oStanza->to = $oStanza->from; $oStanza->from = $oJabber->full_jid->to_string(); $oJabber->send($oStanza); } //тАж. }
      
      







рд╡реИрд╕реЗ, рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк рдФрд░ рд╕реНрдХрд╛рдЗрдк рдмреЙрдЯреНрд╕ рдХреЗ рд▓рд┐рдП, рдХреЗрд╡рд▓ рд▓рд╛рдЗрди рдХреЛ рд╡рд░реНрдХрд░ рдХреЗ рд╕реНрдкреИрдорд░ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдорд┐рд▓рддреА рд╣реИ, рдЬрдм рдпрд╣ рдкреГрд╖реНрдарднреВрдорд┐ рдореЗрдВ рдХрддрд╛рд░ рд╕реЗ рдПрдХ рд╕рдВрджреЗрд╢ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд╕рд╛рде рдПрдХ рдХреНрд░рд┐рдпрд╛ рдХрд░рддрд╛ рд╣реИред

 posix_kill(getmypid(), 9);
      
      





рдФрд░ рд╕рд┐рд░реНрдл рдЬреИрдмрд░ рдХреЗ рд▓рд┐рдП

 $oJabber->send_end_stream();
      
      





рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдпреЛрдЬрдирд╛рдПрдВ:



рд╣рд╛рдВ, рдФрд░ рдХрдИ рдЕрдиреНрдп рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╕рд┐рд░ рдореЗрдВ рдШреВрдорддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрдм рдПрдХ рдмрд╛рд░ рдореЗрдВ рд╕рдм рдХреБрдЫ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╕рдордп рдирд╣реАрдВ рд╣реИред рдпрд╣ рд╕рдордЭрдиреЗ рдореЗрдВ рднреА рдЬреНрдпрд╛рджрд╛ рд╕рдордп рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рд╕реЗрд╡рд╛ рдХреЗ рд╕реАрдП (рд▓рдХреНрд╖рд┐рдд рджрд░реНрд╢рдХреЛрдВ) рдХреЗ рдкрд╛рд╕ рдХреНрдпрд╛ рд╣реИред



рдХрд┐рд╕реА рдРрд╕реЗ рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдЬреЛ рдХреБрдЫ рд╕рдорд╛рди рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рдХрд┐ рдХрд╣рд╛рдВ рд╕реЗ рд╢реБрд░реВ рдХрд░рдирд╛ рд╣реИ, рд╕рднреА рдХреЛрдб рдКрдкрд░ рджрд┐рдП рдЧрдП рд▓рд┐рдВрдХ рд╕реЗ рдФрд░ рдЬреАрдердм рдкрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХреЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рдЬреЛ рдореБрдЭреЗ рдирд╣реАрдВ рдорд┐рд▓реА, рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдКрдкрд░ рдЬреЛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк рдмреЙрдЯ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рдВрджреЗрд╢ рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рд╕рдВрджреЗрд╢ рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдкрд░ "рдЯрд╛рдЗрдкрд┐рдВрдЧ" рд╕реНрдерд┐рддрд┐ рдкрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рди рджреЗрдВ:

рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк рдХреЛ рдпреВрдЬрд░ рдореИрд╕реЗрдЬ рдорд┐рд▓рддрд╛ рд╣реИ
 $oWa->pollMessages(); $mData = $oWa->getMessages(); if (!empty($mData)) { if ('message' === $mData[count($mData) - 1]->getTag()) { if ('notify' === $mData[count($mData) - 1]->getChildren()[0]->getTag()) { $oDbAdapter->getConnection(); received($oWa->parseJID($mData[count($mData) - 1]->getAttributes()['from']), $mData[count($mData) - 1]->getChildren()[2]->getData());//$sUid, $sMessage $oDbAdapter->closeConnection(); } } }
      
      







: ┬л┬╗ , , ! .



PS 1 : , ┬л : ┬╗ . , . , . , , .



: Free Object Motion Tracking Plugin at Final Cut Pro X, Adobe Premier and DaVinci Resolve.



All Articles