cEMAIL ;MAIL VIA SMTP ;cEMAIL; [ 03/02/98 6:03 PM ] G YZ ; ; Send email S(SERVER,FROM,TO,SUB,DATA,CC,BCC) ; N A,B,C,DEV,E,I,MSG,OK,ZC S SERVER=$G(SERVER),FROM=$G(FROM),TO=$G(TO),SUB=$G(SUB),DATA=$G(DATA),CC=$G(CC),BCC=$G(BCC) I SERVER="" S MSG="1 No server defined" G YZ S MSG=0,DEV="|TCP|4" C DEV O DEV:(SERVER:25:"CS"):30 I '$T S MSG="2 No connection established" G SMTPZ U DEV S ZC=$ZA I ZC=2!(ZC=4)!(ZC=256) S MSG="2 No connection established" G SMTPZ S C="Listen for Connection",OK="220 " D READ I E G SMTPZ S C="HELO Data-M.be",OK="250 " D SND,READ I E G SMTPZ F I=1:1:$L(FROM,";") S C="MAIL FROM: "_$P(FROM,";",I) D SND,READ I E G SMTPZ F B=TO,CC,BCC I $L(B) F I=1:1:$L(B,";") S C="RCPT TO: "_$P(B,";",I) D SND,READ I E G SMTPZ S C="DATA",OK="354 " D SND,READ I E G SMTPZ S C="TO: "_TO D SND S C="CC: "_CC D SND S C="BCC: "_BCC D SND D INT^cD,^cA105 S C="DATE: "_%DAT_" "_$TR(TD,"uh ","::")_":00 +0100" D SND S C="SUBJECT: "_SUB D SND S C="" D SND S I="" F S I=$O(DATA(I)) Q:I="" S C=DATA(I) D SND S C=".",OK="250 " D SND,READ I E G SMTPZ S C="quit",OK="221 " D SND,READ I E G SMTPZ SMTPZ C DEV ; YZ Q MSG ; READ S E=0 U DEV R A:1 I '$L(A) S MSG="3 No answer : "_C,E=1 Q I $E(A,1,$L(OK))'=OK S MSG=$TR(A,$C(13,10)),E=1 Q Q ; SND U DEV W C,! Q ; ZZ ; 04.02.98 - 16 u 38 * V6.5.01