<?php require_once 'lib/Utils.php'; require_once 'lib/ServerConnection.php'; define('CONNECTIONS_CREATE', 100); timerStart(); $connections = array(); for ($i = 0; $i < CONNECTIONS_CREATE; $i++) { $connection = new ServerConnection('127.0.0.1', 15600); check($connection->isConnected()); $connections[] = $connection; } timerTick(sprintf('%d connections opened', sizeof($connections))); $requests = 0; $stime = microtime(true); while (microtime(true) - $stime < 10) { $random = rand(0, sizeof($connections) - 1); $connection = $connections[$random]; $connection->sendPacket(array('action' => 'auth', 'data' => array('uid' => 1, 'login' => 'tester', 'password' => ''))); $resp = $connection->recvPacketText(); if ($resp === false) { printf("FAILED\n"); break; } //check($resp['rs'] == 0); //check($resp['error'] == 'ERROR_BAD_LOGIN_PASSWORD'); $requests++; } printf("Duration: %f, requests: %f\n", 10, $requests); /* $connection->sendPacket(array(
} break; case "chan.notify": gotNotify(); $ev->handled = true; break; case "chan.dtmf": gotDTMF($ev->GetValue("text")); $ev->handled = true; break; } /* This is extremely important. We MUST let messages return, handled or not */ if ($ev) { $ev->Acknowledge(); } break; case "answer": switch ($ev->name) { case "call.route": endRoute($ev->retval, $ev->handled, $ev->GetValue("error", "noroute"), $ev->params); break; case "engine.timer": timerTick(); break; } break; } } Yate::Output("PHP: bye!"); /* vi: set ts=8 sw=4 sts=4 noet: */