ارسال اطلاعات پروژه اینترنت اشیاء با ایمیل در Node-RED و دسترسی به دیتا و ارسال آن ها در طول پروژه اینترنت اشیا از اهمیت ویژه ای برخوردار است. به عنوان مثال در نظر بگیرید پروژهی شما، اطلاعات را دریافت کرده و در زمان مشخصی باید بر روی سرور ارسال کند، حال برای آگاهی از اینکه، آیا دیتا ارسال شده یا خیر، نیاز به یک پیام رسان خواهید داشت. در آموزش های قبلی راجع به ربات تلگرام صحبت کردیم. که میتوانید اطلاعات مورد نیاز را از طریق بات تلگرام بر روی موبایل خود دریافت کنید. حال در این آموزش نحوهی ارسال و دریافت اطلاعات از طریق Gmail را به شما آموزش خواهم داد. در ادامه با مرجع تخصصی اینترنت اشیا دیجی اسپارک همراه باشید.
معرفی Node e-mail
نود e-mail از زیر مجموعههای Social میباشد که میتوانید از نوار سمت چپ Node-RED آن را داشته باشید. از طریق این نود میتوانید یک ایمیل مجزا را از طریق سرور IMAP به صورت مسیج ارسال نمایید. موضوع ایمیل را در قسمت msg.topic وارد کرده و از طریق msg.payload نمایش دهید.
SMTP server
اگر شما بخواهید یک ایمیل از اکانت جیمیل خود، از طریق نرم افزار دیگر ارسال نمایید نیاز به سرور Gmail SMTP خواهید داشت. SMTP مخفف Simple Mail Transfer Protocol میباشد. این سرور برای تمام کلاینتهای ارسال ایمیل ضروری میباشد. توجه داشته باشید که برای دریافت ایمیل بر روی اکانت اصلی جیمیل خود باید تنظیمات مربوط به دریافت ایمیل از طریق نرم افزارهای دیگر را فعال نمایید. (Allowing less secure apps to access your account) برای اینکار وارد تنظیمات Gmail خود شده و در قسمت برنامههای با امنیت کمتر، تیک روشن را بزنید.
تنظیمات پیش فرض SMTP Gmail
آدرس سرور برای ارسال Gmail SMTP به این صورت میباشد: smtp.gmail.com
User name که باید در تنظیمات وارد نمایید همان آدرس Gmail خودتان خواهد بود به این صورت: (Your Gmail address (e.g. [email protected]gmail.com
پسورد Gmail SMTP، پسورد Gmail خودتان خواهد بود: Your Gmail password
حال از طریق سرور SMTP یک ایمیل را که حاوی متن میباشد، روی جیمیل ارسال خواهیم کرد.
راه اندازی در Node-RED
در ابتدا نیاز به نود inject برای تعریف موضوع و Subject ایمیل خود میباشیم. به عنوان مثال میخواهیم عبارت Digispark هر روز ساعت ۸ صبح برای ما ایمیل گردد. برای این منظور، نود inject را از شاخهی input انتخاب کرده و وارد محیط Node-RED میکنیم. حال روی نود کلیک کنید و در قسمت payload متنی که باید برای شما ایمیل شود را به عنوان ورودی تایپ نمایید. در قسمت Topic عبارت subject: email sending recieving on NODE-RED را تایپ نمایید. حال میخواهیم عبارت هر روز ساعت ۸ صبح برای ما ایمیل شود. گزینهی Repeat را روی حالت at a specific time گذاشته و زمان و روزها را مشخص نمایید.
تنطیمات Node email
نود email از شاخهی Social را انتخاب کرده و وارد محیط Node-RED کنید. سپس روی نود کلیک کرده در قسمت TO، ایمیل خود (Your Gmail address) را وارد نمایید. در قسمت Server همانطور که در توضیحات SMTP گفته شد باید smtp.gmail.com را وارد نمایید. سپس در قسمت Userid ، آی دی Gmail خود و در پسورد، پسورد جیمیل خودتان را وارد نمایید. سپس Done را بزنید.
حال نیاز به Node e-mail in برای ارسال ایمیل داریم. از شاخهی social این نود را انتخاب کنید. روی نود کلیک کرده و سپس همانند تصویر زیر تنظیمات را انجام دهید.
تنظیمات Node Comment
نود comment صرفا برای نوشتن کامنت در فلوها استفاده میگردد. از آنجایی که در این پروژه، نود ورودی e-mail ما به خروجی خاصی متصل نمیگردد میتوانید از Node Comment برای نوشتن کامنت در فلوها استفاده نمایید.
تنظیمات Node debug
در انتها از Node Debug برای نمایش اطلاعات در دیباگر استفاده مینماییم.
اتصالات Node ها :
تا اینجا تمام Nodeهای مورد نیاز برای ارسال ایمیل را انتخاب و تنظیم کردیم. همانند تصویر زیر از نود inject به Debug وصل میکنیم. سپس از نود inject به نود e-mail وصل کنید.
حال Deploy کنید. ایمیل خود را چک کنید. عبارت Digispark.ir برای شما ارسال شده است.
چنانچه در مراحل راه اندازی و انجام این پروژه با مشکل مواجه شدید، بدون هیچ نگرانی در انتهای همین پست، به صورت ثبت نظر سوالتان را مطرح کنید. من در سریعترین زمان ممکن پاسخ رفع مشکل شما را خواهم داد.
سلام
در مورد ip static میخواستم بپرسم که همکاران شما آموزشی در این لینک گذاشتن digispark.ir آیا همین روش برای ساخت صحیح است و نیازی به خرید ip static از ispها نیست؟هر چند که این روش هم انگار جوابگو نیست!!
سلام
بله برای تنظیمات IP استاتیک از همین لینک استفاده کنید. ولی اگر از ISP آی پی تهیه نکرده باشید فقط از شبکه Local به صورت استاتیک خواهد بود.
از آموزشتون و وب سایت درجه یک دیجى اسپارک تشکر میکنم، آبا میشود این کار را روى ویندوز هم انجام داد؟ با همین مراحل منظورم هست
سلام
از توجه شما ممنونم .
امتحان نکردم ولی امکان پذیر است.من twitter روی ویندوز تست کردم و جواب گرفتم.
با سلام و تشکر از بحث های آموزشی مطرح شده و تسلط برموضوع اگر امکان دارد منابع اموزش node red را یا کلاسهای اموزشی را معرفی بفرمایید
سلام
از توجه شما ممنونم.
تنها مرجع فارسى آموزش Node-RED دیجى اسپارک مى باشد و تمام آموزش ها در شاخه آموزش رزبرى و اینترنت اشیا قرار گرفته است و میتوانید به صورت رایگان از آموزش ها استفاده کنید و از طریق ثبت کامنت در صورت به مشکل برخوردن در اجراى آنها ، رفع عیب نمایید.
همچنین آموزش طبقه بندى شده اینترنت اشیا Node-RED در سایت فرانش قرار گرفته شده است و میتوانید دوره آموزشى را تهیه نمایید.
دوره هاى حضورى آموزش اینترنت اشیا هم تا به حال در ٧ دوره در تهران و اصفهان برگزار شده و براى ثبت نام میتوانید از طریق لینک کارگاه آموزشى اینترنت اشیا اقدام نمایید.
سپاسگزارم
با سلام و تشکر از آموزش خوبتون
چجوری میشه یک عکس و فایل رو از این روش ارسال نمود .باتشکر
سلام
برای اینکار باید از دو نود File استفاده کنید. مسیر ذخیره اطلاعات را باید در قسمت file name وارد کنید و سپس در حالت بافر قرار دهید. برای نود file دوم هم به همین صورت عمل کنید و قبل از نود خروجی قرار دهید.