summaryrefslogtreecommitdiff
path: root/sys/src/cmd/fax/receiverc
diff options
context:
space:
mode:
authorTaru Karttunen <taruti@taruti.net>2011-03-30 15:46:40 +0300
committerTaru Karttunen <taruti@taruti.net>2011-03-30 15:46:40 +0300
commite5888a1ffdae813d7575f5fb02275c6bb07e5199 (patch)
treed8d51eac403f07814b9e936eed0c9a79195e2450 /sys/src/cmd/fax/receiverc
Import sources from 2011-03-30 iso image
Diffstat (limited to 'sys/src/cmd/fax/receiverc')
-rwxr-xr-xsys/src/cmd/fax/receiverc58
1 files changed, 58 insertions, 0 deletions
diff --git a/sys/src/cmd/fax/receiverc b/sys/src/cmd/fax/receiverc
new file mode 100755
index 000000000..6cc56a3cc
--- /dev/null
+++ b/sys/src/cmd/fax/receiverc
@@ -0,0 +1,58 @@
+#!/bin/rc
+spool=/mail/faxqueue
+recipients=/mail/faxqueue/faxrecipients
+
+# run mail as if we're on fs
+rm /srv/fs
+9fs fs
+bind -c /n/fs/mail/faxqueue /mail/faxqueue
+
+#
+# Arguments should be
+# time Y|N pages [ftsi]
+#
+switch($#*){
+
+case 4
+ #
+ # Check for the NYT. It's 9 pages from 'Via Fax '.
+ #
+ nyt=false
+ if(~ $2 Y && {~ $4 'Via Fax '}){
+ switch(`{date|sed 's/ .*//'}){
+ case Mon Tue Wed Thu Fri
+ hour=`{date|sed 's/.* ([0-9][0-9]):.*/\1/'}
+ if(test $3 -gt 7 -a '(' $hour -lt 7 -o $hour -ge 21 ')')
+ nyt=true
+ case *
+ if(test $3 -gt 7)
+ nyt=true
+ }
+ }
+ switch($nyt){
+
+ case true
+ to=`{seq 0 1 $3}
+ for(i in `{seq 2 1 $3}){
+ switch($i){
+
+ case ?
+ ext=00$i
+ case ??
+ ext=0$i
+ case ???
+ ext=$i
+ }
+ cp $spool/$1.$ext /n/fs/lib/nyt/nyt.$to($i)
+ }
+ cp $spool/$1.1 /n/fs/lib/nyt/nyt.$3
+ rm -f $spool/$1.*
+ case *
+ {echo $*; echo FAX: page -w $spool/$1.'*'} | mail `{cat $recipients}
+ }
+case 3
+ {echo $*; echo FAX: page -w $spool/$1.'*'} | mail `{cat $recipients}
+case *
+ {echo $*; echo FAX: page -w $spool/$1.'*'} | mail postmaster
+}
+exit 0