PDA

View Full Version : ارسال ايميل به صورت اتوماتيك توسط سايت



smakhavan
دوشنبه 10 خرداد 1389, 13:47 عصر
سلام
من يه سخت افزاري دارم كه اطلاعات براي هاستي به صورت مرتب (بازه زماني 10 دقيقه) از طريق مودم gprs ارسال ميكنه و يه برنامه asp.net هم براي نمايش و مديريت اطلاعات داريم.

حالا مشكلي كه دارم اينه كه اگه احيانا مشكلي براي سخت افزار پيش اومد و اطلاعات را ارسال نكرد از طريق ايميل يه هشدار به مسوولش بدهم (ارسال ايميل را بلدم) ولي نميدونم چه جوري يه چيزي روي سرور داشته باشم كه مثلا هر يك ساعت يك بار اتوماتيك چك كنه و در صورت نيامدن داده جديد ايميل هشدار را بفرسته.

Nightbat
دوشنبه 10 خرداد 1389, 14:03 عصر
از thread استفاده کن. توی اون 1 ساعت sleep ش کن، بعد هم که راه افتاد چک کن، دوباره sleep کن.

smakhavan
سه شنبه 11 خرداد 1389, 13:36 عصر
ميشه يك كم بيشتر توضيح بدين.
يكي ميگفت بايد از كش استفاده كني
راستش من استفاده از هيچ كدوم را بلد نيستم. يعني كجا اين عمليات شروع ميشه؟ تو چه صفحه اي بايد بنويسم؟

kooshanakhai
سه شنبه 11 خرداد 1389, 14:18 عصر
ميشه يك كم بيشتر توضيح بدين.
يكي ميگفت بايد از كش استفاده كني
راستش من استفاده از هيچ كدوم را بلد نيستم. يعني كجا اين عمليات شروع ميشه؟ تو چه صفحه اي بايد بنويسم؟
بله،با Cache قابل انجامه.به این شکل که یک Event برای اجرا در زمان Expired شدنش ایجاد می کنیم.در این Event دوباره یک Cache ایجاد می شه.در نتیجه یک فرآیند ایجاد می شه که پایان نداره و هر چند دقیقه یکبار فرآیندی اجرا می شه،هرچند کاربری نباشه.ولی اجرای این روش یکمی پیچیدگی داره.


سلام
من يه سخت افزاري دارم كه اطلاعات براي هاستي به صورت مرتب (بازه زماني 10 دقيقه) از طريق مودم gprs ارسال ميكنه و يه برنامه ASP.NET هم براي نمايش و مديريت اطلاعات داريم.

حالا مشكلي كه دارم اينه كه اگه احيانا مشكلي براي سخت افزار پيش اومد و اطلاعات را ارسال نكرد از طريق ايميل يه هشدار به مسوولش بدهم (ارسال ايميل را بلدم) ولي نميدونم چه جوري يه چيزي روي سرور داشته باشم كه مثلا هر يك ساعت يك بار اتوماتيك چك كنه و در صورت نيامدن داده جديد ايميل هشدار را بفرسته.
راه حساب شده و صحیحش سخته.
اگر بازدید کننده داره سایت،پیشنهاد می کند تو OnLoad صفحه ای که زیاد بازدید داره(ترجیحا Master Page) چک کن ببین آخرین اطلاعات رسیده چه زمانی بوده و اگر بیشتر از مثلا 20 دقیقه بود ایمیل ارسال کنه.
تا اینجا مشکلت حل شده.حالا یکم بهینه می کنیم کار رو.تو یک Application زمان آخرین چک کردن رو ذخیره کن.و تو یک شرط بزار که زمان آخرین چک کردن اختلافش با زمان حال، اگر بیشتر از مثلا 10 دقیقه بود...
سادست.

Nightbat
سه شنبه 11 خرداد 1389, 14:52 عصر
توی application_start یه thread درست کن که کارش چک کردن باشه، بعد این thread رو برای 1 ساعت sleep کن. و نهایتا این لوپ رو ادامه بده.

smakhavan
سه شنبه 11 خرداد 1389, 21:20 عصر
اگر بازدید کننده داره سایت،پیشنهاد می کند تو OnLoad صفحه ای که زیاد بازدید داره(ترجیحا Master Page) چک کن ببین آخرین اطلاعات رسیده چه زمانی بوده و اگر بیشتر از مثلا 20 دقیقه بود ایمیل ارسال کنه.
تا اینجا مشکلت حل شده.حالا یکم بهینه می کنیم کار رو.تو یک Application زمان آخرین چک کردن رو ذخیره کن.و تو یک شرط بزار که زمان آخرین چک کردن اختلافش با زمان حال، اگر بیشتر از مثلا 10 دقیقه بود...
سادست.

مشكل اينه كه خيلي بازديد كننده نداره. در واقع سخت افزارها دارند ديتا را ميفرستند روي سرور و يك ادمين هم در مواقع لزوم مياد و از ديتا استفاده ميكنه. اما ميخواهم با استفاده از اين ايميل به مسوول سخت افزارها اطلاع بدم كه يه مشكلي در ارسال ديتا به وجود اومده!

kooshanakhai
سه شنبه 11 خرداد 1389, 22:23 عصر
مشكل اينه كه خيلي بازديد كننده نداره. در واقع سخت افزارها دارند ديتا را ميفرستند روي سرور و يك ادمين هم در مواقع لزوم مياد و از ديتا استفاده ميكنه. اما ميخواهم با استفاده از اين ايميل به مسوول سخت افزارها اطلاع بدم كه يه مشكلي در ارسال ديتا به وجود اومده!
شما راهی که گفتم رو اجرا کنید.یک فکری برای بازدید می کنیم ;)
با uptimerobot.com هر 5 دقیقه یک درخواست می دیم!

Nightbat
سه شنبه 11 خرداد 1389, 22:48 عصر
مشكل اينه كه خيلي بازديد كننده نداره. در واقع سخت افزارها دارند ديتا را ميفرستند روي سرور و يك ادمين هم در مواقع لزوم مياد و از ديتا استفاده ميكنه. اما ميخواهم با استفاده از اين ايميل به مسوول سخت افزارها اطلاع بدم كه يه مشكلي در ارسال ديتا به وجود اومده!

راهی که گفتم مشکلت رو حل می کنه

reza_program
پنج شنبه 17 فروردین 1391, 12:22 عصر
از thread استفاده کن. توی اون 1 ساعت sleep ش کن، بعد هم که راه افتاد چک کن، دوباره sleep کن.

سلام
آقا من اگه بخوام همین نخ رو بطور دلخواه متوقف کنم امکان داره؟؟؟
و بعد دوباره اجازه شروع رو بهش بدم!

fakhravari
جمعه 18 فروردین 1391, 16:58 عصر
http://barnamenevis.org/showthread.php?334127-%D8%A7%D8%B1%D8%B3%D8%A7%D9%84-%D8%AC%D8%AF%DB%8C%D8%AF-%D8%AA%D8%B1%DB%8C%D9%86-%D9%BE%D8%B3%D8%AA-%D9%87%D8%A7-%D8%A8%D9%87-%D8%A7%DB%8C%D9%85%DB%8C%D9%84-%DA%A9%D8%A7%D8%B1%D8%A8%D8%B1%D8%A7%D9%86/page3