সংরক্ষিত প্রোফাইল ও নম্বর প্রস্তুত করুন
সংরক্ষিত নিবন্ধন প্রোফাইলকে কেনা একটি নম্বরের সঙ্গে যুক্ত করতে এবং সমর্থিত ক্যারিয়ার-সমর্থিত নম্বরের ক্ষেত্রে নিবন্ধন পর্যালোচনার অনুরোধ করতে এই কার্যপ্রবাহ ব্যবহার করুন। এটি সব নম্বর সরবরাহকারীর জন্য সাধারণ সক্রিয়করণ API নয়। অনুরোধ সফল হলেই নথিগুলো অনুমোদিত হয়েছে বা নম্বরটি সক্রিয় আছে বলে প্রমাণিত হয় না।
নির্ধারিত প্রমাণীকরণ তথ্য ও IP বিধিনিষেধসহ একটি চালু MultiTEL API অ্যাকাউন্ট HTTPS-এর মাধ্যমে ব্যবহার করুন। মুছে ফেলা হয়নি এমন প্রোফাইল এবং কেনা ও বাতিল না হওয়া নম্বর—দুটিই আপনার অ্যাকাউন্টের হতে হবে।
- একটি নিবন্ধন প্রোফাইল তৈরি করুন অথবা বিদ্যমান একটি বেছে নিন। create_document থেকে পাওয়া স্থানীয় প্রোফাইলের uuid সংরক্ষণ করুন; get_document একই স্থানীয় রেফারেন্স id হিসেবে ফেরত দেয়।
- ক্যারিয়ার-সমর্থিত জমাদানের জন্য প্রোফাইলে সংরক্ষিত পরিচয় ও ঠিকানার রেফারেন্স থাকা প্রয়োজন। প্রয়োজনীয় প্রমাণপত্র এবং সহায়ক নথি জমা দেওয়ার আগে সেগুলোর উপযুক্ত কার্যপ্রবাহের মাধ্যমে সংযুক্ত করুন।
- নম্বর ও প্রোফাইল সংশ্লিষ্ট দেশ এবং নম্বরের প্রযোজ্য শর্ত পূরণ করে কি না পরীক্ষা করুন। সংরক্ষিত প্রোফাইল সব নম্বরের জন্য অনুমোদিত বলে ধরে নেবেন না।
সংযুক্তির অনুরোধ জমা দিন
curl --silent --show-error --request POST \
--user "$API_USER:$API_PASSWORD" \
--form-string document_uuid="$PROFILE_UUID" \
--form-string service_description="Example customer support line" \
https://api.multitel.net/v3/number_identity/12125550123পাথে কেনা টেলিফোন নম্বরটি থাকে, সেটির UUID, কোনো PBX এক্সটেনশন বা পরিচয়ের ID নয়। হ্যান্ডলার নম্বর থেকে অঙ্ক ছাড়া অন্য অক্ষর সরিয়ে দেয়। দেশের কোডসহ সম্পূর্ণ আন্তর্জাতিক নম্বর ব্যবহার করুন। উদাহরণটি কাল্পনিক; এর পরিবর্তে অবশ্যই আপনার নিজের নম্বর ও সংরক্ষিত স্থানীয় প্রোফাইলের রেফারেন্স ব্যবহার করতে হবে।
| ক্ষেত্র | আবশ্যক | অর্থ |
|---|---|---|
document_uuid | হ্যাঁ | সংরক্ষিত স্থানীয় প্রোফাইলের হুবহু uuid। এর পরিবর্তে আড়াল করা দূরবর্তী identity_id, address_id, আপলোড ID বা ফেরত পাওয়া registration_details_id মান ব্যবহার করবেন না। |
service_description | না | যে সেবা দেওয়ার উদ্দেশ্য রয়েছে তার বিবরণ, যা ক্যারিয়ার-সমর্থিত যাচাইয়ের জন্য পাঠানো হয়। শুরুর ও শেষের ফাঁকা স্থান সরিয়ে দেওয়া হয়। |
onetime_files | কার্যপ্রবাহের ওপর নির্ভরশীল | ক্যারিয়ারের এককালীন নথির জন্য গৃহীত একটি অ্যারে। বর্তমান হ্যান্ডলার স্থানীয় আপলোড রেফারেন্স থেকে সংশ্লিষ্ট তথ্য উদ্ধার না করেই স্ট্রিংগুলোর শুরুর ও শেষের ফাঁকা স্থান সরিয়ে সেগুলো পাঠিয়ে দেয়। create_encrypt_files থেকে ফেরত পাওয়া আড়াল করা ID-গুলোর সঙ্গে সামঞ্জস্য প্রতিষ্ঠিত হয়নি; এই ক্ষেত্র ব্যবহার করার আগে নিচের এককালীন নথির সীমাবদ্ধতা দেখুন। |
মাল্টিপার্ট অনুরোধে অ্যারের জন্য onetime_files[] ক্ষেত্রটি বারবার ব্যবহার করা হয়। Content-Type: application/json সহ JSON অনুরোধও গ্রহণ করা হয়; এর প্রোপার্টিগুলো ফর্মের পেলোডের সঙ্গে একত্র করা হয়। পাথে নম্বর বাদ দেওয়া হলে পেলোডে number দেওয়া যেতে পারে। অস্পষ্টতা এড়াতে উপরে দেখানো সুনির্দিষ্ট পাথ ব্যবহার করাই শ্রেয়।
সংযুক্তি ও অনুমোদনের পার্থক্য বুঝুন
HTTP ফলাফল ও JSON-এর status.code দুটোই পড়ুন। HTTP 200-এর সঙ্গেও JSON ত্রুটি আসতে পারে। ক্যারিয়ার-সমর্থিত অনুরোধ সফল হলে এই বার্তা আসে: Address verification task created; awaiting carrier review. এই উদাহরণে কাল্পনিক রেফারেন্স ব্যবহার করা হয়েছে।
{
"status": {
"code": 200,
"msg": "Address verification task created; awaiting carrier review."
},
"response": {
"number": "+12125550123",
"did_id": "11111111111111111111111111111111",
"document_uuid": "0123456789abcdef0123456789abcdef",
"identity_id": "22222222222222222222222222222222",
"address_id": "33333333333333333333333333333333",
"address_verification_id": "44444444444444444444444444444444",
"verification_status": "pending",
"verification_reference": null,
"requirement_id": "55555555555555555555555555555555",
"registration_details_id": "8516ac99dc60603295de7bdb6a153530"
}
}সরবরাহকারী-সংশ্লিষ্ট শনাক্তকারীগুলো আড়াল করা রেফারেন্স; এগুলো স্থানীয় প্রোফাইলের ID হিসেবে পরস্পরের পরিবর্তে ব্যবহারযোগ্য নয়। document_uuid আপনার জমা দেওয়া স্থানীয় প্রোফাইলের রেফারেন্সই থাকে। এই হ্যান্ডলারের ক্যারিয়ার-সমর্থিত প্রক্রিয়ায় registration_details_id হলো ওই স্থানীয় রেফারেন্সকে আরও একবার হ্যাশ করে পাওয়া মান; পরবর্তী প্রোফাইল বা জমাদানের অনুরোধে document_uuid-এর পরিবর্তে এটি ব্যবহার করবেন না।
কিছু বরাদ্দকৃত নম্বরে ক্যারিয়ারের যাচাই তৈরি করার পরিবর্তে স্থানীয়ভাবে পরিচয় সংযুক্ত করা হয়। সেগুলোর সফল ফলাফল হলো Identity associated. এবং সঙ্গে একটি খালি response অ্যারে থাকে। এতে ক্যারিয়ারের পর্যালোচনার কাজ তৈরি হয় না বা অনুমোদন প্রতিষ্ঠিত হয় না। পোর্টালে সংযুক্তির একটি নতুন কার্যপ্রবাহ আছে, যার সরবরাহকারী পরিচালনা ও পুনরায় জমাদান পরীক্ষা এই এন্ডপয়েন্ট থেকে আলাদা।
একই কাজ একাধিকবার তৈরি না করে ত্রুটি সামলান
নম্বর বা প্রোফাইল রেফারেন্স না থাকলে API কোড 400 প্রযোজ্য। অ্যাকাউন্টের জন্য প্রোফাইল বা নম্বর উপলব্ধ না থাকলে, অথবা ক্যারিয়ারের নম্বর তালিকায় নম্বরটি না থাকলে কোড 404 প্রযোজ্য। কোড 422 পরিচয়/ঠিকানার রেফারেন্সের অনুপস্থিতি, বিক্রেতার শর্ত বা ক্যারিয়ারের বৈধতা পরীক্ষায় প্রত্যাখ্যান জানাতে পারে। কলব্যাক কনফিগারেশন না থাকলে 503 এবং তৈরির অনুরোধ পরিবহনে ব্যর্থ হলে 502 আসতে পারে। সব ব্যর্থতাকে একইভাবে না দেখে বার্তা ও কোনো requirement_diagnostics থাকলে তা পড়ুন।
শর্ত যাচাই, কলব্যাক কনফিগারেশন পরীক্ষা বা কাজ তৈরি শেষ হওয়ার আগেই ক্যারিয়ার-সমর্থিত প্রক্রিয়া স্থানীয় মুলতুবি নিবন্ধনের ফ্ল্যাগ হালনাগাদ করতে পারে। তাই ত্রুটি ঘটলেই স্থানীয় অবস্থা অপরিবর্তিত আছে বোঝায় না, আর শুধু মুলতুবি ফ্ল্যাগ থাকলেই কোনো কাজ বিদ্যমান বলে প্রমাণিত হয় না। অনুমোদন বা অনুরোধ পৌঁছানোর নিশ্চয়তা হিসেবে ওই ফ্ল্যাগগুলো ব্যবহার করবেন না।
পরবর্তী কোনো স্থানীয় ডেটাবেস অপারেশন ব্যর্থ হলেও সরবরাহকারী কাজটি গ্রহণ করতে পারে, এবং এই সহায়ক ফাংশন সাফল্য জানানোর আগে স্থানীয়ভাবে তথ্য লেখার প্রতিটি ফলাফল পরীক্ষা করে না। এই হ্যান্ডলারে ক্লায়েন্টের জন্য কোনো আইডেমপোটেন্সি প্যারামিটার বা একই অনুরোধ একাধিকবার জমা দেওয়া ঠেকানোর ব্যবস্থা নেই। সময়সীমা অতিক্রম করলে, ত্রুটি ঘটলে বা ফলাফল অনিশ্চিত হলে নম্বরের নিবন্ধনের ইতিহাস দেখতে পোর্টাল ব্যবহার করুন অথবা পুনরায় জমা দেওয়ার আগে সহায়তা বিভাগের সঙ্গে যোগাযোগ করুন। স্থানীয় রেকর্ড না থাকাই সরবরাহকারী কিছু পায়নি বলে প্রমাণ করে না।
এককালীন নথির সীমাবদ্ধতা
হ্যান্ডলার onetime_files গ্রহণ করে এবং প্রতিটি অখালি স্ট্রিং ক্যারিয়ারের এনক্রিপ্ট করা ফাইলের সম্পর্কের মধ্যে পাঠিয়ে দেয়। এটি মালিকানাধীন অ্যাকাউন্টের আপলোড রেকর্ড খুঁজে দেখে না বা বাইরের আড়াল করা আপলোড ID-কে সরবরাহকারীর ফাইল ID-তে রূপান্তর করে না। অফলাইন নিরীক্ষায় তথ্য পাঠানোর আচরণ যাচাই করা হয়েছে, ক্যারিয়ারের কাছে সফলভাবে ফাইল সংযুক্ত হওয়া নয়।
এককালীন চুক্তির কার্যপ্রবাহ সম্পূর্ণ করতে create_encrypt_files থেকে পাওয়া ফাইল ID এই ক্ষেত্রে কপি করা যাবে বলে ধরে নেবেন না। কোনো নম্বরের জন্য এই নথিগুলো প্রয়োজন হলে পোর্টাল ব্যবহার করুন অথবা সমর্থিত শনাক্তকারী ব্যবহারের কার্যপ্রবাহ MultiTEL-এর সঙ্গে নিশ্চিত করুন। এটি এখনো API পর্যালোচনার একটি অমীমাংসিত অংশ, শুরু থেকে শেষ পর্যন্ত যাচাই করা উদাহরণ নয়।
নিবন্ধনের তথ্য সুরক্ষিত রাখুন
নম্বরটির জন্য ব্যবহার করার অনুমতি আছে এমন তথ্য ও নথিই শুধু জমা দিন। প্রোফাইল ও যাচাইয়ের রেফারেন্স সঠিক অ্যাকাউন্টের সঙ্গে যুক্ত রাখুন এবং সম্পূর্ণ নিবন্ধন পেলোড লগে সংরক্ষণ করা এড়িয়ে চলুন। এই অনুরোধ আগের সব প্রমাণপত্র বা যাচাই মুছে দেয় না বা প্রতিস্থাপন করে না। ক্যারিয়ারের পর্যালোচনা, সক্রিয়করণ ও তথ্য সংরক্ষণ পৃথক প্রক্রিয়া।