Document avmNfax documentation avmNfax Program Documentation ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ AVM is Copyright - 1995 by Dr. R. Alberto Villarica (SoftWorx). EFax is Copyleft - 1993, 1994 by Ed Casas (edc@cce.com) Please read this documentation! It is *very* important! I have tried to make the documentation as complete as possible. However, if you find something that is out of date or if a feature is undocumented, let me know so I can update the documentation. Again, it is important that you go through the documentation at least once. If you have some problems, check out the section called `Common Problems' before asking me. You may find that some of your questions have already been asked by other people and have been solved. NOTE: Most of the stuff from section 0 to section 4 should be correct. Anything after that may not apply to this version of avmNfax. 0. Important Stuff! ------------------- 0.1. What is avmNfax? AVM (Advanced Voice Mail) is a program that allows you to use your voice-capable modem (Zyxel, Dolphin, LineLink, or Rockwell based voice-modem) as an answering machine or as a programmable voice mail machine. In addition to this, it allows you to send and receive faxes with the included EFax program. If you already own GPFax or TrapFax, you can use the included ARexx scripts to integrate AVM with those two other fax programs. AVM can also switch to data mode after answering a call, in case you want to use a BBS with it. EFax is a class 1 and class 2 fax program written by Ed Casas. It is a GNU program that was ported to the Amiga by Al Villarica for the purpose of providing fax capabilities to AVM. Technical support for EFax is being handled by Al Villarica. 0.2. Author Dr. R. Alberto Villarica 4 Lone Oak Circle Penfield, NY 14526 USA Internet email: rvillari@cat.syr.edu Fax: (716) 387-0724 (press 2) Voice: (315) 387-0724 Call at "nice" hours please -- my time zone is called Eastern Standard Time, so make the necessary time conversions. 0.3. How do I install it? Read the file called "Installation". It contains the steps needed to get you started. 0.4. How much does it cost? This is SHAREWARE! Please support it! Read the file called "Registration". It contains information on what the Unregistered version can do. It also tells you how to register the software to make full use of your voice-capable or fax modem. The file called "Registration_Form" contains a registration form that you can print, fill out, and mail together with your payment. 0.5. How do I get support for avmNfax? Join our `Mailing List'! You can call me up at my number (see the `Author'). If you do leave a message and want me to call you back, expect that I will call COLLECT. You can refuse my Collect call and call me back to save yourself some money. You may also send regular mail to the `Author'. I will try to answer your questions as soon as I can. However, if you have access to a system that can send email to an Internet site, my address is: rvillari@cat.syr.edu If you send email to this address and I do not respond within 1 week, you can be sure that I did not receive your email or my reply didn't reach you. I am usually very good about replying to email, even if you don't ask a question. So, if you don't get any response from me, try to find other ways of reaching me. I will answer all questions and help you do some ARexx programming if you are using a fax or data/BBS program that you want to integrate with AVM. Before asking me a question, *please* look for the answer here in this document. You may find that someone asked your question and I answered it. Look at the section `Common Problems'. Also, it would be most helpful if, aside from telling me that AVM doesn't work, you provide useful information. For example, I would like to know: o Your computer type (A1000, A2000, etc.) o Your processor type (68000, 68020, 68030, 68040, 68060) o Your operating system version (2.04, 2.1, 3.0, 3.1, etc.) o Your modem type and ROM version (if you have a ZyXEL, type in ATI1 in some terminal and tell me what it says). o Your serial port (internal, GVP IOextender, Multiface II, Multiface III, etc.) o A ram:logger.save file. Enable the Tracer Section by going to the Configure menu and selecting the "UI & others" menu item. Then, enable the checkbox called "Show Tracer Section". Try to reproduce the problem, then click on the Save button in the Tracer Section, then send me the file called ram:logger.save. The Tracer produces important information about the AVM Server process which handles the modem. It also tells me if there's a problem with one of your ARexx scripts. In other words, the file ram:logger.save allows me to do "remote" debugging. o Your avm:servers.cfg file. 0.6. Getting Updates 0.6.1. Networks and BBSes I will try to distribute the latest public versions on the major networks (Internet, FidoNet, Fred Fish, CompuServe, America Online, Delphi, etc.). 0.6.2. Deep Thought BBS Christian Stelter has been kind enough to carry AVM in his BBS. It is a FidoNet node. Here's some information on his BBS. DEEP THOUGHT Bulletin Board System InterNet: deepthought.north.de FidoNet: 2:2426/2020.0 & 2:2426/2021.0 AmigaNet: 39:170/204.0 & 39:170/205.0 Port 1: +49-(0)441-383365, 1200-21600 bps HST 16.8, v.32bis Port 2: +49-(0)441-383839, 1200-16800 bps ZyXEL Magic for Fido File Requests: AVM (for the latest version) : FILES (for a list of all files) 0.7. Mailing List Christian Stelter has set up a mailing list for AVM. To join this mailing list, send email to "listserv@deepthought.north.de". On the first line of your email (not the Subject header), type in: subscribe avm Then, when I send email to this mailing list, everyone on the mailing list will get a copy. This is a good way for you to find out about new releases of AVM (whether Beta or final). Plus, I plan to distribute small fixes to ARexx scripts here and to discuss new features and bugs. 0.8. History If you want to find out what's different between this version and the previous versions, browse through the file called "History". Note that I follow the Commodore way of numbering versions. In particular, the number after the decimal point is a revision number. Version 1.20 is not the same as 1.2. Version 1.20 is 18 revisions later than 1.2. Attention ZVM users! avmNfax is a major rewrite of ZVM, which was my first attempt at providing answering machine capabilities to users of the Amiga and the Zyxel modem. AVM now supports the LineLink 144e modem (some restrictions apply), the MTD Dolphin modem (a Zyxel compatible), and Rockwell chipset based voice modems (I tested a Zoom VFDX, others have tried a Zoom 14.4v). 0.9. Contributions Please check out avm:contrib. It contains stuff contributed by AVM users. You may like what's in there. 1. Introduction --------------- Here is a list of features that avmNfax provides if you have a voice-capable modem. o A three-mailbox answering machine. A caller has the option of leaving a message for two different people. If he doesn't choose one, the message is placed in the "anonymous" mailbox. o A simple answering machine if you don't want to have mailboxes. In this case, only the "anonymous" mailbox is active. o The ability to archive messages and faxes that you receive so that you can recall them later on. o The ability to receive voice messages, faxes, and data calls all on one line. At this time, only GPFax, TrapFax, & EFax are supported. With some ARexx programming, other fax programs may be substituted. There are a number of BBSes that are currently supported (4D BBS, AXsh, CNet, Excelsior, etc.). o The ability to retrieve messages from a remote site by using touch tone keys. Information about the message can be played (e.g. the time and date of the message, the telephone number left by the caller, or the telephone number transmitted via the Caller-Id mechanism available on some phone systems). o Silent answer -- if you pick up the phone before the program does, it will eventually pick it up and listen in on your conversation. By pressing the appropriate keys on your touch- tone phone, you can instruct AVM to handle the call as a fax call, a data call, or have it record your convesation. Recording the conversation is useful if you want to remember some information but don't have a pen and paper lying around. o Record Conversation -- you can use this to record important conversations. This is especially handy when dealing with mail-order firms. But, you probably should tell the other party that the conversation is being recorded because that may be considered as an illegal phone/wire tap. o Remote maintenance -- you can remotely record a personal greeting for each mailbox. In addition, some of the outgoing messages can also be recorded from another telephone. There are other "maintenance" activities that you can do remotely. o Pre Conversion -- voice modems transmit voice to the Amiga in a compressed format. In order to play it over the Amiga, it first has to be decompressed. With this feature, you will be able to pre-convert voice files into IFF while your computer is essentially idle. So, when you get home, you can click on Play to play your message, and it will be immediately played. Otherwise, you would have to wait for the decompression process to take place, which could take a while if you have a slow Amiga or the decompressor is slow. At this time, the decompressor for LineLink modems is quite slow, such that even with my A3000/25, I would use the Pre Conversion feature. o Immediate playing -- if you have a fast Amiga and you use a compression mode that can be "uncompressed" quickly (ZyXEL & Dolphin), you can play the incoming voice files directly to the Amiga sound system without going through the intermediate decompression stage. o Multiple greetings -- you can greet your callers differently depending on the time of day, the day of the week, randomly, etc. Plus, as stated above, you can record these greetings remotely. 2. Requirements --------------- o AmigaDOS 2.04 or greater o MUI 2.3 or greater (please don't try lower versions) o Voice & Fax: a Zyxel, a LineLink 144e, a MTD Dolphin modem, or a Rockwell chipset based voice-capable modem o Fax only: any class 1 or class 2 fax modem (class 2.0 is not supported) o ARexx - this is included with AmigaDOS 2.04 and up, but it may not actually be running on your system. Look in the startup-sequence or the user-startup for a line containing "rexxmast" to be sure. Alternatively, type in the following into a shell: rx "say hello world" If it prints HELLO WORLD in the shell, ARexx is running. o a hard disk to store voice messages & fax files o 2 megs of RAM (the more, the merrier) o a 640x400 screensize when using the AVM programmer -- it doesn't have to be an actual screensize...it could be a virtual screensize. For example, you could have an actual screensize of 640x200, but an auto-scrolling virtual screensize of 640x400. On my machine, you would use sys:prefs/screenmode to set these parameters for the Workbench Screen. 3. Desirables ------------- o an accelerated Amiga o speakers hooked up to your Amiga (only if you have a Zyxel, LineLink, or MTD Dolphin) o a sound digitizer (only if you have a Zyxel, LineLink, or MTD Dolphin) o a fast serial port (e.g. IOExtender, Multiface II, Multiface III, etc.) -- NOTE: I tried the A2232 with my Zyxel a long time ago and it didn't work, so, I make no promises using that card. 4. AVM Limitations for some modems ---------------------------------- Although AVM was designed to handle multiple modems, it does not currently handle multiple types of modems running at the same time. For example, you cannot have a Zyxel and a LineLink hooked up to two separate serial ports on your Amiga. You can, however, have two Zyxels or two LineLinks hooked up to two separate serial ports. If I have an encoder for the modem/compression you are using, then you can use the pre-recorded voice files. Otherwise, you pretty much have to record the voice files yourself, or go out and download a set of voice files. If I have a decoder for the modem/compression you are using, then you can listen to voice messages on your Amiga. Otherwise, you will have to use the telephone line, the local handset, or the modem's internal speaker. On Rockwell-based voice-modems (I don't have a decoder for any of its compression modes), the brands I've tried had local handset support, and their internal speakers were quite good. 4.1. ZyXEL o If you have an E+ or greater, you can use the CELP compression. However, there is no CELP decoder/encoder, which means that you cannot play out these voice files through the Amiga's sound system. You cannot record on your Amiga either. o Here's a list of compression modes in order of preference: ADPCM4, ADPCM3b, ADPCM2. Note that slower Amigas may not be able to handle ADPCM4 or ADPCM3b. o I do not have an encoder for ADPCM2SYNC or ADPCM3SYNC, or ADPCM4SYNC. o Zyxel Elites support Local Handset. The older ones do not. 4.2. Dolphin o As far as I know, the only available compression mode is ADPCM2. 4.3. LineLink 14.4e o The LineLink can use a compression called SPC. But, the decoder I wrote for it is not in tip-top shape. Try it to see if you like it. Be aware, however, that SPC uses more serial bandwidth and more diskspace. It is, however, fast to decode. I do not have an encoder for SPC. o The LineLink cannot detect a calling fax automatically. You will need to tell your fax callers that they need to follow instructions on how to activate your fax. I have implemented something that may enable you to receive faxes automatically. This only works when you use the two-mailbox system I developed. Normally, when a caller calls, he is instructed to press 1 to start the mailbox system. If he doesn't press 1, the default goes into a mailbox called "anonymous". See `Answer Priority' to change this default to go into fax mode or data mode. o Does not support Local Handset. 4.4. Rockwell o I don't have an encoder/decoder for any of the compressions used by Rockwell based modems. This means that you cannot play them to the Amiga or convert IFF files to a voice file. I hope to find some source code to alleviate this problem. Fortunately, you can play to the Internal Speaker or the Local Handset. 5. AVM UserInterface -------------------- AVMUI is the AVM UserInterface. It communicates via ARexx with the AVM Server, which is the program that manages the modem. 5.1. AVMUI Window The AVMUI window has three major sections: Mailbox, Caller ID, and Tracer. The Mailbox section is always shown. The Caller ID and the Tracer sections can be hidden from view. When you first install avmNfax, you will notice that neither the Caller ID nor the Tracer sections are shown. 5.1.1. Mailbox Section The Mailbox Section gives you access to incoming messages/faxes and outgoing messages/faxes. 5.1.1.1. Mailbox selector At the top of this section is a selector that allows you to choose to view: o "In" mailbox -- this is where incoming messages can be found o "In Arc" mailbox -- this is where incoming messages get stored when they are archived o "Out" mailbox -- this is where scheduled outgoing messages can be accessed o "Out Arc" mailbox -- this is where outgoing messages get stored when they are archived 5.1.1.2. Message list Below the selector is a list of messages. If you double-click on the message in this list, it will be played or viewed, depending on whether it is a voice or a fax message. You can select a message by clicking on its entry. You can select multiple messages (for example, if you want to delete or play multiple messages) by clicking and dragging on their entries. 5.1.1.3. Comment gadget Below the list is a Comment gadget that allows you to attach comments to individual messages. You should select a message from the list above, and then type in your comment. After typing, you should press the Return key to get the comment saved. When you select a message with a comment, you will see it in that gadget. 5.1.1.4. Time & Next Event information boxes If you are viewing the "Out" mailbox, then you will see two information boxes below the Comment gadget. The left-most information gadget shows the current time. The gadget to its right, which is named "Next Event", shows the time when the next outgoing message is scheduled to be delivered. 5.1.1.5. Action buttons Depending on which mailbox you're looking at, you will see some buttons and and checkboxes which apply to the selected entries in the message list. o Play/View button -- this plays or views the message that is selected. If there are multiple messages selected, they are played/viewed in succession. Double-clicking on a message in the message list is equivalent to selecting it and then pressing this button. o Select All button -- this selects all the messages in the message list. o Reply button -- this creates a new outgoing message in reply to the message that is currently selected. o Send button -- this creates a new outgoing message that contains the message. This can also be called forwarding the message. o Delete button -- this deletes the selected messages. o Archive button -- this archives the selected messages. If the message is an incoming message, it is placed in the "In Arc" mailbox. If it is an outgoing message, it is placed in the "Out Arc" mailbox. o Quiet checkbox -- this makes the AVM UserInterface shut up. Normally, when there are new messages, it will tell you. Another way to make it shut up is to play/view one of the messages. o Stop button -- this stops playing/viewing the current message. If there were multiple entries selected, this will cause the next entry to be played/viewed. o Stop All button -- this stops playing/viewing the current message. It also stops any new messages from being played/viewed. This is only useful if you selected multiple entries to be played/viewed and you wanted to stop listening/viewing the rest of them. o Send Now button -- this forces the scheduler to process the currently selected message. o Edit button -- this opens up an AVM Edit Scheduler Entry window. This window allows you to change things like the telephone number where the voice or fax should be sent, when it should be sent, the number of retries, etc. o Send No Dial button -- this forces the scheduler to process the currently selected message, but will not make it dial. You have to manually dial the destination before clicking on this button. This is useful if you want to send a fax to some foreign country, but have to go through an operator first. Once you have contacted the foreign fax number, you can click on this button. o New Entry button -- this creates a new scheduler entry. o Scheduler checkbox -- this enables or disables the scheduler. 5.1.1.6. Status information box Below the buttons is a Status line, which usually shows what the AVM UserInterface is doing. For example, when you play/view a message, this Status line would display something like "Playing/viewing". 5.1.1.7. Server Action icons Below the Status line is a set of graphical icons. These icons instruct the AVM Server to perform an action. o Stop (encircled exclamation point) -- tells the AVM Server to stop whatever action it is doing. o Answer as fax (paper with the word "fax" written below it) -- tells the AVM Server to answer the phone as an incoming fax. o Answer as data ("101" and "110" below it) -- tells the AVM Server to answer the phone as an incoming data call. o Answer as voice (mouth) -- tells the AVM Server to answer the phone as an incoming voice call. o Record conversation (cassette tape) -- tells the AVM Server to record the current conversation. 5.1.1.8. Server status information box To the right of the Server Action icons is a status information box that shows what the AVM Server is currently doing. When the AVM Server is working properly and is not currently handling a call, it should say "Waiting for a call...". 5.1.2. Caller ID Section This section displays any caller-id information. This is really only useful if you have caller-id enabled. This is a service that you usually pay for and is provided to you by your local telephone company. 5.1.2.1. Clear button -- this clears the list of callers. 5.1.2.2. Save button -- this saves the list of callers to a file called ram:cidlogger.save. 5.1.2.3. Add to Phonebook button -- this enters the selected entries in the list into the phonebook. 5.1.3. Tracer Section This section displays debugging information that is sent out by the AVM Server, EFax, and some of the ARexx scripts that make avmNfax work. This section is automatically saved to ram:logger.save after a certain number of lines have been displayed. Or, you can force it to save what is in the list by clicking on the Save button. Note that this information is very important to me when you have problems. I can usually track down problems in your configuration if you send me ram:logger.save. 5.1.3.1. Clear button -- this clears the debugging information stored in the list. 5.1.3.2. Save button -- this stores what is in the list into ram:logger.save. It then clears the list. 5.1.4. AVMUI Menus 5.1.4.1. File 5.1.4.1.1. About... Opens up a window to show you information about avmNfax, such as the author, and where to get technical support. 5.1.4.1.2. Print High avmNfax includes a printer driver that allows you to print from your favorite word processor to generate a fax to be sent out. Use this menu item to create a fax in "fine" mode. This is the best output supported by avmNfax. Each page is 1728x2288 pixels. A window will open up called AVM FaxPrinter. At this point, you can print a document from your word processor. After printing, a new entry in the "Out" mailbox will be created. You can double-click this entry to view what will be sent out. Alternatively, you can select it, and click on the Edit button to edit things like the telephone number where the fax file should be sent, when it should be sent, the number of retries before giving up, etc. If you want to send it immediately, you should Edit the entry, type in a telephone number, click on Done in the AVM Edit Scheduler Entry window, then click on the Send Now button in the "Out" mailbox section. If you want to send it, but manually dial a number, then dial your number using the telephone handset. As soon as the fax on the other end answers, click on the Send No Dial button in the "Out" mailbox section. 5.1.4.1.3. Print Low This is similar to Print High, except it will prepare avmNfax's printer driver to generate a "standard" fax. Each page will be 1728x1144 pixels. 5.1.4.1.4. Print Printer This turns off the fax printer driver. Use this when you want the output of your word processor to go to the actual printer instead of the fax printer driver. 5.1.4.1.5. Quit UserInterface This just quits the UserInterface program. The AVM Server will still be running in the background to answer your phone. 5.1.4.1.6. Quit All This quits all avmNfax related programs, including the AVM Server. Closing the close gadget of the AVM UserInterface does the same thing as this menu item. 5.1.4.2. Configure... 5.1.4.2.1. Play to o Amiga This option is available only if I have a decoder for the compression you are using with your modem. This option will first convert the voice file into an IFF file called avmtemp:temp.iff and then play it using "DSound". Note that I cache the last played file so that you can keep playing it without going through the conversion process. The ARexx script activated by this option is called playamiga.avm. You can modify this script if you would like to use a different player other than DSound. o AmigaDirect This option is available only if I have a decoder for the compression you are using with your modem. This option plays a voice file while it is decoding it. This results in a small delay from the time you press play to the time it actually plays, unlike when using the `Amiga' option, which converts the whole voice file first before playing it. Note that you can only use this option if you have a fast Amiga and a fast decoder. Currently, the decoder for the LineLink modem is too slow to use with this option. Try it out on your system to see if it's fast enough. If it is, you should use this option over anything else. o TelephoneLine This option allows you to play voice files through the telephone line. To use this option, you should first remove the dial tone. You can do this by pressing a few touch tone keys. Or, you can pick up the phone and wait for the telephone company to give up on you. o InternalSpeaker This will play voice files through the modem's internal speaker. The LineLink doesn't support this. o LocalHandset This plays to the telephone hooked up to the back of the modem. This will not work on LineLinks, the Zyxel 1496 series modems, and some Rockwell chipset modems. o IFF This option is available only if I have a decoder for the compression you are using with your modem. This will actually perform a conversion from the voice file to an iff file. In this version, the output IFF file is avmtemp:save.iff. A future version will allow you to pick the name of the IFF file. 5.1.4.2.2. Record from o Amiga This option is available only if I have an encoder for the compression you are using with your modem. This option will activate the rexx script recordamiga.avm. This script calls AGMSRecordSoundPS3 or AGMSRecordSound, depending on how you installed avmNfax. It calls the digitizing software in such a way that the output is avmtemp:temp.iff. This IFF file is then converted into the appropriate voice file by a converter. o TelephoneLine This allows you to record your messages using the telephone line. The only way to get this to work is to pick up the phone and get rid of that dial tone somehow. As with `Play to', you can do this by entering a few touch tone keys. Unfortunately, on some systems, after a while, you'll get the annoying phone company message to put down the phone. You could wait this out until the phone company gives you just silence. What I do is to wait for this silence and record all the messages I need to in one session. o ExternalMic This option only works with the ZyXEL modems and the Rockwell based modems. o Rockwell Some Rockwell based modems have a jack which allows you to plug an external microphone in. Use this option to record using that. o ZyXEL 1496 series modems Warning, DO NOT use this option if the modem is still plugged into the phone line. To record with this option, disconnect the modem from the phone line, plug in the handset (some telephones have a handset which plugs into the actual phone) into the "line" jack of the modem, and speak into the ear part of the handset (not where you usually talk into). The reason you should not plug the modem into the phone line when using this option is that the modem amplifies the signal. If the modem is plugged into the telephone line, the line signal would be amplified and could destroy your modem's internal circuitry. o ZyXEL Elite series modems These modems have a jack where you can plug in an external microphone. o LocalHandset This only works with most Rockwell based modems and the Zyxel Elite series modems. This option lets you record from the telephone plugged into the back of the modem. This works rather nicely. You don't have to kill any dial tones or anything. You can just start recording. o IFF This is similar to the Amiga option, except it doesn't actually call the digitizing software. If you have the rexxreqtools.library and the reqtools.library, it will ask you for a filename to convert. Otherwise, it assumes the file is stored in avmtemp:save.iff. 5.1.4.2.3. Default server If you have multiple servers, the one enabled in this menu item is the one that will be used for the actions in the Server Control/Default menu. It will also be the one used when playing or recording through the modem. It will also be the one used by the scheduler to send out voice or fax files. 5.1.4.2.4. Servers... This opens up a Choose Server window. Double-click on the server that you want to reconfigure. Things that you can change include the fax id, the voice compression, the maximum record length, the serial device, the unit number, etc. Note: You should use Kill Server first, then configure it, then use Start Server. If you do not, then the configuration will not take effect until you reboot. The reason for this is that the AVM Server only loads its configuration at start-up. 5.1.4.2.5. Mailboxes... This opens up a Choose Mailbox window. Double-click on the mailbox name that you want to reconfigure. Things that you can change include the mailbox's alias, whether it is visible in the "In" box, etc. 5.1.4.2.6. Voice prompts... This opens up an AVM Player window. From this window, you can change what is recorded in the voice prompts. 5.1.4.2.7. Phonebook... This opens up an AVM PhoneBook window. You can add, delete, and edit entries in AVM's phonebook from that window. 5.1.4.2.8. UI & others... This opens up a Configure User Interface window. From that window, you can configure certain aspects of the user interface, such as whether to show the Tracer Section and/or the CallerID Section, what the Time/date format for the lists should be, which fields are shown in the In, In Arc, Out, and Out Arc mailboxes, etc. 5.1.4.2.9. Scripts... This runs the AVM Programmer. This allows you to customize the AVM scripts. 5.1.4.3. Server Control This allows you to control the AVM Server. 5.1.4.3.1. Default All the actions here will affect the AVM Server that is selected as the `Default server'. 5.1.4.3.1.1. Stop Action Tells the AVM Server to stop whatever it is doing. 5.1.4.3.1.2. Fax Answer Tells the AVM Server to answer the phone as an incoming fax. 5.1.4.3.1.3. Data Answer Tells the AVM Server to answer the phone as an incoming data call. 5.1.4.1.4. Voice Answer Tells the AVM Server to answer the phone as an incoming voice call. 5.1.4.3.1.5. Record Conversation Tells the AVM Server to record the current conversation. 5.1.4.3.1.6. Close serial port Tells the AVM Server to close the serial port. Use this when you want to use any program that needs exclusive use of the serial port. 5.1.4.3.1.7. Open serial port Tells the AVM Server to open the serial port and start listening to it. 5.1.4.3.1.8. Unlisten Tells the AVM Server to stop listening to the serial port. Use this when you want to use a program that can use the serial port in "shared" mode. 5.1.4.3.1.9. Listen Tells the AVM Server to start listening to the serial port. This instructs it to start waiting for calls. 5.1.4.3.1.10. Kill Server Tells the AVM Server to exit. 5.1.4.3.1.11. Start Server Starts up the AVM Server. 5.2. AVM FaxPrinter Window There are two options that affect printing to the printer driver. You should try out the default and see if the fax printer driver generates the same number of pages that you tried to print. If it doesn't, then that's when you should start playing around with the two options described below. 5.2.1. End Page on Render Close This causes the fax printer drive to start a new page when it receives a "render close" message from your word processor. 5.2.2. End Page on FormFeed This causes the fax printer driver to start a new page when it receives a form feed from the word processor. 5.3. Choose Server Window This window allows you to select which AVM Server you want to configure. Double-click on an entry or select one of the entries and click on the Configure button. 5.4. Configure Server Window An AVM Server can be configured through five sections selected by the selector at the top of the Configure Server window. 5.4.1. Common 5.4.1.1.. ARexx Port Name This is the name of the ARexx port of the server. You should not include any spaces in the name. 5.4.1.2. Serial Port This is the device name of the port that the modem is hooked up to. 5.4.1.3. Unit Number This is the unit number of the port that the modem is hooked up to. 5.4.1.4. Rings with messages This is the number of rings required to be seen by the AVM Server before picking up the phone *when* there are messages in any of the "In" mailboxes. 5.4.1.5. Rings without messages This is the number of rings required to be seen by the AVM Server before picking up the phone when there are no messages in any of the "In" mailboxes. 5.4.1.6. Silent Answer rings If the phone stops ringing before the AVM Server answers the phone and the number of rings seen is greater than or equal to this value, then the Silent Answer feature is activated. This means that the AVM Server will answer the phone and listen in on your conversation. o If you press 2 or it hears a fax CNG tone, it will receive the fax. o If you press 5 or it hears a data tone, it will try to connect in data mode. o If you press 1, it will record your conversation. o If you press *, it will stop listening in on your conversation. 5.4.1.7. Command Pause This is the number of tenths of seconds that the AVM Server & EFax will pause before sending another AT command to the modem. 5.4.1.8. Use OwnDevUnit This instructs the AVM Server to use OwnDevUnit. This allows AVM to coexist with other programs that use this form of serial port locking mechanism. 5.4.1.9. Use CallerID o None - use this if you don't have a modem capable of doing CallerID, or you don't have the CallerID service activated on your phone line. o Name - use this if you have a modem capable of doing CallerID, and you have the CallerID service activated, and the service can send you the caller's name. o Number - use this if you have a modem capable of doing CallerID, and you have the CallerID service activated, and the service does not send you the caller's name. 5.4.1.10. Modem Type There are three types of modems that are supported. This option selects one of the three (ZyXEL, Dolphin, LineLink, NoVoice). People without a voice capable mode who want to use EFax should select NoVoice. 5.4.1.11. Command Init This is the string (usually an AT command) that is sent to the modem prior to entering voice mode. This is usually AT&F or ATZ to reset the modem. You can also use this setup string to enable distinctive ring (see your modem's manual on how to accomplish that). 5.4.1.12. Tone Dial This is the method to be used when dialing (enable this gadget for touch tone or disable it for pulse) a number. 5.4.1.13. Tracer Verbosity Don't play with this. It turns on various levels of debugging. The current settings are good. 5.4.2. Voice 5.4.2.1. Voice Init This is the string that is sent to the modem after entering voice mode. You can use this string to add or modify voice parameters that were not handled by the program. For example, you can use this string to adjust the voice recording gain of the LineLink modem (use AT#VG=x, where x is the gain). Consult your modem's manual for settings that aren't handled by the AVM Server. 5.4.2.2. Compression Your modem compresses voice data to reduce the amount of storage needed for the resulting voice files. Some compressions are better than others. ZyXEL modem users should choose between ADPCM2, ADPCM3, ADPCM3b, ADPCM4, CELP, ADPCM2SYNC, ADPCM3SYNC, ADPCM3bSYNC, or ADPCM4SYNC. MTD Dolphin users have only one compression, MTDADPCM2. LineLink users should choose between LLCVSD7200, LLSPC8000, or LLSPC9600. Rockwell users should choose between ROCKADPCM2_7200, ROCKADPCM3_7200, or ROCKADPCM4_7200. People without a voice-capable modem who want to use EFax should select NOVOICE. 5.4.2.3. Max rec len (secs) This is the maximum number of seconds that a recording is allowed to be. This timeout is there because sometimes, the modem doesn't detect hangups correctly. Without this timeout, you could easily fill up your hard disk. 5.4.2.4. Max Wait For Answer This is the number of seconds AVM will wait for the phone being dialed to be picked up. 5.4.2.5. Silence Interval This is the number 10ths of seconds of silence required before the modem reports to AVM that it has heard silence. The default value is 70, which translates to 7 seconds. 5.4.2.6. Silence threshold This is an adjustable parameter for telling the modem what to treat as silence. Note that the LineLink modem has two settings only (16 or 17). 5.4.2.7. Ringback Goes Away This parameter is for voice dial-out only. This tells the modem how long to wait for the ring signal to go away. When this timeout is reached, the modem assumes that somebody has answered the phone. This parameter is expressed in tenths of seconds. 5.4.2.8. Ringback Never Appears This parameter is for voice dial-out only. This tells the modem how long to wait for a ring signal to appear right after dialing. If a ring never appears before this timeout is reached, then the modem assumes that somebody has answered the phone. This parameter is expressed in tenths of seconds. 5.4.2.9. AVMTemp for Record Certain computer setups cannot handle receiving serial data and writing to the hard disk at the same time (you tend to lose characters or get serial port errors). If this is the case, or if you want to avoid writing to the hard disk in small increments, select this option. This will write the voice file to AVMTemp: (which is usually RAM: ) first. When the recording is done, it is transferred to the hard disk. 5.4.2.10. AVMTemp for Play Certain setups cannot handle reading from the hard disk and writing to the serial port. Check this option if you have trouble playing voice files directly from the hard drive. 5.4.3. Fax 5.4.3.1. Fax ID This is where you should enter your telephone number. 5.4.3.2. Fax Init String This is the string that is sent to the modem right before starting up fax mode. You really shouldn't change this unless the default setting doesn't work for you. 5.4.3.3. FaxModem Type This is the type of fax modem that you have. Select Class 2 if your modem supports that protocol. Otherwise, select Class 1. NOTE: You really should re-install avmNfax if you're switching between faxmodem types because there are other settings that only make sense for certain faxmodem types. 5.4.3.4. Reverse TX Bit Order Click on this if you want to reverse the transmitted data bit order. Don't play with this unless you know what you're doing. 5.4.3.5. Reverse RX Bit Order Click on this if you want to reverse the received data bit order. Don't play with this unless you know what you're doing. 5.4.3.6. Start RX with XON Check your modem manual to see if a DC1 (XON) or a DC2 is required to start receiving data. Again, don't play with this unless you know what you're doing. 5.4.3.7. Max Page Errors This is the number of errors that would have to be received before EFax will ask for a retransmission. 5.4.3.8. Fax Capability The second value tells how fast your fax modem is. Set it to 5 if you have a 14.4K fax capable modem. Otherwise, set it to 3. Don't touch the other values. If you have a 14.4K faxmodem, this should read: 1,5,0,2,0,0,0,0. Otherwise, it should read: 1,3,0,2,0,0,0,0. 5.4.3.9. Fax Hardware Handshaking This is the handshaking between the fax modem and your computer. Aside from enabling or disabling this switch, you should also include the necessary command in the Fax Init String to enable the handshaking that your modem requires. 5.4.3.10. Inits These are commands that will be sent to your modem before the modem is told to answer or dial. 5.4.3.11. Resets These are commands that will be sent to your modem after receiving or transmitting a fax. 5.4.4. Scripts 5.4.4.1. Voice Call default This is the name of the ARexx script that gets called when the server is instructed to pick up the line and no ring was received or an unqualified RING was received (unqualified RING == Type 1 distinctive ring). To enable distinctive ring or CID, look at the section entitled `Caller ID and Distinctive Ring'. Note that it is possible to use the distinctive ring feature even though your modem doesn't support it. Results vary with modems. If the modem eats the rings if they don't occur 4 seconds apart, then you're out of luck. If the modem reports double rings or triple rings within a span of 2 seconds, then AVM will be able to detect the distinctive ring. You can only use this feature *if* `Rings with messages' is greater than 1. If you have distinctive ring set up, you can put "answerfax", "answerdata", or "answervoice" in any of the Voice Call scripts. So, if somebody calls a number causing a short-short distinctive ring to occur and you put "answerfax" in the `Voice Call Ring 1' field, then he will always receive a fax tone. 5.4.4.2. Fax Call This is the ARexx script that gets called to handle a fax call. The default should be "handlefax". 5.4.4.3. Data Call This is the ARexx script that gets called to handle a data call. The default should be "handledata". 5.4.4.4. Silent Answer This is the ARexx script that gets called if the phone stops ringing before reaching the number of rings required for AVM to pick up the line *and* the number of rings received is greater than or equal to the number in `Silent Answer rings'. 5.4.4.5. Record Conversation (Script) Script to handle recording a conversation. 5.4.4.6. Voice Call Ring 1 Script called when the modem receives a type 2 ring. 5.4.4.7. Voice Call Ring 2 Script called when the modem receives a type 3 ring. 5.4.4.8. Voice Call Ring 3 Script called when the modem receives a type 4 ring. 5.4.4.9. Voice Call Ring 4 This is currently not used. 5.4.4.10. Ring Script This script gets called right after the modem receives a ring from the modem. This script gets called with the variables "RINGS", "DISTINCTIVERING", "CIDNAME", and "CIDNUMBER" set. If you type in "AlertRing" into this field, the file "avmrexx:alertring.avm" gets run on each ring (except the last ring before AVM decides to answer the phone). At this time, "AlertRing" uses DSound to play an IFF file called "avm:ring.iff". Note that it only plays the ring between the hours of 9am and 11pm. This is what I currently use so that people can call up my system late at night to log onto my system. This way, I don't hear the rings at all. Another use of this Ring Script is to announce the name of the caller or his telephone number. This script gets called with CIDNAME and CIDNUMBER for this purpose. The type of distinctive ring is placed in the variable DISTINCTIVERING. The number of rings received so far is placed in the variable RINGS. Yet another use of this script is to log information to some file (or another program) that a call was received at a certain time. This is useful if you just want to know if your phone rang while you were out. 5.4.5. Advanced 5.4.5.1. Advanced Flags These flags help to configure the AVM Server. You really shouldn't have to touch these flags. Contact me if you are considering changing any of the default settings. ***they are set to the proper values*** 5.4.5.2. Enable or Disable Flag This enables or disables a particular flag. If a "#" symbol precedes the name of the flag, it is disabled. ----------------------------------------------------------------------- NOTE: ANYTHING BELOW THIS LINE IS OLD STUFF. I HAVE NOT HAD TIME TO REWRITE IT. YOU MAY WANT TO LOOK IT OVER THOUGH. ----------------------------------------------------------------------- 14. AVM Server -------------- AVM is the server that runs in the background. It has no user interface and can only be run from the CLI. When `AVM UserInterface' starts, it runs all the servers it knows about. If you wish to run the AVM server manually, its command line interface template is: avm servername/a where servername is the ARexx port name of the server. Remember that you should probably use the "run" command when running the AVM server manually, as in: run >nil: