Subj : time keeps on slipping ... To : Jame Clay From : Maurice Kinal Date : Tue Feb 22 2005 07:14 pm Hey Jame! The best I can come up with for an unique MSGID based on time (date) which yeilds an eight character hex result, using bitshifting of variables in a 32-bit field, will be limited to a 50 year uniqueness period since a 100 year uniqueness would require 33 bits. Always seem to fall a little shy with 8 characters. Sigh. Anyhow it works so I am calling this a MSGID generator as is. Basically it is calculated from modulus 50 of a two digit year (%y) which is shifted to the leftmost 6 bits, the day of the year (%j) occupying the following 9 bits, the hour (%H) occupying the next 5 bits, and then minutes (%M) the next 6 bits, and finally seconds (%S) occupying the last 6 bits (rightmost). Then that is converted to a 8 digit hex number which coincidently can be expressed as 8 characters each taking exactly one byte of the MSGID. I'll use a point address to occupy the first part of the MSGID preceding the space, before the calculated hex character thingy. Seems to work quite well. Of course this all implies that the MSGID has to be generated when each message is created and that each user or point cannot create more then one message a second. I am not sure at this writing what implications that will have to the planned Fido XML-RPC server function. I'll worry about that when I get that far but offhand it looks like I'll have to fudge somehow. Two extra stinkin' lousy bytes would have made this sucker so much easier. Oh well. Life is good, Maurice --- Msged/LNX 6.1.2 * Origin: Coffin Point - Ladysmith, BC Canada (1:153/401.1) .