Advertisement
  1. Code
  2. PHP
Code

কিভাবে SMS এর সাহায্যে ফোন নাম্বার যাচাই করবেন

by
Difficulty:IntermediateLength:ShortLanguages:

Bengali (বাংলা) translation by Nazmul Shuvo (you can also view the original English article)

Final product image
What You'll Be Creating

সূচনা

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

শুরু করার পূর্বে, আমি আপনাদেরকে প্রশ্ন এবং প্রতিক্রিয়া কমেন্টে পোস্ট করতে উৎসাহিত করছি। যদি আপনি Envato Tuts+ এ আমার ভবিষ্যতের টিউটোরিয়াল এবং অন্যান্য সিরিজগুলো দেখতে চান, অনুগ্রহ করে আমার ইন্সট্রাকটর পেইজ ভিজিট করুন অথবা @lookahead_io অনুসরণ করুন

প্রক্রিয়াকরণের খসড়া

ব্যবহারকারী তাদের ফোন নাম্বার দেওয়ার পরে, আমরা কিছু সহজবোধ্য অকপট ধাপ সম্পাদন করবঃ

  • একটি চার-সংখ্যার ইউনিক কোড জেনারেট হবে
  • মোবাইল নাম্বার এবং চার-সংখ্যার কোড আমাদের ডাটাবেজে সংরক্ষিত হবে (অথবা লোকালি কোড এনক্রিপ্ট করবে একটি পেইজের মধ্যে ভেরিয়েবল লুকায়িত রাখতে)
  • আনভেরিফাইড নাম্বারে চার সংখ্যার একটি কোড টেক্সট করবে।
  • ব্যবহারকারীকে একটি ফর্ম দেখাবে যেখানে রিসিভ হওয়া কোড দিতে হবে।
  • কোড ম্যাচ ভেরিফাই করবে।
  • নাম্বারটি ডাটাবেজে ভেরিফাইড হিসেবে মনোনীত করবে।

ব্যবহারকারীর কন্ট্যাক্ট পেইজ

মিটিং প্ল্যানার এ, প্রতিটি ব্যবহারকারী একাধিক যোগাযোগ পদ্ধতি যোগ করতে পারবে, যেমন- স্কাইপ, ফোন, ইত্যাদি। SMS নোটিফিকেশন এর জন্য প্রতিটি মোবাইল নাম্বার অবশ্যই ভেরিফাইড হতে হবে।

নিচের তৃতীয় সারিতে একটি চেকবক্স দেখাবে যা ব্যবহারকারী ভেরিফিকেশন অনুরোধের জন্য ক্লিক করতে পারবেঃ

How to Verify a Phone Number via SMS - Contacts list

ক্লিক করার পরে এটি ব্যবহারকারীকে ট্রান্সফার করবে নিচের actionVerify() কন্ট্রোলারের কাছে; মনে রাখবেন যে প্রথমে এটি তাদের else ব্লকে নিয়ে যাবে কারন ব্যবহারকারী তখনও কোড সাবমিট করেনিঃ

canRequest() মেথডটি চেক করবে তারা কি কোডের জন্য পুনঃপুনঃ অনুরোধ করছে নাকি খুব ঘনঘনঃ

অপব্যবহার রোধে প্রচেষ্ঠার মাঝে আমি তাদের এক মিনিট অপেক্ষা করাবো।

যাচাইকরন কোড প্রেরন হচ্ছে

সমর্থন দিলে, কল করবে requestCode() :

এটি যা করবেঃ

  • চার-সংখ্যার এলোমেলো কোড জেনারেট করবে।
  • শেষ মুহুর্তের (unix সেকেন্ডে) যাচাইকরনের অনুরোধের সময় রেকর্ড করবে।
  • এটি এই নাম্বার যাচাই এর জন্য কতবার চেষ্ঠা করা হয়েছে তার সংখ্যা বৃদ্ধি করবে। 
  • এবং এটি এই সবগুলো ডাটাবেজে সংরক্ষন করবে।
  • তারপর, এটি একটি কোডসহ টেক্সট পাঠাবে যা দেখতে নিচের ছবিটির মতো।
How to Verify a Phone Number via SMS - Text message with verification code

কোডের অনুরোধের পরে, দৃশ্যের অন্তরালে এটি ডাটাবেজে সংরক্ষিত হবে এবং ব্যবহারকারীকে কোডটি পাঠাবে, এরপর এটি কোড চেয়ে নিচের ফর্মটি দেখাবেঃ

How to Verify a Phone Number via SMS - Verify Contact Form requesting code

কোড যাচাই করা

যখন ব্যবহারকারী কোড সাবমিট করার চেষ্ঠা করবে, এটি উপরের অংশের  actionVerify() চালু করবেঃ

এটি দেখবে কোড মিলেছে কি না। যদি মিলে থাকে, এটি ডাটাবেজকে আপডেট করবে প্রকাশ করতে যে নাম্বারটি ভেরিফাইড। এবং ব্যবহারকারীকে তা জানাবেঃ

How to Verify a Phone Number via SMS - Successful confirmation notice

যদি না মিলে, এটি একটি এরর বার্তা প্রদর্শন করবেঃ

How to Verify a Phone Number via SMS - Error try again after a minute

নিজে চেষ্ঠা করুন

যদি আপনি এটি বাস্তবে দেখতে চান, আপনি সাইন আপ করতে পারেন সিম্পল প্ল্যানার অথবা মিটিং প্ল্যানার (যা ফেইসবুক এবং গুগোল এর মতো সোসাল একাউন্টের মাধ্যমে সহজ) এ এবং একটি ফোন নাম্বার যোগ করতে পারেন। তারপর ক্লিক করুন চেকমার্কে যা আপনি লিস্ট এ দেখতে পাবেন, ব্যাস।

শেষ

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

আশা করি এটি আপনার সহায়ক হবে। যদি আপনার কোন প্রশ্ন অথবা পরামর্শ থাকে, অনুগ্রহ করে কমেন্টে পোস্ট করুন। যদি আপনি Envato Tuts+ এ আমার ভবিষ্যতের টিউটোরিয়াল এবং অন্যান্য সিরিজগুলো দেখতে চান, অনুগ্রহ করে আমার ইন্সট্রাকটর পেইজ ভিজিট করুন অথবা অনুসরণ করুন @lookahead_io। চেক করুন আমার স্টার্টআপ সিরিজ এবং মিটিং প্ল্যানার

সম্পর্কিত লিংকগুলি

Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.