বৈধতা যুক্তি তৈরি করুন

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

সাধারণত এপিআই প্রতিক্রিয়াটি নির্ধারণ করে যে আপনার সিস্টেম একটি ঠিকানাকে নিম্নলিখিত উপায়ে পরিচালনা করবে:

  • ফিক্স — ঠিকানাটি নিম্নমানের। আপনার আরও তথ্যের জন্য অনুরোধ করা উচিত।
  • নিশ্চিত করুন — ঠিকানাটি উচ্চ মানের, কিন্তু প্রদত্ত ঠিকানা থেকে এতে পরিবর্তন রয়েছে। নিশ্চিতকরণের জন্য আপনাকে অনুরোধ করা হতে পারে।
  • করুন — ঠিকানাটি উন্নত মানের। আপনি প্রদত্ত ঠিকানাটি গ্রহণ করতে পারেন।

মূল উদ্দেশ্য

এই ডকুমেন্টটি আপনাকে এপিআই (API) রেসপন্স সবচেয়ে ভালোভাবে বিশ্লেষণ করতে এবং প্রদত্ত অ্যাড্রেসগুলোর ক্ষেত্রে পরবর্তী পদক্ষেপ নির্ধারণ করতে আপনার সিস্টেমকে পরিবর্তন করতে সাহায্য করে। নিম্নলিখিত সিউডোকোডটি একটি সম্ভাব্য কার্যপ্রবাহ তুলে ধরে।

if (the API response indicates significant problems in the address)
    FIX - prompt the user to fix the address
else if (the API response indicates less significant problems in the address)
    CONFIRM - confirm with the user that the address is correct
else
    ACCEPT - continue with the address returned by the API.

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

ওয়ার্কফ্লো ওভারভিউ

নিচের সারণিতে আপনার সিস্টেমের জন্য দুটি কার্যক্রমের সারসংক্ষেপ দেওয়া হলো:

  1. সংশোধন, নিশ্চিতকরণ এবং গ্রহণের আচরণের উপর ভিত্তি করে ব্যবহারযোগ্য কর্মপ্রবাহ
  2. প্রতিক্রিয়া থেকে প্রথমে যে সংকেতগুলো পরীক্ষা করতে হবে । এখানে বর্ণিত সংকেতগুলো verdict বৈশিষ্ট্য থেকে আসে এবং এগুলোই একমাত্র পরীক্ষা করার মতো সংকেত নয় , তবে এগুলো অ্যাড্রেসের গুণমান সম্পর্কে একটি প্রাথমিক ইঙ্গিত প্রদান করে। প্রতিটি আচরণের ধরণ এই নথির একটি অংশের সাথে সম্পর্কিত, যেখানে আরও কিছু সংকেতের বর্ণনা দেওয়া হয়েছে যা আপনার খতিয়ে দেখার প্রয়োজন হতে পারে।
আপনার সিস্টেমের আচরণ
ঠিকানা ঠিক করুন

verdict প্রতিক্রিয়া থেকে গুরুত্বপূর্ণ তথ্যের ঘাটতির ইঙ্গিত পাওয়া যায়, যা প্রদান করা উচিত। এপিআই দ্বারা প্রাপ্ত ঠিকানাটি সরবরাহযোগ্য মানের নাও হতে পারে।

কর্মপ্রবাহ

  1. প্রয়োজন হলে ঠিকানার উপাদানগুলো তদন্ত করুন।
  2. গ্রাহককে ঠিকানার সমস্যাগুলো সমাধান করতে দ্রুত নির্দেশ দিন।
  3. হালনাগাদকৃত ঠিকানার জন্য অনুরোধ যাচাইকরণ।
  4. ঠিকানা নিয়ে এগিয়ে যান।

রায়ের সংকেত

নিম্নলিখিতগুলির যেকোনো একটি প্রযোজ্য:

নিশ্চিত করুন

verdict প্রতিক্রিয়া থেকে একটি সরবরাহযোগ্য ঠিকানা জানা গেলেও, মূল তথ্যে কিছু পরিবর্তন আনা হয়েছে: যেখানে হয় বানান সংশোধন করা তথ্য, অথবা যাচাইযোগ্য তথ্য অন্তর্ভুক্ত করা হয়েছে।

কর্মপ্রবাহ

  1. সংশোধন প্রয়োজন:
    1. প্রয়োজন হলে ঠিকানার উপাদানগুলো তদন্ত করুন।
    2. হালনাগাদকৃত ঠিকানার জন্য অনুরোধ যাচাইকরণ।
    3. ঠিকানা নিয়ে এগিয়ে যান।
  2. কোন সংশোধনের প্রয়োজন নেই:
  3. ঠিকানা নিয়ে এগিয়ে যান।

রায়ের সংকেত

নিম্নলিখিত সবগুলিই প্রযোজ্য:

ঠিকানাটি গ্রহণ করুন

অ্যাড্রেস ভ্যালিডেশন এপিআই-এর প্রতিক্রিয়া একটি চমৎকার মানের ঠিকানা নির্দেশ করে।

কর্মপ্রবাহ

ফেরত পাঠানোর ঠিকানা অনুযায়ী এগিয়ে যান।

রায়ের সংকেত

নিম্নলিখিত সবগুলিই প্রযোজ্য:

  • validationGranularity PREMISE বা তার চেয়ে উন্নত মান অন্তর্ভুক্ত রয়েছে।
  • addressComplete এর মান true
  • কোনো অনুমিত বা প্রতিস্থাপিত উপাদান নেই

বাস্তবায়ন নির্দেশিকা

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

নির্দেশনা বিস্তারিত
ঝুঁকির মাত্রা

সংশোধনের জন্য অনুরোধ করা এবং প্রবেশ করানো ঠিকানাটি গ্রহণ করার মধ্যে ভারসাম্য রক্ষা করার সময় আপনার পরিস্থিতির জন্য সহনশীলতার মাত্রা বিবেচনা করুন।

অ্যাড্রেস ভ্যালিডেশন এপিআই বিভিন্ন ধরনের সংকেত প্রদান করে, যা আপনি আপনার ঝুঁকি স্তরের সাথে অন্তর্ভুক্ত করে যাচাইকরণ প্রক্রিয়াকে আরও উন্নত করতে পারেন।

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

ঠিকানা গ্রহণ করুন

গ্রাহক নির্দেশনায় সাড়া না দিলেও আপনার সিস্টেমকে মূল প্রদত্ত তথ্যটি গ্রহণ করার সুযোগ দেওয়া একটি ভালো অভ্যাস।

এইসব ক্ষেত্রে, গ্রাহক হয়তো সিস্টেমে নেই এমন কোনো ঠিকানা দিয়ে থাকতে পারেন, যেমন নতুন নির্মাণের ক্ষেত্রে।

একটি ঠিকানা ঠিক করুন

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

সংকেত ঠিক করুন

কোনো ঠিকানা সংশোধন করা উচিত কিনা, তা জানানোর জন্য অ্যাড্রেস ভ্যালিডেশন এপিআই বেশ কিছু সংকেত প্রদান করে।

১. যাচাইকরণের সূক্ষ্মতা এবং অনুপস্থিত উপাদানসমূহ

এই দুটি সংকেত একটি সমস্যাযুক্ত ঠিকানার সর্বোত্তম ইঙ্গিত দেয়:

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

২. অন্যান্য সংকেত

অ্যাড্রেস ভ্যালিডেশন এপিআই নির্দিষ্ট সমস্যা নির্ণয়ে সাহায্য করার জন্য অন্যান্য সংকেতও প্রদান করে:

সন্দেহজনক উপাদান যখন কোনো কম্পোনেন্টের কনফার্মেশন লেভেল enum-টি UNCOMFIRMED_AND_SUSPICIOUS হয়, তখন সম্ভবত কম্পোনেন্টটি ভুল।
অমীমাংসিত উপাদান একটি অমীমাংসিত টোকেন হলো ইনপুটের এমন একটি অংশ, যা কোনো ঠিকানার বৈধ অংশ হিসেবে স্বীকৃত নয়।

৩. মার্কিন ঠিকানা সংকেত

শুধুমাত্র মার্কিন ঠিকানার ক্ষেত্রে প্রযোজ্য কিছু নির্দিষ্ট ফিল্ড একটি গুরুত্বপূর্ণ সংকেত দেয় যে, ঠিকানাটি ডেলিভারিযোগ্য নয় এবং এটি সংশোধন করা প্রয়োজন। যে ঠিকানাটি সংশোধন করা প্রয়োজন, তার জন্য আপনি নিম্নলিখিত বিষয়গুলো দেখতে পাবেন:

dpvConfirmation হয় N , D , অথবা খালি।

dpvConfirmation সম্পর্কে বিস্তারিত জানতে, Handle United States addresses দেখুন।

ঠিকানা ঠিক করার উদাহরণ

ঠিকানা নিশ্চিত করুন

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

গ্রাহককে সঠিক নির্দেশনা দেওয়ার জন্য, আপনার লজিকটি সার্ভিস দ্বারা ফ্ল্যাগ করা কম্পোনেন্টগুলো শনাক্ত করবে, যার মাধ্যমে নির্ধারণ করা যাবে যে এপিআই কম্পোনেন্টটির উপর কোন অ্যাকশন বা ফ্ল্যাগ প্রয়োগ করেছে, যেমন— inferred , replaced , বা spellCorrected । রেফারেন্সে AddressComponent দেখুন।

সংকেত নিশ্চিত করুন

কোনো ঠিকানা নিশ্চিত করা উচিত কিনা, তা জানানোর জন্য অ্যাড্রেস ভ্যালিডেশন এপিআই বেশ কিছু সংকেত প্রদান করে।

১. বৈধতার সূক্ষ্মতা

ROUTE বা তার চেয়ে উন্নত validationGranularity গ্রহণযোগ্য, কিন্তু PREMISE বা SUBPREMISE ডেলিভারেবিলিটির একটি জোরালো সংকেত প্রদান করে।

২. অন্যান্য সংকেত

গ্রাহকের সাথে ঠিকানা এন্ট্রি নিশ্চিত করার সিদ্ধান্ত নেওয়ার সময়, কোন উপাদানগুলো তদন্ত করতে হবে তা নির্ধারণ করার জন্য রায়টি নিম্নলিখিত বিষয়গুলোও প্রদান করে:

অনুমিত তথ্য যখন hasInferredComponents ফিল্ডটির মান true হয়, তখন আপনি বুঝতে পারবেন যে API-টি ঠিকানার অন্যান্য উপাদান থেকে সংগৃহীত তথ্য দিয়ে ঠিকানাটি পূরণ করেছে।
প্রতিস্থাপিত ডেটা যখন hasReplacedComponents ফিল্ডটির true হয়, তখন API প্রবেশ করানো ডেটার পরিবর্তে এমন ডেটা ব্যবহার করে যা ঠিকানাটিকে বৈধ বলে মনে করে।

৩. মার্কিন ঠিকানা সংকেত

শুধুমাত্র মার্কিন ঠিকানার জন্য প্রযোজ্য কিছু ফিল্ড নির্দেশ করে যে, আপনার লজিককে গ্রাহকের কাছ থেকে বিবরণ যাচাই করে নিতে হবে। নিম্নলিখিতগুলির মধ্যে যেকোনো একটি প্রযোজ্য:

dpvConfirmation S

dpvConfirmation সম্পর্কে বিস্তারিত জানতে, Handle United States addresses দেখুন।

ঠিকানার প্রতিক্রিয়া এতে missingComponentTypes ফিল্ড রয়েছে যার মান হলো subpremise

ঠিকানা নিশ্চিত করার উদাহরণ

একটি ঠিকানা গ্রহণ করুন

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

সংকেত গ্রহণ করুন

কোনো ঠিকানা নিশ্চিত করা উচিত কিনা, তা জানানোর জন্য অ্যাড্রেস ভ্যালিডেশন এপিআই বেশ কিছু সংকেত প্রদান করে।

১. বৈধতার সূক্ষ্মতা

PREMISE বা তার চেয়ে উন্নত validationGranularity গ্রহণযোগ্য, কিন্তু কিছু ক্ষেত্রে ROUTE তখনও একটি ডেলিভারেবল অ্যাড্রেস নির্দেশ করে।

২. অন্যান্য সংকেত

একটি উন্নত মানের ঠিকানার রায়ে নিম্নলিখিত বিষয়গুলোও অন্তর্ভুক্ত থাকা উচিত:

  • কোনো ডেটা প্রতিস্থাপন করা হয়নি । এক্ষেত্রে, hasReplacedComponents: FALSE
  • কোনো অনুমিত উপাদান নেই । এক্ষেত্রে, hasInferredComponents: FALSE

৩. মার্কিন ঠিকানা সংকেত

শুধুমাত্র মার্কিন ঠিকানার জন্য প্রযোজ্য কিছু ফিল্ড একটি উন্নত মানের ঠিকানা নির্দেশ করে যেখানে ডেলিভারি করা সম্ভব। একটি গ্রহণযোগ্য মার্কিন ঠিকানার জন্য, আপনাকে নিম্নলিখিত বিষয়গুলো দেখতে হবে:

dpvConfirmation Y

dpvConfirmation সম্পর্কে বিস্তারিত জানতে, Handle United States addresses দেখুন।

ঠিকানার উদাহরণ গ্রহণ করুন