ESP8266 ওয়েব পৃষ্ঠা ব্যতীত


9

আমি কোনও ওয়েব সার্ভার তৈরি না করে কোনও ESP8266 এ ডেটা পাঠাতে পারি?

আমি একটি ওয়েব সার্ভারের মাধ্যমে ESP8266 এর GPIO পিনগুলি অ্যাক্সেস করছি am এখন আমি এটির জন্য একটি অ্যান্ড্রয়েড অ্যাপ তৈরি করতে চাই। সুতরাং আমি একটি ওয়েব সার্ভার তৈরি না করেই 8266 এ ডেটা প্রেরণ করতে চাই - এটি কি সম্ভব?


অ্যান্ড্রয়েড অ্যাপ ব্যবহার করে আপনি কি একই নেটওয়ার্কে থাকবেন?
রোহান

উত্তর:


8

হ্যাঁ, আপনি কোনও ওয়েব সার্ভার ব্যবহার না করে কোনও ESP8266 এ ডেটা প্রেরণ করতে পারেন তবে আপনি একটি ব্যবহার করতে পারেন, বা কারও সাথে কার্যকরীভাবে কিছু ব্যবহার করতে পারেন।

একটি ESP8266 হ'ল একটি ওয়াইফাই রেডিও এবং একটি নেটওয়ার্ক স্ট্যাক সহ মোটামুটি সাধারণ উদ্দেশ্যে কম্পিউটিং ডিভাইস, অতএব, আপনি কোডে বর্ণিত যত্ন নেওয়া কোনও যুক্তিসঙ্গত প্রোটোকল সম্পর্কে প্রায়োগিক প্রয়োগ করতে পারেন

যাইহোক, এটি প্রোটোকলগুলি প্রয়োগ করার জন্য বেশ জনপ্রিয় হয়ে উঠেছে যা মানুষের ব্যবহারের উদ্দেশ্যে তৈরি ক্ষুদ্রাকার ওয়েব পৃষ্ঠাগুলির মতো দেখতে এবং অভিনয় করে।

যেমন, আপনার ক্লায়েন্টের পরিবর্তে কিছু সংযুক্ত করা এবং এর মতো কিছু করা

GET /index.html HTTP/1.1

এটা বলতে পারে

GET /gpio/15/value HTTP/1.1

যেখানে URL টি নির্দিষ্ট দস্তাবেজকে বোঝায় না, তবে আপনি যে ডিভাইসে অ্যাক্সেস করতে চান তাতে ডেটাটির কিছু অংশকে বোঝায়। আপনার জন্য অনুরূপ জিনিস করতে পারেন POST, PATCH, DELETEইত্যাদি অনুরোধ।

আপনি যদি মানুষের ব্যবহারের জন্য একটি পৃষ্ঠা তৈরি না করেন তবে সাধারণত যে ডেটা আপনি বিনিময় করেন তা HTML পৃষ্ঠাগুলি হতে পারে না। প্রায়শই এটি পরিবর্তে JSON এর মতো কিছু হতে পারে। উদাহরণস্বরূপ

GET /gpio/15/value HTTP/1.1

মত সাড়া ট্রিগার হতে পারে

{"gpio": 15, "direction": "in", "value": 0}

একইভাবে, আপনি এমন একটি শেষ পয়েন্ট তৈরি করতে পারেন যেখানে আপনার ক্লায়েন্টটি জিপিআইও বলতে পারে

POST /gpio/15 HTTP/1.1
{"direction": "out", "value": 1}

এটি কিছুটা হলেও একটি শব্দার্থক বা বাস্তবায়ন সম্পর্কিত নির্দিষ্ট প্রশ্ন যদি প্রোগ্রামটি এই জাতীয় প্রশ্নের উত্তর দেয় তবে এটি একটি "ওয়েব সার্ভার" - এটি একটি ওয়েব সার্ভার হতে পারে যা ডেটা এবং জিপিওগুলি মোকাবেলায় বিভিন্ন সহায়ক কাজ চালায় (সার্ভার হিসাবে পরিবেশনকারী পৃষ্ঠাগুলি গতিময়ভাবে হতে পারে) ডাটাবেস প্রশ্নগুলি থেকে তাদের কিছু সামগ্রী তৈরি করুন), বা এটি একটি ডেডিকেটেড প্রোগ্রাম হতে পারে যা উভয়ই ডেটা নিয়ে কাজ করে এবং এইচটিটিপি কীভাবে কথা বলতে জানে।

এবং অবশ্যই জেএসএন পেলোডগুলি বিনিময় করতে এইচটিটিপি ব্যবহার করা জিনিসগুলি করার একমাত্র উপায় - এটি কেবলমাত্র বর্তমানের জনপ্রিয় যা অনেকগুলি ওয়েব-সার্ভারের মতো ধারণাগুলি পুনরায় ব্যবহার করে এবং এটি একটি ডিগ্রি এমনকি কোনও ওয়েব ব্রাউজারের ব্যবহারেরও অনুমতি দেয় may পরীক্ষার জন্য.


এটাও মনে রাখা উচিত যে ফোন এবং ইএসপি 8266 একই বাড়ির ওয়াইফাই নেটওয়ার্কের ক্লায়েন্ট হলে, এই জাতীয় স্কিমটি স্থানীয়ভাবে সর্বোত্তমভাবে কাজ করে। যদি ফোনটি "বাড়িতে" না থাকে বা এটি হয় তবে এটি কেবলমাত্র একটি মোবাইল নেটওয়ার্কে রয়েছে, এটিকে ESP8266 এ পৌঁছানোর অনুমতি দেওয়ার অর্থ হ'ল নেটওয়ার্কে বাহ্যিক অনুরোধগুলি মঞ্জুর করা, কিছু এড়াতে এড়ানো। সেক্ষেত্রে, এমন একটি প্রোটোকল ব্যবহার করা বেশ জনপ্রিয় যেখানে ESP8266 ডিভাইস এবং ফোন উভয়ই একটি বাহ্যিক রিলে সার্ভারে স্বতন্ত্রভাবে পৌঁছায়, যা তাদের মধ্যে বার্তা প্রেরণ করে। এমকিউটিটি একটি স্কিমের উদাহরণ যা প্রায়শই রিলে-সার্ভার ভিত্তিক আর্কিটেকচার সহ সিস্টেমের জন্য ব্যবহৃত হয়।


এছাড়াও, আমি DELETEএকটি বন্দরের জন্য বাস্তবায়ন সম্পর্কে আগ্রহী ;-)
আরজান

1
অনেকগুলি লিনাক্স সিস্টেমে আপনাকে একটি জিপিআইও / রফতানি / শ্রেণি / জিপিও ইন্টারফেস ব্যবহার করার আগে আপনাকে একটি জিপিআইও "রফতানি" করতে হয়। আমার মাথার উপরের অংশটি আমি জানি না আপনি যদি একটিটিকে "আনসপোর্টপোর্ট" করতে পারেন তবে ধারণা অনুসারে এটি একটি ডিলিট :-) এর সাথে মেলে পারে
ক্রিস স্ট্রাটটন

2

হ্যাঁ, আপনি একটি কাস্টম টিসিপি সার্ভার লিখতে পারেন । বা হালকা ওজনের জন্য একটি ইউডিপি সার্ভার ব্যবহার করুন ।

যে কোনও উপায়ে, টিসিপি / ইউডিপির শীর্ষে আপনার নিজের অ্যাপ্লিকেশন প্রোটোকলটি সংজ্ঞায়িত করুন এবং আপনার অ্যাপ্লিকেশনটি এটি প্রেরণ করুন। এবং আপনি এইচটিটিপি-র ওভারহেডে সঞ্চয় করুন। (এইচটিটিপিতে প্রতি বার্তাটিতে প্রায় 1000 বাইট ওভারহেড থাকতে পারে!)

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.