এই পৃষ্ঠাটি এমন কিছু সাধারণ ক্রিয়াকলাপের উদাহরণ প্রদান করে যা আপনি কমন অ্যান্ড্রয়েড রিসেলার লাইব্রেরির সাথে সম্পাদন করতে পারেন, যার মধ্যে রয়েছে:
-
ResellerService
অবজেক্ট তৈরি করুন -
Customer
বস্তু তৈরি করুন - ডিভাইসের একটি ব্যাচ দাবি করা হচ্ছে
- ডিভাইসের একটি ব্যাচ দাবি করা হচ্ছে না
- একটি Samsung ডিভাইস বিনিময়
- একটি Android (নন-স্যামসাং) ডিভাইস বিনিময় করা
ResellerService
অবজেক্ট তৈরি করুন
ResellerService
অবজেক্ট তৈরি করতে Samsung এবং Google ফ্যাক্টরি ক্লাস ব্যবহার করুন। ResellerService
অবজেক্টের সাথে, Samsung এবং অন্যান্য Android ডিভাইসগুলি নথিভুক্ত করার জন্য পদ্ধতির একটি সাধারণ সেট উপলব্ধ।
স্যামসাং ডিভাইস
নীচের উদাহরণটি দেখায় যে Samsung ডিভাইসগুলি পরিচালনা করতে SamsungResellerServiceFactory
ক্লাস ব্যবহার করে কীভাবে একটি ResellerService
অবজেক্ট তৈরি করতে হয়।
আপনি এটি করার আগে, আপনাকে Knox Deployment Program (KDP) এর সাথে অনবোর্ড করতে হবে।
ResellerService samsungResellerService = SamsungResellerServiceFactory.createResellerService(resellerId, serviceAccountKeyFilePath, clientIdentifier);
অন্যান্য অ্যান্ড্রয়েড ডিভাইস
নীচের উদাহরণটি দেখায় যে কীভাবে অন্যান্য (নন-স্যামসাং) অ্যান্ড্রয়েড ডিভাইসগুলি পরিচালনা করতে GoogleResellerServiceFactory
ক্লাস ব্যবহার করে একটি ResellerService
অবজেক্ট তৈরি করতে হয়। আপনি এটি করার আগে, আপনাকে আপনার resellerId
এবং পরিষেবা অ্যাকাউন্ট কী পেতে জিরো-টাচ তালিকাভুক্তির জন্য শুরু করুন -এর ধাপগুলি অনুসরণ করতে হবে।
ResellerService googleResellerService = GoogleResellerServiceFactory.createResellerService(resellerId, serviceAccountKeyFilePath);
Customer
বস্তু তৈরি করুন
স্যামসাং এবং নন-স্যামসাং ডিভাইস ক্রয়কারী একজন গ্রাহকের দুটি গ্রাহক আইডি প্রয়োজন।
স্যামসাং ডিভাইস
Samsung ডিভাইসগুলি পরিচালনা করতে, আপনি গ্রাহকের Knox গ্রাহক আইডি ব্যবহার করেন। নক্স গ্রাহক আইডি পেতে, আপনাকে প্রথমে একটি Customer
বস্তু তৈরি করতে হবে। এটি করতে, SamsungResellerServiceFactory
থেকে তৈরি একটি SamsungResellerService
ব্যবহার করে createCustomer
কল করুন। এখানে একটি উদাহরণ:
CreateCustomerRequest request = CreateCustomerRequest.newBuilder()
.setCustomerName("TestCustomer") .addPrimaryEmails("superAdmin@gmail.com")
.putVendorParams("country", "US") .putVendorParams("firstName", "Avery")
.putVendorParams("lastName", "Yamada") .putVendorParams("service", "KME")
.build();
CreateCustomerResponse response = samsungResellerService.createCustomer(request);
String companyId = response.getCustomer().getCompanyReference().getCompanyId();
সফল হলে, অনুরোধটি একটি CreateCustomerResponse
অবজেক্ট ফেরত দেয় যেখান থেকে আপনি নক্স গ্রাহক আইডি বের করতে পারেন।
অন্যান্য অ্যান্ড্রয়েড ডিভাইস
অন্যান্য অ্যান্ড্রয়েড ডিভাইসের জন্য, গ্রাহকের একটি জিরো-টাচ এনরোলমেন্ট গ্রাহক আইডি প্রয়োজন। যদি একজন গ্রাহক ইতিমধ্যেই অন্য রিসেলারের সাথে জিরো-টাচ এনরোলমেন্ট ব্যবহার করেন, আপনি তাদের বিদ্যমান গ্রাহক আইডি ব্যবহার করুন। অন্যথায়, আপনাকে একটি Customer
বস্তু তৈরি করতে হবে। এটি করার জন্য, GoogleResellerServiceFactory
থেকে তৈরি একটি ResellerService
ব্যবহার করে createCustomer
কল করুন। এখানে একটি উদাহরণ:
CreateCustomerRequest request = CreateCustomerRequest.newBuilder()
.setCustomerName("TestCustomer")
.addPrimaryEmails("owner@gmail.com")
.addSecondaryEmails("admin@gmail.com")
.build();
CreateCustomerResponse response = googleResellerService.createCustomer(request);
String companyId = response.getCustomer().getCompanyReference().getCompanyId();
সফল হলে, অনুরোধটি একটি CreateCustomerResponse
অবজেক্ট ফেরত দেয়। আপনি প্রতিক্রিয়া থেকে গ্রাহক আইডি পুনরুদ্ধার করতে পারেন।
ডিভাইসের একটি ব্যাচ দাবি করুন
একটি ডিভাইস দাবি করা ডিভাইস এবং গ্রাহকের মধ্যে একটি সম্পর্ক তৈরি করে। উদাহরণস্বরূপ, যদি আপনি একটি গ্রাহকের কাছে ডিভাইসের একটি ব্যাচ বিক্রি করেন তবে আপনি সেই গ্রাহকের জন্য ডিভাইসগুলি দাবি করবেন।
এই উদাহরণটি একাধিক গ্রাহকের কাছ থেকে একাধিক নির্মাতার (স্যামসাং এবং অন্যান্য অ্যান্ড্রয়েড ডিভাইস) থেকে ডিভাইসের অর্ডার অন্তর্ভুক্ত ডিভাইসগুলির একটি ব্যাচ প্রক্রিয়া করার একটি উপায় দেখায়।
ধাপ 1: ডিভাইস এবং গ্রাহকদের সংগঠিত করুন
ডিভাইসগুলি যে গ্রাহকদের কাছে বিক্রি করা হয়েছিল তাদের IMEI, নির্মাতারা এবং আইডিগুলির একটি টেবিল দেওয়া হয়েছে, অর্ডারগুলি পরিচালনা করার একটি উপায় হল সেগুলিকে দুটি তালিকায় সংগঠিত করা: Samsung ডিভাইসের অর্ডার এবং অন্যান্য Android (নন-স্যামসাং) ডিভাইস অর্ডার। তারপর, প্রতিটি তালিকার জন্য, গ্রাহক দ্বারা গ্রুপ ডিভাইস. যেমন:
স্যামসাং ডিভাইস
গ্রাহকের নাম | Samsung Knox গ্রাহক আইডি | প্রস্তুতকারক | আইএমইআই |
---|---|---|---|
ABC কর্পোরেশন | 11 | Samsung | |
অন্যান্য অ্যান্ড্রয়েড ডিভাইস
গ্রাহকের নাম | গ্রাহক আইডি | প্রস্তুতকারক | আইএমইআই |
---|---|---|---|
ABC কর্পোরেশন | 21 | Google | 1234567803 |
XYZ কর্পোরেশন | 22 | Sony | |
ধাপ 2: ClaimDevicesRequest
অবজেক্ট তৈরি করুন
স্যামসাং ডিভাইস
// Note: You can only claim devices for a single customer in each request.
ClaimDevicesRequest claimSamsungDevicesRequest = ClaimDevicesRequest.newBuilder()
.addClaims(
DeviceClaim.newBuilder()
.setCustomer(
CompanyReference.newBuilder()
.setVendor(Vendor.SAMSUNG)
.setCompanyId("11")
.build())
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567801")
.setManufacturer("Samsung")
.build())
.build())
.addClaims(
DeviceClaim.newBuilder()
.setCustomer(
CompanyReference.newBuilder()
.setVendor(Vendor.SAMSUNG)
.setCompanyId("11")
.build())
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567802")
.setManufacturer("Samsung")
.build())
.build())
.build();
অন্যান্য অ্যান্ড্রয়েড ডিভাইস
ClaimDevicesRequest claimGoogleDevicesRequest = ClaimDevicesRequest.newBuilder()
.addClaims(
DeviceClaim.newBuilder()
.setCustomer(
CompanyReference.newBuilder()
.setVendor(Vendor.GOOGLE)
.setCompanyId("21")
.build())
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567803")
.setManufacturer("Google")
.build())
.build())
.addClaims(
DeviceClaim.newBuilder()
.setCustomer(
CompanyReference.newBuilder()
.setVendor(Vendor.GOOGLE)
.setCompanyId("22")
.build())
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567804")
.setManufacturer("Sony")
.build())
.build())
.addClaims(
DeviceClaim.newBuilder()
.setCustomer(
CompanyReference.newBuilder()
.setVendor(Vendor.GOOGLE)
.setCompanyId("22")
.build())
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567805")
.setManufacturer("Sony")
.build())
.build())
.build();
ধাপ 3: গ্রাহকদের জন্য ডিভাইস দাবি করুন
গ্রাহকদের জন্য ডিভাইস দাবি করতে, ClaimDevicesAsync
কল করুন। এই উদাহরণগুলির জন্য দুটি পৃথক অনুরোধের প্রয়োজন: একটি Samsung ResellerService
অবজেক্ট থেকে এবং একটি Google ResellerService
অবজেক্ট থেকে৷
// Samsung devices
ClaimDevicesResponse samsungResponse = samsungResellerService.claimDevicesAsync(claimSamsungDevicesRequest);
// Other Android devices
ClaimDevicesResponse googleResponse = googleResellerService.claimDevicesAsync(claimGoogleDevicesRequest);
একটি ClaimDevicesAsync
অনুরোধ Operation
অবজেক্টের একটি তালিকা প্রদান করে, যাতে অনুরোধের স্থিতি থাকে (প্রগতিতে, সম্পূর্ণ, ত্রুটি সহ সম্পূর্ণ, বা ব্যর্থ)। একটি অপারেশনের স্থিতি পরীক্ষা করতে (উদাহরণস্বরূপ, যদি প্রতিক্রিয়া IN_PROGRESS
ফিরে আসে), getOperation
কল করুন।
// Samsung devices
GetOperationRequest samsungOperationRequest = GetOperationRequest.newBuilder().setOperationId(samsungOperationId).build();
Operation samsungOperation = samsungResellerService.getOperation(samsungOperationRequest);
// Other Android devices
GetOperationRequest googleOperationRequest = GetOperationRequest.newBuilder().setOperationId(googleOperationId).build();
Operation googleOperation = googleResellerService.getOperation(googleOperationRequest);
ডিভাইসের একটি ব্যাচ দাবিমুক্ত করুন
একটি ডিভাইস দাবিমুক্ত করা এটি একটি গ্রাহকের থেকে বিচ্ছিন্ন করে। একটি ডিভাইস অর্ডার বাতিল হলে বা ডিভাইসের চালান সফলভাবে সম্পন্ন না হলে আপনাকে একটি ডিভাইস দাবিমুক্ত করতে হতে পারে। ডিভাইসের একটি ব্যাচ দাবিমুক্ত করতে, এই পদক্ষেপগুলি অনুসরণ করুন:
ধাপ 1: UnclaimDevicesRequest
অবজেক্ট তৈরি করুন
স্যামসাং ডিভাইস
// Each request can only unclaim devices belonging to a single customer. The request must also
// include the customer's Samsung Knox customer ID.
UnclaimDevicesRequest unclaimSamsungDevicesRequest = UnclaimDevicesRequest.newBuilder()
.putVendorParams("customerId", "11")
.addUnclaims(
DeviceUnclaim.newBuilder()
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567801")
.build())
.build())
.addUnclaims(
DeviceUnclaim.newBuilder()
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567802")
.build())
.build())
.build();
অন্যান্য অ্যান্ড্রয়েড ডিভাইস
UnclaimDevicesRequest unclaimGoogleDevicesRequest = UnclaimDevicesRequest.newBuilder()
.addUnclaims(
DeviceUnclaim.newBuilder()
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567803")
.build())
.build())
.addUnclaims(
DeviceUnclaim.newBuilder()
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567804")
.build())
.build())
.addUnclaims(
DeviceUnclaim.newBuilder()
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567805")
.build())
.build())
.build();
ধাপ 2: ডিভাইসগুলি দাবিমুক্ত করুন
ডিভাইসগুলি দাবিমুক্ত করতে, UnclaimDevicesAsync
কল করুন। এই উদাহরণটির জন্য দুটি পৃথক অনুরোধের প্রয়োজন: একটি Samsung ResellerService
অবজেক্ট থেকে এবং একটি Google ResellerService
অবজেক্ট থেকে৷
UnclaimDevicesResponse samsungResponse = samsungResellerService.unclaimDevicesAsync(unclaimSamsungDevicesRequest);
UnclaimDevicesResponse googleResponse = googleResellerService.unclaimDevicesAsync(unclaimGoogleDevicesRequest);
একটি UnclaimDevicesAsync
অনুরোধ Operation
অবজেক্টের একটি তালিকা ফেরত দেয়, যাতে অনুরোধের স্থিতি থাকে (প্রগতিতে, সম্পূর্ণ, ত্রুটি সহ সম্পূর্ণ বা ব্যর্থ) একটি অপারেশনের স্থিতি পরীক্ষা করতে (উদাহরণস্বরূপ, যদি প্রতিক্রিয়া IN_PROGRESS
ফিরে আসে), getOperation
কল করুন .
স্যামসাং ডিভাইস
GetOperationRequest samsungOperationRequest = GetOperationRequest.newBuilder().setOperationId(samsungOperationId).build();
Operation samsungOperation = samsungResellerService.getOperation(samsungOperationRequest);
অন্যান্য অ্যান্ড্রয়েড ডিভাইস
GetOperationRequest googleOperationRequest = GetOperationRequest.newBuilder().setOperationId(googleOperationId).build();
Operation googleOperation = googleResellerService.getOperation(googleOperationRequest);
একটি Samsung ডিভাইস বিনিময় করুন
যদি কোনও কারণে কোনও ডিভাইস প্রতিস্থাপনের প্রয়োজন হয় তবে আপনি এটি বিনিময় করতে পারেন। এই উদাহরণটি অনুমান করে যে আপনি অন্য Samsung ডিভাইসের জন্য একটি Samsung ডিভাইস বিনিময় করছেন।
ধাপ 1: একটি UnclaimDeviceRequest
অবজেক্ট তৈরি করুন
// Note: The request must include the customer's Samsung Knox customer ID.
UnclaimDevicesRequest unclaimSamsungDevicesRequest = UnclaimDevicesRequest.newBuilder()
.putVendorParams("customerId", "11")
.addUnclaims(
DeviceUnclaim.newBuilder()
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567801")
.build())
.build())
.build();
ধাপ 2: UnclaimDeviceAsync
কল করুন
UnclaimDevicesResponse samsungResponse = samsungResellerService.unclaimDevicesAsync(unclaimSamsungDevicesRequest);
একটি UnclaimDevicesAsync
অনুরোধ Operation
অবজেক্টের একটি তালিকা প্রদান করে, যাতে অনুরোধের স্থিতি রয়েছে (প্রগতিতে, সম্পূর্ণ, ত্রুটি সহ সম্পূর্ণ বা ব্যর্থ)। একটি অপারেশনের স্থিতি পরীক্ষা করতে (উদাহরণস্বরূপ, যদি প্রতিক্রিয়া IN_PROGRESS
ফিরে আসে), getOperation
কল করুন :
GetOperationRequest samsungOperationRequest = GetOperationRequest.newBuilder().setOperationId(samsungOperationId).build();
Operation samsungOperation = samsungResellerService.getOperation(samsungOperationRequest);
ধাপ 3: একটি ClaimDeviceRequest
অবজেক্ট তৈরি করুন
ClaimDevicesRequest claimSamsungDevicesRequest = ClaimDevicesRequest.newBuilder()
.addClaims(
DeviceClaim.newBuilder()
.setCustomer(
CompanyReference.newBuilder()
.setVendor(Vendor.SAMSUNG)
.setCompanyId("11")
.build())
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567806")
.setManufacturer("Samsung")
.build())
.build())
.build();
ধাপ 4: ClaimDeviceAsync
কল করুন
ClaimDevicesResponse samsungResponse = samsungResellerService.claimDevicesAsync(claimSamsungDevicesRequest);
একটি ClaimDevicesAsync
অনুরোধ Operation
অবজেক্টের একটি তালিকা প্রদান করে, যাতে অনুরোধের স্থিতি রয়েছে (প্রগতিতে, সম্পূর্ণ, ত্রুটি সহ সম্পূর্ণ বা ব্যর্থ)। একটি অপারেশনের স্থিতি পরীক্ষা করতে (উদাহরণস্বরূপ, যদি প্রতিক্রিয়া IN_PROGRESS
ফিরে আসে), getOperation
কল করুন :
GetOperationRequest samsungOperationRequest = GetOperationRequest.newBuilder().setOperationId(samsungOperationId).build();
Operation samsungOperation = samsungResellerService.getOperation(samsungOperationRequest);
একটি Android (নন-স্যামসাং) ডিভাইস বিনিময় করুন
যদি কোনও কারণে কোনও ডিভাইস প্রতিস্থাপনের প্রয়োজন হয় তবে আপনি এটি বিনিময় করতে পারেন। এই উদাহরণটি অনুমান করে যে আপনি অন্য Android (নন-স্যামসাং) ডিভাইসের জন্য একটি Android (নন-স্যামসাং) ডিভাইস বিনিময় করছেন।
ধাপ 1: একটি UnclaimDeviceRequest
অবজেক্ট তৈরি করুন
UnclaimDeviceRequest unclaimGoogleDeviceRequest = UnclaimDeviceRequest.newBuilder()
.setUnclaim(
DeviceUnclaim.newBuilder()
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567803")
.build())
.build())
.build();
ধাপ 2: UnclaimDevice
কল করুন
googleResponse = googleResellerService.unclaimDevice(unclaimGoogleDeviceRequest);
ধাপ 3: একটি ClaimDeviceRequest
অবজেক্ট তৈরি করুন
ClaimDeviceRequest claimGoogleDeviceRequest = ClaimDeviceRequest.newBuilder()
.setClaim(
DeviceClaim.newBuilder()
.setCustomer(
CompanyReference.newBuilder()
.setVendor(Vendor.GOOGLE)
.setCompanyId("21")
.build())
.setDeviceIdentifier(
DeviceIdentifier.newBuilder()
.setImei("1234567807")
.setManufacturer("Google")
.build())
.build())
.build();
ধাপ 4: ClaimDevice
কল করুন
ClaimDeviceResponse response = googleResellerService.claimDevice(claimGoogleDeviceRequest);
সফল হলে, কলটি deviceId
ধারণকারী একটি ClaimDeviceResponse
অবজেক্ট ফেরত দেয়। অন্যথায়, এটি একটি ত্রুটি কোড ধারণকারী একটি সাধারণ ব্যতিক্রম নিক্ষেপ করে।