XMXSEND ;ISC-SF/GMB-Send a msg ;06/19/2002 07:01
Source file <XMXSEND.m>
| Package | Total | Call Graph | 
|---|---|---|
| MailMan | 11 | $$MULTI^XMBBLOB  SHOW^XMJERR  ($$ENCSTR,ADJUST,ENCMSG,LOADCODE)^XMJMCODE  ($$BRODCAST,SEND)^XMKP  CHECK^XMKPL  INIT^XMVVITAE  ($$GOTADDR,CHKADDR,CLEANUP,INIT)^XMXADDR  $$SEND^XMXSEC CHKLINES^XMXSEC1 (ERRSET,KILLMSG,WAIT)^XMXUTIL $$ENCODEUP^XMXUTIL1 | 
| VA Fileman | 5 | %XY^%RCR $$EZBLD^DIALOG (FILE,UPDATE,WP)^DIE ^DIK $$OREF^DILF | 
| Kernel | 2 | ^%ZTLOAD ($$FMTH,$$NOW)^XLFDT | 
| Name | Comments | DBIA/ICR reference | 
|---|---|---|
| MOVEPART(XMDUZ,XMZ,XMINSTR) | ; Put various parts of the msg in place | |
| CHEKADDR(XMDUZ,XMZ,XMTO,XMINSTR) | ; | |
| PTSKLATR | ; TaskMan entry point to send a program's latered message | |
| STARTMSG(XMSUBJ,XMZ) | ; | |
| ADDBLOB(XMZ,XMATTACH) | ; | |
| ENDMSG(XMDUZ,XMZ,XMTO,XMINSTR) | ; | |
| LATER | ; TaskMan entry point to send a user's latered message | |
| PSNDLATR(XMDUZ,XMSUBJ,XMBODY,XMTO,XMINSTR,ZTSK,XMATTACH) | ; Set up a task for a program to send a message later | |
| CRE8XMZ(XMSUBJ,XMZ,XMIA) | ; Create a place for the msg in the msg file | |
| POSTMAST(XMDUZ,XMINSTR) | ; | |
| CHEKBODY(XMZ,XMSTRIP,XMI) | ; Remove XMSTRIP, control characters from text | |
| TRYXMZ | ; | |
| SENDMSG(XMDUZ,XMSUBJ,XMBODY,XMTO,XMINSTR,XMZ,XMATTACH) | ; ; XMDUZ DUZ of who the msg is from ; XMSUBJ Subject of the msg ; XMBODY Body of the msg ; Must be closed root, passed by value. See WP_ROOT ; definition for WP^DIE(), FM word processing filer. ; XMTO Addressees ; XMINSTR("SELF BSKT") Basket to deliver to if sender is recipient ; XMINSTR("SHARE DATE") Delete date if recipient is "SHARED,MAIL" ; XMINSTR("SHARE BSKT") Basket if recipient is "SHARED,MAIL" ; XMINSTR("RCPT BSKT") Basket name (only) to deliver to for other recipients ; XMINSTR("VAPOR") Date on which to vaporize (delete) this message ; from recipient baskets ; XMINSTR("LATER") Date on which to send this msg, if not now ; XMINSTR("FROM") String saying from whom (default is user) ; XMINSTR("FLAGS") Any or all of the following: ; P Priority ; I Information only (may not be replied to) ; X Closed msg (may not be forwarded) ; C Confidential (surrogates may not read) ; S Send to sender (make sender a recipient) ; R Confirm receipt ; XMINSTR("SCR KEY") Scramble key (implies that msg should be scrambled) ; XMINSTR("SCR HINT") Hint (to guess the scramble key) ; XMINSTR("STRIP") String containing characters to strip from the message text ; XMINSTR("TYPE") Msg type is one of the following: ; D Document (NOT IMPLEMENTED) ; S Spooled Document (NOT IMPLEMENTED) ; X DIFROM (NOT IMPLEMENTED) ; O ODIF (NOT IMPLEMENTED) ; B BLOB ; K KIDS (NOT IMPLEMENTED) ; XMINSTR("ADDR FLAGS") Any or all of the following: ; I Do not Initialize (kill) the ^TMP addressee global ; R Do not Restrict addressees ; XMZ (out) msg number in ^XMB(3.9 (BUT IF $D(XMINSTR("LATER")), ; then XMZ contains the task number) ; XMATTACH (in) Array of files to attach to message ; ("IMAGE",x) imaging (BLOB) files ; ("ROU",x) routines (NOT IMPLEMENTED) | |
| ADDRNSND(XMDUZ,XMZ,XMTO,XMINSTR) | ; | |
| MOVEBODY(XMZ,XMBODY,XMFLAG) | ; | |
| BLDNSND(XMDUZ,XMZ,XMINSTR) | ; | |
| BODYLINE(XMZ,XMLINE) | ; Put the msg body in place, line by line | 
| Name | Field # of Occurrence | 
|---|---|
| %XY^%RCR | ADDBLOB+2 | 
| ^%ZTLOAD | PSNDLATR+8 | 
| $$EZBLD^DIALOG | LATER+2, LATER+3, PSNDLATR+5 | 
| FILE^DIE | MOVEPART+26 | 
| UPDATE^DIE | TRYXMZ+3 | 
| WP^DIE | MOVEBODY+1 | 
| ^DIK | TRYXMZ+33 | 
| $$OREF^DILF | PSNDLATR+6 | 
| $$FMTH^XLFDT | PSNDLATR+4 | 
| $$NOW^XLFDT | MOVEPART+7 | 
| $$MULTI^XMBBLOB | ADDBLOB+3 | 
| SHOW^XMJERR | TRYXMZ+16 | 
| $$ENCSTR^XMJMCODE | MOVEPART+18 | 
| ADJUST^XMJMCODE | MOVEPART+17 | 
| ENCMSG^XMJMCODE | MOVEPART+19 | 
| LOADCODE^XMJMCODE | MOVEPART+15 | 
| $$BRODCAST^XMKP | MOVEPART+25 | 
| SEND^XMKP | BLDNSND+3 | 
| CHECK^XMKPL | BLDNSND+4 | 
| INIT^XMVVITAE | LATER+4, POSTMAST+2 | 
| $$GOTADDR^XMXADDR | BLDNSND+2 | 
| CHKADDR^XMXADDR | CHEKADDR+4, CHEKADDR+5 | 
| CLEANUP^XMXADDR | ADDRNSND+3 | 
| INIT^XMXADDR | CHEKADDR+2 | 
| $$SEND^XMXSEC | SENDMSG+41 | 
| CHKLINES^XMXSEC1 | CHEKADDR+3 | 
| ERRSET^XMXUTIL | BLDNSND+2, TRYXMZ+8, PSNDLATR+10 | 
| KILLMSG^XMXUTIL | ADDBLOB+6 | 
| WAIT^XMXUTIL | TRYXMZ+17 | 
| $$ENCODEUP^XMXUTIL1 | CRE8XMZ+2 | 
| FileNo | Call Tags | 
|---|---|
| ^XMB(3.9 - [#3.9] | Classic Fileman Calls, WP^DIE | 
| Name | Line Occurrences (* Changed, ! Killed) | 
|---|---|
| ^TMP("DIERR" | TRYXMZ+13, TRYXMZ+14 | 
| ^TMP("XMERR" | SENDMSG+40!, ADDBLOB+5*, TRYXMZ+11, TRYXMZ+14*, STARTMSG+1! | 
| ^TMP("XMY0" | LATER+6, LATER+7, LATER+8 | 
| ^XMB(1 - [#4.3] | CRE8XMZ+3, TRYXMZ+20* | 
| ^XMB(3.9 - [#3.9] | TRYXMZ+24, TRYXMZ+29*, TRYXMZ+30*, TRYXMZ+31, TRYXMZ+32*, TRYXMZ+34, CHEKBODY+3, CHEKBODY+11*, BODYLINE+2*, ENDMSG+1* | 
| Name | Line Occurrences | 
|---|---|
| ADDBLOB | SENDMSG+47 | 
| ADDRNSND | SENDMSG+50, ENDMSG+3 | 
| BLDNSND | ADDRNSND+2 | 
| CHEKADDR | ADDRNSND+1 | 
| CHEKBODY | SENDMSG+49 | 
| CRE8XMZ | SENDMSG+46, STARTMSG+2 | 
| MOVEBODY | SENDMSG+48 | 
| MOVEPART | BLDNSND+1 | 
| PSNDLATR | SENDMSG+44 | 
| SENDMSG | LATER+12, PTSKLATR+2 | 
| TRYXMZ | TRYXMZ+35 | 
| Name | Field # of Occurrence | 
|---|---|
| ^( | CHEKBODY+3 | 
| >> | Not killed explicitly | 
| * | Changed | 
| ! | Killed | 
| ~ | Newed | 
| Name | Field # of Occurrence | 
|---|---|
| %X | ADDBLOB+1~, ADDBLOB+2* | 
| %Y | ADDBLOB+1~, ADDBLOB+2* | 
| DA | TRYXMZ+33~* | 
| >> DIERR | TRYXMZ+4, TRYXMZ+12 | 
| DIK | TRYXMZ+33~* | 
| DT | TRYXMZ+2, ENDMSG+1 | 
| DUZ | MOVEPART+6, POSTMAST+1 | 
| I | TRYXMZ+9~, TRYXMZ+11*, TRYXMZ+14*, CHEKBODY+1~, CHEKBODY+7*, CHEKBODY+9, CHEKBODY+10*, PSNDLATR+7* | 
| J | TRYXMZ+9~, TRYXMZ+10*, TRYXMZ+13*, TRYXMZ+14 | 
| K | TRYXMZ+9~, TRYXMZ+12*, TRYXMZ+13, TRYXMZ+14 | 
| U | CRE8XMZ+2, CRE8XMZ+3, TRYXMZ+20, TRYXMZ+32, ENDMSG+1 | 
| X | ADDBLOB+1~, ADDBLOB+3*, ADDBLOB+4 | 
| XMALTRD | CHEKBODY+1~, CHEKBODY+4*, CHEKBODY+5*, CHEKBODY+7*, CHEKBODY+11 | 
| XMATTACH | SENDMSG~, SENDMSG+44, SENDMSG+47, ADDBLOB~, PSNDLATR~, PTSKLATR+2 | 
| XMATTACH("IMAGE" | SENDMSG+47 | 
| XMBCAST | LATER+1~, LATER+3*, LATER+11 | 
| XMBODY | SENDMSG~, SENDMSG+44, SENDMSG+48, MOVEBODY~, MOVEBODY+1, PSNDLATR~, PSNDLATR+6, PTSKLATR+2 | 
| XMDUZ | SENDMSG~, SENDMSG+41, SENDMSG+44, SENDMSG+50, ADDRNSND~, ADDRNSND+1, ADDRNSND+2, CHEKADDR~, CHEKADDR+3, CHEKADDR+4 , CHEKADDR+5, BLDNSND~, BLDNSND+1, BLDNSND+3, MOVEPART~, MOVEPART+5, MOVEPART+6, LATER+12, PSNDLATR~, PTSKLATR+2 , ENDMSG~, ENDMSG+3, POSTMAST~, POSTMAST+1* | 
| XMERR | SENDMSG+40!, SENDMSG+46, SENDMSG+47, ADDBLOB+5*, TRYXMZ+11, TRYXMZ+14, STARTMSG+1!, STARTMSG+2 | 
| XMFDA | CRE8XMZ+1~, MOVEPART+1~ | 
| XMFDA( | TRYXMZ+1*, TRYXMZ+2*, MOVEPART+3*, MOVEPART+5*, MOVEPART+6*, MOVEPART+7*, MOVEPART+9*, MOVEPART+10*, MOVEPART+11*, MOVEPART+14* , MOVEPART+18*, MOVEPART+20*, MOVEPART+21*, MOVEPART+22*, MOVEPART+23*, MOVEPART+24*, MOVEPART+25* | 
| XMFLAG | MOVEBODY~, MOVEBODY+1 | 
| XMI | CHEKBODY~, CHEKBODY+2*, CHEKBODY+3*, CHEKBODY+11, LATER+1~, LATER+5*, LATER+6*, LATER+7, LATER+8, LATER+11 | 
| XMIA | CRE8XMZ~, TRYXMZ+15 | 
| XMIEN | CRE8XMZ+1~, TRYXMZ+22! | 
| XMIEN(1 | TRYXMZ+18 | 
| XMIENS | MOVEPART+1~, MOVEPART+2*, MOVEPART+3, MOVEPART+5, MOVEPART+6, MOVEPART+7, MOVEPART+9, MOVEPART+10, MOVEPART+11, MOVEPART+14 , MOVEPART+18, MOVEPART+20, MOVEPART+21, MOVEPART+22, MOVEPART+23, MOVEPART+24, MOVEPART+25 | 
| XMINSTR | SENDMSG~, SENDMSG+41, SENDMSG+44, SENDMSG+50, ADDRNSND~, ADDRNSND+1, ADDRNSND+2, CHEKADDR~, CHEKADDR+5, BLDNSND~ , BLDNSND+1, BLDNSND+3, MOVEPART~, MOVEPART+8, LATER+12, PSNDLATR~, PTSKLATR+2, ENDMSG~, ENDMSG+3, POSTMAST~ | 
| XMINSTR("ADDR | FLAGS" , CHEKADDR+2, CHEKADDR+3 | 
| XMINSTR("FLAGS" | CHEKADDR+4, MOVEPART+9, MOVEPART+20, MOVEPART+21, MOVEPART+22, MOVEPART+23 | 
| XMINSTR("FROM" | MOVEPART+3, POSTMAST+3* | 
| XMINSTR("LATER" | SENDMSG+42, PSNDLATR+4, PTSKLATR+1! | 
| XMINSTR("RCPT | BSKT" , MOVEPART+24 | 
| XMINSTR("SCR | HINT" , MOVEPART+14, KEY" , MOVEPART+12, MOVEPART+16 | 
| XMINSTR("STRIP" | SENDMSG+49 | 
| XMINSTR("TYPE" | MOVEPART+11 | 
| XMINSTR("VAPOR" | MOVEPART+10 | 
| XMKEY | MOVEPART+13~, MOVEPART+16*, MOVEPART+17, MOVEPART+18 | 
| XMLATER | LATER+1~, LATER+8*, LATER+9 | 
| XMLCNT | STARTMSG+3*, BODYLINE+1*, BODYLINE+2, ENDMSG+1, ENDMSG+2! | 
| XMLEN | CHEKBODY+1~, CHEKBODY+5* | 
| XMLINE | CHEKBODY+1~, CHEKBODY+3*, CHEKBODY+5*, CHEKBODY+6, CHEKBODY+8, CHEKBODY+9*, CHEKBODY+11, BODYLINE~, BODYLINE+2 | 
| XMMAXDIG | CRE8XMZ+1~, CRE8XMZ+3*, TRYXMZ+19, TRYXMZ+32 | 
| XMPREFIX | LATER+1~, LATER+7*, LATER+9*, LATER+10*, LATER+11 | 
| XMPRIVAT | LATER+1~, LATER+2*, LATER+11 | 
| XMRESET | CRE8XMZ+1~, CRE8XMZ+4*, TRYXMZ+20, TRYXMZ+23* | 
| XMRESTR | CHEKADDR+1~, CHEKADDR+3, CHEKADDR+5 | 
| XMSECURE | MOVEPART+13~ | 
| XMSTRIP | CHEKBODY~, CHEKBODY+5 | 
| XMSUBJ | SENDMSG~, SENDMSG+44, SENDMSG+46, CRE8XMZ~, CRE8XMZ+2*, TRYXMZ+1, LATER+12, PSNDLATR~, PTSKLATR+2, STARTMSG~ , STARTMSG+2 | 
| XMTASK | SENDMSG+43~, SENDMSG+44, SENDMSG+45 | 
| XMTO | SENDMSG~, SENDMSG+44, SENDMSG+50, ADDRNSND~, ADDRNSND+1, CHEKADDR~, CHEKADDR+5, LATER+1~, LATER+12, PSNDLATR~ , PTSKLATR+2, ENDMSG~, ENDMSG+3 | 
| XMTO( | LATER+11* | 
| XMV | LATER+1~ | 
| XMV("PRIV" | POSTMAST+2 | 
| XMYBLOB | ADDBLOB+1~ | 
| XMZ | SENDMSG~, SENDMSG+45*, SENDMSG+46, SENDMSG+47, SENDMSG+48, SENDMSG+49, SENDMSG+50, ADDRNSND~, ADDRNSND+1, ADDRNSND+2 , CHEKADDR~, CHEKADDR+3, BLDNSND~, BLDNSND+1, BLDNSND+3, ADDBLOB~, ADDBLOB+3, ADDBLOB+6, CRE8XMZ~, TRYXMZ+5* , TRYXMZ+18*, TRYXMZ+19, TRYXMZ+20, TRYXMZ+33, MOVEBODY~, MOVEBODY+1, CHEKBODY~, CHEKBODY+3, CHEKBODY+11, MOVEPART~ , MOVEPART+2, MOVEPART+19, STARTMSG~, STARTMSG+2, BODYLINE~, BODYLINE+2, ENDMSG~, ENDMSG+1, ENDMSG+3 | 
| ZTDESC | PSNDLATR+1~, PSNDLATR+5* | 
| ZTDTH | PSNDLATR+1~, PSNDLATR+4* | 
| ZTIO | PSNDLATR+1~, PSNDLATR+2* | 
| >> ZTQUEUED | TRYXMZ+15 | 
| >> ZTREQ | LATER+13*, PTSKLATR+3* | 
| ZTRTN | PSNDLATR+1~, PSNDLATR+3* | 
| ZTSAVE | PSNDLATR+1~ | 
| ZTSAVE( | PSNDLATR+6*, PSNDLATR+7* | 
| ZTSK | PSNDLATR~, PSNDLATR+10 |