FHIR ইঞ্জিন লাইব্রেরি ব্যবহার করে FHIR সংস্থান পরিচালনা করুন

১. শুরু করার আগে

তুমি কী তৈরি করবে

এই কোডল্যাবে, আপনি FHIR ইঞ্জিন লাইব্রেরি ব্যবহার করে একটি অ্যান্ড্রয়েড অ্যাপ তৈরি করবেন। আপনার অ্যাপটি FHIR সার্ভার থেকে FHIR রিসোর্স ডাউনলোড করতে FHIR ইঞ্জিন লাইব্রেরি ব্যবহার করবে এবং সার্ভারে যেকোনো স্থানীয় পরিবর্তন আপলোড করবে।

তুমি কি শিখবে

  • ডকার ব্যবহার করে কিভাবে একটি স্থানীয় HAPI FHIR সার্ভার তৈরি করবেন
  • আপনার অ্যান্ড্রয়েড অ্যাপ্লিকেশনে FHIR ইঞ্জিন লাইব্রেরি কীভাবে একীভূত করবেন
  • FHIR রিসোর্স ডাউনলোড এবং আপলোড করার জন্য এককালীন বা পর্যায়ক্রমিক কাজ সেট আপ করতে সিঙ্ক API কীভাবে ব্যবহার করবেন
  • অনুসন্ধান API কীভাবে ব্যবহার করবেন
  • স্থানীয়ভাবে FHIR রিসোর্স তৈরি, পড়া, আপডেট এবং মুছে ফেলার জন্য ডেটা অ্যাক্সেস API কীভাবে ব্যবহার করবেন

তোমার যা লাগবে

যদি আপনি আগে অ্যান্ড্রয়েড অ্যাপ তৈরি না করে থাকেন, তাহলে আপনার প্রথম অ্যাপ তৈরি করে শুরু করতে পারেন।

2. পরীক্ষার তথ্য সহ একটি স্থানীয় HAPI FHIR সার্ভার সেট আপ করুন

HAPI FHIR হল একটি জনপ্রিয় ওপেন সোর্স FHIR সার্ভার। আমরা আমাদের কোডল্যাবে একটি স্থানীয় HAPI FHIR সার্ভার ব্যবহার করি যাতে Android অ্যাপটি সংযুক্ত হয়।

স্থানীয় HAPI FHIR সার্ভার সেট আপ করুন

  1. HAPI FHIR এর সর্বশেষ চিত্র পেতে টার্মিনালে নিম্নলিখিত কমান্ডটি চালান
    docker pull hapiproject/hapi:latest
    
  2. ডকার ডেস্কটপ ব্যবহার করে পূর্বে ডাউনলোড করা ছবি hapiproject/hapi চালান, অথবা নিম্নলিখিত কমান্ডটি চালিয়ে একটি HAPI FHIR কন্টেইনার তৈরি করুন।
    docker run -p 8080:8080 hapiproject/hapi:latest
    
    আরও জানুন।
  3. ব্রাউজারে http://localhost:8080/ URL টি খুলে সার্ভারটি পরীক্ষা করুন। আপনি HAPI FHIR ওয়েব ইন্টারফেসটি দেখতে পাবেন। HAPI FHIR web interface

স্থানীয় HAPI FHIR সার্ভারে পরীক্ষার তথ্য রাখুন

আমাদের অ্যাপ্লিকেশনটি পরীক্ষা করার জন্য, আমাদের সার্ভারে কিছু পরীক্ষার ডেটার প্রয়োজন হবে। আমরা সিনথিয়া দ্বারা তৈরি সিন্থেটিক ডেটা ব্যবহার করব।

  1. প্রথমে, আমাদের synthea-samples থেকে নমুনা ডেটা ডাউনলোড করতে হবে। synthea_sample_data_fhir_r4_sep2019.zip ডাউনলোড এবং এক্সট্র্যাক্ট করতে হবে। আন-জিপ করা নমুনা ডেটাতে অসংখ্য .json ফাইল রয়েছে, প্রতিটি ফাইলই একজন রোগীর জন্য একটি লেনদেন বান্ডেল।
  2. আমরা তিনজন রোগীর পরীক্ষার তথ্য স্থানীয় HAPI FHIR সার্ভারে আপলোড করব। JSON ফাইল ধারণকারী ডিরেক্টরিতে নিম্নলিখিত কমান্ডটি চালান।
    curl -X POST -H "Content-Type: application/json" -d @./Aaron697_Brekke496_2fa15bc7-8866-461a-9000-f739e425860a.json http://localhost:8080/fhir/
    curl -X POST -H "Content-Type: application/json" -d @./Aaron697_Stiedemann542_41166989-975d-4d17-b9de-17f94cb3eec1.json http://localhost:8080/fhir/
    curl -X POST -H "Content-Type: application/json" -d @./Abby752_Kuvalis369_2b083021-e93f-4991-bf49-fd4f20060ef8.json http://localhost:8080/fhir/
    
  3. সমস্ত রোগীর পরীক্ষার তথ্য সার্ভারে আপলোড করতে, চালান
    for f in *.json; do curl -X POST -H "Content-Type: application/json" -d @$f http://localhost:8080/fhir/ ; done
    
    তবে, এটি সম্পূর্ণ হতে অনেক সময় লাগতে পারে এবং কোডল্যাবের জন্য এটি প্রয়োজনীয় নয়।
  4. ব্রাউজারে http://localhost:8080/fhir/Patient/ URL টি খুলে সার্ভারে পরীক্ষার ডেটা উপলব্ধ কিনা তা যাচাই করুন। total গণনা সহ অনুসন্ধান ফলাফল হিসাবে আপনি HTTP 200 OK লেখা এবং FHIR বান্ডেলে রোগীর ডেটা সম্বলিত পৃষ্ঠার " Response Body অংশটি দেখতে পাবেন। সার্ভারে ডেটা পরীক্ষা করুন

৩. অ্যান্ড্রয়েড অ্যাপ সেট আপ করুন

কোডটি ডাউনলোড করুন

এই কোডল্যাবের কোড ডাউনলোড করতে, Android FHIR SDK রিপোজিটরিটি ক্লোন করুন: git clone https://github.com/google/android-fhir.git

এই কোডল্যাবের স্টার্টার প্রকল্পটি codelabs/engine অবস্থিত।

অ্যান্ড্রয়েড স্টুডিওতে অ্যাপটি আমদানি করুন

আমরা অ্যান্ড্রয়েড স্টুডিওতে স্টার্টার অ্যাপটি আমদানি করে শুরু করি।

অ্যান্ড্রয়েড স্টুডিও খুলুন, ইমপোর্ট প্রজেক্ট (গ্রেডল, ইক্লিপস এডিটি, ইত্যাদি) নির্বাচন করুন এবং আপনার আগে ডাউনলোড করা সোর্স কোড থেকে codelabs/engine/ ফোল্ডারটি নির্বাচন করুন।

Android Studio start screen

আপনার প্রকল্পটি গ্র্যাডেল ফাইলগুলির সাথে সিঙ্ক করুন

আপনার সুবিধার জন্য, FHIR ইঞ্জিন লাইব্রেরি নির্ভরতাগুলি ইতিমধ্যেই প্রকল্পে যোগ করা হয়েছে। এটি আপনাকে আপনার অ্যাপে FHIR ইঞ্জিন লাইব্রেরি সংহত করতে দেয়। আপনার প্রকল্পের app/build.gradle.kts ফাইলের শেষে নিম্নলিখিত লাইনগুলি পর্যবেক্ষণ করুন:

dependencies {
    // ...

    implementation("com.google.android.fhir:engine:1.1.0")
}

আপনার অ্যাপে সমস্ত নির্ভরতা উপলব্ধ আছে কিনা তা নিশ্চিত করতে, এই মুহুর্তে আপনার প্রকল্পটি gradle ফাইলের সাথে সিঙ্ক করা উচিত।

গ্রেডল ফাইলের সাথে সিঙ্ক প্রজেক্ট নির্বাচন করুন ( Gradle sync button )অ্যান্ড্রয়েড স্টুডিও টুলবার থেকে। নির্ভরতাগুলি সঠিকভাবে কাজ করছে কিনা তা পরীক্ষা করার জন্য আপনি আবার অ্যাপটি চালাতে পারেন।

স্টার্টার অ্যাপটি চালান

এখন আপনি অ্যান্ড্রয়েড স্টুডিওতে প্রকল্পটি আমদানি করেছেন, আপনি প্রথমবারের মতো অ্যাপটি চালানোর জন্য প্রস্তুত।

অ্যান্ড্রয়েড স্টুডিও এমুলেটরটি শুরু করুন এবং রান এ ক্লিক করুন ( Run button ) অ্যান্ড্রয়েড স্টুডিও টুলবারে।

হ্যালো ওয়ার্ল্ড অ্যাপ

৪. FHIR ইঞ্জিন ইনস্ট্যান্স তৈরি করুন

আপনার অ্যান্ড্রয়েড অ্যাপে FHIR ইঞ্জিন অন্তর্ভুক্ত করার জন্য, আপনাকে FHIR ইঞ্জিন লাইব্রেরি ব্যবহার করতে হবে এবং FHIR ইঞ্জিনের একটি উদাহরণ শুরু করতে হবে। নীচে বর্ণিত পদক্ষেপগুলি আপনাকে প্রক্রিয়াটির মধ্য দিয়ে পরিচালিত করবে।

  1. আপনার অ্যাপ্লিকেশন ক্লাসে নেভিগেট করুন, যা এই উদাহরণে FhirApplication.kt , app/src/main/java/com/google/android/fhir/codelabs/engine এ অবস্থিত।
  2. onCreate() পদ্ধতির ভিতরে, FHIR ইঞ্জিন শুরু করতে নিম্নলিখিত কোডটি যোগ করুন:
      FhirEngineProvider.init(
          FhirEngineConfiguration(
            enableEncryptionIfSupported = true,
            RECREATE_AT_OPEN,
            ServerConfiguration(
              baseUrl = "http://10.0.2.2:8080/fhir/",
              httpLogger =
                HttpLogger(
                  HttpLogger.Configuration(
                    if (BuildConfig.DEBUG) HttpLogger.Level.BODY else HttpLogger.Level.BASIC,
                  ),
                ) {
                  Log.d("App-HttpLog", it)
                },
            ),
          ),
      )
    
    নোট:
    • enableEncryptionIfSupported : ডিভাইসটি যদি ডেটা এনক্রিপশন সমর্থন করে তবে এটি সক্ষম করে।
    • RECREATE_AT_OPEN : ডাটাবেস ত্রুটি কৌশল নির্ধারণ করে। এই ক্ষেত্রে, খোলার সময় কোনও ত্রুটি দেখা দিলে এটি ডাটাবেস পুনরায় তৈরি করে।
    • ServerConfiguration baseUrl : এটি FHIR সার্ভারের বেস URL। প্রদত্ত IP ঠিকানা 10.0.2.2 বিশেষভাবে লোকালহোস্টের জন্য সংরক্ষিত, যা অ্যান্ড্রয়েড এমুলেটর থেকে অ্যাক্সেসযোগ্য। আরও জানুন।
  3. FhirApplication ক্লাসে, FHIR ইঞ্জিনটি অলসভাবে চালু করতে নিম্নলিখিত লাইনটি যোগ করুন:
      private val fhirEngine: FhirEngine by
          lazy { FhirEngineProvider.getInstance(this) }
    
    এটি নিশ্চিত করে যে FhirEngine ইনস্ট্যান্সটি শুধুমাত্র প্রথমবার অ্যাক্সেস করার সময় তৈরি হয়, অ্যাপটি শুরু হওয়ার সাথে সাথে নয়।
  4. আপনার আবেদন জুড়ে সহজে অ্যাক্সেসের জন্য FhirApplication ক্লাসে নিম্নলিখিত সুবিধাজনক পদ্ধতিটি যোগ করুন:
    companion object {
        fun fhirEngine(context: Context) =
            (context.applicationContext as FhirApplication).fhirEngine
    }
    
    এই স্ট্যাটিক পদ্ধতিটি আপনাকে অ্যাপের যেকোনো স্থান থেকে প্রসঙ্গ ব্যবহার করে FHIR ইঞ্জিন ইনস্ট্যান্স পুনরুদ্ধার করতে দেয়।

৫. FHIR সার্ভারের সাথে ডেটা সিঙ্ক করুন

  1. একটি নতুন ক্লাস DownloadWorkManagerImpl.kt তৈরি করুন। এই ক্লাসে, আপনি নির্ধারণ করবেন কিভাবে অ্যাপ্লিকেশনটি ডাউনলোডের তালিকা থেকে পরবর্তী রিসোর্সটি আনবে।:
      class DownloadWorkManagerImpl : DownloadWorkManager {
        private val urls = LinkedList(listOf("Patient"))
    
        override suspend fun getNextRequest(): DownloadRequest? {
          val url = urls.poll() ?: return null
          return DownloadRequest.of(url)
        }
    
        override suspend fun getSummaryRequestUrls() = mapOf<ResourceType, String>()
    
        override suspend fun processResponse(response: Resource): Collection<Resource> {
          var bundleCollection: Collection<Resource> = mutableListOf()
          if (response is Bundle && response.type == Bundle.BundleType.SEARCHSET) {
            bundleCollection = response.entry.map { it.resource }
          }
          return bundleCollection
        }
      }
    
    এই ক্লাসে ডাউনলোড করতে চাওয়া রিসোর্সের ধরণের একটি সারি আছে। এটি প্রতিক্রিয়া প্রক্রিয়া করে এবং ফিরে আসা বান্ডেল থেকে রিসোর্সগুলি বের করে, যা স্থানীয় ডাটাবেসে সংরক্ষিত হয়।
  2. একটি নতুন ক্লাস তৈরি করুন AppFhirSyncWorker.kt এই ক্লাসটি নির্ধারণ করে কিভাবে অ্যাপটি একটি ব্যাকগ্রাউন্ড ওয়ার্কার ব্যবহার করে রিমোট FHIR সার্ভারের সাথে সিঙ্ক করবে।
    class AppFhirSyncWorker(appContext: Context, workerParams: WorkerParameters) :
      FhirSyncWorker(appContext, workerParams) {
    
      override fun getDownloadWorkManager() = DownloadWorkManagerImpl()
    
      override fun getConflictResolver() = AcceptLocalConflictResolver
    
      override fun getFhirEngine() = FhirApplication.fhirEngine(applicationContext)
    
      override fun getUploadStrategy() =
        UploadStrategy.forBundleRequest(
          methodForCreate = HttpCreateMethod.PUT,
          methodForUpdate = HttpUpdateMethod.PATCH,
          squash = true,
          bundleSize = 500,
        )
    }
    
    এখানে, আমরা সংজ্ঞায়িত করেছি যে সিঙ্ক করার জন্য কোন ডাউনলোড ম্যানেজার, কনফ্লিক্ট রিজলভার এবং FHIR ইঞ্জিন ইনস্ট্যান্স ব্যবহার করতে হবে।
  3. আপনার ViewModel, PatientListViewModel.kt তে, আপনি একটি এককালীন সিঙ্ক প্রক্রিয়া সেট আপ করবেন। triggerOneTimeSync() ফাংশনে এই কোডটি সনাক্ত করুন এবং যোগ করুন:
    viewModelScope.launch {
          Sync.oneTimeSync<AppFhirSyncWorker>(getApplication())
            .shareIn(this, SharingStarted.Eagerly, 10)
            .collect { _pollState.emit(it) }
        }
    
    এই কোরোটিনটি আমরা আগে সংজ্ঞায়িত AppFhirSyncWorker ব্যবহার করে FHIR সার্ভারের সাথে এককালীন সিঙ্ক শুরু করে। এরপর এটি সিঙ্ক প্রক্রিয়ার অবস্থার উপর ভিত্তি করে UI আপডেট করবে।
  4. PatientListFragment.kt ফাইলে, handleSyncJobStatus ফাংশনের বডি আপডেট করুন:
    when (syncJobStatus) {
        is SyncJobStatus.Finished -> {
            Toast.makeText(requireContext(), "Sync Finished", Toast.LENGTH_SHORT).show()
            viewModel.searchPatientsByName("")
        }
        else -> {}
    }
    
    এখানে, সিঙ্ক প্রক্রিয়া শেষ হলে, ব্যবহারকারীকে অবহিত করে একটি টোস্ট বার্তা প্রদর্শিত হবে এবং অ্যাপটি একটি খালি নাম দিয়ে অনুসন্ধান শুরু করে সমস্ত রোগীকে প্রদর্শন করবে।

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

রোগীর তালিকা

৬. রোগীর তথ্য পরিবর্তন এবং আপলোড করুন

এই বিভাগে, আমরা আপনাকে নির্দিষ্ট মানদণ্ডের উপর ভিত্তি করে রোগীর তথ্য পরিবর্তন এবং আপনার FHIR সার্ভারে আপডেট করা তথ্য আপলোড করার প্রক্রিয়া সম্পর্কে নির্দেশনা দেব। বিশেষ করে, আমরা Wakefield এবং Taunton বসবাসকারী রোগীদের ঠিকানা শহরগুলি অদলবদল করব।

ধাপ ১ : PatientListViewModel-এ পরিবর্তন যুক্তি সেট আপ করুন

এই বিভাগের কোডটি PatientListViewModel এর triggerUpdate ফাংশনে যোগ করা হয়েছে।

  1. FHIR ইঞ্জিন অ্যাক্সেস করুন : PatientListViewModel.kt এ FHIR ইঞ্জিনের একটি রেফারেন্স পেয়ে শুরু করুন।
    viewModelScope.launch {
       val fhirEngine = FhirApplication.fhirEngine(getApplication())
    
    এই কোডটি ViewModel এর সুযোগের মধ্যে একটি coroutine চালু করে এবং FHIR ইঞ্জিনটি চালু করে।
  2. ওয়েকফিল্ড থেকে রোগীদের অনুসন্ধান করুন : Wakefield শহরের ঠিকানা সহ রোগীদের অনুসন্ধান করতে FHIR ইঞ্জিন ব্যবহার করুন।
    val patientsFromWakefield =
         fhirEngine.search<Patient> {
           filter(
             Patient.ADDRESS_CITY,
             {
               modifier =  StringFilterModifier.MATCHES_EXACTLY
               value = "Wakefield"
             }
           )
         }
    
    এখানে, আমরা FHIR ইঞ্জিনের search পদ্ধতি ব্যবহার করে রোগীদের তাদের ঠিকানা শহরের উপর ভিত্তি করে ফিল্টার করছি। ফলাফলটি ওয়েকফিল্ডের রোগীদের একটি তালিকা হবে।
  3. টাউনটন থেকে রোগীদের অনুসন্ধান করুন : একইভাবে, Taunton শহরের ঠিকানা সহ রোগীদের অনুসন্ধান করুন।
    val patientsFromTaunton =
         fhirEngine.search<Patient> {
           filter(
             Patient.ADDRESS_CITY,
             {
               modifier =  StringFilterModifier.MATCHES_EXACTLY
               value = "Taunton"
             }
           )
         }
    
    আমাদের কাছে এখন দুটি রোগীর তালিকা আছে - একটি ওয়েকফিল্ড থেকে এবং অন্যটি টাউনটন থেকে।
  4. রোগীর ঠিকানা পরিবর্তন করুন : patientsFromWakefield তালিকার প্রতিটি রোগীর ঠিকানা দেখুন, তাদের শহরটি Taunton এ পরিবর্তন করুন এবং FHIR ইঞ্জিনে আপডেট করুন।
    patientsFromWakefield.forEach {
         it.resource.address.first().city = "Taunton"
         fhirEngine.update(it.resource)
    }
    
    একইভাবে, patientsFromTaunton তালিকার প্রতিটি রোগীর শহর Wakefield এ পরিবর্তন করার জন্য আপডেট করুন।
    patientsFromTaunton.forEach {
         it.resource.address.first().city = "Wakefield"
         fhirEngine.update(it.resource)
    }
    
  5. সিঙ্ক্রোনাইজেশন শুরু করুন : স্থানীয়ভাবে ডেটা পরিবর্তন করার পরে, FHIR সার্ভারে ডেটা আপডেট করা হয়েছে তা নিশ্চিত করতে এককালীন সিঙ্ক ট্রিগার করুন।
    triggerOneTimeSync()
    }
    
    ক্লোজিং ব্রেস } শুরুতে চালু হওয়া কোরোটিনের শেষ নির্দেশ করে।

ধাপ ২ : কার্যকারিতা পরীক্ষা করুন

  1. UI পরীক্ষা : আপনার অ্যাপটি চালান। মেনুতে Update বোতামে ক্লিক করুন। আপনি রোগীর ঠিকানা শহরগুলি দেখতে পাবেন Aaron697 এবং Abby752 অদলবদল করা হয়েছে।
  2. সার্ভার যাচাইকরণ : একটি ব্রাউজার খুলুন এবং http://localhost:8080/fhir/Patient/ এ যান। যাচাই করুন যে রোগী Aaron697 এবং Abby752 এর ঠিকানা শহর স্থানীয় FHIR সার্ভারে আপডেট করা আছে।

এই পদক্ষেপগুলি অনুসরণ করে, আপনি রোগীর ডেটা পরিবর্তন করার এবং আপনার FHIR সার্ভারের সাথে পরিবর্তনগুলি সিঙ্ক্রোনাইজ করার জন্য একটি প্রক্রিয়া সফলভাবে বাস্তবায়ন করেছেন।

৭. নাম অনুসারে রোগীদের অনুসন্ধান করুন

রোগীদের নাম অনুসারে অনুসন্ধান করলে তথ্য সংগ্রহের একটি ব্যবহারকারী-বান্ধব উপায় হতে পারে। এখানে, আমরা আপনার আবেদনে এই বৈশিষ্ট্যটি বাস্তবায়নের প্রক্রিয়াটি আপনাকে দেখাবো।

ধাপ ১ : ফাংশন স্বাক্ষর আপডেট করুন

আপনার PatientListViewModel.kt ফাইলে যান এবং searchPatientsByName নামের ফাংশনটি খুঁজুন। আমরা এই ফাংশনে কোড যোগ করব।

প্রদত্ত নাম কোয়েরির উপর ভিত্তি করে ফলাফল ফিল্টার করতে এবং UI আপডেট করার জন্য ফলাফল নির্গত করতে, নিম্নলিখিত শর্তসাপেক্ষ কোড ব্লক অন্তর্ভুক্ত করুন:

    viewModelScope.launch {
      val fhirEngine = FhirApplication.fhirEngine(getApplication())
      if (nameQuery.isNotEmpty()) {
        val searchResult = fhirEngine.search<Patient> {
          filter(
            Patient.NAME,
            {
              modifier = StringFilterModifier.CONTAINS
              value = nameQuery
            },
          )
        }
        liveSearchedPatients.value  =  searchResult.map { it.resource }
      }
    }

এখানে, যদি nameQuery খালি না থাকে, তাহলে অনুসন্ধান ফাংশন ফলাফলগুলি ফিল্টার করে শুধুমাত্র সেই রোগীদের অন্তর্ভুক্ত করবে যাদের নামে নির্দিষ্ট কোয়েরি রয়েছে।

ধাপ ২ : নতুন অনুসন্ধান কার্যকারিতা পরীক্ষা করুন

  1. অ্যাপটি পুনরায় চালু করুন : এই পরিবর্তনগুলি করার পরে, আপনার অ্যাপটি পুনরায় তৈরি করুন এবং চালান।
  2. রোগীদের অনুসন্ধান করুন : রোগীর তালিকার স্ক্রিনে, অনুসন্ধান কার্যকারিতাটি ব্যবহার করুন। এখন আপনি একটি নাম (অথবা নামের অংশ) লিখতে সক্ষম হবেন যাতে রোগীর তালিকাটি সেই অনুযায়ী ফিল্টার করা যায়।

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

৮. অভিনন্দন!

আপনার অ্যাপে FHIR রিসোর্স পরিচালনা করতে আপনি FHIR ইঞ্জিন লাইব্রেরি ব্যবহার করেছেন:

  • FHIR সার্ভারের সাথে FHIR রিসোর্স সিঙ্ক করতে Sync API ব্যবহার করুন
  • স্থানীয় FHIR রিসোর্স তৈরি, পড়া, আপডেট এবং মুছে ফেলার জন্য ডেটা অ্যাক্সেস API ব্যবহার করুন
  • স্থানীয় FHIR রিসোর্স অনুসন্ধান করতে Search API ব্যবহার করুন

আমরা যা কভার করেছি

  • কিভাবে একটি স্থানীয় HAPI FHIR সার্ভার সেট আপ করবেন
  • স্থানীয় HAPI FHIR সার্ভারে পরীক্ষার ডেটা কীভাবে আপলোড করবেন
  • FHIR ইঞ্জিন লাইব্রেরি ব্যবহার করে কীভাবে একটি অ্যান্ড্রয়েড অ্যাপ তৈরি করবেন
  • FHIR ইঞ্জিন লাইব্রেরিতে সিঙ্ক API, ডেটা অ্যাক্সেস API এবং অনুসন্ধান API কীভাবে ব্যবহার করবেন

পরবর্তী পদক্ষেপ

  • FHIR ইঞ্জিন লাইব্রেরির জন্য ডকুমেন্টেশন অন্বেষণ করুন
  • অনুসন্ধান API এর উন্নত বৈশিষ্ট্যগুলি অন্বেষণ করুন
  • আপনার নিজস্ব অ্যান্ড্রয়েড অ্যাপে FHIR ইঞ্জিন লাইব্রেরি প্রয়োগ করুন

আরও জানুন