diff options
| author | Christian Weiske <cweiske@cweiske.de> | 2010-12-15 19:09:42 +0100 |
|---|---|---|
| committer | Christian Weiske <cweiske@cweiske.de> | 2010-12-15 19:09:42 +0100 |
| commit | 2d190be44338e3674336943d366c739c55a273f5 (patch) | |
| tree | cf2dffcd2587e0550252c864a7eb3aad1f4f26a0 /Wrt3g.php | |
| parent | d4bb6e2400c09d7405d20df2967936952c31fbf4 (diff) | |
| download | linksys-wrt3g-tools-2d190be44338e3674336943d366c739c55a273f5.tar.gz linksys-wrt3g-tools-2d190be44338e3674336943d366c739c55a273f5.zip | |
add card status command
Diffstat (limited to 'Wrt3g.php')
| -rw-r--r-- | Wrt3g.php | 42 |
1 files changed, 41 insertions, 1 deletions
@@ -153,6 +153,46 @@ class Wrt3g /** + * Retrieves pc card/SIM status information + * + * @return array Array with several key-value pairs + * connection => connecting, disconnected, connected + * + * @throws Exception When the router can't be reached + */ + public function getCardStatus() + { + $arRetval = array(); + + $strUrlBase = $this->getAuthBaseUrl(); + + $url = $strUrlBase . '/Status_NoAuth.asp'; + $this->log('Connecting to ' . $url, 1); + + $r = new HTTP_Request2(); + $r->setMethod(HTTP_Request2::METHOD_GET); + $r->setUrl($url); + $resp = $r->send(); + $this->log($resp->getStatus() . ' ' . $resp->getReasonPhrase(), 1); + //FIXME: check status + + $parser = new Wrt3g_HtmlParser(); + $arRetval = $parser->status_noauth($resp->getBody()); + + return array_intersect_key( + $arRetval, + array( + 'card model' => 0, + 'card revision' => 0, + 'card firmware' => 0, + 'IMSI' => 0 + ) + ); + } + + + + /** * Log a message to stdout. * * @param string $msg Message to display @@ -160,7 +200,7 @@ class Wrt3g * * @return void */ - protected function log($msg, $level = 1) + public function log($msg, $level = 1) { if ($this->verbosity >= $level) { echo $msg . "\n"; |
