%%s 3/3/124 %%d D 1.1.2 30-Jul-83 09:09:57 tools 3 2 %%c Removed trailing periods from quoted strings. %%s 3/3/124 %%d D 1.1.1 25-Jun-82 12:50:02 dpm 2 1 %%c Changed incorrect reference to "tt" to "ttstr" in trnlog call in %%c module send.w`send.r`send. Sending user's terminal is now correctly %%c identified instead of being shown as "dra0:[tools.msg]". %%s 0/0/0 %%d D 1.1 27-Mar-82 15:03:36 v1.1 1 0 %%c Version 1.1 is the Spring 1982 Distribution of the LBL/Hughes release %%c of the Software Tools Virtual Operating System software and documentation. %%T %%I 1 %%D 2 #-h- send.r 1834 asc 25-mar-82 09:40:40 v1.1 (sw-tools v1.1) #-h- send 1456 asc 25-mar-82 09:40:34 v1.1 (sw-tools v1.1) %%E 2 %%I 2 %%D 3 #-h- send.r 1834 asc 25-jun-82 12:48:12 dpm (martin,d.p.) %%E 3 %%I 3 #-h- send.r 1838 asc 30-jul-83 09:09:20 tools (lblh csam sventek) %%E 3 #-h- send 1459 asc 25-jun-82 12:44:34 dpm (martin,d.p.) %%E 2 ### Send Send a message to another terminal. DRIVER(send) integer i, len, tcnt integer brdcst, getarg, getlin, length, prompt, trmlst # function(s) character pbuf(MAXLINE) character toname(FILENAMESIZE) character msg(MAXLINE) character myname(USERSIZE) character myterm(FILENAMESIZE) character tlist(MAXLINE) string intro "[message from " string gomsg "[terminate message with ^Z]" string eot "[end of message]" string onstr " on " string picstr "Pick one: " string blkqmk " ? " string ttstr "TT" string usage "? Usage: send {user | term}" call query(usage) if( getarg( 1, toname, FILENAMESIZE) == EOF ) call error(usage) tcnt = trmlst( toname, tlist) if( tcnt != 0 ) { if( tcnt == 1 ) call strcpy( tlist, toname) else { i = 1 call stcopy( picstr, 1, pbuf, i) call stcopy( tlist, 1, pbuf, i) call stcopy( blkqmk, 1, pbuf, i) len = prompt( pbuf, toname, STDIN) if( toname(len) == '@n' ) toname(len) = EOS } } i = 1 call stcopy( intro, 1, msg, i) call mailid(myname) call stcopy( myname, 1, msg, i) call stcopy( onstr, 1, msg, i) %%D 2 call trnlog( tt, myterm) %%E 2 %%I 2 call trnlog( ttstr, myterm) %%E 2 call fold(myterm) call stcopy( myterm, 1, msg, i) call chcopy( ']', msg, i) call chcopy( BELL, msg, i) if( brdcst( msg, toname) != OK ) call snderr(toname) call remark(gomsg) while( getlin( msg, STDIN) != EOF ) if( brdcst( msg, toname) != OK ) call snderr(toname) if( brdcst( eot, toname) != OK ) call snderr(toname) DRETURN end %%D 3 #-h- snderr 232 asc 25-mar-82 09:40:35 v1.1 (sw-tools v1.1) %%E 3 %%I 3 #-h- snderr 231 asc 30-jul-83 09:06:43 tools (lblh csam sventek) %%E 3 ### SndErr Output error message for "send" subroutine snderr(term) character term(ARB) string errmsg "? Can't write to ``@007" call fold(term) call putlin( errmsg, ERROUT) call putlin( term, ERROUT) %%D 3 call error("''.") %%E 3 %%I 3 call error("''") %%E 3 return end #-h- send.fmt 1074 asc 25-mar-82 09:40:41 v1.1 (sw-tools v1.1) .so ~bin/manhdr .hd Send (1) 10-Nov-81 send a message to another user's terminal .sy send {user | term} .ds Send copies lines from your terminal to that of another user. When first called, it sends the message .sp .ti +5 [message from on ] .sp All lines you type will then be transmitted to the other user's terminal until you enter a ^Z. The message .sp .ti +5 [end of message] .sp is then sent. You may specify either a username or a particular terminal (i.e. tta0) to receive the message. If you specify a username and that user is logged in on more than one terminal, you are asked to pick one of the terminals to receive the message. .fl A scratch file generated with seed ``who''. .im Send spawns ``who'' to map users to their terminals, and then calls the VMS SYS$BRDCST system service to send the messages. .sa The UNIX command "write" .di ? Can't write to ``username''. .sp ? Can't spawn ``who''. .sp ? Can't read scratch file. .au Dave Martin (Hughes Aircraft) .bu The VMS SYS$BRDCST system service wraps NEWLINEs around each message. %%E 1