eUICC API ত্রুটিগুলি পরিচালনা করা

eUICC APIs অ্যাপ এবং ব্যবহারকারীদের eSIM প্রোফাইল ডাউনলোড, সক্ষম, অক্ষম এবং মুছে ফেলা সংক্রান্ত সমস্যা সমাধানে সহায়তা করার জন্য ত্রুটি কোড প্রদান করে।

হ্যান্ডলিং ত্রুটি

eUICC API কল করার সময় একটি ত্রুটি ঘটলে, একটি মুলতুবি অভিপ্রায় কলব্যাক প্রদান করা হয় এবং বিস্তারিত ত্রুটি কোড পাওয়ার জন্য EXTRA_EMBEDDED_SUBSCRIPTION_DETAILED_CODE কী হিসাবে ব্যবহৃত হয়৷ Android 11 থেকে শুরু করে, নিম্নলিখিত চারটি কী এবং মান ফলাফলের অভিপ্রায়ে অন্তর্ভুক্ত করা হয়েছে:

  • EXTRA_EMBEDDED_SUBSCRIPTION_OPERATION_CODE : কি ভুল হয়েছে সে সম্পর্কে তথ্য প্রদান করে৷ উদাহরণস্বরূপ, একটি eSIM প্রোফাইল ডাউনলোড করা বা মুছে ফেলা। এই মাঠ কখনই খালি থাকে না।
  • EXTRA_EMBEDDED_SUBSCRIPTION_ERROR_CODE : কেন ত্রুটি ঘটেছে সে সম্পর্কে তথ্য। উদাহরণস্বরূপ, অনুরোধের সময় শেষ হয়েছে বা ডিভাইসটি ক্যারিয়ার লক করা আছে৷ এই ক্ষেত্রটি নিম্নলিখিত ক্ষেত্রে জনবহুল নয়:

    • অপারেশন কোড হল OPERATION_SMDX_SUBJECT_REASON_CODE
    • ত্রুটিটি একটি নিম্ন-স্তরের ত্রুটি যেমন IOException বা InterruptedException
  • EXTRA_EMBEDDED_SUBSCRIPTION_SMDX_SUBJECT_CODE : EXTRA_EMBEDDED_SUBSCRIPTION_SMDX_REASON_CODE এর সাথে ব্যবহার করা হয়, যা একসাথে সাবজেক্ট কোড[5.2.6.1] এবং ReasonCode [5.2.6.2] GSMA (v..2.S.) থেকে প্রদান করে। অপারেশন কোড OPERATION_SMDX_SUBJECT_REASON_CODE হলেই এই ক্ষেত্রটি পপুলেট করা হয়।

  • EXTRA_EMBEDDED_SUBSCRIPTION_SMDX_REASON_CODE : EXTRA_EMBEDDED_SUBSCRIPTION_SMDX_SUBJECT_CODE এর সাথে ব্যবহার করা হয়, যা একসাথে সাবজেক্ট কোড[5.2.6.1] এবং ReasonCode [5.2.6.2] GSMA (v2SGP) থেকে প্রদান করে। অপারেশন কোড OPERATION_SMDX_SUBJECT_REASON_CODE হলেই এই ক্ষেত্রটি পপুলেট করা হয়।

এই চারটি মান eUICC API-এর কলকারীকে পৃথকভাবে নির্দিষ্ট ত্রুটিগুলি পরিচালনা করার অনুমতি দেয়। এই ত্রুটিগুলি কিভাবে পরিচালনা করতে হয় তার একটি উদাহরণ নিচে দেওয়া হল।

int operationCode = intent.get(EXTRA_EMBEDDED_SUBSCRIPTION_OPERATION_CODE)
int errorCode = intent.get(EXTRA_EMBEDDED_SUBSCRIPTION_OPERATION_CODE)
String smdxSubjectCode = intent.get(EXTRA_EMBEDDED_SUBSCRIPTION_SMDX_SUBJECT_CODE)
String smdxReasonCode = intent.get(EXTRA_EMBEDDED_SUBSCRIPTION_SMDX_REASON_CODE)

if (operationCode == OPERATION_DOWNLOAD && errorCode == ERROR_CARRIER_LOCKED) {
  // handle specific error i.e. tries to download but the device is carrier locked
} else if (operationCode == OPERATION_SMDX) {
  // handle all SM-DP+/SM-DS errors
} else if (errorCode == ERROR_TIME_OUT) {
  // handle all types of time out issues, regardless of operation.
} else if ("8.1".equals(smdxSubjectCode) && "3.1".equals(smdxReasonCode)) {
  // handle specific subject code and reason code: 8.1 and 4.1 means insufficient memory.
}

সমর্থিত অপারেশন এবং ত্রুটি কোড সমন্বয়

নিম্নলিখিত সারণীটি স্থানীয় প্রোফাইল সহকারী (LPA) থেকে ফিরে আসা অপারেশন এবং ত্রুটি কোডগুলির সমর্থিত সংমিশ্রণ বর্ণনা করে।

অপারেশন এবং ত্রুটি কোড সমন্বয়
অপারেশন কোড ভুল সংকেত বর্ণনা
OPERATION_SYSTEM প্রযোজ্য নয় একটি অভ্যন্তরীণ ত্রুটি ঘটেছে. উদাহরণস্বরূপ, থ্রেডটি বাধাগ্রস্ত হয়েছে বা একটি IOException ত্রুটি ঘটেছে।
OPERATION_SIM_SLOT প্রযোজ্য নয় একটি সিম স্লট অপারেশন করার সময় একটি অভ্যন্তরীণ ত্রুটি ঘটেছে৷
ERROR_TIME_OUT একটি সিম স্লট অপারেশন করার চেষ্টা করার সময় সময় শেষ হয়েছে৷
ERROR_EUICC_MISSING ডিভাইসে কোনো eUICC উপলব্ধ বা সক্রিয় নেই।
OPERATION_EUICC_CARD প্রযোজ্য নয় একটি eUICC অপারেশন চালানোর সময় একটি অভ্যন্তরীণ ত্রুটি ঘটেছে৷
ERROR_UNSUPPORTED_VERSION eUICC (চিপ) সংস্করণ এবং EuiccCard (সফ্টওয়্যার) সংস্করণ সামঞ্জস্যপূর্ণ নয়৷
ERROR_EUICC_MISSING ডিভাইসে কোনো সিম কার্ড পাওয়া যায় না। উদাহরণস্বরূপ, LPA সিম কার্ড সনাক্ত করতে পারে না৷
OPERATION_SMDX প্রযোজ্য নয় একটি SM-DP+/SM-DS অপারেশন করার সময় একটি অভ্যন্তরীণ ত্রুটি ঘটেছে৷
ERROR_ADDRESS_MISSING প্রোফাইল ডাউনলোড করার জন্য কোনো SM-DP+ ঠিকানা নেই।
ERROR_INVALID_CONFIRMATION_CODE অ্যাক্টিভেশন কোড পার্স করার সময় একটি ত্রুটি ঘটেছে (অবৈধ বিন্যাস)।
ERROR_CERTIFICATE_ERROR যাচাইকরণের জন্য TLS সংযোগে ব্যবহৃত হলে কীস্টোর বা শংসাপত্র ত্রুটি৷
ERROR_NO_PROFILES_AVAILABLE SM-DP+ থেকে কোনো প্রোফাইল উপলব্ধ নেই৷
ERROR_CONNECTION_ERROR সার্ভারে সংযোগ তৈরি করা যাচ্ছে না।
ERROR_INVALID_RESPONSE SM-DP+/SM-DS সার্ভার থেকে অবৈধ প্রতিক্রিয়া।
OPERATION_SWITCH প্রযোজ্য নয় একটি সুইচ অপারেশন চালানোর সময় একটি অভ্যন্তরীণ ত্রুটি ঘটেছে৷
ERROR_CARRIER_LOCKED প্রোফাইল স্যুইচ করার অনুমতি নেই কারণ ডিভাইসটি ক্যারিয়ার লক (সিম লক)।
OPERATION_DOWNLOAD প্রযোজ্য নয় একটি ডাউনলোড অপারেশন চালানোর সময় একটি অভ্যন্তরীণ ত্রুটি ঘটেছে৷
ERROR_DISALLOWED_BY_PPR ইইউআইসিসি-তে নিয়ম অনুমোদন সারণীটি শূন্য বা প্রোফাইল নীতি নিয়ম দ্বারা ডাউনলোড অস্বীকৃত।
ERROR_INVALID_ACTIVATION_CODE অ্যাক্টিভেশন কোড (অবৈধ ফর্ম্যাট) পার্স করার সময় বা অ্যাক্টিভেশন কোড ছাড়াই ডাউনলোড করার চেষ্টা করার সময় একটি ত্রুটি ঘটেছে।
ERROR_CARRIER_LOCKED ডিভাইসটি ক্যারিয়ার লক (SIM লক) থাকার কারণে ডাউনলোড করার অনুমতি নেই।
ERROR_INCOMPATIBLE_CARRIER ক্যারিয়ারটি কালো তালিকায় রয়েছে এবং LPA SM-DP+/SM-DS থেকে একটি প্রোফাইল ডাউনলোড করতে পারে না।
ERROR_OPERATION_BUSY প্রোফাইল ডাউনলোড চলছে এবং সিম স্টেট পরিবর্তনগুলিকে ট্রিগার করতে পারে এমন অন্য কোনও কাজ অনুমোদিত নয়৷
OPERATION_METADATA প্রযোজ্য নয় মেটাডেটা অপারেশন করার সময় একটি অভ্যন্তরীণ ত্রুটি ঘটেছে৷
ERROR_INVALID_ACTIVATION_CODE সাবস্ক্রিপশন মেটাডেটা খালি বা সাবস্ক্রিপশন মেটাডেটার ভিতরে অ্যাক্টিভেশন কোড খালি বা অবৈধ।
ERROR_INCOMPATIBLE_CARRIER ক্যারিয়ারটি কালো তালিকায় রয়েছে এবং LPA এই ক্যারিয়ারের প্রোফাইল SM-DP+/SM-DS থেকে ডাউনলোড করতে পারে না।
OPERATION_EUICC_GSMA প্রযোজ্য নয় একটি eUICC GSMA অপারেশন করার সময় একটি অভ্যন্তরীণ ত্রুটি ঘটেছে৷
ERROR_INSTALL_PROFILE প্রোফাইল ইনস্টল করার চেষ্টা করার সময় eUICC এর সাথে ত্রুটি। উদাহরণস্বরূপ, প্রোফাইলটি ইতিমধ্যেই বিদ্যমান বা ICCID মেলে না৷
ERROR_EUICC_INSUFFICIENT_MEMORY প্রোফাইল ইনস্টল করার চেষ্টা করার সময় eUICC এর সাথে ত্রুটি। eUICC-তে যথেষ্ট মেমরি নেই।
ERROR_DISALLOWED_BY_PPR প্রোফাইল ইনস্টল করার চেষ্টা করার সময় eUICC এর সাথে ত্রুটি। প্রোফাইল নীতি নিয়ম দ্বারা অনুমোদিত নয়.
OPERATION_APDU প্রযোজ্য নয় একটি APDU অপারেশন চালানোর সময় একটি অভ্যন্তরীণ ত্রুটি ঘটেছে৷
OPERATION_HTTP 1-999 ত্রুটি কোড একটি HTTP ত্রুটি মান.
অপারেশন কোড বিষয় কোড কারণ সংকেত বর্ণনা
OPERATION_SMDX_SUBJECT_REASON_CODE স্ট্রিং-এ বিন্দু দ্বারা বিভক্ত 3টি সংখ্যা রয়েছে, কোন অগ্রণী শূন্য নেই। উদাহরণস্বরূপ, 8.1.1 স্ট্রিং-এ 3টি সংখ্যা থাকে যা বিন্দু দ্বারা বিভক্ত হয় যেখানে কোন অগ্রণী শূন্য নেই। উদাহরণস্বরূপ, 3.8 জিএসএমএ (SGP.22 v2.2) থেকে সাবজেক্ট কোড[5.2.6.1] এবং রিজনকোড[5.2.6.2]। উদাহরণ স্বরূপ, 8.1.1 এর সাবজেক্ট কোড এবং 3.8 এর রিজনকোড মানে EID অন্য ডিভাইসের সাথে আবদ্ধ।