About
In the near future, Mojang will be allowing players to switch their names. This system will require most plugins to be updated to support Universally Unique Identifiers (UUIDs). Due to a lack of user base for this plugin, I have decided to allot my time to a rewrite of my other more popular plugin WorldPos (for the same UUID reason).
This does NOT have to be the end of Email. This plugin is OPEN SOURCE, if you are a developer and are willing to take over this plugin, let me know. You may fork the repo on GitHub or submit pull requests to me (which I will handle).
Sorry for the bad news, but time is a finite resource, which means I need to utilize it in the best way possible.
This plugin does one thing, saves player's emails. Players can set their email, and the server administrator can get them. This is useful if you like to keep in contact with your players via email. This plugin uses no NMS code/imports. This means it should be completely version independent, it should work on all future Bukkit builds.
Commands & Permissions
Command | Description | Permission Node |
---|---|---|
/email info | Tells you what version of Email is installed | None |
/email help | Shows a help page | None |
/email set <email> | Sets the player's email | Email.set |
/email set <player> <email> | Sets another player's email | Email.set.others |
/email remove | Remove the player's email | Email.remove |
/email remove <player> | Remove another player's email | Email.remove.others |
/email view | View player's email | Email.view |
/email view <player> | View another player's email | Email.view.others |
/email export <type, 1 or 2> | Export emails to a .txt file | Email.export |
/email send | Sends an email to ALL players | Email.send.all |
/email send <player name> | Sends an email to a specific player | Email.send |
/email can be replaced with /e and /em for short.
To send an email, you MUST be holding a written book in your hand. The book's title will become the email's subject, and the book's pages will become the email's content.
For exporting, type 1 includes both the name and email like so:
Notch,[email protected]
jeb_,[email protected]
Type 2 includes only the email like so:
The exported files can be found in the Email folder inside of the plugins folder.
The Future
In the future of this plugin I plan on adding MySQL database support so your website can take advantage of Email.
Donations
If you want to donate, you can do so here click me with PayPal. Donating is in no way required, it's just nice.
Source Code & Jenkins
All source code can be found on my GitHub repository found here: Email GitHub Repository Feel free to take code, fork, ect. Credits are appreciated.
Development builds of this project can be acquired at the provided continuous integration server. These builds have not been approved by the BukkitDev staff. Use them at your own risk. You can grab the latest developer builds here. Whenever I push a commit/change to GitHub (upstream) a new build will be created automatically. However I recommend you stick to builds posted here on BukkitDev as they are usually more stable.
While upgrading to a newer version PLEASE backup the Email folder inside of the plugins folder. I cannot be held responsible for any lost data during an upgrade. Please play it safe and backup.
@Androkai
I'll answer these in order:
1.) Try wrapping it in single/double quotes. For example:
content: '$BOOK_CONTENT$NL$NLThis email was sent to you by: $PLAYER_NAME.'
2.) Possible. Would require changes to permissions. Maybe something like: Email.send.player.Notch But that looks messy, I'll figure something out.
3.) Possible. However, what would the plugin use for the variable $PLAYER_EMAIL if the player requested to not have their email added?
@Mike724
It works, thx :)
My next wishes are
At the moment it shows this error:
Greetings, Androkai
Uploaded version 1.3. Waiting on approval.
The way I'm adding @Androkai's request is going to "kill two birds with one stone". I'm implementing a way to alter the email's data. For example in the config:
content: $BOOK_CONTENT$NL$NLThis email was sent to you by $PLAYER_NAME.
($NL = new line, $PLAYER_NAME is the name of the player who sent the email)
The plugin will append 3 lines to the book's content:
...and then use the resulting message as the email's body/content
@Mike724
Sounds nice, thx
@Androkai
Yes, that is completely possible. I'll work on it now.
@Mike724
Is it possible to add the name of the player who execute the command for sending to the email? Another idea is to add a static text (like a signature) to the email which is written in the config so you can inform the recipent why he becomes this email.
@Androkai
Great to hear it's working for you!
I've considered adding a feature to allow for individual players to set their own email sending account. The only problem I see is that the email provider would have to be already defined in the config.yml (introduced in version 1.2). Adding a custom email provider using commands would be a major pain. Of course, if I make it so you have to set player's email sending accounts via the config.yml (not commands) there wouldn't be much of a problem.
Thanks a lot for this amazing plugin. It works properly on our server.
I would wish a possibility to add the author of the mail. First I thought about using the books author as the sender of the mail but then i noticed that also an other player who is not the author of the book can send this mail too.
Is it possible to add this?
Greetings, Androkai
I've uploaded version 1.2!
In this version:
It's pending approval now. If you're impatient, you can grab it off of the Jenkins server now (not allowed to link here due to rules, but it's in the main post).
As always, please report bugs. I find it hard to believe there are none (no one has reported anything).
Sorry about the lack of updates for the past few days, I've been a little busy. Next up on the list of things to do is supporting more email providers (!), MySQL support and fixing any bugs (none have been reported yet! get on it guys!) :) .
@lANTHONYl
Thanks, but to be fair it was @hardc0reapplez' idea. Without his request, I wouldn't have made this plugin. :)
@Mike724
What a friggin sweet idea sir! Great job.
Version 1.1 is uploaded! This is a big update.
The most important change in this build is the ability to send emails to players directly from the plugin. This causes the JAR file to be somewhat large (relatively), due to having to shade in some imports (I don't think there is a way to "fix" this though).
IMPORTANT
PLEASE TELL ME IF IT WORKS OR DOES NOT WORK FOR YOU. I want to get this plugin working for everyone, which I cannot do without feedback. :)
Version 1.1 is almost done! It will be uploaded soon. Look forward to sending emails directly from the plugin. ;)
Good news guys! I love cookies! (email sending works!) http://mike724.com/screenshots/d69362.png
Scratch that, we can do this.
It's a bit difficult to get Java sending emails reliably. I could use the JavaMail API but it's not always available (unless you're using the real JRE/JDK from Oracle not an open source version). I'm considering having emails be sent to a server and then that server sending the email (and provide the PHP script for it). I'm still not entirely sure how I want to proceed with it. I will keep you guys updated.
What I'm going to work on now is MySQL database support so Email can tie into your website. And then you can use your own PHP script to send email to the emails in the database.
@Mike724
Brilliant.
Good news: I started working on a feature where you can send emails directly from this plugin (to specific players or all of them).