This commit is contained in:
Bobbi Webber-Manners 2020-10-29 20:46:05 -04:00
parent b7167d9199
commit 0f211764c7
5 changed files with 53 additions and 11 deletions

View File

@ -12,11 +12,11 @@
When `EDIT.SYSTEM` invokes `ATTACHER.SYSTEM`, the following operations occur:
- The outgoing email message is loaded from `OUTBOX` and copied to a temporary file. While copying, additional email headers are appended to indicate that this is a MIME multi-part message.
- The outgoing email message is loaded from `OUTBOX` and copied to a temporary file. While copying, additional email headers are appended to indicate that this is a MIME multi-part message.
- A `plain/text` MIME section header is added to the email body (which becomes the first section in the multi-part MIME document.)
- `ATTACHER.SYSTEM` prompts the user to enter the filename of a file to be attached. This may be an unqualified filename (which will look in the directory the emai//er software is installed in), or a fully-qualified ProDOS pathname, such as `/H1/PATH/TO/MY/FILE.BIN`.
- For each filename, the file is loaded from disk and encoded using Base64. A MIME section is created in the outgoing email and the Base64-encoded file data is appended.
- After all the desired files have been added, enter an empty line to finish adding files.
//////////// - `ATTACHER.SYSTEM` prompts the user to enter the filename of a file to be attached. This may be an unqualified filename (which will look in the directory the emai//er software is installed in), or a fully-qualified ProDOS pathname, such as `/H1/PATH/TO/MY/FILE.BIN`.
- For each filename, the file is loaded from disk and encoded using Base64. A MIME section is created in the outgoing email and the Base64-encoded file data is appended.
/////////// - After all the desired files have been added, enter an empty line to finish adding files.
- `ATTACHER.SYSTEM` will terminate the MIME document, erase the original email file from `OUTBOX` and rename the temporary file to replace the original.
- `ATTACHER.SYSTEM` will reload `EMAIL.SYSTEM` once it is done.

View File

@ -14,13 +14,15 @@
`NNTP65.SYSTEM` is a Network News Transport Protocol (NNTP) client for the Apple II. It requires an Uthernet-II ethernet card and will not work with other interfaces without modification, because it uses the W5100 hardware TCP/IP stack.
`NNTP65.SYSTEM` handles downloading of news articles. Transmission is handled by [`NNTP65UP.SYSTEM`](README-nntp65up.md).
Before running `NNTP65.SYSTEM` for the first time, be sure you have performed the basic Emai//er setup described [here](README-emailler-setup.md) and have also performed the initialization specific to Usenet discussed in [this page](README-usenet-setup.md). In particular, the `NEWS.SPOOL` directory must have been created, otherwise `NNTP65.SYSTEM` will be unable to download news articles.
`NNTP65.SYSTEM` runs without any user interaction and performs the following tasks:
- Detect Uthernet-II
- Obtain IP address using DHCP
- Connect to NNTP server using parameters from first three lines of `NEWS.CFG`. (`AUTHINFO USER` and `AUTHINFO PASS` commands)
- Detect Uthernet-II.
- Obtain IP address using DHCP.
- Connect to NNTP server using parameters from first three lines of `NEWS.CFG`. (`AUTHINFO USER` and `AUTHINFO PASS` commands).
- For each newsgroup listed in `NEWSGROUPS.CFG`:
- Issue `GROUP` command to select the newsgroup.
- Parse the respond from the server which indicates the message number of the first and last messages available in the newsgroup.
@ -34,6 +36,8 @@ Before running `NNTP65.SYSTEM` for the first time, be sure you have performed th
- Copy the messages just retrieved from the `NEWS.SPOOL` directory to the mailbox for the newsgroup in question.
- Once all newsgroups have been retrieved, rename `NEWSGROUPS.NEW` to replace `NEWSGROUPS.CFG`.
- Issue the `QUIT` command to disconnect from the NNTP server.
- If `NNTP65.SYSTEM` was invoked from `EMAIL.SYSTEM`, load and run `EMAIL.SYSTEM`. Otherwise quit t
o ProDOS.
[Back to Main emai//er Docs](README-emailler.md#detailed-documentation-for-usenet-functions)

View File

@ -8,5 +8,36 @@
*Run using `Closed Apple`-`S` in `EMAIL.SYSTEM`*
<p align="center"><img src="img/NNTP65UP.jpg" alt="SMTP65" height="400px"></p>
`NNTP65UP.SYSTEM` is a Network News Transport Protocol (NNTP) client for the Apple II. It requires an Uthernet-II ethernet card and will not work with other interfaces without modification, because it uses the W5100 hardware TCP/IP stack.
`NNTP65UP.SYSTEM` handles transmission of news articles to the NNTP server. Reception of news articles is handled by [`NNTP65.SYSTEM`](README-nntp65.md).
Before running `NNTP65UP.SYSTEM` for the first time, be sure to have created the `NEWS.SENT` mailbox. This must be a 'proper' mailbox, not just a directory. You may create a mailbox using the `N` (new mailbox) command in `EMAIL.SYSTEM`.
`NNTP65UP.SYSTEM` performs the following tasks:
- Detect Uthernet-II.
- Obtain IP address using DHCP.
- Open the `NEWS.OUTBOX` directory.
- For each file in `NEWS.OUTBOX`:
- If file name is `EMAIL.DB` or `NEXT.EMAIL` skip to next.
- Open the file and search for the headers "Newsgroups:" and "Subject:".
- Display the newgroup and subject information and prompt the user as follows: `S)end message | H)old message in NEWS.OUTBOX | D)elete message from NEWS.OUTBOX`.
- If the user chooses `D` then delete the article from `NEWS.OUTBOX` and contine to the next message (if any).
- If the user chooses `H` then retain the article in `NEWS.OUTBOX` and contine to the next message (if any).
- If the user chooses `S` then proceed to send the message to the NNTP server, as follows:
- If not already connected, connect to NNTP server. Check the return code from the server to make sure posting is allowed.
- Authenticate with the NNTP server using parameters from first three lines of `NEWS.CFG`. (`AUTHINFO USER` and `AUTHINFO PASS` commands)
- Issue the `POST` command to the NNTP server to start posting an article.
- Send the contents of the file to the NNTP server.
- Check the return code from the NNTP server indicates that transmission was successful.
- Close the file.
- Copy the article to the `NEWS.SENT` mailbox.
- Remove the article from the `NEWS.OUTBOX` directory.
- Issue `QUIT` command to NNTP server to disconnect.
- If `NNTP65UP.SYSTEM` was invoked from `EMAIL.SYSTEM`, load and run `EMAIL.SYSTEM`. Otherwise quit to ProDOS.
[Back to Main emai//er Docs](README-emailler.md#detailed-documentation-for-usenet-functions)

View File

@ -16,10 +16,10 @@ Before running `POP65.SYSTEM` for the first time, be sure you have created the e
`POP65.SYSTEM` runs without any user interaction and performs the following tasks:
- Detect Uthernet-II
- Obtain IP address using DHCP
- Connect to POP3 server using parameters from first three lines of `EMAIL.CFG`. (`USER` and `PASS` commands)
- Enquire how many email messages are waiting. (`STAT` command)
- Detect Uthernet-II.
- Obtain IP address using DHCP.
- Connect to POP3 server using parameters from first three lines of `EMAIL.CFG`. (`USER` and `PASS` commands).
- Enquire how many email messages are waiting. (`STAT` command).
- Download each email in turn (`RETR` command) and store it in the `SPOOL` directory.
- If configured to delete messages on the POP3 server, messages are deleted after successful download (`DELE` command)
- Once all messages have been downloaded, disconnect from the POP3 server (`QUIT` command)
@ -34,6 +34,9 @@ Before running `POP65.SYSTEM` for the first time, be sure you have created the e
- Store all of the information obtained from scanning the message in `INBOX/EMAIL.DB`.
- Update `INBOX/EMAIL.nn`, incrementing the number by one.
- Iterate until all messages in `SPOOL` are ingested into `INBOX`.
- If `POP65.SYSTEM` was invoked from `EMAIL.SYSTEM`, load and run `EMAIL.SYSTEM`. Otherwise quit t
o ProDOS.
[Back to Main emai//er Docs](README-emailler.md#detailed-documentation-for-email-functions)

View File

@ -35,6 +35,10 @@ Before running `SMTP65.SYSTEM` for the first time, be sure to have created the `
- If the message was successfully sent, copy it to the `SENT` mailbox.
- Remove the sent message from `OUTBOX`.
- Iterate until all messages in `OUTBOX` have been sent, and copied to `SENT`. Rejected messages are left in `OUTBOX` where they may be edited and retransmitted.
- Issue `QUIT` command to SMTP server to disconnect.
- If `SMTP65.SYSTEM` was invoked from `EMAIL.SYSTEM`, load and run `EMAIL.SYSTEM`. Otherwise quit t
o ProDOS.
[Back to Main emai//er Docs](README-emailler.md#detailed-documentation-for-email-functions)