PDA

View Full Version : اسپم شدن توسط gmail



olkamiz
جمعه 18 مرداد 1387, 21:33 عصر
من برای ارسال ایمیل در asp.net از gmail استفاده می کنم.
برای آزمایش کردن ارسال دریک حلقه ،در یک حلقه ی for چند تا ایمیل فرستادم . حالا ایمیل ها ارسال نمی شه و به خودم بر می گرده. وقتی وارد ایمیل می شم پیامی مبنی بر این که این کار برای جلوگیری از فرستادن اسپم است نمایش داده شده است.
برای خارج شدن از این وضعیت چه کار باید بکنم؟

mostafa_sgh
جمعه 18 مرداد 1387, 21:45 عصر
سلام دوست عزیز

دیگه این روش قابل استفاده نیست !!!

در حال حاضر اکثر هاستینگها متودهائی رو برای ارسال ایمیل از داخل سایت ارائه می دهند که باید از آنها استفاده کنید.

یا به عبارتی اجازه ارسال ایمیل بدون تایید اعتبار ( وارد کردن نام کاربری و کلمه عبور ) ممکن نیست و اگر هم ممکن باشد به عنوان Spam شناخته میشود.
در ضمن از فضای نام Systsm.Net و Systsm.Net.Mail استفاده کنید

این هم یک نمونه مثال :


try
{
MailMessage message=new MailMessage();

message.From = new MailAddress(txtSender.Text.Trim());
message.To.Add(new MailAddress(txtReceiver.Text.Trim()));

message.Subject = txtSubject.Text.Trim(); // sets the subject property of message
message.Body = txtBody.Text.Trim(); // sets the body for the message

//message.Priority = MailPriority.High;
message.IsBodyHtml = false;
SmtpClient client = new SmtpClient("smtp.googlemail.com", 587);
System.Net.NetworkCredential basicAuthentication = new System.Net.NetworkCredential("yourGmailAccount@gmail.com","mygmailpassword");
client.EnableSsl = true;
client.UseDefaultCredentials = false;
//Put your own, or your ISPs, mail server name onthis next line
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.Credentials = basicAuthentication;

client.Send(message);
return true;
}

olkamiz
جمعه 18 مرداد 1387, 22:59 عصر
از این که جواب دادید ممنونم.
من روش ارسال ایمیل را بلدم و مدت ها بود استفاده می کردم و کار هم می کرد بر خلاف چیز ی که شما گفتید.
ولی این بار خواستم در یک حلقه ی for دویست تا ایمیل بفرستم. که این باعث شد آدرس سرور من برای gmail اسپم بشه و در لیست سیاه قرار بگیره .
البته خیلی ها این مشکل را داشتند. و یکی در جواب گفته بود که این مشکل بعد از چند روز خود به خود درست می شه!!!

raravaice
شنبه 19 مرداد 1387, 00:50 صبح
البته خیلی ها این مشکل را داشتند. و یکی در جواب گفته بود که این مشکل بعد از چند روز خود به خود درست می شه!!!

یه کم بیشتر از چند روز.;)

با یه تایمر کار کن هر 5 یا 10 دقیقه بفرست اونم روزی 100 یا 200 تا بیشتر نه دور IP ایرانی هم یه خط قرمز بزرگ بکش که یادت بمونه از میل سرور هاشون استفاده نکنی.

موفق باشید

mostafa_sgh
شنبه 19 مرداد 1387, 00:53 صبح
ببخشید
من متوجه نشدم

من هم برا ارسال از حلقه For استفاده میکنم ، البته با یک تفاوت :

توی حلقه یه مکث کوتاه انجام میدم و Thread رو به مدت 5 میلی ثانیه می خوابونمش.
مانند کد زیر ...


for (i = 0; i < ds.Tables[0].Rows.Count; i++)
{
sendEmail(ds.Tables[0].Rows[i].ItemArray[2].ToString(), sbj, htmlLetter);
System.Threading.Thread.Sleep(5);
}


من که جواب گرفتم ، البته تو هاست خودم

Spam هم شناخته نمیشه ....

raravaice
شنبه 19 مرداد 1387, 01:00 صبح
Sleep کار خودشو کرده البته باید ببینی میل سروره هاستت چیه ! کرک شده نباشه! سرور کجاس ! حجم ارسال روزانه SMTP سرور چقدره! و خیلی موارد دیگه !

ولی در کل ضرر نداره مدت زمان Sleep رو یه کم بیشتر کنید.

موفق باشید

Amir Taghavi
شنبه 19 مرداد 1387, 09:40 صبح
عزیزم! روشت برای ارسال Email با تعداد بالا اشتباهه!

چرا؟! چون برای ارسال تعداد زیادی Email باید آدرس ها رو تو bcc قرار بدی بعد ارسال کنی. بطور کل فکر حلقه و Timer و Threading رو از سرت بیرون کن!


MailMessage message = new MailMessage();

Collections.Generic.List<string> bccCollection;
.
.
.
foreach (string bcc in bccCollection)
{
message.Bcc.Add(new MailAddress(bcc, "", Text.Encoding.UTF8));
}
.
.
.

olkamiz
شنبه 19 مرداد 1387, 10:44 صبح
همه ی جواب های شما دوستان عزیز خوب و بدرد بخور بود.
همه ی جواب هایی که این جا داده بودید روش های پیش گیری از این مشکل بود که من در آینده رعایت خواهم کرد.من باید از sleep استفاده می کردم ولی من قبل از این کار نمی دانستم که سرورم برای gmail اسپم خواهد شد.ا الان کار از کار گذشته و سرور من برای gmail اسپم شده. آیا حالا روشی وجود نداره که من به gmail بفهمونم که من اشتباها این همه ایمیل فرستادم و سرور من را از اسپم خارج کنه؟ چون من برای سیستم عضوی گیری سایتم به gmail نیاز دارم . و سیستم فرستادن ایمیل هاست خودم مشکل داره و نمی تونه ایمیل فعال سازی را به ایمیل هایی کهد در yahoo, gmail است نمی فرسته.
از yahoo هم برای فرستادن ایمیل نمی خوام استفاده کنم. چون اون هم در بعضی موارد در فرستاد ایمیل با gamil مشکل داره.

mostafa_sgh
شنبه 19 مرداد 1387, 16:12 عصر
به نظر من یه ایمیل برا قسمت پشتیبانی GMail بفرست و ازشون مذرت خواهی کن و بگو این تعداد ایمیل به علت اشتباه برنامه نویسی بوده و تکرار نمیشه ....

امیدوارم جواب بده !