Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

SL In-world mail system?

Cindy Claveau
Gignowanasanafonicon
Join date: 16 May 2005
Posts: 2,008
05-15-2006 07:15
I did some searching in the proposals db, but what I found didn't directly address this.

There have been some requests for messaging tools that can be used from outside SL which would not require log-in, but that's not what I'm going for here.

Has the idea been discussed of having an in-world email system which is separate from IMs? The problem with IMs is that they cap, and if you have a lot going on or you're a merchant trying to run customer support you will invariably miss some IMs. Customers can drop Notecards on you, I know, but unless you're conscientious about keeping your notecards cleaned out and organized that's not the ideal solution either -- notecard receipt notification is just as easily lost in IM spam if you're offline.

Why not an email inbox with a higher per-message character cap than IMs and the ability to archive received/sent emails? This would be a blessing to merchants I'd think, but I also am sure it's been brought up before -- what were the reasons for not adding the feature?
_____________________
Llauren Mandelbrot
Twenty-Four Weeks Old.
Join date: 26 Apr 2006
Posts: 665
05-15-2006 07:33
Good idea! I like! "+5" Toodle-oo!
Sansarya Caligari
BLEH!
Join date: 25 Apr 2005
Posts: 1,206
05-15-2006 07:39
I like this idea too. I always hate to IM busy designers with my questions or concerns or just to tell them "great hair!" They need to be able to live their SL hassle free sometimes too. Sending an email, however, gives a buffer between them and the IM interruption problem, gives me more room to fully describe my problem, and makes it all more immersive. (I am picturing little laptops on everyone's desk, blinking with an incoming Email messag or even the great message in voice 'You've got mail!";)
Marcus Moreau
frand
Join date: 25 Dec 2004
Posts: 602
05-15-2006 07:42
LL is also working on having the IM system based on Jabber, so you could IM from out-of-world. Not sure if this is official, but it was mentioned in a town-hall I believe. I am too lazy, but you can do a Forum Search for "Jabber" and find a myriad threads on this very topic.

EDIT: I realize this is not terribly related... oh well. ;)

As far as something more static like email, not sure this would be of any benefit, especially if they went to jabberd. I guess it would allow longer/more messages, so I guess I'd be all for it. :)

MM
_____________________
Marcus Moreau

Disenfranchised island owner...

"This statement is false."
User #121869 or something close
Bruce Tandino
Registered User
Join date: 10 Apr 2006
Posts: 3
05-15-2006 09:00
I support this suggestion, heartily.

I would call it a quality of life issue. It is simply a parallel of RL, which in most cases is a fairly good model to follow. Human communication archetypes are well refined. Not every communication works well in real time. That is not only from the receiver's perspective, but also the sender's. Immediacy is not a goal in every situation. Life would go horribly out of balance.

For my way of thinking, a RL/SL portal, with "leakage" between the two worlds (but controlled in detail by the resident, as to how the worlds interact) would be a perfect, comprehensive solution.

From everyone's perspective, both LL and end users, the most positive outcome is making it more possible to fully participate in SL, without creating negative impact in RL. We hall have a RL. From a design standpoint, as long as the "portal" model is followed, there is no compromise of SL as I see it...no more than our lives in RL would be any less real if we eventually communicated with beings from another planet. It would just simply be, and reality copes.
Cindy Claveau
Gignowanasanafonicon
Join date: 16 May 2005
Posts: 2,008
05-15-2006 09:26
From: Marcus Moreau
LL is also working on having the IM system based on Jabber, so you could IM from out-of-world. Not sure if this is official, but it was mentioned in a town-hall I believe. I am too lazy, but you can do a Forum Search for "Jabber" and find a myriad threads on this very topic.

EDIT: I realize this is not terribly related... oh well. ;)

As far as something more static like email, not sure this would be of any benefit, especially if they went to jabberd. I guess it would allow longer/more messages, so I guess I'd be all for it. :)

MM

The Jabber project is unrelated. You're still faced with the issue of sorting through IMs, which we can think of as 'dynamic' -- they go away the moment you close the IM window -- as opposed to a static, archivable in-world email system.

Most SL residents don't have an issue with IMs. But those who run businesses, be they clubs or stores or whatever, run the very real risk of losing important messages. Their own customer service, and perhaps their business, suffers as a result. Email would improve resident communication, customer service AND record-keeping for everyone.

LL could make determinations on database limits - I'm sure even a minimal storage size limit with regular purges would be better than what we have now. More and more MMOGs are going to internal email systems to allow players to communicate when not in game, and the current IM system (even with Jabber) is not an ideal solution.

I assumed this had been proposed formally before, but it's beginning to sound like it hasn't. I'm surprised. If nobody testifies to past attempts in the next few days I'll try to put up a proposal to LL formally.
_____________________
Lina Pussycat
Texture WizKid
Join date: 19 Jun 2005
Posts: 731
05-15-2006 09:54
Easy fix for this would be creating an email system that can actually be used by anyone and placed say in a shop or something of the like or given to your friends. This avoid's some problems as it directly acts kinda like email forwarding. I have an email system that i can use but there arnt any ones that directly open =/. I can actually send email's back and forth using this system or to other email addresses in game which is kinda stupid but it works. The problem is only the owner can use it currently and its not directly linked to an email inbox. If this was done it could be a variable sense of just an upkeep of email's :)

Ohh a side note for shop owners :) this is a good idea to use there is an open source one way email which you could give out freely. and then buy yourself an Aoe or whatever it is system that can send and receive email :) then all you gotta do is use that as a support item by putting a note with ur email adress in it and keeping the actual email system in an area without taking it back into ur inventory :D
Marcus Moreau
frand
Join date: 25 Dec 2004
Posts: 602
05-15-2006 10:07
Yeah, I would support an in-world email system. They could then maybe disallow IM'ing offline people. This would be in effect replacing the offline IM system with an email system. I'd be all for that.

MM
_____________________
Marcus Moreau

Disenfranchised island owner...

"This statement is false."
User #121869 or something close
Lina Pussycat
Texture WizKid
Join date: 19 Jun 2005
Posts: 731
05-15-2006 10:12
there are a few in world email systems already just they can only be used by the owner and re rez causes a new email address in world each time you take back the system into your inventory!!. The fact is every object in SL has its own email address thats how you can get offline messages from objects etc or have an object send an email :) though it is coded and would need to persons name included for you to actually know who sent it

Below in next post is a correspondance of my previous post of the two enacting with each other :)
Lina Pussycat
Texture WizKid
Join date: 19 Jun 2005
Posts: 731
Here we go
05-15-2006 10:25
Nerd Gadgets & Scripting Emailer 100: Currently being used by Lina Pussycat.
Nerd Gadgets & Scripting Emailer 100: You have 30 seconds to choose.
Kia Somme is offline
Nerd Gadgets & Scripting Emailer 100: Please say the address of whom you are sending your email.
You: [email]64c5884c-df4c-8e6b-25c4-8a2e822ff815@lsl.secondlife.com[/email]
Nerd Gadgets & Scripting Emailer 100: You have 30 seconds to choose.
Nerd Gadgets & Scripting Emailer 100: Please say the subject of your email.
You: Hello Hello
Nerd Gadgets & Scripting Emailer 100: You have 30 seconds to choose.
Nerd Gadgets & Scripting Emailer 100: Please say the message you would like to send.
You: Wee :D
Nerd Gadgets & Scripting Emailer 100: Your email reads as the followed:
Nerd Gadgets & Scripting Emailer 100: [email]64c5884c-df4c-8e6b-25c4-8a2e822ff815@lsl.secondlife.com[/email]
Nerd Gadgets & Scripting Emailer 100: Hello Hello
Nerd Gadgets & Scripting Emailer 100: Wee :D
Nerd Gadgets & Scripting Emailer 100: I hope you don't mind Lina Pussycat, but I will have to assume your name for a moment to send this email.
Nerd Gadgets & Scripting Emailer 100: Your email will be sent in 20 seconds.
Nerd Gadgets & Scripting Emailer 100: Thank you Lina Pussycat, for using the Nerd Gadgets & Scripting Emailer 100
aEo Notebook v3: Looking for email messages
aEo Notebook v3: You got mail!
aEo Notebook v3: Time : 2006-05-15 Time: 17:19:24
aEo Notebook v3: Address : [email]c83c3079-4c86-5370-1c9c-3cd44674343a@lsl.secondlife.com[/email]
aEo Notebook v3: Subject : Hello Hello
aEo Notebook v3: Message : Object-Name: Lina Pussycat
Region: Butler (262144, 255744)
Local-Position: (131, 39, 27)

Wee :D
aEo Notebook v3: Ready..
aEo Notebook v3: Version: v3.0.6

Please note that where it says message pertains to my name in world on object name under local position is the actual message. Thats correspondance of the 2 working though. This could be sent to an actual email address outside of game as well and would work quite well with Gmail For instance make a support email line for a shop of yours in case someone has a problem including a cube or something of the like with it that has the script in it. Which i will put in the next post for everyone pleasure
Lina Pussycat
Texture WizKid
Join date: 19 Jun 2005
Posts: 731
05-15-2006 10:36
so here is the script please do not redistribute this for sale its not made by me but the guy has posted in in the scripting wiki or whatever already it is readily available to anyone im just putting it here for everyone's sake :)


//...........One Way Email Terminal..........
//.......Originally written by Doc Nerd......
// This Script is distributed under the terms
// of the modified BSD license, reproduced at
// the end of the script. The license and
// acknowledgments listed must be included if
// this script is redistributed in a
// non-readable or non-modifiable form.


//..........Variable Block..........
key senderKey;
string senderName;
string eMail;
string subject;
string bodyText;
list sendButtons = ["Yes", "No"];
list writeButtons;
string removeButton;
integer i;


//..........Modules Block..........

//..........Modules for writing each part of email..........
writeAddress()
{
llListen(0, "", senderKey, "";); //Listen to what the user says.
llSay(0, "Please say the address of whom you are sending your email.";); //Tell them what to say.
llSetTimerEvent(30); //Give them 30 seconds to say it.
}

writeSubject()
{
llListen(0, "", senderKey, "";); //Listen to what the user says.
llSay(0, "Please say the subject of your email.";); //Tell them what to say.
llSetTimerEvent(30); //Give them 30 seconds to say it.
}

writeBody()
{
llListen(0, "", senderKey, "";); //Listen to what the user says.
llSay(0, "Please say the message you would like to send.";); //Tell them what to say.
llSetTimerEvent(120); //Give them 120 seconds (2 minutes) to say it.
}


//..........Modules to remove buttons already used in llDialog menu..........
removeAddress()
{
i = llListFindList(writeButtons, ["Address"]); //Find "Address" button in list.
writeButtons = llDeleteSubList(writeButtons, i, i); //Remove it where it's found.
}

removeSubject()
{
i = llListFindList(writeButtons, ["Subject"]); //Find "Subject" button in list.
writeButtons = llDeleteSubList(writeButtons, i, i); //Remove it where it's found.

}

removeMessage()
{
i = llListFindList(writeButtons, ["Message"]); //Find "Message" button in list.
writeButtons = llDeleteSubList(writeButtons, i, i); //Remove it where it's found.
}


//..........Running script block..........
default
{
state_entry()
{
llSetObjectName("Nerd Gadgets & Scripting Emailer 100";); //Makes sure the object is called the Nerd Gadgets Emailer 100.
writeButtons = ["Address", "Subject", "Message"]; //Sets the llDialog buttons.
llListen(67895, "", senderKey, "Yes";); //Activate listeners.
llListen(67895, "", senderKey, "No";);
}

touch_start(integer total_number)
{
senderKey = llDetectedKey(0); //Detects who's touching it, to get a raw key.
senderName = llKey2Name(llDetectedKey(0)); //Detects who's touching it, to get a name.
llDialog(senderKey, "Greetings " + senderName + ", would you like to send an email?", sendButtons, 67895); //Do you like me? Y/N
}

listen(integer channel, string name, key id, string message)
{
if(message == "Yes";) //Starts email writing process.
{
llSay(0, "Currently being used by " + senderName + ".";); //Tells area who's using terminal.
state emailer;
}
if(message == "No";) //Thank you, come again.
{
llSay(0, "Thank you " + senderName + ", for using the " + llGetObjectName());
}
}
}

state emailer
{
state_entry()
{
if(writeButtons == []) //Check to see if there's anything left to write in the email.
{
state sendMail; //If not, move to sending module.
}
llListen(67895, "", senderKey, "Address";); //Activate listeners.
llListen(67895, "", senderKey, "Subject";);
llListen(67895, "", senderKey, "Message";);
llSetTimerEvent(30); //Gives user 30 seconds to choose a part to write...
llSay(0, "You have 30 seconds to choose.";); //Informs user they have 30 seconds to choose.
llSetText("In use, please wait.", <255,0,0>, .1); //Gives visual cue to others that no one else can use it right now.
llDialog(senderKey, "What part of your message would you like to write?", writeButtons, 67895); //Selection button GUI.
}

listen(integer channgel, string name, key id, string message)
{
if(message == "Address";) //Select "Address" button.
{
state addressWrite; //Enter address writing state.
}
else if(message == "Subject";) //Select "Subject" button.
{
state subjectWrite; //Enter subject writing state.
}
else if(message == "Message";) //Select "Message" button.
{
state messageWrite; //SEnter message writing state.
}
}

timer() //After 30 seconds are up, time out, and return to default state.
{
llSetTimerEvent(0);
llSay(0, "User has failed to select option in time. Unit is now available for use or retry.";);
llSetText("",<0,0,0>, 0); //Removes floating text.
state default;
}

}

state addressWrite
{
state_entry()
{
writeAddress(); //Start address writing module.
}

listen(integer channel, string name, key id, string message)
{
eMail = message; //Save message user said.
removeButton = "Address"; //Set variable for button removal.
state remainButton; //Enter button removal process state.
}

timer() //After 30 seconds are up, time out, and return to selection state.
{
llSetTimerEvent(0);
llSay(0, "User has failed to enter information quickly enough. Please try again.";);
state emailer;
}
}

state subjectWrite
{
state_entry()
{
writeSubject(); //Start subject writing module.
}

listen(integer channel, string name, key id, string message)
{
subject = message; //Save message user said.
removeButton = "Subject"; //Set variable for button removal.
state remainButton; //Enter button removal process state.
}

timer() //After 30 seconds are up, time out, and return to selection state.
{
llSetTimerEvent(0);
llSay(0, "User has failed to enter information quickly enough. Please try again.";);
state emailer;
}
}

state messageWrite
{
state_entry()
{
writeBody(); //Start message writing module.
}

listen(integer channel, string name, key id, string message)
{
bodyText = message; //Save what the user said.
removeButton = "Message"; //Set variable for button removal.
state remainButton; //Enter button removal process state.
}

timer() //After 120 seconds (2 minutes) are up, time out, and return to selection state.
{
llSetTimerEvent(0);
llSay(0, "User has failed to enter information quickly enough. Please try again.";);
state emailer;
}
}

state remainButton //Removing buttons from a list SUCKS!
{
state_entry()
{
if(removeButton == "Address";) //Removes "Address" button.
{
removeAddress();
state emailer;
}
else if(removeButton == "Subject";) //Removes "Subject" button.
{
removeSubject();
state emailer;
}
else if(removeButton == "Message";) //Removes "Message" button.
{
removeMessage();
state emailer;
}
}
}

state sendMail
{
state_entry()
{
llListen(67895, "", senderKey, "Yes";); //Starts listeners.
llListen(67895, "", senderKey, "No";);
llSay(0, "Your email reads as the followed:";); //Spews out the actual email message.
llSay(0, eMail);
llSay(0, subject);
llSay(0, bodyText);
llDialog(senderKey, "Do you wish to send this message?", sendButtons, 67895); //Do you like me? Y/N
}

listen(integer channel, string name, key id, string message)
{
if(message == "Yes";) //You like me! You really like me!
{
llSay(0, "I hope you don't mind " + senderName + ", but I will have to assume your name for a moment to send this email.";); //Tell user the terminal will change it's name for proper "From" headings in inbox.
llSay(0, "Your email will be sent in 20 seconds.";); //Tells user email will be sent in 20 seconds (delay of llEmail function call to script).
llSay(0, "Thank you " + senderName + ", for using the " + llGetObjectName()); //Thank you, come again.
llSetText("", <0,0,0>, 0); //Removes "busy signal".
llSetObjectName(senderName); //Change to user's name.
llEmail(eMail, subject, bodyText); //Send that damn thing already!
state default; //Return to normal.
}
else if(message == "No";) //You don't like me? *emo tear*
{
llSay(0, "Thank you " + senderName + ", for using the " + llGetObjectName()); //Thank you, come again.
llSetText("", <0,0,0>, 0); //Removes "busy signal".
state default; //Return to normal.
}
}
}


//Copyright (c) 2005, Doc Nerd & player
//All rights reserved.
//
//Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
//
// * Redistributions in modifiable form must retain the above copyright notice, this list of conditions and the following disclaimer.
// * Redistributions in non-modifiable form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
// * Neither the name of Doc Nerd nor his player may be used to endorse or promote products derived from this software without specific prior written permission.
//
//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.



I hope that helped some people :)
Cindy Claveau
Gignowanasanafonicon
Join date: 16 May 2005
Posts: 2,008
05-15-2006 10:56
From: Marcus Moreau
Yeah, I would support an in-world email system. They could then maybe disallow IM'ing offline people. This would be in effect replacing the offline IM system with an email system. I'd be all for that.

MM

No, I still don't think you understand. I'm not proposing anything that has anything to do with IMs. IMs are dynamic and temporary, they go away or are capped too easily. And you must have an offline email inbox to receive them (in my Yahoo email, forwarded IMs end up in "Bulk" and get deleted after a while - that's not what we want).

Lina, thank you for the script. That's a handy workaround but I submit that you're still restricted by the dynamics of the IM system -- eg., the temporary email IDs of objects in-world are only good for about a day. I can't save email/user IDs to an address book and use them a week or a month later.

The ideal in-world email system would not require an address book, it could work off either your Friends' list or work like "Find" when you're looking for an individual. All the user sees is the name, the system is working on the permanent UUID of that avatar.

And it would not have to go in/out of SL at all, though if that's easy to do that would be helpful as well -- or an out-of-game inbox management tool. That would be an extension that's nice to have but isn't my whole point here. I simply want merchants and other people with very heavy IM traffic to have a way to respond to customers/clients and not miss anyone.

Ex: Last time I had a major problem with a scripted item, the user was offline for a week. I IM'd him, but I was sure that his IM cap would hit before he returned. I sent him a notecard, but I also was sure he wouldn't notice it unless he regularly looked in his /notecards folder.

I had to do some tracking and found his offline website, where I emailed him through non-SL channels to get my problem addressed. He was very helpful, but no thanks were due to Second Life's rudimentary messaging system.
_____________________
Lina Pussycat
Texture WizKid
Join date: 19 Jun 2005
Posts: 731
05-15-2006 12:41
actually the object script i sent out would have to be sent to an offline email still or an aEo Desktop or notebook in game both of which if left in world have the code for as long as they are left out. Mine has the same email address repsecitvely as when i first rezzed it. Its when you re rez it that it becomes a problem as not being able to slap it down in a address book.

The system i put out in script was just to send emails not to recieve im trying to tear thru it and see if i can figure out that function if i do ill update it :). a side note though if you do take the aEo system once it is Rezzed it will change the email. I've tested it numerous times and it works quite well. Again though its only usable by the owner of it. I was thinking more along the lines of a store support system that someone could set up a gmail account (which keeps very very good track of email especially if its from the same source :). But again i digrees if the person re rezzes it it becomes sloppy. You are limited in subject message matter as far as you can actually type in 1 Line of a chat box in SL. But it offers at least a partial work around for support related things :). Simplest thing would be to give us space but again it takes away from other area's on their servers to do this for some 200,000 residents.

Sadly cant do much about it unless they wanna make a system fully dedicated to email which ultimately isnt needed if people Im you that massively whille your offline it could be a hassle but thats why i suggested a work around to email. i will post as to how it progress out into gmail in the next post for those interested. And also for those interested if you cant sign up for gmail IM me in world with your email address and ill toss you an invite :D. almost 3 full gigs of free email space
DoteDote Edison
Thinks Too Much
Join date: 6 Jun 2004
Posts: 790
05-15-2006 17:05
My two-cents solution to the problem:

Create a special email address for your SL avatar, and post the address in your profile. Encourage customers to correspond with you via that email address, as opposed to IMs.

That solution could solve the problems you have. But, I also think it'd be neat if Linden Lab were to add an <email> button to everyone's profile, along with an account setting which allows you to enter a secondary email address to be used by that button. When a customer wants to contact you with lengthy commentary, they would click the <email> button on your profile and their default emailer would pop-up. It'd work the same as any other email link on the internet.
Llauren Mandelbrot
Twenty-Four Weeks Old.
Join date: 26 Apr 2006
Posts: 665
05-15-2006 18:17
From: DoteDote Edison
[....]

But, I also think it'd be neat if Linden Lab were to add an <email> button to everyone's profile, along with an account setting which allows you to enter a secondary email address to be used by that button. When a customer wants to contact you with lengthyl commentary, they would click the <email> button on your profile and their default emailer would pop-up. It'd work the same as any other email link on the internet.
This already exists in the Forum profiles, except it uses the configured Forum message editor.

What Ah think could be nice is if every account had an [email=AccountName@SecondLife.com]AccountName@SecondLife.com[/email] e-mail address that was accessible from within th` client, from the SL website, and via standard IMAP/POP3/SMTP protocols, an` was fully integrated into the SL experience.

Toodle-oo!