সুচিপত্র:

R-PiAlerts: রাস্পবেরি পিস দিয়ে একটি ওয়াইফাই ভিত্তিক নিরাপত্তা ব্যবস্থা তৈরি করুন: Ste টি ধাপ (ছবি সহ)
R-PiAlerts: রাস্পবেরি পিস দিয়ে একটি ওয়াইফাই ভিত্তিক নিরাপত্তা ব্যবস্থা তৈরি করুন: Ste টি ধাপ (ছবি সহ)

ভিডিও: R-PiAlerts: রাস্পবেরি পিস দিয়ে একটি ওয়াইফাই ভিত্তিক নিরাপত্তা ব্যবস্থা তৈরি করুন: Ste টি ধাপ (ছবি সহ)

ভিডিও: R-PiAlerts: রাস্পবেরি পিস দিয়ে একটি ওয়াইফাই ভিত্তিক নিরাপত্তা ব্যবস্থা তৈরি করুন: Ste টি ধাপ (ছবি সহ)
ভিডিও: R-PiAlerts 2024, নভেম্বর
Anonim
Image
Image
R-PiAlerts: রাস্পবেরি পিস দিয়ে একটি ওয়াইফাই ভিত্তিক নিরাপত্তা ব্যবস্থা তৈরি করুন
R-PiAlerts: রাস্পবেরি পিস দিয়ে একটি ওয়াইফাই ভিত্তিক নিরাপত্তা ব্যবস্থা তৈরি করুন
R-PiAlerts: রাস্পবেরি পিস দিয়ে একটি ওয়াইফাই ভিত্তিক নিরাপত্তা ব্যবস্থা তৈরি করুন
R-PiAlerts: রাস্পবেরি পিস দিয়ে একটি ওয়াইফাই ভিত্তিক নিরাপত্তা ব্যবস্থা তৈরি করুন

আপনার ডেস্কে কাজ করার সময়, হঠাৎ আপনি একটি দূরবর্তী শব্দ শুনতে পান। কেউ কি শুধু বাড়িতে এসেছে? আমার গাড়ি আমার বাড়ির সামনে পার্ক করা আছে, কেউ কি আমার গাড়িতে ুকেছে? আপনি কি চান না যে আপনি আপনার ফোনে বা আপনার ডেস্কে বিজ্ঞপ্তি পেয়েছেন যাতে আপনি সিদ্ধান্ত নিতে পারেন যে তদন্ত করা হবে কি না? আচ্ছা আর প্রশ্ন নেই! R-PiAlerts এখানে!

R-PiAlerts কি? যদি নড়াচড়া শনাক্ত করা হয়, সিস্টেমটি ব্যবহারকারীকে একটি টেক্সট বার্তা এবং একটি ঝলকানি LED ডিসপ্লে (নীরব ভিজ্যুয়াল অ্যালার্ম) দিয়ে সম্ভাব্য ব্রেক-ইন সম্পর্কে অবহিত করবে। একবার ব্যবহারকারী একটি বিজ্ঞপ্তি পান, তিনি তদন্ত করতে পারেন। সমস্ত সনাক্ত করা আন্দোলন ফায়ারবেস ডাটাবেসে লগ ইন করা হবে। একটি ওয়েব ব্রাউজারে মুভমেন্ট লগ দেখার পাশাপাশি, ব্যবহারকারী একটি iOS অ্যাপের মাধ্যমে মুভমেন্ট লগ অ্যাক্সেস করতে পারেন। সাম্প্রতিক সময়ে আমার এলাকার আশেপাশের যানবাহন এবং বাড়িগুলিতে ব্রেক-ইন বেড়ে যাওয়ার কারণে আমি এটি নির্মাণের সিদ্ধান্ত নিয়েছি।

কেন Pi3? আমার ছোট কিছু দরকার ছিল যা আন্দোলন সনাক্ত করতে পারে এবং প্রয়োজনে ব্যাটারি বন্ধ করে দিতে পারে। তারপরে, আমি ইউনিটটিকে দরজার পিছনে বা গাড়িতে লুকিয়ে রাখতে পারি। এছাড়াও ইউনিট আমাকে বিজ্ঞপ্তি বা সতর্কতা পাঠাতে সক্ষম হতে হবে। Pi3 বিল্ট ইন ওয়াইফাই এবং ইউএসবি ব্যাটারি প্যাক চালানোর ক্ষমতা দিয়ে এই সমস্ত কাজ করতে পারে। আমি Pi3 কেন বেছে নিলাম তার অন্যান্য কারণ:

  • পাই তুলনামূলকভাবে সস্তা
  • এটি স্থাপন এবং স্কেল আপ করা সহজ
  • সফ্টওয়্যার দৃষ্টিকোণ থেকে এটি কনফিগারযোগ্য
  • ডিসপ্লে এবং সেন্সর ব্যবহার করার ক্ষমতা। এই প্রকল্পটি সেন্সহ্যাট ব্যবহার করবে
  • হেডলেস পরিচালনা করুন (মনিটর, কীবোর্ড বা মাউস ছাড়া)

এটা কিভাবে কাজ করে

  • আদর্শভাবে ব্যবহারকারীর ফায়ারবেস ডাটাবেসের সাথে সংযুক্ত 2 রাস্পবেরি পিসের প্রয়োজন হবে, তবে একটি একক পাইও কাজ করবে।
  • SenseHat ব্যবহার করে, প্রথম Pi (Pi1) অ্যাকসিলরোমিটারের সাহায্যে আন্দোলন সনাক্ত করবে এবং দ্বিতীয় Pi (Pi2) আন্দোলনের বিজ্ঞপ্তি প্রদর্শন করবে।
  • যখন Pi1 গতি সনাক্ত করে, এটি 3 টি কাজ করে

    • ডাটাবেসে লগ মুভমেন্ট
    • Pi2 প্রদর্শনের জন্য ডাটাবেসে একটি বিজ্ঞপ্তি এন্ট্রি তৈরি করুন
    • ব্যবহারকারীকে একটি পাঠ্য বার্তা পাঠান যা ব্যবহারকারীর চলাচল সম্পর্কে অবহিত করে।
  • যখন Pi2 ডাটাবেস থেকে প্রদর্শনের জন্য একটি বিজ্ঞপ্তি সনাক্ত করে, তখন দুটি জিনিস ঘটে

    • Pi2 এর LED ডিসপ্লে ধারাবাহিকভাবে বিজ্ঞপ্তি দেখাবে
    • ব্যবহারকারী Pi2 SenseHat এর বোতামে চাপ দিয়ে বিজ্ঞপ্তি সাফ করতে পারেন। এটি ডাটাবেসে নোটিফিকেশন এন্ট্রিও পরিষ্কার করবে।
  • আইওএস অ্যাপের সাহায্যে ব্যবহারকারী পারেন

    • ডাটাবেস অ্যাক্সেস; মুভমেন্ট লগ পড়ুন এবং মুছে ফেলুন
    • ব্যবহারকারী Pi1 এর LED ডিসপ্লেতে একটি বার্তা প্রদর্শন করতে Pi1 পাঠাতে পারেন।

বাস্তবিক দরখাস্তগুলো

  1. আপনি যদি রাস্তায় ওয়াইফাই রেঞ্জের মধ্যে আপনার গাড়ি পার্ক করেন। Pi1 এ একটি ব্যাটারি প্যাক সংযুক্ত করুন (ছবি দেখুন)। আপনার গাড়িতে Pi1 লুকান। আপনার ডেস্কের পাশে যেমন সহজেই দেখা যায় এমন Pi2 রাখুন (ছবি দেখুন)।
  2. আরেকটি আবেদন হল আপনার বাড়িতে Pi1 একটি দরজার পাশে রাখা। পাই এত ক্ষুদ্র যে বেশিরভাগ মানুষ এটি লক্ষ্য করবে না বিশেষত যদি এটি কব্জির পিছনে থাকে (ছবি দেখুন)। তারপর আপনার কাজের ডেস্কে আপনার Pi2 রাখুন।
  3. কুকুর বাড়িতে একটি স্পট মধ্যে এটা অনুমান করা হয় না? সেই এলাকায় একটি Pi1 রাখুন। নিশ্চিত করুন যে আপনি একটি শক্ত বাক্সে Pi রেখেছেন যাতে আপনার কুকুর এটি চিবিয়ে না ফেলে।

যতক্ষণ আপনার পিস ওয়াইফাই রেঞ্জে থাকে, তারা আপনাকে চলাফেরার বিষয়ে সতর্ক বা অবহিত করতে পারে। যদি আপনার দ্বিতীয় Pi না থাকে, তাহলে আপনি মুভমেন্ট সনাক্ত করতে এবং আপনার সেল ফোনের মাধ্যমে SMS বিজ্ঞপ্তি পেতে Pi1 ব্যবহার করতে পারেন।

উপকরণ বিল

  • দুটি (2) রাস্পবেরি পাই 3 এস চলমান রাস্পবিয়ান (রাস্পবেরি পাই 2 একটি ওয়াইফাই ডংগলের সাথেও কাজ করবে)
  • দুই (2) SenseHats
  • ম্যাক এবং আইওএস ডিভাইস

সফটওয়্যার প্রয়োজন

  • পাইরেবেস লাইব্রেরি (ফায়ারবেসের সাথে সংযুক্ত)
  • SenseHat লাইব্রেরি (অ্যাকসিলরোমিটার এবং LED ডিসপ্লে ব্যবহারের জন্য)
  • টুইলিও লাইব্রেরি (এসএমএস পাঠানোর জন্য)
  • পাইথন 3, সর্বশেষ রাস্পবিয়ান দিয়ে নির্মিত
  • IDLE সহ রাস্পবিয়ান
  • আপনার ম্যাকের Xcode8 এবং Cocoapods
  • শেখার এবং অন্বেষণ করার ইচ্ছা

সাইড নোট এটি একমাত্র পাই ভিত্তিক নিরাপত্তা সমাধান নয়। যদি আপনার কোন ধারনা, পরামর্শ থাকে, অথবা শুধু আমার কোডটি রিফ্যাক্টর করতে চান, দয়া করে নীচে একটি মন্তব্য করুন! =)

ধাপ 1: ফায়ারবেস এবং টুইলিও অ্যাকাউন্ট সেটআপ করুন

ফায়ারবেস এবং টুইলিও অ্যাকাউন্ট সেটআপ করুন
ফায়ারবেস এবং টুইলিও অ্যাকাউন্ট সেটআপ করুন
ফায়ারবেস এবং টুইলিও অ্যাকাউন্ট সেটআপ করুন
ফায়ারবেস এবং টুইলিও অ্যাকাউন্ট সেটআপ করুন

প্রথমত, আমাদের পিসের সাথে ঝগড়া শুরু করার আগে, আমাদের ফায়ারবেস এবং টুইলিও সেটআপ করতে হবে। ফায়ারবেস একটি পরিষেবা হিসাবে গুগলের ব্যাকএন্ড। ফায়ারবেসে ডাটাবেস, ক্লাউড মেসেজিং, অথেন্টিকেশন, স্টোরেজ ইত্যাদির মতো বৈশিষ্ট্য অন্তর্ভুক্ত রয়েছে, এই প্রকল্পের জন্য, আমাদের কেবল ফায়ারবেসের রিয়েলটাইম ডাটাবেস এবং প্রমাণীকরণ ব্যবহার করতে হবে। আপনার ফায়ারবেস ডাটাবেসে পড়া এবং লেখার জন্য প্রমাণীকরণের প্রয়োজন হবে। ফায়ারবেস সেটআপ করতে:

  1. ফ্রি ফায়ারবেস অ্যাকাউন্টের জন্য নিবন্ধন করুন
  2. কনসোলে যান। একটি নতুন প্রকল্প তৈরি করুন এবং এটি একটি নাম দিন।
  3. বাম মেনুর অধীনে, "ওভারভিউ" এ ক্লিক করুন
  4. "আপনার ওয়েব অ্যাপে Firebase যোগ করুন" ক্লিক করুন, আপনার APIKey এবং projectid কপি করুন (url নয়)। প্রোজেক্ট আইডি বিভিন্ন ইউআরএল -এ অবস্থিত যেমন ডাটাবেস:
  5. বাম মেনুর অধীনে, "প্রমাণীকরণ" এ ক্লিক করুন। "সাইন ইন পদ্ধতি" এ যান এবং "ইমেল/পাসওয়ার্ড" সক্ষম করুন
  6. "ব্যবহারকারী" এর অধীনে আপনার পছন্দের ইমেল/পাসওয়ার্ড সহ একটি নতুন ব্যবহারকারী অ্যাকাউন্ট তৈরি করুন। আপনি ডাটাবেসে লগ ইন করার জন্য এই শংসাপত্রটি ব্যবহার করবেন।
  7. বাম মেনুর অধীনে, "ডাটাবেস" এ যান
  8. এটি আপনার ডাটাবেস। এটি এখন খালি। ভরাট হলে, এটি JSON ফরম্যাটে থাকবে। ইউআরএল একই হওয়া উচিত যা আপনি আগে দেখেছিলেন।

টুইলিও ডেভেলপারদের তাদের গ্রাহকদের কাছে বার্তা পাঠানোর অনুমতি দেয়। পাই যখন মুভমেন্ট সনাক্ত করে তখন আমরা এটি আপনার ফোনে এসএমএস পাঠাতে ব্যবহার করব। এসএমএস পাঠানোর জন্য টুইলিও আপনাকে একটি ফোন নম্বর দেবে। টুইলিও সেটআপ করতে:

  1. টুইলিওর সাইটে একটি বিনামূল্যে অ্যাকাউন্টের জন্য সাইন আপ করুন
  2. আপনার অ্যাকাউন্ট SID এবং authToken অনুলিপি করুন
  3. "ট্রায়াল বিধিনিষেধ" এ ক্লিক করুন এবং "আপনার প্রথম টুইলিও ফোন নম্বর পান" নির্বাচন করুন
  4. আপনার নতুন ফোন নম্বরটি অনুলিপি করুন

পদক্ষেপ 2: আপনার পিস সেট আপ করুন

আপনার পিস সেট আপ করুন
আপনার পিস সেট আপ করুন
আপনার পিস সেট আপ করুন
আপনার পিস সেট আপ করুন

পিস প্রোগ্রামিং শুরু করার আগে আমাদের কিছু সেটআপ করতে হবে। আপনার পিসের জন্য একটি পাসওয়ার্ড লগইন আছে তা নিশ্চিত করুন। প্রথমে আমরা শারীরিকভাবে সেন্সহ্যাট বোর্ডগুলিকে পিসের সাথে সংযুক্ত করব। এরপরে, আমরা প্রয়োজনীয় সেন্সহ্যাট, টুইলিও এবং পাইরেবেস লাইব্রেরিগুলি ইনস্টল করব। ফায়ারবেস রিয়েল টাইম ডাটাবেস মোবাইল ডিভাইস বা ওয়েবসাইটের জন্য ডিজাইন করা হয়েছিল। যাইহোক, আমরা পাইরেবেসের মত একটি সহায়ক লাইব্রেরি সহ রেস্ট এপিআই এর মাধ্যমে ক্লাউড ডাটাবেজ পড়তে এবং লিখতে পারি।

SenseHat সংযোগ করুন নিশ্চিত করুন যে SenseHats আপনার পিসের সাথে সংযুক্ত। যদি আপনার অস্বাভাবিক কেস থাকে, তাহলে সেন্সহ্যাট সংযোগ করার আগে আপনাকে Pi অপসারণ করতে হতে পারে।

লাইব্রেরি ইনস্টল করা সমস্ত লাইব্রেরি ইনস্টলেশন টার্মিনালে করা হবে

  • আপনার পিস বুট করুন যদি আপনি ইতিমধ্যে না করেন।
  • বুটআপের পরে, আপনি আপনার সেন্সহ্যাটে এই রঙিন LED রেইনবো পাবেন! (ছবি দেখুন)
  • টার্মিনালে যান এবং আপডেট/ডিস্ট-আপগ্রেড করুন, টাইপ করুন:

    • sudo apt- আপডেট পান
    • sudo apt-get dist-upgrade
  • আপগ্রেড সম্পন্ন হওয়ার পরে, সেন্সহ্যাট লাইব্রেরি ইনস্টল করতে নিম্নলিখিতটি টাইপ করুন:

    sudo apt- get sense-hat ইনস্টল করুন

  • পাইরেবেস ইনস্টল করতে, টাইপ করুন:

    sudo pip pyrebase ইনস্টল করুন

  • অবশেষে, টুইলিও ইনস্টল করুন

    সুডো পিপ টুইলিও ইনস্টল করুন

ধাপ 3: পাই 1 এর জন্য পাইথন স্ক্রিপ্ট

যেমনটি আমরা আগে উল্লেখ করেছি, Pi1 হবে Pi যা আন্দোলন সনাক্ত করতে ব্যবহৃত হবে। সেন্সহ্যাটের অ্যাকসিলরোমিটারের মানগুলি চলাচল নির্ধারণ করতে ব্যবহৃত হবে। সুতরাং, Pi1 এর জন্য কোডটি অ্যাকসিলরোমিটার g বলের মানগুলি অ্যাক্সেস করতে এবং ফায়ারবেস ডেটাবেসে সনাক্ত করা গতিগুলিকে লগ করতে থাকবে। এখানে প্রক্রিয়া প্রবাহের একটি সংক্ষিপ্ত বিবরণ:

  • যদি Pi1 নড়াচড়া সনাক্ত করে, তাহলে এটি Firebase DB- এ "সতর্কতা" সন্তানের একটি এন্ট্রি যোগ করবে।
  • Pi1 "notifypi2" শিশুকেও আন্দোলন সংক্রান্ত বিজ্ঞপ্তি বার্তা দিয়ে আপডেট করবে।
  • Pi2, তারপর "notifypi2" পড়ে এবং তার LED ম্যাট্রিক্স ডিসপ্লেতে বিজ্ঞপ্তি প্রদর্শন করে।

আমি আপনাকে অনুসরণ করার জন্য পাই 1 পাইথন স্ক্রিপ্ট অন্তর্ভুক্ত করেছি। স্ক্রিপ্টে মন্তব্যগুলি কোডটি কী করছে তা ব্যাখ্যা করে।

Pi1 স্ক্রিপ্টের জন্য অতিরিক্ত নোট এবং অন্তর্দৃষ্টি

  • ফায়ারবেস এবং টুইলিও সেটআপের জন্য। যথাযথ API কী, আইডি, পাসওয়ার্ড ইত্যাদি পূরণ করুন যা আপনি আগের ধাপ থেকে কপি করেছেন।
  • ফায়ারবেস প্রমাণীকরণের বিষয়ে, অতিরিক্ত নিরাপত্তার জন্য, আপনি এই শংসাপত্রগুলি হার্ড কোডিংয়ের পরিবর্তে ব্যবহারকারীর ইনপুট চাইতে পারেন। প্রতিবার যখন আমরা ডাটাবেস থেকে লিখি বা পড়ি, তখন আমাদের অন্তর্ভুক্ত করতে হবে

    ব্যবহারকারী ['idtoken'] th সঙ্গে

    get (), push (), set () পদ্ধতি

  • সিপিইউ তাপমাত্রা প্রয়োজন তাই আমরা হস্তক্ষেপ করতে পারি যদি পাই গাড়ী বা বদ্ধ পরিবেশে অতিরিক্ত গরম হয়।
  • আমরা G বাহিনীর পরম মানও গ্রহণ করি কারণ আমাদের নেতিবাচক মানগুলি জানার প্রয়োজন নেই। আমাদের শুধুমাত্র G বাহিনী আছে কিনা তা জানতে হবে।
  • যদি বিবৃতিটি অ্যাকসিলরোমিটারের মান পরীক্ষা করে। যদি G বাহিনী কোন দিকে 1 এর চেয়ে বড় হয়, Pi1 চলাচলের সময় লগ করবে এবং তার নিজস্ব LED ডিসপ্লেতে একটি বিস্ময়কর চিহ্ন প্রদর্শন করবে। এটি "notifypi2" শিশুকেও আপডেট করবে। যখন "notifypi2" আপডেট করা হয়, Pi2 এটি পড়বে এবং "!!!" প্রদর্শন করবে এর এলইডি ডিসপ্লেতে ব্যবহারকারীকে সম্ভাব্য চলাচল/বিরতি সম্পর্কে অবহিত করতে। Pi1 ব্যবহারকারীকে চলাচলের একটি এসএমএস বিজ্ঞপ্তি পাঠাবে।
  • Push () পদ্ধতি ব্যবহার করার সময়, Firebase একটি নতুন এন্ট্রি সহ একটি শিশুকে স্বয়ংক্রিয়ভাবে তৈরি করবে। এটি প্রয়োজন তাই লগ করা মুভমেন্ট ডেটা অনন্য হবে। অন্যদিকে set () মেথড আগের ডেটা ওভাররাইট করবে।
  • ডাটাবেস চেক করার জন্য 10 সেকেন্ড লুপ প্রয়োজন যাতে আপনার Pi বারবার Firebase থেকে ডেটার অনুরোধ না করে। আপনি যদি ফায়ারবেসকে ক্রমাগত স্প্যাম করেন, গুগল আপনাকে প্রায় 10 মিনিটের মধ্যে লগ আউট করবে।
  • টোকেন রিফ্রেশ না হলে ফায়ারবেস ব্যবহারকারীকে প্রতি 60 মিনিটে বের করে দেবে। আমার রিফ্রেশ সেট আছে 1800 সেকেন্ড (30 মিনিট)।

ধাপ 4: পাই 2 এর জন্য পাইথন স্ক্রিপ্ট

পাই 2 এর জন্য পাইথন স্ক্রিপ্ট
পাই 2 এর জন্য পাইথন স্ক্রিপ্ট

যদি আপনি ছবির দিকে তাকান, এটি Pi2 এর সম্ভাব্য চলাচলের বিজ্ঞপ্তি প্রদর্শন করে।

Pi2 এর স্ক্রিপ্টটি Pi1 এর মতোই হুবহু হুবহু স্ক্রিপ্টটি নড়াচড়া করে না। Pi2 শুধুমাত্র "notifypi2" শিশু থেকে বিজ্ঞপ্তি বার্তা প্রদর্শন বা রিসেট করে। যেহেতু এটিই একমাত্র পার্থক্য, আমি নীচে এটি ব্যাখ্যা করব।

  • প্রতি 10 সেকেন্ডে, Pi2 প্রদর্শনের জন্য "notifypi2" চেক করবে। যদি প্রদর্শনের জন্য একটি বিজ্ঞপ্তি বার্তা থাকে, Pi2 এটি ক্রমাগত প্রদর্শন করবে যাতে ব্যবহারকারী এটি দেখতে পায়।
  • শুধুমাত্র জয়স্টিক বোতাম টিপে ব্যবহারকারীর হস্তক্ষেপ বার্তাটি পরিষ্কার হবে এবং ডাটাবেসের পাশে রিসেট হবে।

ধাপ 5: পিস পরীক্ষা করুন

Image
Image
পিস পরীক্ষা করুন
পিস পরীক্ষা করুন

পিস পরীক্ষা করার সময়।

  • যথাক্রমে পিসের জন্য স্ক্রিপ্টগুলি চালান।
  • ফায়ারবেসে লগ ইন করুন এবং আপনার প্রকল্প ডাটাবেস বিভাগে যান।
  • আপনার Pi1 ঝাঁকান, আপনার Pi1 LED ডিসপ্লেতে একটি লাল বিস্ময় চিহ্ন দেখা উচিত। আপনার একটি এসএমএস বার্তাও পাওয়া উচিত।
  • ডাটাবেস চেক করুন, সতর্কতা এন্ট্রি দেখানো শুরু করা উচিত। "notifypi2" এছাড়াও আপডেট করা উচিত।
  • Pi2 দেখে নিন। আপনারও স্ক্রল করা উচিত "!!!" এই বিজ্ঞপ্তি বার্তাটি পরিষ্কার করতে, শুধু জয়স্টিকে চাপুন। "notifypi2" পুনরায় সেট করা উচিত। নিশ্চিত করতে আপনার ফায়ারবেস চেক করুন।
  • যদি আপনি Pi1 কে চলাচলের জন্য খুব সংবেদনশীল মনে করেন, তাহলে Pi1 স্ক্রিপ্টে থ্রেশহোল্ড 1G এর চেয়ে বড় করুন।

যদি সবকিছু ঠিক থাকে, আপনার স্ক্রিপ্টগুলি ক্র্যাশ হবে না। এখন, আপনার একটি কার্যকরী বিজ্ঞপ্তি ব্যবস্থা আছে। একবার Pi1 নড়াচড়া বা কম্পন সনাক্ত করলে, আপনি একটি SMS বার্তা বিজ্ঞপ্তি এবং Pi2 এ একটি ভিজ্যুয়াল LED বিজ্ঞপ্তি পাবেন।

ধাপ 6: R-PiAlerts IOS অ্যাপ তৈরি করা

R-PiAlerts IOS অ্যাপ তৈরি করা
R-PiAlerts IOS অ্যাপ তৈরি করা

আইওএস অ্যাপ তৈরির সময়! অ্যাপটি মোটামুটি সহজ হবে। এটিতে একটি LoginViewController এবং একটি ItemsTableViewController থাকবে। ItemsTableViewController "সতর্কতা" শিশু থেকে সতর্কতা বিজ্ঞপ্তি প্রদর্শন করবে। কেউ অ্যাপ থেকে ডাটাবেস এন্ট্রি মুছে ফেলতে পারে। আপনার কিছু মাথা ব্যাথা বাঁচাতে, যদি আপনি ফায়ারবেসের অনলাইন টিউটোরিয়ালগুলি দেখার পরিকল্পনা করেন, তবে নিশ্চিত করুন যে আপনি মার্চ 2016 এর পরের টিউটোরিয়ালগুলি সন্ধান করেছেন কারণ গত বছর সেই সময়ে বড় ধরনের পরিবর্তন হয়েছিল। মার্চ 2016 এর আগে যা কিছু হবে তা উত্তরাধিকার হবে। আমি সুইফ্ট ফাইলগুলিতে আগ্রহী, দয়া করে কোডের মন্তব্যগুলি পর্যালোচনা করুন। আপনি যদি একটি ফায়ারবেস অ্যাপ কিভাবে ডেটাবেস পড়েন সে সম্পর্কে বিস্তারিত টিউটোরিয়াল চান, তাহলে রে ওয়ান্ডারলিচের টিউটোরিয়ালটি দেখুন।

আপনার iOS প্রজেক্ট ওভারভিউ সেট আপ করুন

  • এক্সকোডে একটি সিঙ্গেল ভিউ আইওএস প্রকল্প তৈরি করুন।
  • বান্ডেল আইডেন্টিফার কপি করুন
  • ওয়েবসাইটে আপনার Firebase প্রজেক্টে যান এবং বান্ডেল আইডেন্টিফায়ার দিয়ে একটি info.plist ফাইল তৈরি করুন।
  • আপনার প্রকল্পে GoogleService-info.plist ফাইল যোগ করুন। এই info.plist শুধুমাত্র আপনার তৈরি করা নির্দিষ্ট Firebase প্রজেক্টের সাথে কাজ করে।
  • Xcode এর বাইরে বন্ধ করুন এবং Cocoapods এর মাধ্যমে Firebase ইনস্টল করুন। Auth এবং Database ইনস্টল করতে ভুলবেন না।
  • এক্সকোড পুনরায় চালু করুন, তারপর ফায়ারবেসের জন্য আপনার AppDelegate.swift কনফিগার করুন। এটি শুধুমাত্র 2 লাইন কোড লাগে।

    ফায়ারবেস আমদানি করুন একটি

    FIRApp.configure () । Allyচ্ছিকভাবে, ফায়ারবেসের একটি দৃist়তা বৈশিষ্ট্য রয়েছে যা শুধুমাত্র 1 লাইন কোড নেয়

    FIRDatabase.database ()। PersistenceEnabled = true

  • বিস্তারিত ইনস্টলেশন ধাপগুলি ফায়ারবেসের ওয়েবসাইটে পাওয়া যাবে

অ্যাপ কিভাবে ফায়ারবেস ডাটাবেসের সাথে ইন্টারঅ্যাক্ট করে:

  • অ্যাপটি ব্যবহারকারীকে প্রমাণীকরণ করতে হবে।
  • একবার প্রমাণিত হয়ে গেলে, অ্যাপটি ফায়ারবেস ডাটাবেসের একটি স্ন্যাপশট নেয় এবং এটি একটি "আইটেম" বস্তু হিসাবে সংরক্ষণ করে।
  • বলা বস্তু একটি অ্যারে পূরণ করবে। টেবিলভিউ পূরণ করতে বলা অ্যারে ব্যবহার করা হবে।
  • একজন পর্যবেক্ষক ফায়ারবেস ডাটাবেসের পরিবর্তনের জন্য নজর রাখবেন এবং একটি স্ন্যাপশট তৈরি করবেন।
  • একবার পরিবর্তনগুলি সনাক্ত করা হলে, নতুন স্ন্যাপশট থেকে অ্যারে যুক্ত করা হবে।
  • পরিবর্তনগুলি দেখানোর জন্য টেবিলভিউ পুনরায় লোড করা হবে।

কিভাবে অ্যাপটি তৈরি করবেন তার সাধারণ রূপরেখা

  • Xcode- এর ইন্টারফেস নির্মাতার মধ্যে কীভাবে অ্যাপটি তৈরি করা হয়েছে তা চিত্রটি দেখুন।
  • ইন্টারফেস বিল্ডারে একটি ভিউকন্ট্রোলার তৈরি করুন এবং কাস্টম ক্লাসকে LoginViewController.swift এর দিকে নির্দেশ করুন।
  • ইমেল এবং পাসওয়ার্ডের জন্য টেক্সটফিল্ড যুক্ত করুন। পাসওয়ার্ড ক্ষেত্রের জন্য "সুরক্ষিত পাঠ্য প্রবেশ" চালু করতে ভুলবেন না। একটি লগইন বোতাম যুক্ত করুন।
  • LoginViewController.swift এ টেক্সটফিল্ড এবং বোতাম লিঙ্ক করুন। LoginViewController.swift প্রমাণীকরণ পরিচালনা করবে।
  • ইন্টারফেস বিল্ডারে একটি ন্যাভিগেশন কন্ট্রোলার যুক্ত করুন। LoginViewController থেকে ন্যাভিগেশন কন্ট্রোলারে একটি segue তৈরি করুন। Segue একটি শনাক্তকারী দিতে ভুলবেন না।
  • ItemsTableViewController.swift নির্দেশ করার জন্য ন্যাভিগেশন কন্ট্রোলারের সাথে আসা নতুন টেবিলভিউয়ের কাস্টম ক্লাস সেট করুন। ItemsTableViewController এ আমার 2 টি বোতাম আছে: লগআউট এবং একটি অ্যাড বোতাম। ItemsTableViewController.swift এ বোতামগুলি লিঙ্ক করুন।
  • LoginViewController.swift কোড সম্পর্কে। ব্যবহারকারী লগইন শংসাপত্রগুলি ইনপুট করবে এবং ফায়ারবেস ব্যবহারকারীকে ফিরিয়ে দেবে। যদি একজন ব্যবহারকারী উপস্থিত থাকে, তাহলে এটি সনাক্তকারীর সাথে একটি segue সঞ্চালন করবে। (কোড সংযুক্ত দেখুন)
  • Item.swift ক্লাস যোগ করুন (কোড সংযুক্ত দেখুন)
  • ItemsTableViewController কোড সম্পর্কে, এটি বেশ মানসম্মত টেবিলভিউ কোড। একটি আইটেম বস্তু হিসাবে একটি স্ন্যাপশট হিসাবে সংরক্ষিত আপনার ডাটাবেসের পরিবর্তনগুলি পর্যবেক্ষণ করার জন্য একজন পর্যবেক্ষক থাকবে। তারপর আইটেম বস্তুটি টেবিলভিউ পূরণ করতে অ্যারে যুক্ত করবে। যোগ করুন বোতামটি Pi1 এর জন্য ফায়ারবেস ডাটাবেসে একটি এন্ট্রি সেট করে এবং প্রদর্শন করে। গিগলসের জন্য, আমি কোডও যোগ করেছি (সংযুক্ত কোড দেখুন)

ধাপ 7: অ্যাপটি পরীক্ষা করুন

অ্যাপটি পরীক্ষা করুন
অ্যাপটি পরীক্ষা করুন
অ্যাপটি পরীক্ষা করুন
অ্যাপটি পরীক্ষা করুন
অ্যাপটি পরীক্ষা করুন
অ্যাপটি পরীক্ষা করুন

আপনার অ্যাপ্লিকেশন চালান

  • লগইন করুন এবং আপনার Pi1 ঝাঁকান। আপনার নতুন সতর্কতা বিজ্ঞপ্তি দেখানো শুরু করা উচিত।
  • অ্যাড বোতামটি আলতো চাপুন এবং আপনার Pi1 আপনার বার্তা প্রদর্শন করুন।
  • বাম দিকে সোয়াইপ করুন, দেখুন "সতর্কতা" এন্ট্রিগুলি সরানো হয়েছে।
  • দ্রুত পরপর অনেক বিজ্ঞপ্তি পাচ্ছেন? অ্যাকসিলরোমিটার থ্রেশহোল্ড সামঞ্জস্য করুন বা Pi1 স্ক্রিপ্টে ঘুমের সময় বাড়ান।

ধাপ 8: উপসংহার

উপসংহার
উপসংহার
উপসংহার
উপসংহার

অসাধারণ! এখন আমাদের কাছে পিস আছে যা নড়াচড়া সনাক্ত করতে পারে এবং আপনাকে আন্দোলনের বিজ্ঞপ্তি পাঠাতে পারে। তার উপরে, আপনি আপনার আইওএস ডিভাইসের মাধ্যমে আপনার সতর্ক বার্তা লগ পরিচালনা করতে পারেন! পিস মোতায়েনের সময়। আপনার দরজার পাশে Pi1 এবং আপনার কর্মক্ষেত্রের চারপাশে Pi2 রাখুন। পরের বার যদি কেউ আসে, আপনি পরিস্থিতি পরীক্ষা করতে পারেন! অথবা আরও ভাল, ব্যাটারি প্যাক দিয়ে আপনার গাড়িতে Pi এ লুকানোর চেষ্টা করুন। কয়েকবার দরজা লাগান, দেখুন কি হয়!

আপনি রাস্পবেরি পাই এবং ফায়ারবেস দিয়ে কী করতে পারেন তার সম্ভাবনার এটি কেবল একটি সূচনা। সেন্সহ্যাটে পরিবেশগত সেন্সর, গাইরোস এবং একটি কম্পাস অন্তর্ভুক্ত রয়েছে। পরিবেশে কিছু পরিবর্তন লগ ইন করার জন্য আপনি আপনার পিস সেট আপ করতে পারেন। আপনার খেলা বাড়াতে চান? যখন আপনার Pi নড়াচড়া সনাক্ত করে, একটি ক্যামেরা ক্যাপচার ইমেজ ব্যবহার করুন এবং Pi টেক্সট আপনাকে ফটো পাঠান। এছাড়াও চেহারা চেনার জন্য একটি কম্পিউটার ভিশন অ্যালগরিদম ব্যবহার করার চেষ্টা করুন। যদি এটি আপনার পরিচিত কারো মুখ হয়, আপনি বিজ্ঞপ্তি পেতে পারেন! আনন্দ কর!

প্রস্তাবিত: