aboutsummaryrefslogtreecommitdiff
path: root/Wrt3g.php
diff options
context:
space:
mode:
authorChristian Weiske <cweiske@cweiske.de>2010-12-15 19:09:42 +0100
committerChristian Weiske <cweiske@cweiske.de>2010-12-15 19:09:42 +0100
commit2d190be44338e3674336943d366c739c55a273f5 (patch)
treecf2dffcd2587e0550252c864a7eb3aad1f4f26a0 /Wrt3g.php
parentd4bb6e2400c09d7405d20df2967936952c31fbf4 (diff)
downloadlinksys-wrt3g-tools-2d190be44338e3674336943d366c739c55a273f5.tar.gz
linksys-wrt3g-tools-2d190be44338e3674336943d366c739c55a273f5.zip
add card status command
Diffstat (limited to 'Wrt3g.php')
-rw-r--r--Wrt3g.php42
1 files changed, 41 insertions, 1 deletions
diff --git a/Wrt3g.php b/Wrt3g.php
index 82c728f..a14adf5 100644
--- a/Wrt3g.php
+++ b/Wrt3g.php
@@ -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";