home *** CD-ROM | disk | FTP | other *** search
/ Beijing Paradise BBS Backup / PARADISE.ISO / software / BBSDOORW / PPAGE210.ZIP / PPAGE.DOC < prev    next >
Text File  |  1993-01-09  |  21KB  |  579 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.                           Pocket Pager Version 2.10
  14.                            Written by David Shafer
  15.  
  16.                            Released January 9, 1993
  17.  
  18.                  Copyright (c) 1993, The PEFH Software Group
  19.                              All rights reserved.
  20.  
  21.                  Created with Searchlight Programmer's Library
  22.                Portions Copyright (c) 1992 Searchlight Software
  23.  
  24.  
  25.  
  26.                                "What is that?"
  27.                                 "What's what?"
  28.                           "YOU have a Pocket Pager!"
  29.  
  30.                       - Star Trek IV : The Voyage Home
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.                                1
  65.  
  66.  
  67.  
  68.  
  69.  
  70.      Table of Contents
  71.      -----------------
  72.      1.  Introduction ............... 2
  73.      2.  Legal Stuff ................ 3
  74.      3.  Disclaimer ................. 3
  75.      4.  Distribution ............... 3
  76.      5.  Installation ............... 4
  77.      6.  Configuration Program ...... 4
  78.          6.1.  System Information ... 4
  79.          6.2.  Miscellaneous ........ 5
  80.          6.3.  Chat Colors Setup .... 5
  81.          6.4.  String Definitions ... 5
  82.          6.5.  Security Levels ...... 5
  83.          6.6.  Time Restrictions .... 6
  84.      7.  External Page Bells ........ 6
  85.          7.1.  PPCmf ................ 7
  86.          7.2.  PPVoc ................ 7
  87.      8.  Operation .................. 8
  88.      9.  Registration ............... 9
  89.  
  90.  
  91.  
  92. 1.  Introduction
  93.  
  94.      Thank you for checking out Pocket Pager!  If you're like me, you love
  95. Searchlight BBS.  The menus are fantastic, the internal communications
  96. support makes programming a breeze, and it generally has the look and feel of
  97. an extremely professional piece of coding.  One problem...  As terrific as
  98. everything else about Searchlight is, the Sysop paging system is seriously
  99. lacking in features.
  100.  
  101.        Not a problem!  Pocket Pager combines the best features of some of
  102. today's best BBS software with the ideas of Sysops around the world who give
  103. me their input.  The result is a program that's both up-to-date and complex,
  104. yet as easy to configure as Searchlight BBS.
  105.  
  106.       These are all of the features offered by Pocket Pager 2.00:
  107.  
  108.    ∙ Control Sysop availability with Scroll Lock
  109.    ∙ Asks for a reason for page
  110.    ∙ Updates "C" flag on SL's status line
  111.    ∙ Complete log file detailing
  112.         - Day of week, date, and time of page
  113.         - User's reason for page
  114.         - How Sysop responded
  115.    ∙ Configurable length of time for page
  116.    ∙ Configurable text strings
  117.    ∙ Configurable security levels with independent "Ask Reason Prompt?",
  118.       "Override Time of Day?", and "Override Scroll Lock?" settings for each
  119.    ∙ External DOS paging commands for Sound Blaster or other utilities,
  120.       independently configurable by security level
  121.    ∙ Beginning and Ending paging time 'windows', independently
  122.       configurable by day of the week
  123.    ∙ Split-Screen/ASCII Line Chat
  124.    ∙ Drop User to DOS and Sysop Jump to DOS functions in both chat modes
  125.    ∙ Traps errorlevels from external pages, allowing programmers to write
  126.       custom alarm functions
  127.  
  128.  
  129.                                2
  130.  
  131.  
  132.  
  133.  
  134.  
  135.    ∙ '/C' command-line parameter bypasses page, and jumps directly into
  136.       Split-Screen or ASCII Line Chat
  137.  
  138.       These features are new to Pocket Pager 2.10:
  139.  
  140.    ∙ Optionally block multiple pages during one logon
  141.    ∙ *TRUE* SoundBlaster support in the form of .CMF and .VOC files
  142.    ∙ Bugs related to DOS shells and line-wrap eliminated
  143.    ∙ Screen redraw now keeps track of any existing chat text
  144.    ∙ Drop to DOS and Jump to DOS also remember any existing chat text
  145.    ∙ 5 lines retained when a window is scrolled, instead of only 3
  146.    ∙ Input, status bar, and PPConfig colors taken from Config.SL2
  147.    ∙ ANSI split-screen and ANSI/ASCII line chat colors defined in PPConfig
  148.    ∙ Status line expanded to include SL's flags
  149.  
  150.  
  151.      For more information on The PEFH Software Group, the group responsible
  152. for this program, refer to PEFH.DOC, included in this archive.
  153.  
  154.  
  155.  
  156. 2.  Legal Stuff
  157.  
  158.      This program was created by David Shafer of The PEFH Software Group.
  159. You may run this program, distribute it freely, make copies, etc.  You may
  160. NOT sell this program for a profit.  A distribution fee may be charged, as
  161. long as it only covers the price of the disk and/or postage.  You also may
  162. not alter the program or any included files, and you may not alter the
  163. archive.
  164.  
  165.  
  166.  
  167. 3.  Disclaimer
  168.  
  169.      Hopefully this program is bug-free and it was not intended to be
  170. harmful, but under no circumstances will The PEFH or David Shafer take
  171. responsibility for any harm that comes out of using this program.  You're
  172. using it of your own free will, and we can't make any guarantees.  If Pocket
  173. Pager begins to smoke, cover head and seek shelter immediately.
  174.  
  175.  
  176.  
  177. 4.  Distribution
  178.  
  179.      The following files should be included in this archive:
  180.  
  181.          PEFH.DOC      -  PEFH Information File
  182.          200TO210.EXE  -  Update Configuration File
  183.          PPAGE.EXE     -  Main Executable
  184.          PPAGE.DOC     -  Documentation (This File)
  185.          PPAGE.HIS     -  Revision History
  186.          PPAGE.REG     -  Registration/Comment Form
  187.          PPCONFIG.EXE  -  Configuration Program
  188.  
  189.          PPCMF.EXE     -  SoundBlaster .CMF Player
  190.          PPVOC.EXE     -  SoundBlaster .VOC Player
  191.  
  192.  
  193.                                3
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.          SIREN.EXE     -  Sample External Bell
  201.          SIREN.PAS     -  Sample External Bell (Pascal Source)
  202.  
  203.      If not all of the files have been included, contact a Support or
  204. Distribution BBS (listed in PEFH.DOC) for an official distribution archive,
  205. and delete the incomplete archive.
  206.  
  207.  
  208.  
  209. 5.  Installation
  210.  
  211.      To install Pocket Pager 2.10 for the first time, begin by copying all of
  212. the files to one directory, such as 'C:\DOORS\PPAGE'.  Make sure you have all
  213. of the files listed in the "Distribution" section.
  214.  
  215.      For users to be able to run Pocket Pager, you'll have to set it up as a
  216. menu entry, or as an external door in SLBBS 2.15.  'Communications Support'
  217. should be set to Standard, 'Abort Method' to Terminate, 'Write Protection' to
  218. No, 'Parameter File' to None, and 'Pause After Door' to No.  If you're
  219. running SLBBS 2.15, set up these same option in your DOORS.DEF file.  Simply
  220. run the PPage.Exe file out of the Pocket Pager directory you created.  If
  221. you're in monochrome mode, be sure to 'Force Color', so your users will see
  222. the color correctly.
  223.  
  224.      Pocket Pager itself does not need to be run with any parameters in
  225. version 2.00 and beyond.  For this reason, Pocket Pager needs to know where
  226. your Config.SL2 file it located.  Set the 'SLBBS' environment variable to the
  227. apropriate path, unless Config.SL2 is located in the current directory when
  228. Pocket Pager is run.  This is accomplished with the DOS 'SET' command, as in
  229. 'SET SLBBS=C:\SLBBS' or 'SET SLBBS=C:\BBS'.
  230.  
  231.  
  232.  
  233. 6. Configuration Program
  234.  
  235.      Once Pocket Pager is installed, you will want to configure your copy.
  236. Change to the Pocket Pager directory you created, and run PPConfig.Exe.
  237. Since direct screen writes are not used, PPConfig CAN be used remotely.
  238. Below, each of the main configuration categories is explained.
  239.  
  240. 6.1. System Information
  241.  
  242.      The fields in the System Information category deal mainly with registra-
  243. tion information.  'Sysop Name' should be set to your name as you want it to
  244. apear to your users.  In MOST cases, this will be your full, real name.  'BBS
  245. Name' is, of course, the name of your Bulletin Board System as you want it to
  246. apear in Pocket Pager.  Registration Key should be set to "0" if you haven't
  247. registered.  None of these setting should be changed after you register, as
  248. it will nullify your registration!
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.                                4
  258.  
  259.  
  260.  
  261.  
  262.  
  263. 6.2. Miscellaneous
  264.  
  265.      The miscellaneous category will grow as Pocket Pager develops.  It
  266. currently holds three fields.  The first field is for specifying a log file
  267. that Pocket Pager will maintain.  By looking at this file, the Sysop can
  268. determine who paged while (s)he was away, and perhaps leave E-Mail to those
  269. users if it sounds important.  A full path AND filename should be specified.
  270. If this field is left blank, no log file will be created.  The "Alarm Length"
  271. can also be configured from this menu.  A value from 0 to 255 seconds may be
  272. entered.  The bottom option, "Allow Multiple Pages", decides whether or not
  273. users can page more than once on a call.  This is a good way to eliminate
  274. twits who page 20 times in a row saying only "Stuff" as their Reason for
  275. Page.
  276.  
  277.  
  278. 6.3. Chat Colors Setup
  279.  
  280.      Pocket Pager grabs as many color settings as it can from Searchlight
  281. BBS.  This includes all of the colors used for PPConfig, as well as input
  282. bars and status lines.  The remaining colors (aside from those in the main
  283. screen, which are hard-coded), are the colors used in the ANSI split-screen
  284. and ANSI/ASCII line chatting modes.  These can all be selected from the Chat
  285. Colors Setup menu in PPConfig.  Most of the fields are self-explanatory, as
  286. are the available color selections.  If you aren't sure of what color
  287. settings to use, it never hurts to experiment!
  288.  
  289.  
  290. 6.4. String Definitions
  291.  
  292.      From this menu, the major information text strings used by Pocket Pager
  293. can be configured for your BBS.  In this way, you can make Pocket Pager fit
  294. into the mood, theme, or style of your Bulletin Board.  The purpose of each
  295. string should be self-explanatory.  (Adding your name to the strings is a
  296. great way to personalize your copy of Pocket Pager!  Instead of saying "The
  297. Sysop isn't in right now.", have your BBS respond with something like "Bob is
  298. currently seeking the Ultimate Answer.  Try again in about 42 minutes.")
  299.  
  300.  
  301. 6.5. Security Levels
  302.  
  303.      This section represents what is probably one of Pocket Pager's most
  304. powerful features.  Up to twelve security definitions can be created, with
  305. independent settings for each.  A configurable default definition covers any
  306. security levels not already defined by the Sysop.
  307.  
  308.      Within each definition, several options can be defined.  The Access Name
  309. will be displayed both in the log file, and on the status line at run time.
  310. Names like "Visiting Sysop" or "Twit" can help the Sysop identify the person
  311. paging, if they are not familiar.  The 'BBS Access Level' tells Pocket Pager
  312. who fits into this defintion, according to their BBS Access Level.  The next
  313. three parameters have no effect unless Pocket Pager detects a valid
  314. registration key: the 'Reason for Page?' prompt, and the time-of-day and
  315. Scroll Lock paging restrictions all have override options, configurable by
  316. security level.  These options should be used carefully, as you could end up
  317. having people page you at all hours of the night!
  318.  
  319.  
  320.  
  321.                                5
  322.  
  323.  
  324.  
  325.  
  326.  
  327.      The final field is for executing an external page bell, rather than
  328. using Pocket Pager's internal telephone bell.  You may enter .COM or .EXE
  329. files, or even .BAT files and DOS commands.  If Pocket Pager doesn't see the
  330.  .COM or .EXE extension, it will run your programm in a Command.Com shell.
  331. To execute Command.Com, it will first look for the COMSPEC environment
  332. variable.  If COMPSEC isn't found, Command.Com will be run from the current
  333. directory.  (An example external page bell, Siren.Exe, has been included in
  334. this archive.)
  335.  
  336.  
  337. 6.6. Time Restrictions
  338.  
  339.      This section is also one of Pocket Pager's strong points.  For each day
  340. of the week, a paging "window" can be defined using starting and ending
  341. paging times.  In this way, you can make sure nobody is paging you too early,
  342. or too late.  An override options is available by security level on
  343. registered systems.
  344.  
  345.  
  346.  
  347. 7. External Page Bells
  348.  
  349.      In addition to programs like VPlay, programmers can write their own
  350. simple page bells for use in Pocket Pager.  The easiest language to use for
  351. this purpose is Turbo Pascal, though any language will work.  For starters,
  352. placing "DirectVideo := False" in your Turbo Pascal programs will echo
  353. everything (including colors!) to the remote user.  For more detailed
  354. information, check out "SOME DOOR PROGRAMMING TIPS" in the Searchlight
  355. Owner's Manual, or look at the Searchlight TPU.  Both are excellent resources
  356. for SLBBS programmers.
  357.  
  358.      As of version 2.00, Pocket Pager will look for errorlevel returns from
  359. external page programs.  If you are programming an external bell program, you
  360. may wish to return the following DOS errorlevels under the appropriate
  361. conditions:
  362.  
  363.           0  :  No Answer (timeout)
  364.           1  :  User Aborted (keypress from remote)
  365.           2  :  Sysop Aborted (keypress from local)
  366.           3  :  Sysop Answered (Alt-C)
  367.           4  :  Force ASCII Chat (Shift-Alt-C)
  368.  
  369.      In Turbo Pascal, these codes can be returned using "Halt(b);" as the
  370. exit point of your program, where 'b' is a byte value corresponding to the
  371. definitions above.  Pocket Pager will detect the errorlevel, and take the
  372. appropriate action, like displaying a text string or entering chat mode.
  373.  
  374.      For an example of programming external page programs, look at Siren.Pas,
  375. included in this archive.  It shows how programs interface with Pocket Pager,
  376. and some of the basic techniques to use.  (Note:  Compiling it requires
  377. SLTPU, from Searchlight Software.  This should be available for download on
  378. most Searchlight Support Systems.)
  379.  
  380.      As of version 2.10, Pocket Pager includes two utilties for SoundBlaster
  381. owners that interface with Pocket Pager's external page bell system.  They
  382. are each explained in greater detail below:
  383.  
  384.  
  385.                                6
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392. 7.1. PPCmf.Exe
  393.  
  394.      Many great songs are available for the SoundBlaster in .CMF format.  You
  395. can find just about anything, from movie and T.V. themes, to pop and
  396. classical instrumentals, to holiday music.  With PPCmf, you can play these
  397. songs through your SoundBlaster when a user pages.  Pocket Pager's security
  398. defintions allow you to specify different songs for different security
  399. levels, so you can tell who's paging just by the music that's playing!
  400.  
  401.      To use PPCmf, just make sure SBFMDrv.Com is loaded first.  Usually, this
  402. will be in your Autoexec.Bat, or some other .BAT file that executes only once
  403. each time the computer boots up.  Then enter the program into one of Pocket
  404. Pager's security definitions (be sure to include the .Exe extension so that a
  405. Command.Com shell isn't executed), followed by the song you want to be
  406. played.  The song will be stopped when the paging time defined in PPConfig
  407. expires.  An example would be:
  408.  
  409.      PPCmf.Exe Crystal.Cmf
  410.  
  411.      I've included some example songs that I use, so that you'll have
  412. something to start with.  I doubt you'll have trouble coming up with music,
  413. though.  Huge libraries of .CMF files exist on BBSes around the world!  PPCmf
  414. can also be used from DOS to listen to them before installing them on your
  415. system.
  416.  
  417.      Pocket Pager's standard keys (Alt-C to chat, Shift-Alt-C to force ASCII,
  418. any other keys locally to abort, any keys remotely to abort), are monitored
  419. by PPCmf and appropriate errorlevels are returned, so that Pocket Pager will
  420. enter chat or exit back to Searchlight accordingly, and make the appropriate
  421. log file entries.
  422.  
  423.  
  424. 7.2. PPVoc.Exe
  425.  
  426.      Another great feature of the SoundBlaster is its ability to play back
  427. digitized sound files.  I wasn't about to let this go to waste!  As with .CMF
  428. files, there is abundance of .VOC files of every kind, and any of them can be
  429. played in Pocket Pager, as long as your system can hold them in memory.  Just
  430. like the .CMF files, you can define different .VOC files for each security
  431. level through PPConfig's security definitions.
  432.  
  433.      When you run PPVoc.Exe, no driver needs to be resident, but CT-Voice.Drv
  434. needs to be in the current directory.  PPVoc loads this into memory on its
  435. own, and then frees up the memory afterwards.
  436.  
  437.      The syntax for PPVoc is the same as PPCmf.  Enter the program name into
  438. PPConfig (with the .Exe extension), followed by the .Voc file you want to
  439. play.  PPVoc will stop the .VOC file when the paging time expires, or will
  440. repeat the .VOC file in a loop until the paging time expires.  PPVoc will
  441. respond to keypressed in the same way that PPCmf does.  An example
  442. command-line might be:
  443.  
  444.      PPVoc.Exe Cow.Voc
  445.  
  446.  
  447.  
  448.  
  449.                                7
  450.  
  451.  
  452.  
  453.  
  454.  
  455.  
  456. 8. Operation
  457.  
  458.      Once Pocket Pager executes, it will display a status line at the bottom
  459. of the local screen.  This will tell the Sysop the name of the person paging,
  460. their BBS Access Level, and the NAME of their access level as defined in
  461. PPConfig.  It also shows the status of Searchlight's internal system flags.
  462. Using this information, the Sysop can decide whether or not they want to talk
  463. to the person online.
  464.  
  465.      Before anything else happens, the status of Searchlight's 'C' flag is
  466. checked.  If this flag is turned "On" (meaning the user has already paged),
  467. paging will be blocked if you've instructed Pocket Pager to do so.  The user
  468. will be given the 'User Already Paged' string and returned to Searchlight.
  469.  
  470.      Both the time-of-day and Scroll Lock status will be checked next.  If
  471. the current time is outside the day's paging window, or scroll lock is
  472. activated, the user will not be able to page, and the 'Sysop Not Available'
  473. string will be displayed from the configuration file.  On registered systems,
  474. users may override these settings, if the Sysop has made that option
  475. available.
  476.  
  477.      If paging is allowed, the user will be prompted by the 'Reason for Page'
  478. prompt to enter a reason for paging.  Pressing [Enter] without any text will
  479. abort the page and return to Searchlight.  If the "Reason for Page Override"
  480. is set to On, this step will be skipped.
  481.  
  482.      Next, a Sysop instruction line will apear on the local screen, giving
  483. the Sysop the choice of pressing Alt-C to answer, Shift-Alt-C to force ASCII,
  484. activating Scrl Lock to silence the page (and prevent further pages), or
  485. pressing any other key to abort, which exits to Searchlight with the 'Sysop
  486. Aborted Page' string.  (Note: If the user's Scroll Lock Override is set,
  487. pressing scroll lock will have no effect during the page.)  During the page,
  488. the user also has the option of pressing any key to abort.  If no keys are
  489. pressed, the page will timeout, and the 'No Answer' string will be displayed.
  490.  
  491.      In any case where the user attempted to page, but never ended up
  492. chatting with the Sysop, the 'C' flag will be set to "On" in Searchlight.
  493. This will show up on Searchlight's internal status bar, and may optionally
  494. block further pages if you've instructed Pocket Pager to do so.
  495.  
  496.      If all else goes well, and the Sysop answered the page, Pocket Pager
  497. will enter Split-Screen or ASCII Line Chat.  In these modes, the Sysop can
  498. press Alt-J to jump to DOS alone, or Alt-D to drop to DOS with the user.  In
  499. Split-Screen chatting, Ctrl-R redraws the entire screen to compensate for
  500. line noise, and Ctrl-W clears your window.  The Esc key exits chat in both
  501. modes.  If the 'C' flag was set to "On" when the Sysop entered chat, it will
  502. be set "Off".
  503.  
  504. (Note: Running Pocket Pager with the '/C' parameter bypasses the paging
  505. function, and enters chat mode.  Only the local console should be allowed to
  506. execute this, as a remote user won't be able to exit again by pressing Esc.
  507. If your CoSysops have access to DOS, make sure they are aware of this, and
  508. that your Doors.Def or menu definition provides an "Abort" method.)
  509.  
  510.  
  511.  
  512.  
  513.                                8
  514.  
  515.  
  516.  
  517.  
  518.  
  519.  
  520. 9. Registration
  521.  
  522.      If you find Pocket Pager useful, you can show your appreciation for the
  523. work that went into it by registering or sending some comments.  A
  524. Comment/Registration form has been included in this archive as 'PPage.Reg'.
  525. Please fill it out, and tell us what you think!  All comments and
  526. registrations should be directed to David Shafer, the author.  (Check the
  527. registration form for the correct address.)
  528.  
  529.      Remember, you're not required to register!  You can use this program as
  530. long as you want without paying a cent.  More than anything, we just want to
  531. hear what you have to say, so that we can improve the program further.  If
  532. you DO register, however, your registration will be valid for ALL future
  533. upgrades, and any special features will be enabled.
  534.  
  535.  
  536.  
  537.  
  538.  
  539.  
  540.  
  541.  
  542.  
  543.  
  544.  
  545.  
  546.  
  547.  
  548.  
  549.  
  550.  
  551.  
  552.  
  553.  
  554.  
  555.  
  556.  
  557.  
  558.  
  559.  
  560.  
  561.  
  562.  
  563.  
  564.  
  565.  
  566.  
  567.  
  568.  
  569.  
  570.  
  571.  
  572.  
  573.  
  574.  
  575.  
  576.  
  577.                                9
  578.  
  579.