November, 1999
Freedom to Mail from Your 3000, for FreeDescription:
SENDMAIL | interactive compilation of a message | |
---|---|---|
SENDBACK | batch compilation of a message | |
SENDFILE | interactive or batch compilation of a message with attachments |
COMMENT SendMail/iX COMMENT COMMENT version 2.0 [11OCT1999] by Andreas Schmidt COMMENT ECHO ECHO Sendmail/iX ECHO IF HPSYSNAME = "ALPHA" OR HPSYSNAME = "BETA" THEN SETVAR LOC "LOC1" ELSE SETVAR LOC "LOC2" ENDIF SETVAR SEND_TO " " SETVAR SEND_NAME "!HPUSER.!HPACCOUNT@!HPSYSNAME.!LOC.COMPANY.COM" SETVAR REPLY_TO "!HPUSER.!HPACCOUNT@!HPSYSNAME.!LOC.COMPANY.COM" SETVAR SEND_MORE "Y" SETVAR SEND_FILE_Y_N "N" SETVAR SEND_EDIT_Y_N "N" SETVAR SEND_NAME_NUM 1 WHILE SEND_NAME_NUM > 0 DO INPUT SEND_NAME;PROMPT="To: [!SEND_NAME] ?" SETVAR SEND_TO "!SEND_TO !SEND_NAME" INPUT SEND_MORE;PROMPT="More names (y/n) [!SEND_MORE]: ?" IF ups("!SEND_MORE") <> "Y" THEN SETVAR SEND_NAME_NUM 0 ENDIF ENDWHILE INPUT REPLY_TO;PROMPT="Reply-To: [!REPLY_TO] ?" INPUT SEND_SUBJECT;PROMPT="Subject: " INPUT SEND_FILE_Y_N;PROMPT="Do you have a file to send (Y/N) [!SEND_FILE_Y_N]? " IF ups("!SEND_FILE_Y_N") = "N" THEN ECHO ECHO Type in your message, and finish with a // ECHO (No prompt will be displayed!) ECHO SETVAR SEND_FILE "X!HPLDEVIN" RUN TDP.PUB.SYS;INFO="SET PERMYES;AQ;K X!HPLDEVIN,UNN;E" > $NULL INPUT SEND_EDIT_Y_N;PROMPT="Edit of Message needed (Y/N) [!SEND_EDIT_Y_N]?" IF ups("!SEND_EDIT_Y_N") = "Y" THEN ECHO ECHO You will invoke TDP to edit the message. ECHO Use normal TDP commands to edit your text. ECHO RUN TDP.PUB.SYS;INFO="SET PERMYES;T X!HPLDEVIN,UNN;L ALL" ENDIF ELSE INPUT SEND_FILE;PROMPT="Message Content (File Name): " ENDIF SETVAR XSEND_TO "!SEND_TO" SETVAR XSEND_SUBJECT "!SEND_SUBJECT" SETVAR XSEND_FILE "!SEND_FILE" SETVAR XREPLY_TO "!REPLY_TO" SETVAR XFROM "!HPUSER.!HPACCOUNT" FILE CM;DISC=1000000 ECHO From: "!XFROM" > *CM ECHO To: !XSEND_TO >> *CM ECHO Reply-To: !XREPLY_TO >> *CM ECHO Subject: !XSEND_SUBJECT >> *CM ECHO MIME-Version: 1.0 >> *CM PRINT !XSEND_FILE >> *CM ECHO >> *CM SENDMAIL.PUB.SENDMAIL "-f !XFROM !XSEND_TO " < CM ECHO Done.
PARM SEND_SUBJECT="" SEND_TO="" SEND_FILE="" REPLY_TO="" IF "!HPSYSNAME" = "ALPHA" OR "!HPSYSNAME" = "BETA" THEN SETVAR LOC "LOC1" ELSE SETVAR LOC "LOC2" ENDIF SETVAR XSEND_TO "!SEND_TO" SETVAR XSEND_SUBJECT "!SEND_SUBJECT" SETVAR XSEND_FILE "!SEND_FILE" SETVAR XREPLY_TO "!REPLY_TO" IF "!REPLY_TO" = "" THEN SETVAR XREPLY_TO "!HPUSER.!HPACCOUNT"+"@"+"!HPSYSNAME.!LOC.COMPANY.COM" ENDIF IF ( XSEND_TO = "?" OR XSEND_TO = "" OR & XSEND_SUBJECT = "" OR XSEND_FILE = "") THEN ECHO sendback.xecmd.sys ECHO ECHO sendback subject mailto filename [replyto] ECHO ECHO subject: subject of the email message, must be quoted ECHO mailto : user@domain ECHO filename: any mpe or posix filename ECHO replyto: reply address, recommended ECHO ESCAPE ENDIF IF (NOT FINFO("!XSEND_FILE","EXISTS")) THEN ECHO sendback.xecmd.sys: !XSEND_FILE not found ESCAPE ENDIF SETVAR XFROM "!HPUSER.!HPACCOUNT" FILE CM;DISC=1000000 ECHO From: "!XFROM" > *CM ECHO To: !XSEND_TO >> *CM ECHO Reply-To: !XREPLY_TO >> *CM ECHO Subject: !XSEND_SUBJECT >> *CM ECHO MIME-Version: 1.0 >> *CM ECHO >> *CM PRINT !XSEND_FILE >> *CM ECHO >> *CM SENDMAIL.PUB.SENDMAIL "-f !XFROM !XSEND_TO " < CM ECHO Done.
PARM SUBJECT="" TO="" MSGTEXT="" FILENAME="" REMOTEFILENAME="" REPLYTO="" & ENTRY="MAIN" COMMENT This command file will send an email with one or more attachments, COMMENT including a message text COMMENT REMARK: to send mutiple attachments, you must leave the parameter COMMENT 'FILENAME' empty. As a result, you will prompted to enter COMMENT filenames IF UPS("!ENTRY") = "MAIN" COMMENT COMMENT CMD ENTRY: -- MAIN -- COMMENT IF "!HPSYSNAME" = "ALPHA" OR "!HPSYSNAME" = "BETA" THEN SETVAR LOC "LOC1" ELSE SETVAR LOC "LOC2" ENDIF SETVAR XSUBJECT "!SUBJECT" SETVAR XTO "!TO" SETVAR XMSGTEXT "!MSGTEXT" SETVAR XFILENAME "!FILENAME" SETVAR XRFN "!REMOTEFILENAME" IF ( XRFN = "" ) THEN SETVAR XRFN "!XFILENAME" ENDIF SETVAR XREPLYTO "!REPLYTO" IF "!REPLYTO" = "" THEN SETVAR XREPLYTO "!HPUSER.!HPACCOUNT"+"@"+"!HPSYSNAME.!LOC.COMPANY.COM" ENDIF IF ( XTO = "?" OR XTO = "" OR XSUBJECT = "" ) THEN ECHO sendfile.xecmd.sys ECHO ECHO sendfile subject to msgtext filename [remotefilename] [replyto] ECHO ECHO subject: subject of the email message, must be quoted ECHO to: user@domain ECHO msgtext: mpe or posix filename, contains the message text ECHO filename: any mpe or posix filename ECHO remotefilename: name of the file you want to call the attachment ECHO replyto: reply address, recommended ECHO entry: value MAIN or ATTACH, only internally used ECHO ESCAPE ENDIF IF "!XMSGTEXT" <> "" IF NOT FINFO("!XMSGTEXT","EXISTS") ECHO sendfile.xecmd.sys: !XMSGTEXT not found ESCAPE ENDIF ENDIF IF "!XFILENAME" <> "" IF (NOT FINFO("!XFILENAME","EXISTS")) THEN ECHO sendfile.xecmd.sys: !XFILENAME not found ESCAPE ENDIF ENDIF SETVAR XFROM "!HPUSER.!HPACCOUNT" FILE CM;DISC=1000000 COMMENT Generate a MIME boundary string. SETVAR MAILSPF_SEP rht(rpt('-',36)+"!HPSUSAN!HPPIN!HPCPUMSECS",36) COMMENT COMMENT Generate all of the message headers. COMMENT ECHO From: "!XFROM" > *CM ECHO To: !XTO >> *CM ECHO Reply-To: !XREPLYTO >> *CM ECHO Subject: !XSUBJECT >> *CM ECHO MIME-Version: 1.0 >> *CM ECHO Content-Description: "MIME Base64 encode" >> *CM ECHO Content-Type: multipart/mixed; boundary="!MAILSPF_SEP">> *CM ECHO >> *CM COMMENT COMMENT Generate the preamble (not normally displayed by MIME mail clients). COMMENT ECHO This is a multi-part message in MIME format. >> *CM COMMENT COMMENT Generate the first body which contains the message output. COMMENT IF "!XMSGTEXT" <> "" ECHO --!MAILSPF_SEP>> *CM ECHO Content-Type: text/plain; charset=us-ascii >>*CM ECHO Content-Transfer-Encoding: 7bit >>*CM ECHO >> *CM PRINT !XMSGTEXT >> *CM ENDIF IF "!XFILENAME" <> "" XEQ !HPFILE ENTRY=ATTACH ELSE COMMENT COMMENT to prompt for more than one attachment COMMENT ANSWER has parameters --FILENAME,REMOTEFILENAME-- COMMENT ECHO ECHO INFO: Attachment parameters: FILENAME,REMOTEFILENAME ECHO SETVAR ANSWER "X" WHILE ANSWER = "X" SETVAR ANSWER "" INPUT NAME=ANSWER;PROMPT="Attach file: " SETVAR ANSWER LTRIM(ANSWER) IF "!ANSWER" <> "" SETVAR SSPOS POS(",",ANSWER) SETVAR SSLEN LEN(ANSWER) IF SSPOS = 0 SETVAR XFILENAME "!ANSWER" SETVAR XRFN "!ANSWER" ELSE SETVAR XFILENAME LFT(ANSWER,SSPOS-1) SETVAR XRFN RHT(ANSWER,SSLEN-SSPOS) ENDIF IF (NOT FINFO("!XFILENAME","EXISTS")) THEN ECHO sendfile.xecmd.sys: !XFILENAME not found ELSE XEQ !HPFILE ENTRY=ATTACH ENDIF SETVAR ANSWER "X" ENDIF ENDWHILE ENDIF ECHO --!MAILSPF_SEP-->> *CM COMMENT COMMENT Mail the message. COMMENT XEQ SENDMAIL.PUB.SENDMAIL "-t" < *CM ECHO Done. ELSEIF UPS("!ENTRY") = "ATTACH" COMMENT COMMENT CMD ENTRY: -- ATTACH -- COMMENT COMMENT COMMENT Insert attachment as plain text. COMMENT ECHO --!MAILSPF_SEP>> *CM ECHO Content-Type: text/plain; charset=us-ascii; name="!XRFN" >> *CM ECHO Content-Transfer-Encoding: 8bit >> *CM ECHO Content-Disposition: attachment; filename="!XRFN" >> *CM ECHO >> *CM PRINT !XFILENAME >> *CM ENDIF