У меня есть корпоративное приложение, которое предоставляет довольно надежный API для сбора данных. В настоящее время я спрашиваю каждого пользователя, что я хочу обновлять в цикле каждую секунду. Однако новая документация API теперь обеспечивает прямой поток всех изменений для всех пользователей. Мне интересно, как я могу анализировать данные в реальном времени, как это происходит с php. Вот несколько деталей:
Данные запрашиваются с помощью SOAP-запроса, и я использую PHP для выполнения таких запросов (пример инициализации сеанса с уникальным идентификатором):
//Get a session ID for this user for the shoretel WEBAPI
$soap_url = 'http://11.11.11.11:8070/ShoreTelWebSDK?wsdl';
$client = new SOAPClient($soap_url, array( 'proxy_host' => '11.11.11.11', 'proxy_port' => 8070, 'trace' => 1 ) );
$client = new SoapClient($soap_url);
$header = new SoapHeader('http://www.ShoreTel.com/ProServices/SDK/Web');
$client->__setSoapHeaders($header);
$registered_string = $client->RegisterClient(array(
'clientName' => '11.11.11.211'
));
$registered_string = get_object_vars($registered_string);
$session = $registered_string['RegisterClientResult'];
Новый метод позволяет указать период времени. Например, если я хотел бы получить все события в течение 1 минуты, вызов начнется, подождать одну минуту, а затем вернуть все события, которые произошли в течение этой минуты.
Что бы я хотел сделать, это захватить каждое событие, как оно есть, и вставить его в базу данных. Это что-то, что я могу выполнить с PHP, или мне нужно взглянуть на другой язык, чтобы это произошло?