Jump to content
Sign in to follow this  
KyleMassacre

Player Email Verification

Recommended Posts

Good morning/afternoon everyone,

I came up with a new module and I dont know if anyone is interested in it but if you are I can add this to the market place for you to download.

What this does is makes users confirm their email addy by using a confirmation code that is sent to them via the email they have provided. I have

attached some screenshots to show you the process they go through and I will describe what each one is.

This image is showing the user logged in but they are locked into this module so they cannot proceed anywhere else but the index page.

[ATTACH=CONFIG]903[/ATTACH]

Just incase the player loses their confirmation code they may request a new one and it will attempt to send it to the email they used to register with.

[ATTACH=CONFIG]904[/ATTACH]

Here is an example email that has been sent containing their registration code that they must enter in the form to play your awesome game.

[ATTACH=CONFIG]905[/ATTACH]

Now with their code they received they must enter it and presto they are in

[ATTACH=CONFIG]908[/ATTACH]

[ATTACH=CONFIG]907[/ATTACH]

If they enter the incorrect code they get an error message letting them know about it

[ATTACH=CONFIG]906[/ATTACH]

So let me know what you think. I am also going to add in just incase they decided to put in a bunk email a way to change it. And my only concern is

the facebook module. I dont have a facebook so I dont know if that will conflict in either being redundant or any other negative way.

Oh and also, notice that there is some html. I went ahead and added some email headers in order to help it from going into spam but fair warning

that nothing is safe from spam ;)

302395459_Picture1.thumb.png.8b20dd31dc0dab9191e28d3e1dde16bf.png

2.thumb.png.346541fc469e286b0769a0c40a17ab90.png

3.png.60142554db2475b872e8d314202cebad.png

4.thumb.png.7a2c952f6a418440dc3c9c7c4bbc3d9d.png

5.thumb.png.3f4fbd358dd5de47ab03ea0b70123516.png

6.thumb.png.2450e5963d6d769b9f27eec54c673b0d.png

Edited by KyleMassacre

Share this post


Link to post
Share on other sites

Mind testing your script with the following as a users e-mail;

kyle@kylemassacre.com%0ACc:harry@sniko,net%0ABcc:joe@bloggs.com,null@nothing.com

 

And check the recipient, and carbon copy values.

From the screenshots, looks good!

Share this post


Link to post
Share on other sites

Thank you for that greg. But after doing a little compare and contrast between some modules, I think im going about it the wrong way but bottom line it has the same effect so maybe wrong way is not the correct term.

The file you see in the screens is not a home.php but a pre process file so it loads right away and at the top of the file. And the reason I would prefer to keep it this was is simply because unlike the ban module which locks you in the ban content file letting you know your banned this actually gives the new member a little glimpse of the game they signed up for.

Im thinking of possibly adding a cron so that maybe if they are not verified by a certain number of days they get deleted from the game.

Share this post


Link to post
Share on other sites

I just submitted the module and I am waiting for alain to look through it so hopefully it will be good to go without a lot of needed changes.

To be honest im a little worried about the way I did this as I stated before but it does exactly what its intended to do. So when it gets accepted it will be released for free hence the free modules section, so when the time comes I hope you enjoy

Share this post


Link to post
Share on other sites

This should be default however unfortunately it does not work for me and has locked me out of the system.

When I press for it to resend verify Email I get nothing.

How is it sending Email?

Share this post


Link to post
Share on other sites

I am going to have to look in to that and get back with you because it worked for me through my testing.

And to answer your question about how its sending an email: there is a lib file that has the email function in it

Share this post


Link to post
Share on other sites

Yes I did a quick scan of the code and noticed there is a forced no-reply Email.

I tried changing that to see if it was being rejected by exim because of the false address but that did not work either. I'm going to see if I can pick up anything from my logs.

UPDATE: I do see it being sent in the logs but it is not actually relayed to me. I will check the send procedure and post an update. Thanks.

Edited by DungeonMaster

Share this post


Link to post
Share on other sites

OK I see what the problem is...

If the Email address is located on the server then the email will be flagged to :fail:

If it is sent to an Email outside of the server then it will send it but:

The send from Email addressed is assumed and is also a reason to send to :fail: on some servers

This is something that has to be either edited first by Admin or at least the headers need to be configured.

I will also suggest that since Admin is installing the module he should not be required to verify because if anything goes wrong as in my case then he is locked out.

Share this post


Link to post
Share on other sites

Yeah I gotta take a look at it and see. And like I said this worked for me using the exact same script so it weird that your having issues with it but then again my stuff always works for me and no one else haha. And I believe in the pre file I have a comment in there saying something like if (/*! IsAdmin()*/) or something like that for my testing that I forgot to remove upon release, if you get rid of that it should work.

Share this post


Link to post
Share on other sites

I believe the key to have it work for others is not to assume the server environments of users and allow as much configuration as possible which of course can be done by editing your mod directly but just saying for someone who may not know how.

With that said I applaud you for creating it, as I said I'm surprised it isn't a default option, it alleviates having to start from scratch as you took out most of the work.

Share this post


Link to post
Share on other sites

It's not a default module because I'm strongly against email verifications systems. Why? Because 90% if the time those kind of emails end up in the spam or even worse get totally filtered out. In best cases it's an annoyance for the player in the worse case it stops them. Anyhow it doesn't filter double accounts as smart guys know how to create new email accounts or use temporary emails to just register. For all those reasons I believe (and saw) that an email verification is one of the worse thing to do during registrations. Anyhow why do you need an email? To send a newsletter? To ensure a player have only 1 account? To be able to do a password recover? What for?

Share this post


Link to post
Share on other sites

I understand those concerns but Email verification is important because:

1. It presents a level of control

2. You can tell them to check their spam folder if they do not receive it (I do this in all my forums for example: here)

3. When it is time to Paypal you can ensure that there are similarities in Email accounts and you are not getting paid with some 'unknown' Email

4. If you need to contact the person because something happens with their account, newsletter or whatever then you can be assured that they first verified their email.

When Emails bounce, are blocked or go to fake accounts I delete their accounts to, thus participants are usually willing to give genuine Email.

Lastly, whey even ask for Email if you don't know if it is genuine, may as well leave it out.

Edited by DungeonMaster

Share this post


Link to post
Share on other sites

Well, I told you why I personally don't like and don't trust email verifications, and this is why it's not an official module. But it's your game, your call and you can do as you wish.

Share this post


Link to post
Share on other sites
Lastly, why even ask for Email if you don't know if it is genuine, may as well leave it out.

Couldn't have said it better myself.

Unless you have collected their personal address or phone number email is your only way of contacting a user when they are not visiting your site. You need some way to alert them of things like TOS changes, inactive account deletion, password change request/notifications, suspicious activity notifications, breach of TOS notifications. It's pretty much the only way to formally let the user know of something that they may not have been aware of.

Email providers usually never outright automatically delete emails unless you have them on your personal black-list. And they usually don't throw the email in a spam folder unless it's from a black-listed IP. Half of them won't even do that. They let you decide what IP's and domains should be black-listed. If you don't trust email verification's then you probably shouldn't trust snail mail, UPS, FedEx and others since there is no guarantee that it won't get lost in shipping/processing.

Share this post


Link to post
Share on other sites

Well blue, I'm talking for the many web game registrations I tried, and my own codes... Maybe you was more lucky than me. Anyhow, it is for me just an annoyance more than any real value. But as said, personal opinion. If you want email verification Kyle offers one. So nobody can complain ;)

Share this post


Link to post
Share on other sites

I have seen in some instances where a TEXT MESSAGE is sent to a users mobile/cell phone with a 5 digit pin number to be entered after registering this would be an idea,,,

Share this post


Link to post
Share on other sites
Good point, I forgot to mention this is sent in HTML and should have a text only option.

Ill keep that in mind when I do the changes to allow for text only

Share this post


Link to post
Share on other sites
if (/*! IsAdmin()*/) or something like that for my testing that I forgot to remove upon release, if you get rid of that it should work.

There seems to be more wrong with this mod after testing:

1. Uncommented but still cannot access anything.

2. A user that has not been verified and tries to login will be shown as though he is logged in but does not actually see the player panel but the login page. Then when he tries to login again you get "trials" page.

I don't want to debug this now so early in my fingering.

Share this post


Link to post
Share on other sites

Hmm ill have to dig in and see what it is really wrong. If you have any ideas that can help me let me know because I tested and tested before releasing and never came across this issue and I believe I even had sniko run through it too and it worked for him

Share this post


Link to post
Share on other sites

Well this is what I am used to:

1. Files it modifies

2. What it does to database

In other words a simple how to undo this mod will enable me to debug.

Once I know that I can resolve it myself. I was trying to ask for this information before. I guess I have been over at SMF too long where everything is so well documented.

I could spend a lot of time digging and experimenting with mods since there is no documentation for them but this will delay the opening of my game even longer.

Thanks for your follow as always Kyle.

Share this post


Link to post
Share on other sites

For this module in particular it shouldnt have any database modifications just a new row or 2 that got inserted into the user variables table. But for now on when I upload a new mod or edit a mod I can add in a readme file with a change log and and basic info about the modules. And "MOST" of the time if there is a table in the db that a module adds it will be in config.xml for the table editor to pick it up but for that to work it must have an auto-increment row. If its not in config.xml and it messes with a table of any sort it MUST have an install.sql file because that is what the module installer reads from to create the db tables, rows, or columns.

So in a nut shell the config.xml is a real good place to look at for all this information because it will hold config values, and/or user varibales the module uses to run

Share this post


Link to post
Share on other sites

And to answer your question about how its sending an email: there is a lib file that has the email function in it

Is this part of your module (I can't seem to find it on the NWE site?) or a NWE function hidden somewhere?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...