From 97fc02270011df57817c7ec45d50d297c495f0df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C3=A1ll=20Gu=C3=B0j=C3=B3n=20Sigur=C3=B0sson?= Date: Wed, 25 Aug 2010 15:33:01 +0000 Subject: [PATCH] check_smssend added --- check_smssend/trunk/README | 1 + check_smssend/trunk/check_smssend | 98 +++++++++++++++++++++++++++++++ 2 files changed, 99 insertions(+) create mode 100644 check_smssend/trunk/README create mode 100755 check_smssend/trunk/check_smssend diff --git a/check_smssend/trunk/README b/check_smssend/trunk/README new file mode 100644 index 0000000..0a46522 --- /dev/null +++ b/check_smssend/trunk/README @@ -0,0 +1 @@ +Few handy scripts to check if your modem is working properly with smssend diff --git a/check_smssend/trunk/check_smssend b/check_smssend/trunk/check_smssend new file mode 100755 index 0000000..a237c02 --- /dev/null +++ b/check_smssend/trunk/check_smssend @@ -0,0 +1,98 @@ +#!/bin/sh + + +DIRECTORY=/var/spool/sms/incoming +MAX_HOURS=24 +PURGE_OLD_FILES=no +FROM_NUMBER="" +VERSION=1.0 + +OK=0 +WARNING=1 +CRITICAL=2 +UNKNOWN=3 + + +print_help() { + echo "check_smsend version $VERSION" + echo "This plugin checks sms incoming for new SMS" + echo "" + echo "Usage: $0 [--directory] [--max-age] [--purge-old-files] [--verbose]" + echo "" +} + + + +# Parse arguments +while [ $# -gt 0 ] +do + case $1 + in + -h) + print_help + shift 1 + exit $OK + ;; + + --help) + print_help + shift 1 + exit $OK + ;; + --max-age) + MAX_AGE=$2 + shift 2 + ;; + --directory) + DIRECTORY=$2 + shift 2 + ;; + --purge-old-files) + PURGE_OLD_FILES=yes + shift 1 + ;; + --verbose) + VERBOSE=yes + shift 1 + ;; + *) + echo "Invalid parameter: $1" + print_help + exit $UNKNOWN + ;; + esac +done + + + +if [ ! -d "$DIRECTORY" ]; then + echo "Unknown - $DIRECTORY not found or not readable" + exit $UNKNOWN +fi + + +RESULT=`find $DIRECTORY -type f -mtime -${MAX_HOURS}` +TMP=`echo $RESULT|wc -w` + + +# Clean up old files if we are asked to +if [ "$PURGE_OLD_FILES" = "YES" ]; then + find $DIRECTORY -type f -mtime +${MAX_HOURS} -exec rm -f {} \; +fi + +# Fail if we find no files +if [ $TMP -lt 1 ]; then + echo "Warning - No recent SMS found in $DIRECTORY" + exit $WARNING +fi + + +echo "OK - $TMP files found in $DIRECTORY" +if [ ! -z "$VERBOSE" ]; then + for i in $RESULT; do echo $i; done +fi +exit $OK + + + +