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 |