Author : E.L. Word
Requires full mod : Electronic Odyssey Mailcentre
;Introducing the Electronic Odyssey Mailcentre
;This GBBS 1.3j segment will add the capability to send a mailing to all
;users on your system or to users that you select.
;In it’s simplest form you will write a letter and the be prompted for a ;Flag#
to send it to. You will then get a listing of all users with that flag ;set. You
may then “A)utomatically send” to all the users listed, or ask for ;a “P)rompted
send” and then be prompted “User Name ([Y]/N)” for each message ;to be sent.
;This is a real nice mod to GBBS and it took a lot of thought and effort. I ;ask
only one small favor in return. In the past we have written some nice
;additions to GBBS, BBSLISTER1.1G.S which was shipped with EFTS comes to ;mind. Well, recently I have found it uploaded to P+ with minor changes, our ;credit line removed and replaced by ‘explitive deleted’ someone elses
;credit. Have a heart. Feel free to use this seg and build on it, but give
;credit when due.
;From the heart,
;P.S. Thank you Jan Porter for help we gleaned from your userlist.seg.s
; Electronic Odyssey Elite
; MailCentre 1.3ja
; written by
; Christopher Goff
; by request of
; E.L. Word
; Electronic Odyssey
;This module will allow you to to write
;a letter or load a file and then send
;it via mail, in mass, or by individual
;selection, to users whose
;flag number you will select.
;In your main.seg.s
;add to your menu
;if (i$="MC") and (flag(34)) link"a:mailcentre"
;This will allow only sysops flag(34) to be
;able to use this feature.
;Also you will want to search the mailcentre.s
;program for the label
;wr.ltr ; ready "g:mail" <-make sure this line contains ; the drive specifier of your mail
;As a precaution you should back up your mail
;file before testing this the first time. See
;how it works. Try some mail sending of your own.
;Send a couple letters to different user flags.
;When you are satisfied with its operation put
;the original mail file back and send your users
;a short, positive, and upbeat letter. Try to
;end with a question and you’ll get more replies.
;”Hi…Hope you are enjoying the system. How are
; we doing so far?”
;You will get a lot of responses. Everyone loves
;to log on and have mail waiting.
;If you are enjoying the MailCentre, or any of our
;other modules, you’ll let us know. Won’t you?
;Electronic Odyssey Elite BBS
;or contact at P+
;PS. The main menu also includes a hidden D)OS
;command. You can use it to CAT your drive when
;you are looking for a file to G)et. If others
;are going to have access to this module you may
;want to alter the flag needed to use it or even
;REM out the line “if (i$=D)”….etc
;search for “b:xdos” in the mailcentre.s and
;make sure “xdos” on your “b:” drive
on nocar goto link.term main1 print\\"MailCentre 1.3ja"\"courtesy of"\"Electronic Odyssey Elite"\"313/474-5795" print\"W)rite a new letter" print"G)et a file to use" input @2\"RETURN to Quit:";i$ if i$="W" gosub get.sub:goto enterfile if i$="G" gosub get.sub:goto edit.file if (i$="D") and (flag(34)) goto dos.cmd if i$="" goto quit main2 print\\"Flag # to send letter to" input@2 "? = help: ";num$ if num$="" goto quit if num$="?" gosub stat.mnu:goto main2 a = val(num$) if a <0 or a > 34 goto main2 print\\\"Here are the users with that flag set:"\ for x = 1 to nu gosub finduser if y print c$ next print \\"A)utomatic mail send" print "P)rompted mail send" input@2 "Return to abort: " i$ if i$ <> "A" and i$<> "P" goto quit pr = 0 if i$="P" then pr = 1 print \"Mail on its way to:"\ for x = 1 to nu gosub finduser if not y goto main2a print c$; if pr input @2" ([Y]/N): ";i$ if i$="" i$="Y" if pr and i$<>"Y" goto main2a if not pr print gosub wr.ltr main2a next goto quit ;finds user x with flag(a) set... ;y contain 1 if good user 0 if deleted finduser y = 0 open #1,"b:users" position #1,128,x input #1,a$,b$\c$ if a$="" goto find2 position #1,128,x,70 move ram,58 to ram2:on nocar::read #1,ram,58 if flag(a) y = 1 move ram2,58 to ram:on nocar goto link.term find2 close return enterfile print\"Enter your message now" cl=clock(2) clock(2) = 0 edit(0) edit(1) clock(2) = cl if not edit(2) goto quit goto main2 edit.file print \"Get a File to Mail" input @2 \"File Name (to load):" i$ edit(0):if i$<>"" copy i$,#8 print \"Enter/Edit File Now: "edit(3)" cols" print "Type 'DONE' when finished '.h' for help" edit(1):if not edit(2) goto quit goto main2 wr.ltr ready "g:mail" if info(6)<29 print "Mail bitmap full":return print #msg(x),un print #6,"Subj ->"sb$ print #6,"From ->"a3$"(#"un")" print #6,"Date ->"date$" "time$\ copy #8,#6:print #msg(x),chr$(4);chr$(0); msg(x)=1:update:return stat.mnu setint(1):print \s$\ open #1,"b:data2" for i=1 to 33 if not flag(i) goto stat1nxt position #1,32,i input #1,a$ if key(0)=32 then i=33:goto stat1nxt if a$="" goto stat1nxt i$=right$(" "+str$(i),2) print " - "i$") "a$ stat1nxt next:close:return dos.cmd input @2\"DOS: "i$:if i$="" return use "b:xdos",i$:goto main1 link.term link "a:main.seg","term1" quit link "a:main.seg","return" get.sub input @3\\"Subject of mail: ";sb$:if sb$="" sb$="None" return