• Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

AltME groups: search

Help · search scripts · search articles · search mailing list

results summary

worldhits
r4wp60
r3wp694
total:754

results window for this page: [start: 101 end: 200]

world-name: r3wp

Group: !AltME ... Discussion about AltME [web-public]
[unknown: 9]:
29-Mar-2005
I think of communication software a little differently (in general), 
so I will share this.  

Read states

 (like the Red we are talking about) are a very interesting issue. 
  


Most computer software does a very poor job of replicating empirical 
or visceral conversations.  Email for example has a method of describing 
the "direction" you are speaking.  TO: Bob, CC: Carry.  Where the 
TO: indicates you are speaking directly to Bob, and that Carry is 
standing somewhere to the left or right of you.  BCC is someone hiding 
behind you. 


Email could have an interface where you first pick the people in 
the "room." And then use something like a 2D interface to move the 
listeners around a symbolic version of you.  This would be both silly, 
time consuming, and somewhat confusing, but you get the point.


What you have read and what you have not read though has a similar 
analogy.   There are thousands of sub states and markers people use 
to sort things they have read, will read, need to read again, need 
to respond to, etc.


In Box, Out Box, Papers upside down, putting papers you need to sign 
under your car keys on the floor in front of the door leading to 
the car, etc.


I have one friend who re-wrote some open source email program to 
have some huge number of states and then some simple filters.  It 
works VERY WELL, if you know his system.  He never forgets anything.


So the current model AltME has (right now) is a very simple interface. 
 Tantimount to "Have I ever seen this before."


We are playing with some other models in Qtask, which may get adopted 
into AltME.  I'm working on a system I call Venn Chat.  Some features 
include:

Have I read this before? (like AltME)
Mark this:  

Follow up (add to a list of messages you want to think about more)
Note (All should read this when they come into the group)
All Must Read (converts it into an AltME-like alert)


Convert to a task (and keep the context of the chat in place, this 
is opens up a whole other area)
Branch (something like forum threading)
Re-file (move from one group to another)

Re-post (copy to another group, at the same time, similar to branch).
Trigger (tell me when someone has finally read this).
Status (tell me who has read this so far).
Attach (files, links, etc)
Brock:
3-Apr-2005
The above is handled as an email address (likely due to the fact 
there is an @ in the address).  Not sure if this is Rebol or AltME 
- haven't checked yet.
Sunanda:
14-Apr-2005
:-)  Email may, as Carl says, be dead.

But these problems show that the alternatives are not yet out of 
the post-natal incubator.
Ingo:
14-Apr-2005
Yup, I clearly see that, but then, I still like email ;-)
Sunanda:
9-Jul-2005
It always has been a big security hole -- a guest can delete groups 
and do all sorts of damage.


But right now, there is no way for someone new to join....unless 
they email an existing member and ask for details.
Sunanda:
11-Jul-2005
Security-wise: removing teh guest account is a great idea

Marketing-wise: not so sure....adds another barrier to joining the 
REBOl community.


How do people find out how to request to be pre-approved?  (One possible 
way is for rebol.net mirror t have a form that sends an email [if 
I can use the E word] to the adminstrator)
Graham:
11-Jul-2005
Hey Riechart, we need a way to feed messages automatically into AltME 
 - to allow an email feed to reach it.
Carl:
19-Sep-2005
I think there is an AltME module called AltEx that does that.... 
but currently only used for things like email gateway.  I think 2.0 
will add a lot more of those features.
Group: RAMBO ... The REBOL bug and enhancement database [web-public]
sqlab:
18-May-2005
[Cyphre | Gabriele]: Do you still need more information about the 
Win98 crash or is it solved?

If needed I can send an echoed trace log file to your email address.
Gabriele:
19-May-2005
about #3016: does it still apply? (PARSE and recursion limits have 
been changed much lately) could anyone provide me with an email that 
breaks the parser?
Brett:
19-May-2005
test-address-import: func [

 {Returns true if pass, false if discrepency and none if failed with 
 error.}
	limit [integer!] "Number of TO address to generate."
	/quiet "Does not display error."
	/local to-list eml sep msg obj
] [
	to-list: copy {} sep: ""
	repeat i limit [
		eml: to-email join "test-" [i "@test.com"]
		repend to-list [sep {"'} eml {'" <} eml {>}]
		if empty? sep [sep: {,^/	}]
	]

	msg: replace copy {Date: Thu, 12 Feb 2004 11:41:49 +0100
From: test <[test-:-test-:-com]>
MIME-Version: 1.0
To: TO_LIST
Subject: [REBOL] test message - edited copy of real message
Content-type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 8bit
Sender: [rebol-bounce-:-rebol-:-com]
Reply-to: [testing-:-testing-:-com]
Status:   


Test message.
} {TO_LIST} to-list

	either error? set/any 'result try [
		obj: import-email msg
		limit = length? obj/to
	][if not quiet [print mold disarm result] none][result]

]
Brett:
19-May-2005
This test generates a test email with the desired number of addresses 
then attempt to import it.
Gabriele:
20-May-2005
note that if you set esmtp-user to the word 'ask, it will ask you 
user name and password (on the console) the first time you send an 
email.
Allen:
27-May-2005
Gabriele re http://www.rebol.net/cgi-bin/rambo.r?id=-258&, perhaps 
can you contact  Giuseppe Chillemi by email to retest with 1.2.114 
.. (looks like he hasn't logged into altme since last december)
BrianH:
9-Jun-2005
I've written installers before, and you have my email address, so 
feel free. As it is, the new sandbox directory would make it relatively 
easy to make an external multiuser installer that would fake the 
current behavior well enough to fool View. I'll test the View no-install 
behavior to see if it works well enough to prevent View from undoing 
the work of an external installer.
Group: Core ... Discuss core issues [web-public]
Graham:
8-Mar-2005
I need to construct what is called a "triplet".  The triplet in greylisting 
parlance is a unique set of three facts about an email.
These are IP-address+smtp envelope from+smtp envelope to

The idea is that you construct a database of triplets from smtp clients. 
 If you have never seen such a triplet before, you send a smtp delay 
back to the client.  Most well constructed MTA's honor the delay 
and try again.  You set a block period .. from 10 seconds to 1 hour 
during which you do not accept any mail from that triplet.  Spamming 
engines generally ignore this delay, and just give up.  It's too 
expensive for them to log such delays and retry again.
Graham:
8-Mar-2005
So, I constructed the triplet without the last set of digits so that 
it will treat all email from the same subnet as orginating from the 
same address.
Graham:
9-Mar-2005
I want to find the mail server for a given email address...
Tomc:
9-Mar-2005
from the part agrer the @ in the email address I wouls think
Graham:
9-Mar-2005
I have an email ... [gchiu-:-compkarori-:-com] .. 
How would you get the MX record for that?
Graham:
12-Mar-2005
I guess since I'm not processing that many email, it doesn't have 
to be truly random.
Group: Script Library ... REBOL.org: Script library and Mailing list archive [web-public]
Graham:
22-Jul-2010
Sure Anton .. fix your email client !
Anton:
22-Jul-2010
I'm fairly sure it's not my email client (which is Thunderbird). 
I thought it was some problem with ecartis which we never got around 
to fixing.
Group: Parse ... Discussion of PARSE dialect [web-public]
Graham:
12-Mar-2005
I'm using these rules in my server side implemention to the top command


one-line-rule: [copy line thru {^/} ( if line = ".^/" [ line: join 
"." line ] write-client line)]

header-rule: [copy header thru {^/^/} (write-client header write-client 
)]

msg is the email message including header and body
lines is the number of lines requested by the TOP command

parse msg compose [ header-rule (lines) one-line-rule ]


Now, I can't check the parse syntax as rebol.com is down, but I seem 
to always get the whole email with my header-rule and not just the 
header.
Graham:
12-Mar-2005
The email is obtained by reading from a port in binary mode, so could 
this be due to the lack of line ending conversion ?
Graham:
20-Mar-2005
I've got this rule to parse email headers which only works some of 
the time.

				header-rule: [
					thru "^/Date:" copy m-date to newline |
					thru "^/From:" copy m-from to newline |
					thru "^/Subject:" copy m-subject to newline |
					thru "^/To:" copy m-to to newline |
					thru "^/Return-path: "
				]
				m-subject: m-date: m-from: m-to: none

				parse header [some header-rule]
Graham:
20-Mar-2005
no, these are the ones I display when reading an email ...
Graham:
20-Mar-2005
I need the "^/... as nowadays, there's email coming thru with authentication 
signatures that contain the headers in a block
Tomc:
20-Mar-2005
$1  has to whom the email is addressed
Tomc:
20-Mar-2005
in your example  having a rule more like 
header-rule: [
    "Date:" copy date-rule  |
    "From:" copy email-rule |
    "Subject:" copy some alpha-num  |
    "To:" copy email-rule |
    to newline
]

where email-rule only matched email addresses  
 would more taint like
MichaelAppelmans:
7-Jun-2005
getting the following error  when running Didec's delete email script 
against a mailbox with large number of emails (250+):internal limit 
reached: parse
Near: [parse data maillist
   addr-list]
Where: parse-mail-list
Gabriele:
7-Jun-2005
is the To: line very, very long? there's a recursion limit in the 
parser for the address list. since you are probably not interested 
in parsing the To: header, maybe you can disable it in import-email.
MichaelAppelmans:
9-Jun-2005
newby here: can anyone direct me to a sample of  code which matches 
a pattern over multiple text lines? I need to process a 5MB text 
file and remove all patterns of multiple consecutive email address 
es eg. [foo-:-my-:-com]; [foou-:-you-:-net] except the multiple email address 
string spans mulitple lines. Thanks for any pointers
MichaelAppelmans:
9-Jun-2005
and the multiple email address string occurs multiple times ;)
Group: MySQL ... [web-public]
Pekr:
6-Feb-2006
There is one email on ml, reporting still having problems with latest 
version - his name is Alain Goye, and he says that his error is not 
random, but deterministic, dunno what he means, Anton trying to find 
out more info ...
Group: Linux ... [web-public] group for linux REBOL users
Ingo:
18-Nov-2006
Well, you don't ... rebol does not support sending email using sendmail, 
but

if you have a version with command-shell support ( call ) you can 
probably create the command line to call sendmail yourself ... I 
don't know how to do this, though.
Graham:
11-Apr-2007
Often if you're running a script and you need to send an email, you 
can just use send.  But sometimes that doesn't work for various reasons 
.. like the internet connection being down.  So, I was wondering 
if it makes more sense to hand the email over the mail transport 
agent on your linux system.
btiffin:
14-Apr-2007
Things do seem to be getting better in email land.

My canada.com account I had delegated as the 'send spam here' as 
I got harvested when they changed to a new service.  Today, expecting 
to troll through the hundreds of viagra ads, I got none.

I haven't cleard the mailbox in a few weeks, and all I got was a 
job offer.  A real one.  This job was not for me, it was .Net related 
but no spam.  Hmmm.
Graham:
14-Apr-2007
I send my self faxes by email ... they all end up in the spam folder 
:(
Anton:
16-Apr-2007
A comment by a reader: "...I've grown accustomed to SimplyMEPIS for 
every day, basic desktop needs. I run plain Debian when I want to 
test out tons of software, but I've been sticking with SimplyMEPIS 
when all I'm doing is reading Email, browsing the Web, and listening 
to streaming audio. .."
Alan:
26-Jul-2007
enterprise versus joe sixpack is a big problem. I can understand 
the enterprise model to get into the Fortune 500 but then they have 
to have the joe model for the workers/users. For the Linix office 
worker, a browser/oo/few games/email/ is about all they need at work. 
At home add more games/Gimp/irc/torrent client/media apps and most 
will be happy. It's true those distros are out there but for joe 
sixpack, they are hard to find and most joes only know the big Linux 
names
btiffin:
13-Sep-2007
I use IceApe; Debian's SeaMonkey.  email, browser, chat, calendar 
app (I never use the composer, have Quanta for that)  Because it's 
a be everything suite it's not the best at anything, but it's functional 
for me.
Group: !Readmail ... a Rebol mail client [web-public]
PhilB:
7-Feb-2005
rebmail 4.8.0 & associated helptext has been released (07/02/2005) 
...

Changes Since 4.7.14

4.7.15  - Enhancement - Add name & email to substituion in reply 
text
4.7.16  - Bug Fix - Dont include name from Contacts list
4.7.17  - Bug Fix - Use From email address in Reply substitution

4.7.18  - Bug Fix - If no account is selected then display Alert 
when getting mail

4.7.19  - Enhancement - Process all picked acounts in Account Maintenance

4.7.20  - Enhancement - Request confirmation before deleting an account

4.7.21  - Bug Fix - If no Contacts exists program as failing on taking 
Contact menu item

4.7.22  - Enhancement - Process all picked acounts in Account Maintenance
4.7.23  - Enhancement - Make Contact Details a Dialog Box
4.7.24  - Enhancement - make new mail window title 'New Mail'
4.7.25  - Enhancement - Add no of days in search window
4.7.26  - Bug Fix - If password is blank then do not decrypt
4.8.0   - Enhancement - Update Version Number

rebmail.r can be found at .... http://www.upnaway.com/~philb/philip/pbmail/readmail.r

reabmail is also the following formats 

rip format at  .... http://www.upnaway.com/~philb/philip/pbmail/readmail.rip

zip format at  .... http://www.upnaway.com/~philb/philip/pbmail/readmail.zip


the archive containing rebmail.r & rebamail.html (rip = compressed 
self extracting rebol archive)
 
Any problems let me know.
Graham:
20-Feb-2005
Yes, leave on server .. like web based email.
PhilB:
25-Feb-2005
rebmail 4.9.6 & associated helptext has been released (25/02/2005) 
...

Changes Since 4.9.0
4.9.1   - In Prefs - make use of on/offline flag

4.9.2   - Bug Fix - locale - gi_101: 'Update location not found. 
Continue?'
4.9.3   - Bug Fix - Correctly indicate if email has an attachment
4.9.4   - Enhancement - Add Readmail.jpg to about Window
4.9.5   - Enhancement - Add positioner to Mail maintennce
4.9.6   - Bug Fix - fix error if position.prf didnt exist


rebmail.r can be found at .... http://www.upnaway.com/~philb/philip/pbmail/readmail.r

reabmail is also the following formats 

rip format at  .... http://www.upnaway.com/~philb/philip/pbmail/readmail.rip

zip format at  .... http://www.upnaway.com/~philb/philip/pbmail/readmail.zip


the archive containing rebmail.r & rebamail.html (rip = compressed 
self extracting rebol archive)
 
Any problems let me know.
PhilB:
17-May-2005
Hi Fabrice, can you send me an example email ?
PhilB:
22-May-2005
Fabrice ... 
1. do you mean who the email is addressed to?

2. In theory you could add a rule to to store the incoming messages 
into different  folders for each To address.

3. Do you mean the popup window that tells you the folders where 
the emails have been stored? If so we could add a preferences variable 
to not show the window when fatching multiple accounts?


I will be busy for the next week ... but then I have a weeks holiday, 
I shoud have time to do some updates then, let me know what is most 
urgent for you and I will draw up a list of priorities here.
PhilB:
31-May-2005
Unfortunately I cannot upload this as I am not at my home PC. But 
I can email anyone that wants the new version. Jut contact me here 
privately and I will email the latest Version (4.9.8).
PhilB:
17-Jun-2005
rebmail 4.10.11 & associated helptext has been released (18/06/2005) 
...

Changes Since 4.9.6
4.9.7   - Enhancement - Import emails" "Phil Bevan" 21/02/2005]

4.9.8   - Enhancement - Apply rules to a folder" "Phil Bevan" 30/05/2005]

4.9.9   - Bug Fix - Correct backdrop on getmail progress window" 
"Phil Bevan" 31/05/2005]

4.9.10  - Enhancement - decode ISO-8859-1 / ASCII-US encoded text" 
"Phil Bevan" 31/05/2005]

4.9.11  - Enhancement - allow Shift select to select multiple emails" 
"Phil Bevan" 01/06/2005]

4.9.12  - Bug Fix - Ensure download time is updated correcly" "Phil 
Bevan" 01/06/2005]
4.10.1  - Enhancement - Add options window
4.10.2  - Enhancement - Add rules maintenance
4.10.3  - Bug Fix - Remove Debugging info
4.10.4  - Bug Fix - Make Select Folder in Rules work
4.10.5  - Bug Fix - Apply send patch under View 1.3
4.10.6  - Bug Fix - Better Error trapping when applying fixes
4.10.7  - Bug Fix - Fix folder returned from unknown folder name

4.10.8  - Bug Fix - Do not try to copy email to itself when applying 
rules
4.10.9  - Enhancement - Add default inbox for incoming mail

4.10.10 - Bug Fix - Make Select Folder in Rules datila work for View 
1.2
4.10.11 - Bug Fix - Ensure preferences work on new install


rebmail.r can be found at .... http://www.upnaway.com/~philb/philip/pbmail/readmail.r

reabmail is also the following formats 

rip format at  .... http://www.upnaway.com/~philb/philip/pbmail/readmail.rip

zip format at  .... http://www.upnaway.com/~philb/philip/pbmail/readmail.zip


the archive containing rebmail.r & rebamail.html (rip = compressed 
self extracting rebol archive)
 
Any problems let me know.
PhilB:
28-Apr-2006
Rebmail was a project setup to create a Rebol mail client.  As far 
as I am aware, no code was ever written for it.


Through some confussion, my email client got labelled as Rebmail 
... the name of this Group being a good example .... (it was not 
created by me) ....  so readmail.r and readmail are what all the 
documentation refers to ......
Louis:
4-Sep-2006
Can !Readmail be used from a usb port drive, so that I can download 
my email from many different computers without needing to install?
Louis:
30-Oct-2006
The electricity just went off here, and I got zapped.  I've been 
answering email for the past 9 hours off line using the Eudora email 
client. I lost all of that work---none of my emails had been sent. 
That should not be possible. Every email should be written to the 
hard drive so it cannot be so easily lost. This is really hard to 
believe. Anyway, Phil, I am wanting to switch over to your software 
asap.
Pekr:
30-Oct-2006
what? Mozilla mailer, for ages, just by pressing save saves your 
email as an concept, to your HD of course. I can't believe any product 
would not do so. Maybe you just got corrupt indexes? I would delete 
them, and let Eudora to rebuild it (of course I know nothing about 
Eudora, so maybe it does not use indexes at all)
Louis:
30-Oct-2006
Ok, my email is there. BUT I'm using a version of Eudora that won't 
let me reindex my files. I have to pay to be able to do that, I think. 
I'm downloading the latest version of Eudora now. Hopefully, it won't 
make me pay.
Louis:
30-Oct-2006
It is working now importing years (many thousands of messages) of 
email. It is taking a long time. We will see how well it does.
Louis:
30-Oct-2006
Thunderbird did not import my unsent email.
Louis:
30-Oct-2006
I just looked at the Eudora web site and this is a big problem with 
Eudora.  They tell how to delete the index files to let the program 
rebuild them. But if that doesn't work they say:


If the mailbox does not display your old mail or if Eudora crashes, 
the mailbox is irreparably damaged or corrupted.


You can make a final ditch effort to try to recover the text of the 
email. With Eudora completely closed, go to the backup of the .MBX 
that you saved in Step #4 above. Open that .MBX with a Text Editor, 
like Notepad or Wordpad. If there's any recoverable data, a Text 
Editor may be able to read it.
Louis:
30-Oct-2006
You may be right, but it seems to me that no more than one email 
(the one you were saving to the hard drive) should ever be lost. 
No?
Louis:
30-Oct-2006
Anyway, I have been testing readmail.r and it seems to discard the 
email I send. Is there any way to make it save it?
Louis:
30-Oct-2006
Graham, you have proded me to make one last effort to recover my 
work. I notice that I have 3 out files: out.mbx, out.mbx.001, and 
out.mbx.002. The indexes for the last two are not being rebuilt, 
and out.mbx.002 is where my unsent email exists. Any ideas?
Louis:
30-Oct-2006
I also notice that out.mbx.oo2 contains many copies of the last email 
which were saved automatically as I was writing it.
Louis:
30-Oct-2006
Hummm. I'll write another email and see what happens.
Louis:
22-Nov-2006
Phil, can readmail be made the default email client so that when 
I click on an email address in AltME it brings up readmail with that 
address in the To: field?
PhilB:
22-Nov-2006
Not as far as I am aware .... when I click on an email address it 
brings up an altme window to send an email.
Louis:
22-Nov-2006
Hummm. So it does. I asked the wrong question.  What about clicking 
on an email address in a web page?
PhilB:
22-Nov-2006
So you just ned to figue out how to add a new email client to the 
dropdown.
Graham:
30-Jun-2007
http://mail.google.com/support/bin/answer.py?answer=10339


Gmail doesn't currently support IMAP access. As part of our ongoing 
commitment to give our users easy access to their email, we have 
introduced POP access. We look forward to announcing other new features 
as they become available.
Group: SDK ... [web-public]
Henrik:
10-Aug-2005
From the builds page: "A Beta test version of the SDK with the 1.3.1 
fixes and changes is now available for current SDK developers. Contact 
REBOL via feedback or email Cindy if you would like to try it."
[unknown: 10]:
11-Aug-2005
A Beta test version of the SDK with the 1.3.1 fixes and changes is 
now available for current SDK developers. Contact REBOL via feedback 
or email Cindy if you would like to try it.
Pekr:
1-Nov-2005
I wonder, anyway, how will you send it to your friends? ;-) Most 
of email servers will refuse it because of internal security policy 
- we don't allow to send .exes directly, not even inside .zip archives 
;-)
Group: !Uniserve ... Creating Uniserve processes [web-public]
Graham:
5-Mar-2005
REBOL [
	Title: "SMTP daemon"
	Author: "Graham Chiu"
	Version: 0.0.1
	Date: 5/3/2005
]

install-service [
	name: 'smtp
	port-id: 25

	multi-line-end: rejoin [crlf #"." crlf]
	stop-at: crlf
	
	server: make object! [ user-data: none ]
	
	maildir: %mail/ ; store mail here
	
	save-mail: func [ data /local mailbox ][

  if not dir? mailbox: rejoin [ maildir server/user-data/email "/" 
  ] [
			if not exists? join maildir %misc/ [
				mailbox: make-dir join maildir %misc/
			]					
		]
		if not exists? join mailbox "mail.txt" [
			write join mailbox "mail.txt" "" 
		]
		write/append join mailbox "mail.txt" join crlf to-string data	
		print dehex data
	]
	
	on-new-client: has [su] [
			su: server/user-data: context [
			state: copy "command"
			email: none
	 	]
		stop-at: crlf
		write-client join "220 mail.compkarori.co.nz SMTP" crlf
	]

	smtp-rule: [
		"HELO" thru newline
			( write-client join "250 mail.compkarori.co.nz SMTP" crlf ) |
		"EHLO" thru newline
			( write-client join "500 not implemented" crlf ) |
		"MAIL" thru newline
			( write-client join "250 OK MAIL FROM" crlf) |
		"QUIT" thru newline
			( write-client join "221 Good Bye" crlf close-client) |
		"RSET" thru newline

   ( write-client join "250 OK RESET" crlf server/user-data/state: copy 
   "command" ) |
		"NOOP" thru newline
			( write-client join "250 OK NOOP" crlf ) |
		"VRFY" thru newline

   ( write-client join "252 send some mail, i'll try my best" crlf ) 
   |
		"EXPN" thru newline
			( write-client join "500 not implemented" crlf ) |
		"RCPT" [ thru "<" | thru ": " ] copy name to "@" thru newline 

   ( server/user-data/email: form name write-client join "250 OK RCPT 
   TO" crlf ) |
		"DATA" thru newline

   ( stop-at: multi-line-end server/user-data/state: copy "body" ) 
	]
	
	on-received: func [data /local su] [
		su: server/user-data
		print join "Data: " data
		switch su/state [
			"command" [
				if not parse data smtp-rule	[ 
					write-client join "500 command not understood" crlf
				]		
			]
			"body" [
				; reject if we don't have a RCPT command first
				if none? su/email [
					write-client join "500 no email address received" crlf
					stop-at: crlf
					su/state: copy "command"
					return
				]
				
				; write the body of the message somewhere

    save-mail rejoin [ "Received: from somewhere at " to-idate now newline 
    dehex data newline newline ]
				stop-at: crlf
				write-client join "250 OK MAIL received" crlf
				su/state: "command"
				su/email: none
			]	
		]
	]
]
Graham:
5-Mar-2005
REBOL [
	Title: "SMTP daemon"
	Author: "Graham Chiu"
	Version: 0.0.2
	Date: 5/3/2005
]

install-service [
	name: 'smtp
	port-id: 25

	multi-line-end: rejoin [crlf #"." crlf]
	stop-at: crlf
	
	server: make object! [ user-data: none ]

 clear-server: server/user-data [ state: "command" email: computer: 
 none ]
	
	maildir: %mail/ ; store mail here
	domains: [ "@compkarori.co.nz" ] ; list of accepted domains
	
	save-mail: func [ data /local mailbox ][

  if not dir? mailbox: rejoin [ maildir server/user-data/email "/" 
  ] [
			if not exists? mailbox: join maildir %misc/ [
				mailbox: make-dir join maildir %misc/
			]					
		]
		if not exists? join mailbox "mail.txt" [
			write join mailbox "mail.txt" "" 
		]
		write/append join mailbox "mail.txt" join crlf to-string data	
		; print dehex data
	]
	
	on-new-client: has [su] [
			su: server/user-data: context [
			state: copy "command"
			email: computer: none
	 	]
		stop-at: crlf
		write-client join "220 mail.compkarori.co.nz SMTP" crlf
	]

	smtp-rule: [
		"HELO" copy name thru newline
			( write-client join "250 mail.compkarori.co.nz SMTP" crlf 
				if not none? name [
					trim/head/tail name
				]
				server/user-data/computer: form name
			) |
		"EHLO" thru newline
			( write-client join "500 not implemented" crlf ) |
		"MAIL" thru newline
			( write-client join "250 OK MAIL FROM" crlf) |
		"QUIT" thru newline
			( write-client join "221 Good Bye" crlf close-client) |
		"RSET" thru newline
			( write-client join "250 OK RESET" crlf clear-server ) |
		"NOOP" thru newline
			( write-client join "250 OK NOOP" crlf ) |
		"VRFY" thru newline

   ( write-client join "252 send some mail, i'll try my best" crlf ) 
   |
		"EXPN" thru newline
			( write-client join "500 not implemented" crlf ) |

  "RCPT" [ thru "<" | thru ": " ] copy name to "@" copy domain to ">" 
  thru newline 
			( 
				either find domains domain [

     server/user-data/email: form name write-client join "250 OK RCPT 
     TO" crlf 
				][

     write-client join "553 sorry, that domain is not in my list of allowed 
     rcpthosts" crlf
					server/user-data/email: none					
				]
			) |
		"DATA" thru newline

   ( 	stop-at: multi-line-end server/user-data/state: copy "body" 
				write-client join "354 start mail input" crlf
			) 
	]
	
	on-received: func [data /local su] [
		su: server/user-data
		; print join "Data: " data
		switch su/state [
			"command" [
				if not parse data smtp-rule	[ 
					write-client join "500 command not understood" crlf
				]		
			]
			"body" [
				; reject if we don't have a RCPT command first
				if none? su/email [
					write-client join "500 no email address received" crlf
					stop-at: crlf
					su/state: copy "command"
					return
				]
				
				; write the body of the message somewhere

    save-mail rejoin [ "Received: from " su/computer " ( " su/computer 
    " [ " client/remote-ip " ]) " to-idate now newline dehex data newline 
    newline ]
				stop-at: crlf
				write-client join "250 OK MAIL received" crlf
				su/state: "command"
				su/email: none
			]	
		]
	]
]
Graham:
5-Mar-2005
hmm

clear-server: does [ server/user-data/state: "command" server/user-data/email: 
server/user-data/computer: none ]
Graham:
5-Mar-2005
I have mine running as a test on 192.168.1.202

from another pc, or from local host  ... set-net [ [gchiu-:-nowhere-:-com] 
192.168.1.202 ]

send [gchiu-:-compkarori-:-co-:-nz] "testing ..."


and the email is stored in the mail/gchiu directory appended to mail.txt
Graham:
8-Mar-2005
Had the service running all day while I was at work .. and had over 
1700 smtp connections, of which the script allowed 6 email thru. 
 No spam.
Graham:
12-Mar-2005
I've further improved my spam busting mail service.  If I get an 
email from a new user, and that email passes all my spam tests, I 
now will send an smtp challenge to the mail server that should have 
sent that mail.  I know some mail servers will respond that every 
user combination exists, but others will not, and that will all help.
Graham:
13-Mar-2005
I can give you an account, and you put your existing email account 
into vacation mode, redirecting all mail to the account on my server.

My smtp service will spam filter it for you, and you can pick up 
your mail as normal but from my Rebol pop server.
Graham:
16-Mar-2005
Can some of you lurkers help me test out my spam filtering?
I just need you to send me an email to [gchiu-:-compkarori-:-com].

I want to see how many get non delivered, or misclassified as spam.
Just post here if you send me an email.

Thanks,
Graham:
16-Mar-2005
Got tomc's email ...wonder how that got thru !
Graham:
16-Mar-2005
Haven't so far seen Ammon's alternate mail.  And Sunanda's suffered 
a write failure .. in my save-email routine :(
Tomc:
16-Mar-2005
the addres stuff you see at the top of an email has about as much 
to do with delivery as the picture on a postcard
Graham:
16-Mar-2005
I noticed this morning it rejected a legitimate email from my own 
hotmail account as the address given by the EHLO gave a none reverse 
DNS ... but checking it again, it was okay.  So, some type of dns 
timeout error I guess
Anton:
18-Mar-2005
Reporting-MTA: dns; sv7.prth.eftel.com
X-Postfix-Queue-ID: E836A143ADA
X-Postfix-Sender: rfc822; <anton's email address>
Arrival-Date: Thu, 17 Mar 2005 21:00:45 +0800 (WST)

Final-Recipient: rfc822; [gchiu-:-compkarori-:-com]
Action: failed
Status: 5.0.0

Diagnostic-Code: X-Postfix; host pop.compkarori.com[203.79.110.37] 
said: 552
    write failure (in reply to end of DATA command)
Graham:
18-Mar-2005
Anton, that was more likely a bug in my save-email routine, which 
I hope is now fixed.
Graham:
18-Mar-2005
I'm ready for the next round of testing after some bug fixing.
Anyone care to send an email to me at [gchiu-:-compkarori-:-com] ?

Thanks.
Graham:
19-Mar-2005
BTW, that is a test to the email account: [test-:-compkarori-:-com] ... 
and not me :)
Graham:
17-May-2005
I have also a smtp protocol that I will use to send mail.  Why not 
use the existing smtp that comes with Rebol?  My one uses Vincent's 
dig to find the email's mail server, and sends it directly.
Group: DevCon2005 ... DevCon 2005 [web-public]
Gabriele:
16-Jun-2005
Michael: form result should go to email automatically. you can send 
me a mail manually if you want. if there's a problem for enough people 
with the email form, i'll look into setting up a cgi.
Gabriele:
20-Jun-2005
so far 8 people sent in the survey email. we need a bit more to decide 
for dates and so on.
Group: Rebol School ... Rebol School [web-public]
[unknown: 9]:
4-Apr-2006
It also renders JavaScript, and XML, and CSV, and SMS, and Email, 
etc.
Group: Tech News ... Interesting technology [web-public]
[unknown: 10]:
22-Mar-2006
About the Email.. I think they dont understand where email is going.. 
If they would have build an email client that would support encryption 
or packaging from text to grafics they would be on the route to the 
future.. For..re-inventing the wheel with lots of bells and advertising.. 
(yes im a little anti java and .net internet applications currently 
;-) Ever stranger...NET is dead and also is Java..still many use 
it.. i dont get it..
[unknown: 10]:
22-Mar-2006
yes that a pitty.. I know back in 1997 where Lotus had to fight with 
Microsoft about the email..Lotus was already party slow on the interface 
part..The webconfiguration was not even to handle that..that slow.. 
But i happy to read its still alive because it had then some nice 
touches..
Group: !RebDB ... REBOL Pseudo-Relational Database [web-public]
Gabriele:
9-Feb-2006
ashley: sent latest dbms3.r via email.
Group: SQLite ... C library embeddable DB [web-public].
Ashley:
15-Feb-2006
As I mentioned near the beginning of this thread, SQLite supports 
multiple database files each containing one or more tables - in fact 
they go so far as recommending that you separate multiple high-access 
tables out into different databases for concurrency reasons. In this 
sense, SQLite "databases" act more like traditional "tablespaces". 
So, if we wanted we could write our REBOL front-end so that it created/accessed 
each table in a database of the same name thus ensuring a one-to-one 
mapping between table names and database names. The advantages of 
this approach are:

	backups (only those tables that change need be backed up)

 external table administration (you can drop a table by deleting its 
 database file)

 concurrency (you spread your file locking across a greater number 
 of physical files)

Disadvantages:


 Administering your database is more cumbersome (you can't use the 
 sqlite3 admin tool to administer all tables in one session)

 Value of sqlite_master is diminished (you can't "select * from sqlite_master" 
 to report on all your tables in one query)

 Query references need to add a database prefix when referring to 
 a table not in their own database

 Name conflicts (all tables in one file means multiple databases can 
 use the same table names - the solution with multiple files would 
 be to segregate at the directory level)

 Multiple database files means you need to zip them prior to some 
 operations such as email attachment, etc


On balance, I actually prefer the one file / one database approach.


Pekr's other comments in relation to schema implementation also have 
merit (I've agreed with Pekr twice today - a new record!); I see 
the value of an ftp schema, an http schema, etc; but what value in 
a sqlite schema? Given that the entire schema can be written in a 
much more concise fashion as an anonymous context that exports a 
couple of key access functions to the global context; I can't see 
what the functional differences between the two implementations would 
be?


So, bar any good reasons to the contrary, these are the features 
of the implementation I am currently working on (a rough design spec 
if you like):

	Implemented as an anonymous context

 "Database" is a directory (which is specified when a database is 
 opened with 'open-db)

 Each table resides in a "tablespace" (aka SQLite database file) of 
 the same name
	File is automatically opened on first reference

 The /blocked refinement of 'db-open specifies that rows will be returned 
 in their own block (default is a single block of values)

 Non-numeric values (which SQLite stores natively as INTEGER and REAL) 
 will be subject to 'mold/all on insert and 'load on retrieval

 The /native refinement of 'open-db will turn this behaviour off (see 
 comments below)

 SQLite binding will be supported allowing statements such as ["insert 
 into table values (?,?,?)" 1 [bob-:-mail-:-com] "Some text"] and ["select 
 * from table where email = ?" [bob-:-mail-:-com]]


Whether to store values (including string!) as molded values in SQLite 
is an interesting question; on the one hand it gives you transparent 
storage and access to REBOL values – but at the performance cost 
of having to mold and load every TEXT value returned; and the storage 
cost of the overhead of a molded representation. On the other hand, 
if I only want to store numbers and strings anyway then I don't want 
this overhead. I think the only practical solution is a /native type 
option as detailed above.
Group: DevCon2008 (post-chatter) ... DevCon2008 [web-public]
james_nak:
11-Dec-2008
Call for topics and presenters placed in the checklist.
Sent out an email on the mailist to inform and gather input:

Dear Fellow Rebolers (of the mailist faction),


There has been some interest in a virtual gathering of Rebol developers 
and users. These discussions have been taking place in the Rebol3 
Altme World. I know there are many here that do not regularly go 
there but nonetheless would be interested in participating. The date 
and time that has been looked at is December 27th from 12:00 PM. 
How does that sound to you?


There has been no decision on the technology to be used but you're 
input would be much appreciated. We are also in need of presenters 
and/or desired topics.

To summarize, we are looking for:

An agreement on the time and date
Topics desired
Presentors
Ideas for technology to be used
Other
james_nak:
11-Dec-2008
I was thinking that and certainly calling from Skype is possible. 
I just received an email from Nick Antonaccio who offered his hosted 
flash media server. Along with that we has videoconference/presentation 
applications.
NickA:
11-Dec-2008
Hi James,


I've got 20 rooms set up already that I use to do live online music 
lessons on a daily basis.  I think the existing format of those rooms 
could work very well as they stand.  I'll create a special room just 
for Rebol Devcon.  I'd like to show you what I've got, to see if 
it'd work for your needs.  The audio/video conference software works 
on PC/Mac/Linux, in any browser that has a fairly recent version 
of the flash plugin installed (I believe version 6 onward will work 
- 8+ will definitely work).  Aside from flash, there's no installation 
required to use the system - just go to the designated web page. 
 It will allow anyone in the room to take turns jumping onto the 
mic/camera to speak (admin can ban unwanted users), there's a text 
chat, and I've got a really simple way of sharing screen shots already 
installed in the existing room setup.  It should take only a minute 
or 2 to show presenters how it works...


I've being doing daily live online music lessons as a part of my 
commercial music lesson business for the past 4.5 years, and this 
system is the most stable and simple that I'm aware of.  It'll work 
through just about any router/firewall configuration, and it's dead 
simple to use - visitors just go the url, and they'll hear and see 
the speaker.  If they want to be seen on camera and speak, they just 
need to have a web cam and microphone installed and working.  If 
flash is running in the browser, it'll work immediately, no download 
or installs to do.


There's a video that I send to students which explains a little about 
it:  

http://www.youtube.com/watch?v=_sx5qI0GWig


The online lesson page for my business, which has basic info about 
web cams, microphones, and headphones, is here:

http://rockfactory.us/OnlineLessons.html

Please let me know if you have any questions :)


> If someone will email me personally, I can start putting together 
some 

> suggestions about how to organize and manage the presentation. 
 I need

> to get an idea of what sort of software components will be needed: 

> white board, text chat, file sharing, 1-to-many/many-to-many video 

> conferencing, etc...  I'd also need to get a close estimate beforehand

> of the number of people attending, to make sure I prepare enough 

> bandwidth and available connections for the live event (If you'd 
like,

> I've got a little Rebol sign-up script that I use in my business 
to 

> let people sign up for events, you're welcome to use that if you'd 

> like, to help organize things).  Please let me know whenever you 
get a 
> chance!
>
> - Nick Antonaccoio
NickA:
12-Dec-2008
This is my first time posting to Altme - I'm comfortable communicating 
here to organize Devcon activities.  A group demo may be the easiest 
way to prepare, if we can find a convenient common time.  I'm in 
Eastern time zone - during the week, I'm typically free late mornings, 
early afternoons, and then again after 10pm.   I can be reached by 
email at nick ---a t---  musiclessonz ---d o t--- com for anything 
personal :)
Group: Printing ... [web-public]
Dockimbel:
29-Sep-2008
Could you send me your Draw source code ? (privately or by email, 
if it's too long)
Group: reblets ... working reblets (50-100 lines or less) [web-public]
Ammon:
1-Apr-2009
REBOL [
	File: %scramble.r
	Author: "Ammon Johnson"
	Email: [ammon-:-johnson-:-gmail-:-com]
	Version: 0.0.1
	History: [
		0.0.1 31-Mar-2009 "scrambles and descrambles code"
	]
]

scramble: context [
	words: []
	load-words: does [
		foreach word first system/words [
			add-word mold word
		]
	]
	add-word: func [
		word
		/local chars length
	][
		chars: charset word
		unless found? find words chars [repend words [chars copy []]]

  unless found? find words/:chars length: length? word [repend words/:chars 
  [length copy []]]
		length: select words/:chars length
		unless found? find length word [insert tail length word]
		word
	]
	get-word: func [
		word
		/local chars length
	][
		chars: charset word
		unless chars: select words chars [return "UNKNOWN"]
		unless length: select chars length? word [return "UNKNOWN"]
		random/only length
	]
	scramble: func [
		txt
		/local result
	][
		result: parse/all txt " "
		forall result [

   unless empty? trim copy result/1 [change result random add-word result/1]
		]
		form result
	]
	
	descramble: func [
		txt
		/local result
	][
		result: parse/all txt " "
		forall result [

   unless empty? trim copy result/1 [change result get-word result/1]
		]
		form result
	]
]
101 / 7541[2] 345678