# Launch অ্যাপ্লিকেশন ইন্টিগ্রেশন প্যাকেজ

Launch **0.1.6** সব **নয়টি ভাষার** জন্য অফিসিয়াল Licentivo SDK **0.11.6** অন্তর্ভুক্ত করে। শুধু আপনার ভাষার Launch প্যাকেজ ইনস্টল করুন। এর বাস্তবায়ন, ডিফল্ট অ্যাডাপ্টার, লাইসেন্স নোটিশ ও SDK লিঙ্ক কনফিগারেশন অন্তর্ভুক্ত। TypeScript ঘোষণা JavaScript-এর অংশ; বিশ্বস্ত Go Web ব্যাকএন্ড অতিরিক্ত উদাহরণ। প্রকাশ্য সোর্স, রেজিস্ট্রি কমান্ড ও ভাষাভিত্তিক উপলব্ধতা [Launch SDK রিপোজিটরি](https://github.com/spf86/licentivo-launch-sdk) ও তার [প্রকাশের অবস্থা](https://github.com/spf86/licentivo-launch-sdk/blob/main/docs/registry-status.json)-এ রাখা হয়।

0.1.6 আপডেটে curl config-package ও FindCURL ব্যবহারকারীদের জন্য আপস্ট্রিম C/C++ CMake সংশোধন আছে। লাইসেন্সিং প্রোটোকল, অ্যাপ্লিকেশন API ও অ্যাকাউন্ট জীবনচক্র অপরিবর্তিত। বিদ্যমান অ্যাপ ইন্টিগ্রেশন কোড না বদলে Launch প্যাকেজ আপগ্রেড ও পুনর্নির্মাণ করতে পারে। [0.1.6 প্রকাশের রেকর্ড](https://github.com/spf86/licentivo-launch-sdk/blob/main/docs/publication-0.1.6.md) স্থানীয় বিল্ড থেকে পৃথকভাবে প্রকাশ্য উপলব্ধতা ও পরিচ্ছন্ন ইনস্টল যাচাই ট্র্যাক করে।

| ভাষা | একক Launch আর্টিফ্যাক্ট | প্যাকেজ সোর্স / API নির্দেশিকা |
| --- | --- | --- |
| Go | স্বয়ংসম্পূর্ণ মডিউল ZIP | [pkg/launchclient](https://github.com/spf86/licentivo-launch/blob/main/pkg/launchclient/README.md) |
| Python | licentivo_launch-0.1.6-py3-none-any.whl | [sdk/python](https://github.com/spf86/licentivo-launch/blob/main/sdk/python/README.md) |
| C# / .NET 8 | Licentivo.Launch.0.1.6.nupkg | [sdk/csharp](https://github.com/spf86/licentivo-launch/blob/main/sdk/csharp/README.md) |
| Java 17 | launch-client-0.1.6.jar এবং POM | [sdk/java](https://github.com/spf86/licentivo-launch/blob/main/sdk/java/README.md) |
| JavaScript / Node.js | licentivo-launch-0.1.6.tgz | [sdk/javascript](https://github.com/spf86/licentivo-launch/blob/main/sdk/javascript/README.md) |
| Rust | licentivo-launch-0.1.6.crate বা সোর্স ZIP | [sdk/rust](https://github.com/spf86/licentivo-launch/blob/main/sdk/rust/README.md) |
| Ruby | প্ল্যাটফর্ম Launch gem বা সোর্স gem | [sdk/ruby](https://github.com/spf86/licentivo-launch/blob/main/sdk/ruby/README.md) |
| C | Launch নেটিভ CMake ইনস্টলেশন ZIP | [sdk/native](https://github.com/spf86/licentivo-launch/blob/main/sdk/native/README.md) |
| C++ | একই নেটিভ আর্কাইভ, C++17 API | [sdk/native](https://github.com/spf86/licentivo-launch/blob/main/sdk/native/README.md) |

## প্রকাশ্য রেজিস্ট্রি থেকে ইনস্টল করুন

সব নয় ভাষায় প্রকাশ্য 0.1.6 ইনস্টল পরীক্ষা পাস করেছে: Go, Python, C#, Java, Node.js/TypeScript, Rust, Ruby, C ও C++। নিচের রেজিস্ট্রি কমান্ড ও নেটিভ ডাউনলোড প্রকাশ্যে উপলব্ধ এবং স্বাধীন ব্যবহারকারীতে যাচাইকৃত। প্রকাশের অবস্থা সঠিক প্যাকেজ চেকসাম, ইনস্টল ফল ও প্ল্যাটফর্ম সীমা রেকর্ড করে।

```sh
go get github.com/spf86/licentivo-launch-sdk/pkg/launchclient@v0.1.6
python -m pip install licentivo-launch==0.1.6
npm install @licentivo/launch@0.1.6
dotnet add package Licentivo.Launch --version 0.1.6
cargo add licentivo-launch@=0.1.6
gem install licentivo-launch --version 0.1.6
```

Java Maven/Gradle স্থানাঙ্ক `com.licentivo.launch:launch-client:0.1.6` ব্যবহার করে।
C/C++ [সংস্করণযুক্ত GitHub রিলিজ](https://github.com/spf86/licentivo-launch-sdk/releases/tag/v0.1.6) থেকে ABI-সামঞ্জস্য নেটিভ আর্কাইভ ব্যবহার করে।
রেজিস্ট্রি প্রচার ও যাচাই ফলের জন্য প্রকাশের অবস্থা দেখুন।

## ডাউনলোড করা বিতরণ ইনস্টল করুন

integration-packages.json-এ চিহ্নিত আর্টিফ্যাক্ট ব্যবহার করুন। প্রতিটি ভাষায় sdk_managed: true ও requires_separate_official_sdk: false রেকর্ড আছে। ইনস্টলের আগে SHA256SUMS যাচাই করুন।

```powershell
python -m pip install ./licentivo_launch-0.1.6-py3-none-any.whl
npm install ./licentivo-launch-0.1.6.tgz
dotnet add YOUR_PROJECT package Licentivo.Launch --version 0.1.6 --source YOUR_LOCAL_FEED
gem install --local ./licentivo-launch-0.1.6-x64-mingw-ucrt.gem
```

Java তার classpath-এ শুধু Launch JAR ব্যবহার করে; তার POM-এ অফিসিয়াল SDK নির্ভরতা নেই। অফলাইন Go ব্যবহারকারী মডিউল ZIP বের করে `github.com/spf86/licentivo-launch-sdk`-এর স্থানীয় require/replace ব্যবহার করতে পারেন। অফলাইন Rust ব্যবহারকারী crate বা সোর্স ZIP বের করে স্থানীয় licentivo-launch পাথ নির্ভরতা যোগ করতে পারেন। অফিসিয়াল SDK প্যাকেজ বা চেকআউট প্রয়োজন নেই।

C/C++-এ নেটিভ ইনস্টলেশন ZIP বের করে তার প্রিফিক্স CMake-এ যোগ করুন এবং ব্যবহার করুন:

```cmake
find_package(LicentivoLaunch CONFIG REQUIRED)
add_executable(myapp main.c)
licentivo_launch_link(myapp)
# C++17 target: licentivo_launch_link(myapp CXX)
```

Launch নিজস্ব SDK, ট্রানজিটিভ লাইব্রেরি ও বান্ডল করা Windows DLL সমাধান করে। Rust-এর build.rs অন্তর্ভুক্ত C কোর কম্পাইল করে এবং বান্ডল DLL Cargo এক্সিকিউটেবলের পাশে কপি করে। Ruby প্ল্যাটফর্ম gem-এ ব্যক্তিগত নেটিভ কোর ও রানটাইম লাইব্রেরি আছে; সোর্স gem কোর স্বয়ংক্রিয় কম্পাইল করে।

সাধারণ ভাষা টুলচেইন ও সাধারণ নির্ভরতা এখনও প্রযোজ্য: pip cryptography, NuGet BouncyCastle.Cryptography এবং Cargo সাধারণ Rust crate সমাধান করে। নেটিভ আর্কাইভ Windows amd64 GNU ও Linux amd64 কভার করে। Windows বিতরণে curl আছে। অন্য OS সম্পূর্ণ সোর্সের সঙ্গে C11 কম্পাইলার ও স্বাভাবিক OS curl/OpenSSL ডেভেলপমেন্ট লাইব্রেরি ব্যবহার করে। SDK 0.11.6-এর Windows নেটিভ কোরে GNU/MinGW প্রয়োজন।

## অ্যাপ ইনিশিয়ালাইজ করুন

Launch-এ বিদ্যমান সফটওয়্যার নির্বাচন করুন। এটি স্বয়ংক্রিয়ভাবে বর্তমান বিক্রেতা URL, বিদ্যমান প্ল্যান/পণ্য ম্যাপিং ও অফিসিয়াল স্বাক্ষর পাবলিক কী পড়ে এবং পূরণ করা সংযোগ ফাংশন দেয়। ফাংশন অ্যাপে কপি করুন; অভ্যন্তরীণ ID হাতে দেওয়া বা কনফিগারেশন ফাইল তৈরি প্রয়োজন নেই। সার্ভার চালুতে এখনও ব্যক্তিগত config.yaml ব্যবহৃত হয়, যা অ্যাপের সঙ্গে কখনো যায় না।

প্যাকেজ এন্ট্রি পয়েন্ট ব্যবহার করুন, যেমন launchclient.Connect, Python Application.connect, C# Application.Connect বা Node Application.connect। অন্তর্নির্মিত ফ্যাক্টরি SDK তৈরি ও পরিচালনা করে। কাস্টম ফ্যাক্টরি ঐচ্ছিক পরীক্ষা/ইন্টিগ্রেশন হুক, ইনস্টল ধাপ নয়। নির্ভুল API প্রতিটি প্যাকেজ README ও উদাহরণে আছে।

Launch অ্যাকাউন্ট লগইন, সীমিত-পরিসরের ক্রেডেনশিয়াল, সীমাবদ্ধ অপেক্ষমাণ পুনঃপ্রচেষ্টা ও পুনরুদ্ধার পরিচালনা করে। অন্তর্ভুক্ত SDK স্বাক্ষর যাচাই করে ও প্রতিটি সুরক্ষিত কাজ অনুমোদন করে। সাধারণ বন্ধ, লগআউট ও ডিভাইস রিলিজ পৃথক। Web অ্যাপ বিশ্বস্ত ব্যাকএন্ডে অনুমতি পরীক্ষা করে; Node/Electron কোড প্রধান বা সার্ভার প্রক্রিয়ায় থাকে।

ম্যানুয়াল ডেভেলপমেন্ট নির্দেশ [manual-integration.md](/bn/launch-documents/manual-integration/) ও প্রতিটি ভাষার README-তে রয়েছে। প্রশাসনিক AI ইন্টিগ্রেশন পৃষ্ঠা একই সরাসরি ইনিশিয়ালাইজেশন প্রবাহের ইংরেজি নির্দেশ তৈরি করে। এতে পাসওয়ার্ড, ব্যবস্থাপনা কী ও রানটাইম গ্রাহক/ডিভাইস ক্রেডেনশিয়াল থাকে না এবং AI পরিষেবা কল হয় না। [AI ইন্টিগ্রেশন](/bn/launch-documents/ai-integration/) দেখুন।

## রক্ষণাবেক্ষণকারী হিসেবে বিতরণ তৈরি করুন

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

```powershell
./scripts/prepare-examples.ps1 -Source 'C:\path\to\reviewed-sdk\sdk'
./scripts/build-integration-packages.ps1 -Output artifacts/NEW_DIRECTORY -BuildRustCrate -BuildNative -CurlRoot PATH_TO_CURL -CCompiler PATH_TO_GCC
```

প্রয়োজনমতো -Python, -DotNet, -JavaHome, -Ruby, -Cargo ও -CMake দিয়ে টুল পাথ দিন। বিল্ডার আপস্ট্রিম ম্যানিফেস্ট যাচাই করে, তারপর prepare-managed-sdk.mjs সোর্স অন্তর্ভুক্ত করে ও sdk/managed-sdk-manifest.json-এ সোর্স/গন্তব্য SHA-256 মান রেকর্ড করে। প্রয়োজনে মডিউল অবস্থান/ইমপোর্ট বদলায়; ক্রিপ্টোগ্রাফিক যাচাই পর্যালোচিত বাস্তবায়নেই থাকে। প্রতিটি অন্তর্ভুক্ত কপির সঙ্গে MIT লাইসেন্স ও নোটিশ থাকে।

প্রতিটি বিল্ড ভাষাভিত্তিক আর্টিফ্যাক্ট, সোর্স আর্কাইভ, সম্মিলিত সোর্স বান্ডল, ইনভেন্টরি ও চেকসামসহ নতুন ডিরেক্টরি তৈরি করে। -SourceOnly স্পষ্টভাবে সোর্স আর্টিফ্যাক্ট দেয়; বাদ দেওয়া লক্ষ্য পরীক্ষিত বাইনারি রিলিজ নয়। সম্মিলিত বান্ডল examples/vendor ছাড়াই প্যাকেজ, উদাহরণ, নথি ও পরীক্ষার পাথ বজায় রাখে।

## ইনস্টলেশন ও আচরণ যাচাই করুন

scripts/test-managed-installations.ps1 নতুন ব্যবহারকারী প্রকল্পে বিতরণ ইনস্টল করে। পৃথক অফিসিয়াল SDK প্যাকেজ, SDK সোর্স পাথ, কপি করা অ্যাডাপ্টার বা ম্যানুয়াল SDK লিঙ্ক কনফিগারেশন ছাড়া সব নয় লক্ষ্য যাচাই করে। এস্কেপ করা প্রকাশ্য ডেটাসহ নির্ভুল তৈরি সরাসরি সংযোগ স্নিপেট কম্পাইল ও চালায় এবং configuration_files_required: false রিপোর্ট করে। এর রিপোর্ট রানটাইম স্যুট থেকে পৃথক।

scripts/test-integration-packages.ps1 জীবনচক্র রিগ্রেশন ও স্থানীয় স্বাক্ষরিত বাস্তব-SDK ফিক্সচার চালায়। টুল পাথ ও কনফিগার করা নেটিভ পরীক্ষার বিল্ড দিন:

```powershell
./scripts/test-integration-packages.ps1 -Python python -DotNet dotnet -JavaHome $env:JAVA_HOME -Ruby ruby -Cargo cargo -NativeBuildDirectory .cache/launch-native-build
```

রিপোজিটরি সোর্স বিল্ড সাধারণ OS নেটিভ নির্ভরতা ব্যবহার করে; Windows রক্ষণাবেক্ষণকারী LICENTIVO_CURL_ROOT দিতে পারেন। এটি সোর্স-বিল্ড টুল সেটিং, পৃথক SDK ইনস্টল নয়। ভিন্ন Rust/C++ MinGW ইনস্টলেশনে -NativeRuntimeDirectories C++ DLL ডিরেক্টরি নেটিভ পরীক্ষায় সীমিত রাখে। অনুপস্থিত পূর্বশর্ত সংশ্লিষ্ট লক্ষ্য ব্যর্থ করে। all_nine_passed-এর জন্য সব নয়টি পরীক্ষা পাস হতে হবে।

## স্টোরেজ ও গ্রহণযোগ্যতা

সেশন ডিফল্টে মেমোরিতে থাকে। মনে রাখা লগইনে সুরক্ষিত স্টোর প্রয়োজন। AES-GCM স্টোরে OS ভল্ট থেকে নেওয়া 32-বাইট কী প্রয়োজন, যা সাইফারটেক্সটের পাশে কখনো রাখা যায় না। পাসওয়ার্ড স্থায়ীভাবে সংরক্ষিত হয় না। Go, Python, C# ও নেটিভ C/C++ Windows বর্তমান-ব্যবহারকারী DPAPI দেয়; Java, Node, Rust ও Ruby কলার-পরিচালিত কীসহ এনক্রিপ্টেড স্টোর দেয়।

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

স্পষ্ট সেশন/অধিকার প্রত্যাখ্যানে অফলাইন ফলব্যাক নয়। কেবল ট্রান্সপোর্ট ব্যর্থতা বা HTTP 5xx-এ বিদ্যমান ক্রিপ্টোগ্রাফিকভাবে যাচাইকৃত গ্রান্ট তার স্বাক্ষরিত নীতির মধ্যে ব্যবহার হতে পারে। প্রথম অ্যাক্টিভেশন, floating সিট ও অফলাইন নিষিদ্ধ নীতির সংযোগ প্রয়োজনীয়তা বজায় থাকে।

স্থানীয় রিপোর্ট বাস্তব পেমেন্ট, ইস্যু বা বাহ্যিক অ্যাক্টিভেশনের প্রমাণ নয়। ওই পরিবেশ স্থগিত ছিল; [acceptance.md](/bn/launch-documents/acceptance/) দেখুন। রেজিস্ট্রি প্রকাশ ও অ-Windows রিলিজ যোগ্যতার জন্য পৃথক কাজ ও প্রমাণ প্রয়োজন।
