{"id":4811,"date":"2024-12-15T23:55:58","date_gmt":"2024-12-15T18:55:58","guid":{"rendered":"https:\/\/yarat.uz\/?p=4811"},"modified":"2025-03-19T15:28:22","modified_gmt":"2025-03-19T10:28:22","slug":"elektron-pochta-email-bilan-ishlash-18","status":"publish","type":"post","link":"https:\/\/yarat.uz\/?p=4811","title":{"rendered":"Elektron pochta (email) yordamida boshqarish [18+]"},"content":{"rendered":"<p style=\"text-align: justify;\">Ushbu darsda ESP8266 mikrokontrolleridan biron manzilga elektron pochta yuborish, qabul qilish, pochta qutisi bilan ishlash, qabul qilingan pochtani o&#8217;qish, ochish va boshqa vazifalar uchun qo&#8217;llashga mo&#8217;ljallangan mobizt muallifligidagi biblioteka asosidagi namunaviy sketchlarni ko&#8217;rib chiqamiz. Buning uchun <a href=\"https:\/\/github.com\/mobizt\/ESP-Mail-Client\">ushbu<\/a> bibliotekadan foydalanamiz.<\/p>\n<p style=\"text-align: justify;\">Yuqorida belgilangan vazifalarni bajarish uchun elektron pochta, akkaunt, uning qutisi tushunchalari, sozlamalari haqida yetarli ma&#8217;lumotlarga ega bo&#8217;lish tavsiya etiladi. Lekin biz ushbu darsda, ularga ko&#8217;p to&#8217;xtalib o&#8217;tirmaymiz.\u00a0 To&#8217;g&#8217;ridan-to&#8217;g&#8217;ri namunaviy sketchlarning soddalashtirilgan variantidan foydalanib, datchik qiymatlarini ma&#8217;lum davriylikda elektron pochta manziliga yuborish (1-misol) hamda qabul qilingan elektron pochta xabari asosida datchik ko&#8217;rsatkichlarini port monitoriga chiqarish va xabarning mavzusi matni asosida mikrokontroller ichki svetodiodini boshqarish (2-misol) dasturlarini yaratishga kirishamiz.<\/p>\n<p style=\"text-align: justify;\"><em>Diqqat!<br \/>\nElektron pochta yuborish, qabul qilish va qayta ishlash jarayonlari tegishli alohida serverlar tomonidan bajarilishi sababli, ularni smtp-server tomonidan yuborish davriyligi, shuningdek, imap-serverda qabul qilish vaqti uzoq talab qilishi mumkin. Aynan qancha vaqt talab etilishi esa, har xil serverlar uchun turlicha bo&#8217;ladi. Bundan tashqari, ba&#8217;zi serverlar bir manzilga tez-tez yuborilgan xabarni spam sifatida qabul qilishi yoki ularni umuman qabul qilmasligi (xabarni bloklab qo&#8217;yishi) ham mumkin.<\/em><\/p>\n<p style=\"text-align: center;\"><strong>Datchik ko&#8217;rsatkichlarini elektron pochta manziliga yuborish<\/strong><\/p>\n<p style=\"text-align: justify;\">1-misol. Ushbu misolda <strong>&#8220;\/ESP Mail Client\/SMTP\/Send_Text&#8221;<\/strong> namunaviy sketchining soddalashtirilgan varianti yordamida Wemos D1 mini platasiga ulangan datchik (termistor) qiymatlarini ma&#8217;lum davriylikda iot@yarat.uz elektron pochta manzilidan ixtiyoriy boshqa elektron pochta manziliga yuborishni ko&#8217;rib chiqamiz. Buning uchun kerakli elektron komponentlarni o&#8217;zimizga tanish bo&#8217;lgan termistorli ixcham sxema asosida bog&#8217;laymiz.<\/p>\n<p style=\"text-align: justify;\"><em>Ushbu misolda mikrokontrollerdan datchik ko&#8217;rsatkichlarini yuborish davriyligi 30 sekunddan kam bo&#8217;lmasligi maqsadga muvofiq. Chunki har bir xabar yuboruvchi (smtp) va qabul qiluvchi (imap) server orqali qayta ishlanishi uchun ham vaqt talab etiladi.<\/em><\/p>\n<p><em>Sxema:<\/em><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-2519 aligncenter\" src=\"https:\/\/yarat.uz\/wp-content\/uploads\/2024\/04\/wemos_termistor_bb.jpg\" alt=\"\" width=\"618\" height=\"572\" srcset=\"https:\/\/yarat.uz\/wp-content\/uploads\/2024\/04\/wemos_termistor_bb.jpg 618w, https:\/\/yarat.uz\/wp-content\/uploads\/2024\/04\/wemos_termistor_bb-300x278.jpg 300w\" sizes=\"auto, (max-width: 618px) 100vw, 618px\" \/><\/p>\n<p><em>Sketch (&#8220;Send_Text&#8221;):<\/em><\/p>\n<pre><code><\/code><\/pre>\n<p><em>Natija:<\/em><\/p>\n<div class=\"epyt-video-wrapper\"><iframe loading=\"lazy\"  id=\"_ytid_75315\"  width=\"800\" height=\"450\"  data-origwidth=\"800\" data-origheight=\"450\"  data-relstop=\"1\" src=\"https:\/\/www.youtube.com\/embed\/T5avMPQKiN4?enablejsapi=1&#038;autoplay=0&#038;cc_load_policy=0&#038;cc_lang_pref=&#038;iv_load_policy=1&#038;loop=0&#038;rel=0&#038;fs=1&#038;playsinline=0&#038;autohide=2&#038;hl=ru_RU&#038;theme=dark&#038;color=red&#038;controls=1&#038;\" class=\"__youtube_prefs__  epyt-is-override  no-lazyload\" data-vol=\"25\"  title=\"YouTube player\"  allow=\"fullscreen; accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen data-no-lazy=\"1\" data-skipgform_ajax_framebjll=\"\"><\/iframe><\/div>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-4839 aligncenter\" src=\"https:\/\/yarat.uz\/wp-content\/uploads\/2024\/12\/email_send.png\" alt=\"\" width=\"360\" height=\"780\" srcset=\"https:\/\/yarat.uz\/wp-content\/uploads\/2024\/12\/email_send.png 360w, https:\/\/yarat.uz\/wp-content\/uploads\/2024\/12\/email_send-138x300.png 138w\" sizes=\"auto, (max-width: 360px) 100vw, 360px\" \/><\/p>\n<p style=\"text-align: center;\"><strong>Elektron pochta xabari asosida qurilmalarni boshqarish<\/strong><\/p>\n<p style=\"text-align: justify;\">2-misol. Ushbu misolda <strong>&#8220;\/ESP Mail Client\/IMAP\/Read_Single_Email&#8221;<\/strong> namunaviy sketchining soddalashtirilgan variantidan foydalanamiz. Uning yordamida qabul qilingan elektron pochta xabarini (xususan, ushbu misolda email-xabarning mavzusini) portga chiqarish va uning asosida mikrokontroller ichki svetodiodini o&#8217;chirish yoki yoqishni ko&#8217;rib chiqamiz. Buning uchun aniq bir elektron pochta manzilidan xabar mavzusi sifatida mos ravishda &#8220;ON&#8221; yoki &#8220;OFF&#8221; (harflar registri muhim emas) yozuvlarini iot@yarat.uz manziliga yuborishimiz kerak bo&#8217;ladi. Boshqa manzildan qabul qilingan xabarlar esa, svetodiod holatiga ta&#8217;sir qilmasligi kerak.<\/p>\n<p style=\"text-align: justify;\">Qabul qilingan email-xabar matnini mikrokontroller tomonidan qayta ishlashda xotira bilan bog&#8217;liq bo&#8217;lgan xatoliklar yuzaga kelishi aniqlandi, shu sababli, ushbu misolda email-xabar matni o&#8217;rniga uning mavzusidan foydalanishga tog&#8217;ri keldi. Ya&#8217;ni, svetodiodni boshqarish buyrug&#8217;i bevosita email-xabar matnida emas, balki uning mavzusida ko&#8217;rsatildi (kelgusida kamchilik bartaraf etilsa, yuqoridagi sketch matni ham yangilab qo&#8217;yiladi).<\/p>\n<p style=\"text-align: justify;\"><em>Kompyuterdan svetodiodni boshqarish buyrug&#8217;ini yuborish intervali 5 sekunddan kam bo&#8217;lmasligi maqsadga muvofiq. Ayniqsa, keyingi buyruqni yuborishdan oldin, oldingi buyruq bajarilganiga ishoncha hosil qilish zarur. Aksincha, ayrim buyruqlar bajarilmay qolishi mumkin.<\/em><\/p>\n<p><em>Sketch (&#8220;Read_Single_Email&#8221;):<\/em><\/p>\n<pre><code><\/code><\/pre>\n<p><em>Natija:<\/em><\/p>\n<div class=\"epyt-video-wrapper\"><iframe loading=\"lazy\"  id=\"_ytid_17937\"  width=\"800\" height=\"450\"  data-origwidth=\"800\" data-origheight=\"450\"  data-relstop=\"1\" src=\"https:\/\/www.youtube.com\/embed\/a9ItRGg0paU?enablejsapi=1&#038;autoplay=0&#038;cc_load_policy=0&#038;cc_lang_pref=&#038;iv_load_policy=1&#038;loop=0&#038;rel=0&#038;fs=1&#038;playsinline=0&#038;autohide=2&#038;hl=ru_RU&#038;theme=dark&#038;color=red&#038;controls=1&#038;\" class=\"__youtube_prefs__  epyt-is-override  no-lazyload\" data-vol=\"25\"  title=\"YouTube player\"  allow=\"fullscreen; accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen data-no-lazy=\"1\" data-skipgform_ajax_framebjll=\"\"><\/iframe><\/div>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-4840 size-full\" src=\"https:\/\/yarat.uz\/wp-content\/uploads\/2024\/12\/email_read.png\" alt=\"\" width=\"897\" height=\"352\" srcset=\"https:\/\/yarat.uz\/wp-content\/uploads\/2024\/12\/email_read.png 897w, https:\/\/yarat.uz\/wp-content\/uploads\/2024\/12\/email_read-300x118.png 300w, https:\/\/yarat.uz\/wp-content\/uploads\/2024\/12\/email_read-768x301.png 768w\" sizes=\"auto, (max-width: 897px) 100vw, 897px\" \/><\/p>\n<p>&nbsp;<\/p>\n<pre><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre><code><\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Ushbu darsda ESP8266 mikrokontrolleridan biron manzilga elektron pochta yuborish, qabul qilish, pochta qutisi bilan ishlash, qabul qilingan pochtani o&#8217;qish, ochish va boshqa vazifalar uchun qo&#8217;llashga mo&#8217;ljallangan mobizt muallifligidagi biblioteka asosidagi namunaviy sketchlarni ko&#8217;rib chiqamiz. Buning uchun ushbu bibliotekadan foydalanamiz. Yuqorida belgilangan vazifalarni bajarish uchun elektron pochta, akkaunt, uning qutisi tushunchalari, sozlamalari haqida yetarli ma&#8217;lumotlarga ega [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[21],"tags":[],"class_list":["post-4811","post","type-post","status-publish","format-standard","hentry","category-iot"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/yarat.uz\/index.php?rest_route=\/wp\/v2\/posts\/4811","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/yarat.uz\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/yarat.uz\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/yarat.uz\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/yarat.uz\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4811"}],"version-history":[{"count":19,"href":"https:\/\/yarat.uz\/index.php?rest_route=\/wp\/v2\/posts\/4811\/revisions"}],"predecessor-version":[{"id":4876,"href":"https:\/\/yarat.uz\/index.php?rest_route=\/wp\/v2\/posts\/4811\/revisions\/4876"}],"wp:attachment":[{"href":"https:\/\/yarat.uz\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4811"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/yarat.uz\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4811"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/yarat.uz\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4811"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}