mfbx9da4 / deep-email-validator

Validates regex, typos, disposable, dns and smtp
MIT License
873 stars 92 forks source link

Doesn't validate emails except from gmail #7

Open MahbbRah opened 3 years ago

MahbbRah commented 3 years ago

Yahoo, aol, outlook and so on domain won't validate, nobody yet able to make a package that validate those.

mfbx9da4 commented 3 years ago

Sorry what do you mean doesn't validate them?

What does it return? What do you expect it to return?

0xR commented 3 years ago

it always fails the smtp check for outlook.com and office365 mailboxes

even though the email addresses I tried are valid

Enuzo commented 3 years ago

Hello, It returns the following error message: Uncaught Error: Cannot find module 'dns' webpackMissingModule dns.js:16 js dns.js:16

elderapo commented 3 years ago

Hello, It returns the following error message: Uncaught Error: Cannot find module 'dns' webpackMissingModule dns.js:16 js dns.js:16

Don't think this error is relevant to this issue... Are you trying to use deep-email-validator from the browser? If so it won't work because the browser doesn't have dns module (it's a NodeJS only thing).

mfbx9da4 commented 3 years ago

@elderapo is correct will ad to readme - @Enuzo this will not work in the browser and your comment is unrelated.

Enuzo commented 3 years ago

Hello, It returns the following error message: Uncaught Error: Cannot find module 'dns' webpackMissingModule dns.js:16 js dns.js:16

Don't think this error is relevant to this issue... Are you trying to use deep-email-validator from the browser? If so it won't work because the browser doesn't have dns module (it's a NodeJS only thing).

You're correct. Thanks for the response.

ganeshmani commented 3 years ago

It's not working for me on the server-side too. especially, outlook email validation

mfbx9da4 commented 3 years ago

Yeah there seem to be some issues with outlook validation.

gcleaves commented 3 years ago

When validating a known and working Yahoo address, I get this response: "The mail address that you specified was not syntactically correct."

FritzAxel commented 3 years ago

Hi guys, did you get the solution? It doesnt validate emails that contains @hotmail.com in my case. That's the response of validate function:

{
    valid: false,
    validators: {
      regex: { valid: true },
      typo: { valid: true },
      disposable: { valid: true },
      mx: { valid: true },
      smtp: { valid: false, reason: 'Mailbox not found.' }
    },
    reason: 'smtp'
}
jarthur22 commented 3 years ago

Was this ever solved @mfbx9da4 ? Trying to find a validation solution for work and will have to go with something else if this is still an issue.

mfbx9da4 commented 3 years ago

Hi I've not had time to work on this recently. Looks to be related to smtps.

FritzAxel commented 3 years ago

This is not a solution, but to keep validating gmail emails i use the "validate" like this:

await validate({
    email: email,
    sender: email,
    validateRegex: true,
    validateMx: true,
    validateTypo: true,
    validateDisposable: true,
    validateSMTP: email.includes('@gmail.com'),
  });
Vasrig commented 3 years ago

Hello,

I'm trying to implement verification for email from yahoo, icloud servers - but when I send the DATA command I can't send the next msg command.

If anyone can help me.

const commands = [ helo ${exchange}\r\n, mail from: <${sender}>\r\n, rcpt to: <${recipient}>\r\n, DATA\r\n, This is a test message.\r\n, .\r\n, ];

220 mtaproxy407.free.mail.bf1.yahoo.com ESMTP ready 250 mtaproxy407.free.mail.bf1.yahoo.com 250 sender asdfghjkl@yahoo.com.br ok 250 recipient asdfghjkl@yahoo.com.br ok 354 go ahead

STOP HERE WITH TIMEOUT THE NEXT COMANDO IS
This is a test message.\r\n, .\r\n,

copostic commented 2 years ago

Some update on this ?

pH-7 commented 1 year ago

@mfbx9da4 I believe validateSMTP should ideally be disabled by default (if you want me to raise a PR for it, just let me know).

It seems that only a handful of SMTP servers permit SMTP connection smoothly, and its success is contingent upon the IP reputation.

larose89 commented 10 months ago

Try adding the following code to the options to whitelist TLD domains additionalTopLevelDomains: [ "com", "com.au", "com.tw", "ca", "co.nz", "co.uk", "de", "fr", "it", "ru", "net", "org", "edu", "gov", "jp", "nl", "kr", "se", "eu", "ie", "co.il", "us", "at", "be", "dk", "hk", "es", "gr", "ch", "no", "cz", "in", "net", "net.au", "info", "biz", "mil", "co.jp", "sg", "hu", "uk", "co.id" ]

savaliyanidhi commented 7 months ago

libero.it domain not working with this additionalTopLevelDomains also