react-native-mytatva-rn-sdk 1.2.51 → 1.2.53

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/android/src/main/java/cgmblelib/base/BApplication.java +57 -57
  2. package/android/src/main/java/cgmblelib/ble/BleService.java +1 -1
  3. package/android/src/main/java/cgmblelib/ble/gattcallback/BleGattCallback.java +1 -1
  4. package/android/src/main/java/cgmblelib/database/dao/DaoDevice.java +4 -0
  5. package/android/src/main/java/cgmblelib/database/dao/DaoGlucose.java +334 -332
  6. package/android/src/main/java/cgmblelib/database/repository/RepositoryDevice.java +5 -0
  7. package/android/src/main/java/cgmblelib/database/repository/RepositoryGlucose.java +167 -162
  8. package/android/src/main/java/cgmblelib/database/source/SourceDevice.java +2 -0
  9. package/android/src/main/java/cgmblelib/database/source/SourceGlucose.java +2 -0
  10. package/android/src/main/java/cgmblelib/database/source/db/DeviceDBDataSource.java +171 -165
  11. package/android/src/main/java/cgmblelib/database/source/db/GlucoseDBDataSource.java +305 -296
  12. package/android/src/main/java/cgmblelib/utils/SharedPreferencesLibraryUtil.java +66 -44
  13. package/android/src/main/java/com/mytatvarnsdk/CgmTrackyLibModule.kt +125 -81
  14. package/android/src/main/java/com/mytatvarnsdk/MainApplication.kt +2 -2
  15. package/android/src/main/java/com/mytatvarnsdk/activity/ConnectSensorActivity.kt +1 -1
  16. package/android/src/main/java/com/mytatvarnsdk/activity/PermissionActivity.kt +1 -1
  17. package/android/src/main/java/com/mytatvarnsdk/activity/PlaceSensorActivity.kt +1 -1
  18. package/android/src/main/java/com/mytatvarnsdk/activity/PlaceTransmitterActivity.kt +1 -1
  19. package/android/src/main/java/com/mytatvarnsdk/activity/SearchTransmitterActivity.kt +3 -4
  20. package/android/src/main/java/com/mytatvarnsdk/activity/SensorConnectSuccessActivity.kt +8 -5
  21. package/android/src/main/java/com/mytatvarnsdk/activity/StartCGMActivity.kt +1 -1
  22. package/android/src/main/java/com/mytatvarnsdk/model/BaseViewModel.java +88 -84
  23. package/android/src/main/java/com/mytatvarnsdk/network/AuthenticateSDKService.kt +197 -197
  24. package/android/src/main/java/com/mytatvarnsdk/utils/TatvaEncryptionConfig.kt +1 -1
  25. package/ios/Database/KLTBluetoothManager.m +8 -0
  26. package/ios/Database/KLTDatabaseHandler.m +43 -26
  27. package/ios/Database/KLTLocalSettingManager.h +3 -0
  28. package/ios/MyReactNativeBridge.m +27 -15
  29. package/ios/Support/API.swift +8 -8
  30. package/ios/ViewControllers/AttachTransmitterViewController.swift +1 -1
  31. package/ios/ViewModel/FinalViewModel.swift +11 -9
  32. package/lib/commonjs/CGMConnect.js +12 -12
  33. package/lib/commonjs/CGMConnect.js.map +1 -1
  34. package/lib/module/CGMConnect.js +13 -13
  35. package/lib/module/CGMConnect.js.map +1 -1
  36. package/lib/typescript/CGMConnect.d.ts +6 -6
  37. package/package.json +2 -2
  38. package/src/CGMConnect.ts +78 -55
@@ -21,6 +21,7 @@ import com.facebook.react.bridge.Arguments
21
21
  import com.facebook.react.bridge.CatalystInstance
22
22
  import com.facebook.react.bridge.WritableMap
23
23
  import com.facebook.react.modules.core.DeviceEventManagerModule
24
+ import com.mytatvarnsdk.CgmTrackyLibModule
24
25
  import com.mytatvarnsdk.R
25
26
  import com.mytatvarnsdk.databinding.ActivitySensorConnectSuccessBinding
26
27
  import com.mytatvarnsdk.databinding.ExitDialogBottomsheetBinding
@@ -34,7 +35,6 @@ import kotlinx.coroutines.CoroutineScope
34
35
  import kotlinx.coroutines.Dispatchers
35
36
  import kotlinx.coroutines.Job
36
37
  import org.json.JSONObject
37
- import com.mytatvarnsdk.CgmTrackyLibModule
38
38
  import java.text.SimpleDateFormat
39
39
  import java.util.Date
40
40
  import java.util.Locale
@@ -80,15 +80,18 @@ class SensorConnectSuccessActivity : AppCompatActivity() {
80
80
  binding.toolbar.btnWhatsapp.setOnClickListener {
81
81
  startActivity(
82
82
  Intent(this, HelpActivity::class.java)
83
- .putExtra("ScreenName", "Sensor Screen")
83
+ .putExtra("ScreenName", "Sensor page")
84
84
  )
85
85
  }
86
86
 
87
87
  binding.toolbar.btnWatchDemo.setOnClickListener {
88
- sendDataToRN("","cgm_watch_demo_clicked")
88
+ sendDataToRN("", "cgm_watch_demo_clicked")
89
89
 
90
90
  startActivity(
91
- Intent(this, VideoActivity::class.java).putExtra("VideoId", if (isForReconnect) "n_pUrFoZ1wQ" else "r5Zemc4R044")
91
+ Intent(this, VideoActivity::class.java).putExtra(
92
+ "VideoId",
93
+ if (isForReconnect) "n_pUrFoZ1wQ" else "r5Zemc4R044"
94
+ )
92
95
  )
93
96
  }
94
97
 
@@ -171,7 +174,7 @@ class SensorConnectSuccessActivity : AppCompatActivity() {
171
174
  obj.put("rawData", rawData)
172
175
 
173
176
  authenticateSDKService.postDeviceData(
174
- environment = TATVA_ENVIRONMENT.PROD,
177
+ environment = if (CgmTrackyLibModule.env.lowercase() == "uat") TATVA_ENVIRONMENT.STAGE else TATVA_ENVIRONMENT.PROD,
175
178
  data = obj.toString(),
176
179
  token = CgmTrackyLibModule.userToken,
177
180
  loaderListener = object : LoaderListener {
@@ -92,7 +92,7 @@ class StartCGMActivity : AppCompatActivity() {
92
92
  binding.toolbar.btnWhatsapp.setOnClickListener {
93
93
  startActivity(
94
94
  Intent(this, HelpActivity::class.java)
95
- .putExtra("ScreenName", "Start CGM Screen")
95
+ .putExtra("ScreenName", "connection journey page")
96
96
  )
97
97
  }
98
98
 
@@ -8,7 +8,6 @@ import androidx.lifecycle.LiveData;
8
8
  import androidx.lifecycle.MediatorLiveData;
9
9
  import androidx.lifecycle.Transformations;
10
10
 
11
- import java.util.Date;
12
11
  import java.util.List;
13
12
 
14
13
  import cgmblelib.database.entity.PocDevice;
@@ -22,88 +21,93 @@ import cgmblelib.database.repository.RepositoryGlucose;
22
21
  * @author minyuchun
23
22
  */
24
23
  public class BaseViewModel extends AndroidViewModel {
25
- /**
26
- * 设备信息储存库
27
- */
28
- private RepositoryDevice mRepositoryDevice;
29
- /**
30
- * 血糖信息储存库
31
- */
32
- private RepositoryGlucose mRepositoryGlucose;
33
- /**
34
- * 最新的设备(数据库中最大Id的设备,无论是绑定还是非绑定)
35
- */
36
- private LiveData<PocDevice> mDevice;
37
- /**
38
- * 血糖数据集列表持久化
39
- */
40
- private LiveData<List<PocGlucose>> mGlucoseList;
41
- /**
42
- * 最新的血糖数据持久化,当发射器绑定时,获取最新的,若发射器解除绑定则无
43
- */
44
- private LiveData<PocGlucose> mLatestGlucose;
45
- /***
46
- * 设备是否绑定
47
- */
48
- private MediatorLiveData<Integer> mBindDeviceId = new MediatorLiveData<>();
49
-
50
- public BaseViewModel(@NonNull Application application) {
51
- super(application);
52
- mRepositoryDevice = RepositoryDevice.getInstance(application);
53
- mRepositoryGlucose = RepositoryGlucose.getInstance(application);
54
- mDevice = mRepositoryDevice.getLiveDataLatestDeviceIoThread();
55
- mBindDeviceId.addSource(mDevice, device -> {
56
- if (device != null && device.isBound()) {
57
- if (mBindDeviceId.getValue() == null || mBindDeviceId.getValue() != device.getId()) {
58
- mBindDeviceId.setValue(device.getId());
59
- }
60
- } else {
61
- mBindDeviceId.setValue(0);
62
- }
63
- });
64
- LoadGlucose();
65
- }
66
-
67
- /**
68
- * 获取持久化设备数据,获取最新的设备的所有信息
69
- */
70
- public synchronized LiveData<PocDevice> getDevice() {
71
- return mDevice;
72
- }
73
-
74
- public synchronized LiveData<List<PocGlucose>> getAllGlucose() {
75
- return mGlucoseList;
76
- }
77
-
78
- public synchronized LiveData<PocGlucose> getLatestGlucose() {
79
- return mLatestGlucose;
80
- }
81
-
82
- /**
83
- * 获取血糖数据
84
- */
85
- private synchronized void LoadGlucose() {
86
- mGlucoseList = Transformations.switchMap(mBindDeviceId, input -> mRepositoryGlucose.getLiveDataGlucoseListByDeviceId(input));
87
- mLatestGlucose = Transformations.map(mGlucoseList, input -> {
88
- if (input != null && input.size() > 0) {
89
- return input.get(input.size() - 1);
90
- } else {
91
- return null;
92
- }
93
- });
94
- }
95
-
96
-
97
- public List<PocGlucose> getGlucoseByTime() {
98
- return mRepositoryGlucose.getGlucoseByDeviceIdAndTimeMillis(7, 1748005587474L);
99
- }
100
-
101
- public List<PocGlucose> getGlucoseBetweenTime(long startTime) {
102
- return mRepositoryGlucose.getGlucoseByTimeMillis(startTime, System.currentTimeMillis());
103
- }
104
-
105
- public PocDevice getDeviceInfo(int deviceId) {
106
- return mRepositoryDevice.getDeviceByIdIoThread(deviceId);
107
- }
24
+ /**
25
+ * 设备信息储存库
26
+ */
27
+ private RepositoryDevice mRepositoryDevice;
28
+ /**
29
+ * 血糖信息储存库
30
+ */
31
+ private RepositoryGlucose mRepositoryGlucose;
32
+ /**
33
+ * 最新的设备(数据库中最大Id的设备,无论是绑定还是非绑定)
34
+ */
35
+ private LiveData<PocDevice> mDevice;
36
+ /**
37
+ * 血糖数据集列表持久化
38
+ */
39
+ private LiveData<List<PocGlucose>> mGlucoseList;
40
+ /**
41
+ * 最新的血糖数据持久化,当发射器绑定时,获取最新的,若发射器解除绑定则无
42
+ */
43
+ private LiveData<PocGlucose> mLatestGlucose;
44
+ /***
45
+ * 设备是否绑定
46
+ */
47
+ private MediatorLiveData<Integer> mBindDeviceId = new MediatorLiveData<>();
48
+
49
+ public BaseViewModel(@NonNull Application application) {
50
+ super(application);
51
+ mRepositoryDevice = RepositoryDevice.getInstance(application);
52
+ mRepositoryGlucose = RepositoryGlucose.getInstance(application);
53
+ mDevice = mRepositoryDevice.getLiveDataLatestDeviceIoThread();
54
+ mBindDeviceId.addSource(mDevice, device -> {
55
+ if (device != null && device.isBound()) {
56
+ if (mBindDeviceId.getValue() == null || mBindDeviceId.getValue() != device.getId()) {
57
+ mBindDeviceId.setValue(device.getId());
58
+ }
59
+ } else {
60
+ mBindDeviceId.setValue(0);
61
+ }
62
+ });
63
+ LoadGlucose();
64
+ }
65
+
66
+ /**
67
+ * 获取持久化设备数据,获取最新的设备的所有信息
68
+ */
69
+ public synchronized LiveData<PocDevice> getDevice() {
70
+ return mDevice;
71
+ }
72
+
73
+ public synchronized LiveData<List<PocGlucose>> getAllGlucose() {
74
+ return mGlucoseList;
75
+ }
76
+
77
+ public synchronized LiveData<PocGlucose> getLatestGlucose() {
78
+ return mLatestGlucose;
79
+ }
80
+
81
+ /**
82
+ * 获取血糖数据
83
+ */
84
+ private synchronized void LoadGlucose() {
85
+ mGlucoseList = Transformations.switchMap(mBindDeviceId, input -> mRepositoryGlucose.getLiveDataGlucoseListByDeviceId(input));
86
+ mLatestGlucose = Transformations.map(mGlucoseList, input -> {
87
+ if (input != null && input.size() > 0) {
88
+ return input.get(input.size() - 1);
89
+ } else {
90
+ return null;
91
+ }
92
+ });
93
+ }
94
+
95
+
96
+ public List<PocGlucose> getGlucoseByTime() {
97
+ return mRepositoryGlucose.getGlucoseByDeviceIdAndTimeMillis(7, 1748005587474L);
98
+ }
99
+
100
+ public List<PocGlucose> getGlucoseBetweenTime(long startTime) {
101
+ return mRepositoryGlucose.getGlucoseByTimeMillis(startTime, System.currentTimeMillis());
102
+ }
103
+
104
+ public PocDevice getDeviceInfo(int deviceId) {
105
+ return mRepositoryDevice.getDeviceByIdIoThread(deviceId);
106
+ }
107
+
108
+ public void clearAllGlucoseAndDeviceData() {
109
+ mRepositoryGlucose.deleteAllGlucoseData();
110
+ mRepositoryDevice.deleteAllDeviceData();
111
+ }
108
112
 
109
113
  }
@@ -23,207 +23,207 @@ import okhttp3.RequestBody.Companion.toRequestBody
23
23
  class AuthenticateSDKService(val scope: CoroutineScope) {
24
24
 
25
25
 
26
- fun postCGMData(
27
- environment: TATVA_ENVIRONMENT,
28
- data: String,
29
- token: String,
30
- responseListener: ResponseListener
31
- ) {
32
- scope.launch {
33
- try {
34
-
35
- val apiServiceInterface = RetrofitInstance.getRetroInstance().create(
36
- ApiServiceInterface::class.java
37
- )
38
-
39
- val encryptionKey = getEncryptionKey(
40
- env = TATVA_ENVIRONMENT.PROD,
41
- prodEncKey = PROD_ENC_KEY,
42
- stagEncKey = STAGE_ENC_KEY
43
- )
44
-
45
- val encryptionIv = getEncryptionIv(
46
- env = TATVA_ENVIRONMENT.PROD, prodEncIv = PROD_ENC_IV, stagEncIv = STAGE_ENC_IV
47
- )
48
-
49
- Log.d("API Response", "data: $data")
50
-
51
- val encryptedString = getEncryptedText(
52
- data = data,
53
- encryptionKey = encryptionKey,
54
- encryptionIv = encryptionIv
55
- )
56
-
57
- Log.d("API Response", "encryptedString: $encryptedString")
58
-
59
- val decryptedString = getDecryptedData(
60
- cipherText = encryptedString,
61
- encryptionKey = encryptionKey,
62
- encryptionIv = encryptionIv
63
- )
64
-
65
- Log.d("API Response", "decryptedString: $decryptedString")
66
-
67
- val headers = mapOf(
68
- "api-key" to if (environment == TATVA_ENVIRONMENT.PROD) PROD_API_KEY else STAGE_API_KEY,
69
- "token" to token,
70
- "Content-Type" to "text/plain"
71
- )
72
-
73
- val url =
74
- "${if (environment == TATVA_ENVIRONMENT.PROD) PROD_BASE_URL else STAGE_BASE_URL}/cgm/logs"
75
-
76
- val requestBody = encryptedString.toRequestBody("text/plain".toMediaType())
77
-
78
- val response = apiServiceInterface.postCgmLogs(url, headers, requestBody).string()
79
-
80
- val decryptedResponse = getDecryptedData(
81
- cipherText = response.toString(),
82
- encryptionKey = encryptionKey,
83
- encryptionIv = encryptionIv
84
- )
85
-
86
- Log.d("API Response", "API response: $decryptedResponse")
87
-
88
- responseListener.onResponseSuccess(response)
89
- } catch (e: Exception) {
90
- responseListener.onResponseFail()
91
- e.printStackTrace()
92
- Log.d("API Response", "Exception: ${e.message}")
93
- }
26
+ fun postCGMData(
27
+ environment: TATVA_ENVIRONMENT,
28
+ data: String,
29
+ token: String,
30
+ responseListener: ResponseListener
31
+ ) {
32
+ scope.launch {
33
+ try {
34
+
35
+ val apiServiceInterface = RetrofitInstance.getRetroInstance().create(
36
+ ApiServiceInterface::class.java
37
+ )
38
+
39
+ val encryptionKey = getEncryptionKey(
40
+ env = TATVA_ENVIRONMENT.PROD,
41
+ prodEncKey = PROD_ENC_KEY,
42
+ stagEncKey = STAGE_ENC_KEY
43
+ )
44
+
45
+ val encryptionIv = getEncryptionIv(
46
+ env = TATVA_ENVIRONMENT.PROD, prodEncIv = PROD_ENC_IV, stagEncIv = STAGE_ENC_IV
47
+ )
48
+
49
+ Log.d("API Response", "data: $data")
50
+
51
+ val encryptedString = getEncryptedText(
52
+ data = data,
53
+ encryptionKey = encryptionKey,
54
+ encryptionIv = encryptionIv
55
+ )
56
+
57
+ Log.d("API Response", "encryptedString: $encryptedString")
58
+
59
+ val decryptedString = getDecryptedData(
60
+ cipherText = encryptedString,
61
+ encryptionKey = encryptionKey,
62
+ encryptionIv = encryptionIv
63
+ )
64
+
65
+ Log.d("API Response", "decryptedString: $decryptedString")
66
+
67
+ val headers = mapOf(
68
+ "api-key" to if (environment == TATVA_ENVIRONMENT.PROD) PROD_API_KEY else STAGE_API_KEY,
69
+ "token" to token,
70
+ "Content-Type" to "text/plain"
71
+ )
72
+
73
+ val url =
74
+ "${if (environment == TATVA_ENVIRONMENT.PROD) PROD_BASE_URL else STAGE_BASE_URL}/cgm/logs"
75
+
76
+ val requestBody = encryptedString.toRequestBody("text/plain".toMediaType())
77
+
78
+ val response = apiServiceInterface.postCgmLogs(url, headers, requestBody).string()
79
+
80
+ val decryptedResponse = getDecryptedData(
81
+ cipherText = response.toString(),
82
+ encryptionKey = encryptionKey,
83
+ encryptionIv = encryptionIv
84
+ )
85
+
86
+ Log.d("API Response", "API response: $decryptedResponse")
87
+
88
+ responseListener.onResponseSuccess(response)
89
+ } catch (e: Exception) {
90
+ responseListener.onResponseFail()
91
+ e.printStackTrace()
92
+ Log.d("API Response", "Exception: ${e.message}")
93
+ }
94
+ }
94
95
  }
95
- }
96
-
97
-
98
- fun postDeviceData(
99
- environment: TATVA_ENVIRONMENT,
100
- data: String,
101
- token: String,
102
- loaderListener: LoaderListener
103
- ) {
104
- scope.launch {
105
- try {
106
- loaderListener.onShowLoader()
107
-
108
- val apiServiceInterface = RetrofitInstance.getRetroInstance().create(
109
- ApiServiceInterface::class.java
110
- )
111
-
112
- val encryptionKey = getEncryptionKey(
113
- env = TATVA_ENVIRONMENT.PROD,
114
- prodEncKey = PROD_ENC_KEY,
115
- stagEncKey = STAGE_ENC_KEY
116
- )
117
-
118
- val encryptionIv = getEncryptionIv(
119
- env = TATVA_ENVIRONMENT.PROD, prodEncIv = PROD_ENC_IV, stagEncIv = STAGE_ENC_IV
120
- )
121
-
122
- Log.d("API Response", "data: $data")
123
-
124
- val encryptedString = getEncryptedText(
125
- data = data,
126
- encryptionKey = encryptionKey,
127
- encryptionIv = encryptionIv
128
- )
129
-
130
- Log.d("API Response", "encryptedString: $encryptedString")
131
-
132
- val decryptedString = getDecryptedData(
133
- cipherText = encryptedString,
134
- encryptionKey = encryptionKey,
135
- encryptionIv = encryptionIv
136
- )
137
-
138
- Log.d("API Response", "decryptedString: $decryptedString")
139
-
140
- val headers = mapOf(
141
- "api-key" to if (environment == TATVA_ENVIRONMENT.PROD) PROD_API_KEY else STAGE_API_KEY,
142
- "token" to token,
143
- "Content-Type" to "text/plain"
144
- )
145
-
146
- val url =
147
- "${if (environment == TATVA_ENVIRONMENT.PROD) PROD_BASE_URL else STAGE_BASE_URL}/cgm/connection"
148
-
149
- val requestBody = encryptedString.toRequestBody("text/plain".toMediaType())
150
-
151
- val response = apiServiceInterface.postCgmLogs(url, headers, requestBody).string()
152
-
153
- val decryptedResponse = getDecryptedData(
154
- cipherText = response.toString(),
155
- encryptionKey = encryptionKey,
156
- encryptionIv = encryptionIv
157
- )
158
-
159
- Log.d("API Response", "API response: $decryptedResponse")
160
-
161
- } catch (e: Exception) {
162
- e.printStackTrace()
163
- Log.d("API Response", "Exception: ${e.message}")
164
- } finally {
165
- loaderListener.onHideLoader()
166
- }
96
+
97
+
98
+ fun postDeviceData(
99
+ environment: TATVA_ENVIRONMENT,
100
+ data: String,
101
+ token: String,
102
+ loaderListener: LoaderListener
103
+ ) {
104
+ scope.launch {
105
+ try {
106
+ loaderListener.onShowLoader()
107
+
108
+ val apiServiceInterface = RetrofitInstance.getRetroInstance().create(
109
+ ApiServiceInterface::class.java
110
+ )
111
+
112
+ val encryptionKey = getEncryptionKey(
113
+ env = TATVA_ENVIRONMENT.PROD,
114
+ prodEncKey = PROD_ENC_KEY,
115
+ stagEncKey = STAGE_ENC_KEY
116
+ )
117
+
118
+ val encryptionIv = getEncryptionIv(
119
+ env = TATVA_ENVIRONMENT.PROD, prodEncIv = PROD_ENC_IV, stagEncIv = STAGE_ENC_IV
120
+ )
121
+
122
+ Log.d("API Response", "data: $data")
123
+
124
+ val encryptedString = getEncryptedText(
125
+ data = data,
126
+ encryptionKey = encryptionKey,
127
+ encryptionIv = encryptionIv
128
+ )
129
+
130
+ Log.d("API Response", "encryptedString: $encryptedString")
131
+
132
+ val decryptedString = getDecryptedData(
133
+ cipherText = encryptedString,
134
+ encryptionKey = encryptionKey,
135
+ encryptionIv = encryptionIv
136
+ )
137
+
138
+ Log.d("API Response", "decryptedString: $decryptedString")
139
+
140
+ val headers = mapOf(
141
+ "api-key" to if (environment == TATVA_ENVIRONMENT.PROD) PROD_API_KEY else STAGE_API_KEY,
142
+ "token" to token,
143
+ "Content-Type" to "text/plain"
144
+ )
145
+
146
+ val url =
147
+ "${if (environment == TATVA_ENVIRONMENT.PROD) PROD_BASE_URL else STAGE_BASE_URL}/cgm/connection"
148
+
149
+ val requestBody = encryptedString.toRequestBody("text/plain".toMediaType())
150
+
151
+ val response = apiServiceInterface.postCgmLogs(url, headers, requestBody).string()
152
+
153
+ val decryptedResponse = getDecryptedData(
154
+ cipherText = response.toString(),
155
+ encryptionKey = encryptionKey,
156
+ encryptionIv = encryptionIv
157
+ )
158
+
159
+ Log.d("API Response", "API response: $decryptedResponse")
160
+
161
+ } catch (e: Exception) {
162
+ e.printStackTrace()
163
+ Log.d("API Response", "Exception: ${e.message}")
164
+ } finally {
165
+ loaderListener.onHideLoader()
166
+ }
167
+ }
167
168
  }
168
- }
169
-
170
- fun getCGMData(
171
- environment: TATVA_ENVIRONMENT,
172
- token: String,
173
- responseListener: ResponseListener
174
- ) {
175
- scope.launch {
176
- try {
177
-
178
- val apiServiceInterface = RetrofitInstance.getRetroInstance().create(
179
- ApiServiceInterface::class.java
180
- )
181
-
182
- val encryptionKey = getEncryptionKey(
183
- env = TATVA_ENVIRONMENT.PROD,
184
- prodEncKey = PROD_ENC_KEY,
185
- stagEncKey = STAGE_ENC_KEY
186
- )
187
-
188
- val encryptionIv = getEncryptionIv(
189
- env = TATVA_ENVIRONMENT.PROD, prodEncIv = PROD_ENC_IV, stagEncIv = STAGE_ENC_IV
190
- )
191
-
192
- val headers = mapOf(
193
- "api-key" to if (environment == TATVA_ENVIRONMENT.PROD) PROD_API_KEY else STAGE_API_KEY,
194
- "token" to token
195
- )
196
-
197
- val url =
198
- "${if (environment == TATVA_ENVIRONMENT.PROD) PROD_BASE_URL else STAGE_BASE_URL}/cgm/status"
199
-
200
- val response = apiServiceInterface.getCgmStatus(url, headers).string()
201
-
202
- val decryptedResponse = getDecryptedData(
203
- cipherText = response.toString(),
204
- encryptionKey = encryptionKey,
205
- encryptionIv = encryptionIv
206
- )
207
-
208
- Log.d("API Response", "API Response: $decryptedResponse")
209
-
210
- responseListener.onResponseSuccess(decryptedResponse)
211
- } catch (e: Exception) {
212
- responseListener.onResponseFail()
213
- e.printStackTrace()
214
- Log.d("API Response", "Exception: ${e.message}")
215
- }
169
+
170
+ fun getCGMData(
171
+ environment: TATVA_ENVIRONMENT,
172
+ token: String,
173
+ responseListener: ResponseListener
174
+ ) {
175
+ scope.launch {
176
+ try {
177
+
178
+ val apiServiceInterface = RetrofitInstance.getRetroInstance().create(
179
+ ApiServiceInterface::class.java
180
+ )
181
+
182
+ val encryptionKey = getEncryptionKey(
183
+ env = TATVA_ENVIRONMENT.PROD,
184
+ prodEncKey = PROD_ENC_KEY,
185
+ stagEncKey = STAGE_ENC_KEY
186
+ )
187
+
188
+ val encryptionIv = getEncryptionIv(
189
+ env = TATVA_ENVIRONMENT.PROD, prodEncIv = PROD_ENC_IV, stagEncIv = STAGE_ENC_IV
190
+ )
191
+
192
+ val headers = mapOf(
193
+ "api-key" to if (environment == TATVA_ENVIRONMENT.PROD) PROD_API_KEY else STAGE_API_KEY,
194
+ "token" to token
195
+ )
196
+
197
+ val url =
198
+ "${if (environment == TATVA_ENVIRONMENT.PROD) PROD_BASE_URL else STAGE_BASE_URL}/cgm/status"
199
+
200
+ val response = apiServiceInterface.getCgmStatus(url, headers).string()
201
+
202
+ val decryptedResponse = getDecryptedData(
203
+ cipherText = response.toString(),
204
+ encryptionKey = encryptionKey,
205
+ encryptionIv = encryptionIv
206
+ )
207
+
208
+ Log.d("API Response", "API Response: $decryptedResponse")
209
+
210
+ responseListener.onResponseSuccess(decryptedResponse)
211
+ } catch (e: Exception) {
212
+ responseListener.onResponseFail()
213
+ e.printStackTrace()
214
+ Log.d("API Response", "Exception: ${e.message}")
215
+ }
216
+ }
216
217
  }
217
- }
218
218
 
219
- interface LoaderListener {
220
- fun onShowLoader()
221
- fun onHideLoader()
222
- }
219
+ interface LoaderListener {
220
+ fun onShowLoader()
221
+ fun onHideLoader()
222
+ }
223
223
 
224
- interface ResponseListener {
225
- fun onResponseSuccess(response: String)
226
- fun onResponseFail()
227
- }
224
+ interface ResponseListener {
225
+ fun onResponseSuccess(response: String)
226
+ fun onResponseFail()
227
+ }
228
228
 
229
229
  }
@@ -1,7 +1,7 @@
1
1
  package com.mytatvarnsdk.utils
2
2
 
3
3
  object TatvaEncryptionConfig {
4
- const val STAGE_BASE_URL = "https://api-feature2.mytatva.in/api/v8"
4
+ const val STAGE_BASE_URL = "https://api-uat.mytatva.in/api/v8"
5
5
  const val PROD_BASE_URL = "https://api.mytatva.in/api/v8"
6
6
 
7
7
  const val PROD_ENC_KEY = "9Ddyaf6rfywpiTvTiax2iq6ykKpaxgJ6"