]> git.donarmstrong.com Git - infobot.git/blobdiff - src/Modules/Weather.pl
comments
[infobot.git] / src / Modules / Weather.pl
index 1b3badec58f6963f6eee5794b909fbcdd994d6d2..9fef90e73071b46b9535063ef7dd201428d02537 100644 (file)
@@ -21,12 +21,19 @@ BEGIN {
 
 sub Weather {
        my ($args) = @_;
-       &::performStrictReply(&queryText($args));
+       &::performStrictReply(&queryText($args, 'weather'));
+       return;
+}
+
+sub Metar {
+       my ($args) = @_;
+       &::performStrictReply(&queryText($args, 'metar'));
        return;
 }
 
 sub queryText {
     my ($station) = shift;
+    my ($wxmode) = shift;
     my $result;
 
     $station = uc($station);
@@ -48,7 +55,7 @@ sub queryText {
 
        $ua->timeout(10);
        my $request = new HTTP::Request('GET', "http://weather.noaa.gov/weather/current/$station.html");
-       my $response = $ua->request($request); 
+       my $response = $ua->request($request);
 
        if (!$response->is_success) {
            if ($response->code == 404) {
@@ -96,6 +103,10 @@ sub queryText {
        $min_temp = $1;
 
        if ($time) {
+           if ($wxmode eq 'metar' && defined($feat{'ob'})) {
+               return ("METAR " . $place . ": " . $feat{'ob'});
+           }
+
            $result = "$place; $id; last updated: $time";
            foreach (sort keys %feat) {
                next if $_ eq 'ob';