omikit-plugin 2.3.4 → 2.4.0
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.
- package/README.md +70 -18
- package/android/build.gradle +4 -1
- package/android/src/main/java/com/omikitplugin/OmikitPluginModule.kt +64 -55
- package/android/src/main/java/com/omikitplugin/constants/constant.kt +1 -3
- package/android/src/main/java/com/omikitplugin/state/CallState.kt +12 -0
- package/ios/CallProcess/CallManager.swift +48 -43
- package/ios/CallProcess/CallState.swift +16 -0
- package/ios/Constant/Constant.swift +1 -5
- package/ios/Library/OmikitPlugin.swift +1 -5
- package/lib/commonjs/index.js +11 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/omi_call_state.js +17 -0
- package/lib/commonjs/omi_call_state.js.map +1 -0
- package/lib/commonjs/omikit.js +1 -4
- package/lib/commonjs/omikit.js.map +1 -1
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/omi_call_state.js +10 -0
- package/lib/module/omi_call_state.js.map +1 -0
- package/lib/module/omikit.js +1 -4
- package/lib/module/omikit.js.map +1 -1
- package/lib/typescript/index.d.ts +1 -0
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/omi_call_state.d.ts +9 -0
- package/lib/typescript/omi_call_state.d.ts.map +1 -0
- package/lib/typescript/omikit.d.ts +1 -4
- package/lib/typescript/omikit.d.ts.map +1 -1
- package/omikit-plugin.podspec +1 -1
- package/package.json +1 -1
- package/src/index.tsx +1 -0
- package/src/omi_call_state.tsx +8 -0
- package/src/omikit.tsx +1 -4
package/README.md
CHANGED
|
@@ -143,13 +143,7 @@ You can refer <a href="https://github.com/VIHATTeam/OMICALL-React-Native-SDK/blo
|
|
|
143
143
|
|
|
144
144
|
- For more setting information, please refer <a href="https://api.omicall.com/web-sdk/mobile-sdk/android-sdk/cau-hinh-push-notification">Config Push for Android</a>
|
|
145
145
|
|
|
146
|
-
#### iOS:
|
|
147
|
-
|
|
148
|
-
---
|
|
149
|
-
|
|
150
|
-
We support both Object-C and Swift. But we only support documents for Object-C. We will write for Swift language later. Thank you.
|
|
151
|
-
|
|
152
|
-
---
|
|
146
|
+
#### iOS(Object-C):
|
|
153
147
|
|
|
154
148
|
- Add variables in Appdelegate.h:
|
|
155
149
|
|
|
@@ -230,7 +224,65 @@ if (@available(iOS 10.0, *)) {
|
|
|
230
224
|
|
|
231
225
|
```
|
|
232
226
|
|
|
233
|
-
|
|
227
|
+
|
|
228
|
+
*** Only use under lines when added `Cloud Messaging` plugin in your project ***
|
|
229
|
+
|
|
230
|
+
- Setup push notification: We only support Firebase for push notification.
|
|
231
|
+
|
|
232
|
+
- Add `google-service.json` in `android/app` (For more information, you can refer <a href="https://rnfirebase.io/app/usage">Core/App</a>)
|
|
233
|
+
- Add Firebase Messaging to receive `fcm_token` (You can refer <a href="https://pub.dev/packages/firebase_messaging">Cloud Messaging</a> to setup notification for React Native)
|
|
234
|
+
|
|
235
|
+
- For more setting information, please refer <a href="https://api.omicall.com/web-sdk/mobile-sdk/ios-sdk/cau-hinh-push-notification">Config Push for iOS</a>
|
|
236
|
+
|
|
237
|
+
#### iOS(Swift):
|
|
238
|
+
|
|
239
|
+
- Add variables in Appdelegate.swift:
|
|
240
|
+
|
|
241
|
+
```
|
|
242
|
+
import OmiKit
|
|
243
|
+
import PushKit
|
|
244
|
+
import NotificationCenter
|
|
245
|
+
|
|
246
|
+
var pushkitManager: PushKitManager?
|
|
247
|
+
var provider: CallKitProviderDelegate?
|
|
248
|
+
var voipRegistry: PKPushRegistry?
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
- Add these lines into `didFinishLaunchingWithOptions`:
|
|
252
|
+
|
|
253
|
+
```
|
|
254
|
+
OmiClient.setEnviroment(KEY_OMI_APP_ENVIROMENT_SANDBOX)
|
|
255
|
+
provider = CallKitProviderDelegate.init(callManager: OMISIPLib.sharedInstance().callManager)
|
|
256
|
+
voipRegistry = PKPushRegistry.init(queue: .main)
|
|
257
|
+
pushkitManager = PushKitManager.init(voipRegistry: voipRegistry)
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
- Add these lines into `Info.plist`:
|
|
261
|
+
|
|
262
|
+
```
|
|
263
|
+
<key>NSCameraUsageDescription</key>
|
|
264
|
+
<string>Need camera access for video call functions</string>
|
|
265
|
+
<key>NSMicrophoneUsageDescription</key>
|
|
266
|
+
<string>Need microphone access for make Call</string>
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
- Save token for `OmiClient`: if you added `firebase_messaging` in your project so you don't need add these lines.
|
|
270
|
+
|
|
271
|
+
```
|
|
272
|
+
func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
|
|
273
|
+
let deviceTokenString = deviceToken.hexString
|
|
274
|
+
OmiClient.setUserPushNotificationToken(deviceTokenString)
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
extension Data {
|
|
278
|
+
var hexString: String {
|
|
279
|
+
let hexString = map { String(format: "%02.2hhx", $0) }.joined()
|
|
280
|
+
return hexString
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
```
|
|
284
|
+
|
|
285
|
+
*** Only use under lines when added `Cloud Messaging` plugin in your project ***
|
|
234
286
|
|
|
235
287
|
- Setup push notification: We only support Firebase for push notification.
|
|
236
288
|
|
|
@@ -239,6 +291,7 @@ if (@available(iOS 10.0, *)) {
|
|
|
239
291
|
|
|
240
292
|
- For more setting information, please refer <a href="https://api.omicall.com/web-sdk/mobile-sdk/ios-sdk/cau-hinh-push-notification">Config Push for iOS</a>
|
|
241
293
|
|
|
294
|
+
|
|
242
295
|
## Implement
|
|
243
296
|
|
|
244
297
|
- Set up <a href="https://rnfirebase.io/messaging/usage">Cloud Messaging</a> plugin:
|
|
@@ -313,7 +366,7 @@ if (@available(iOS 10.0, *)) {
|
|
|
313
366
|
//incomingAcceptButtonImage, incomingDeclineButtonImage, backImage, userImage: Add these into `android/app/src/main/res/drawble`
|
|
314
367
|
```
|
|
315
368
|
|
|
316
|
-
- Get call when user open app from killed
|
|
369
|
+
- Get call when user open app from killed state(only iOS):
|
|
317
370
|
|
|
318
371
|
```
|
|
319
372
|
import { getInitialCall } from 'omikit-plugin';
|
|
@@ -535,9 +588,7 @@ if (@available(iOS 10.0, *)) {
|
|
|
535
588
|
|
|
536
589
|
```
|
|
537
590
|
useEffect(() => {
|
|
538
|
-
omiEmitter.addListener(OmiCallEvent.
|
|
539
|
-
omiEmitter.addListener(OmiCallEvent.onCallEstablished, onCallEstablished);
|
|
540
|
-
omiEmitter.addListener(OmiCallEvent.onCallEnd, onCallEnd);
|
|
591
|
+
omiEmitter.addListener(OmiCallEvent.onCallStateChanged, onCallStateChanged);
|
|
541
592
|
omiEmitter.addListener(OmiCallEvent.onMuted, onMuted);
|
|
542
593
|
omiEmitter.addListener(OmiCallEvent.onSpeaker, onSpeaker);
|
|
543
594
|
omiEmitter.addListener(OmiCallEvent.onClickMissedCall, clickMissedCall);
|
|
@@ -551,9 +602,7 @@ useEffect(() => {
|
|
|
551
602
|
);
|
|
552
603
|
}
|
|
553
604
|
return () => {
|
|
554
|
-
omiEmitter.removeAllListeners(OmiCallEvent.
|
|
555
|
-
omiEmitter.removeAllListeners('onCallEstablished');
|
|
556
|
-
omiEmitter.removeAllListeners(OmiCallEvent.onCallEnd);
|
|
605
|
+
omiEmitter.removeAllListeners(OmiCallEvent.onCallStateChanged);
|
|
557
606
|
omiEmitter.removeAllListeners(OmiCallEvent.onMuted);
|
|
558
607
|
omiEmitter.removeAllListeners(OmiCallEvent.onSpeaker);
|
|
559
608
|
omiEmitter.removeAllListeners(OmiCallEvent.onSwitchboardAnswer);
|
|
@@ -565,10 +614,13 @@ useEffect(() => {
|
|
|
565
614
|
}, []);
|
|
566
615
|
```
|
|
567
616
|
|
|
617
|
+
- Important event `onCallStateChanged`: We provide it to listen call state change.
|
|
618
|
+
|
|
619
|
+
+ It is call state tracking event. We will return status of state. Please refer `OmiCallState`.
|
|
620
|
+
+ Incoming call state lifecycle: incoming(receive on foreround state) -> early -> connecting -> confirmed -> disconnected
|
|
621
|
+
+ Outgoing call state lifecycle: calling -> early (call created) -> connecting -> confirmed -> disconnected
|
|
622
|
+
|
|
568
623
|
- Action Name value:
|
|
569
|
-
- `OmiCallEvent.incomingReceived`: Have a incoming call. On Android this event work only foreground
|
|
570
|
-
- `OmiCallEvent.onCallEstablished`: Connected a call.
|
|
571
|
-
- `OmiCallEvent.onCallEnd`: End a call and return call information (like endCall)
|
|
572
624
|
- `OmiCallEvent.onMuted`: Audio changed.
|
|
573
625
|
- `OmiCallEvent.onSpeaker`: Audio changed.
|
|
574
626
|
- `OmiCallEvent.onClickMissedCall`: Click missed call notification.
|
package/android/build.gradle
CHANGED
|
@@ -68,6 +68,9 @@ android {
|
|
|
68
68
|
targetCompatibility JavaVersion.VERSION_1_8
|
|
69
69
|
}
|
|
70
70
|
|
|
71
|
+
dataBinding {
|
|
72
|
+
enabled = true
|
|
73
|
+
}
|
|
71
74
|
}
|
|
72
75
|
|
|
73
76
|
allprojects {
|
|
@@ -96,7 +99,7 @@ dependencies {
|
|
|
96
99
|
implementation "com.facebook.react:react-native:+" // From node_modules
|
|
97
100
|
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
|
|
98
101
|
|
|
99
|
-
api 'vn.vihat.omicall:omi-sdk:1.
|
|
102
|
+
api 'vn.vihat.omicall:omi-sdk:1.4.2'
|
|
100
103
|
// implementation fileTree(include: ['*.jar'], dir: 'libs')
|
|
101
104
|
// implementation files('OmiSDK.aar')
|
|
102
105
|
implementation 'androidx.appcompat:appcompat:1.5.0'
|
|
@@ -18,6 +18,7 @@ import com.facebook.react.ReactActivity
|
|
|
18
18
|
import com.facebook.react.bridge.*
|
|
19
19
|
import com.facebook.react.modules.core.RCTNativeAppEventEmitter
|
|
20
20
|
import com.omikitplugin.constants.*
|
|
21
|
+
import com.omikitplugin.state.CallState
|
|
21
22
|
import kotlinx.coroutines.CoroutineScope
|
|
22
23
|
import kotlinx.coroutines.Dispatchers
|
|
23
24
|
import kotlinx.coroutines.launch
|
|
@@ -25,6 +26,7 @@ import kotlinx.coroutines.withContext
|
|
|
25
26
|
import vn.vihat.omicall.omisdk.OmiAccountListener
|
|
26
27
|
import vn.vihat.omicall.omisdk.OmiClient
|
|
27
28
|
import vn.vihat.omicall.omisdk.OmiListener
|
|
29
|
+
import vn.vihat.omicall.omisdk.service.NotificationService
|
|
28
30
|
import vn.vihat.omicall.omisdk.utils.OmiSDKUtils
|
|
29
31
|
import vn.vihat.omicall.omisdk.utils.SipServiceConstants
|
|
30
32
|
|
|
@@ -41,37 +43,34 @@ class OmikitPluginModule(reactContext: ReactApplicationContext?) :
|
|
|
41
43
|
val map: WritableMap = WritableNativeMap()
|
|
42
44
|
map.putBoolean("isVideo", isVideo ?: true)
|
|
43
45
|
map.putString("callerNumber", phoneNumber)
|
|
44
|
-
|
|
46
|
+
map.putInt("status", CallState.incoming.value)
|
|
47
|
+
sendEvent(CALL_STATE_CHANGED, map)
|
|
45
48
|
Log.d("omikit", "incomingReceived: ")
|
|
46
49
|
}
|
|
47
50
|
|
|
48
|
-
override fun
|
|
49
|
-
if (callInfo is Map<*, *>) {
|
|
50
|
-
val call = callInfo as Map<*, *>
|
|
51
|
-
val map: WritableMap = WritableNativeMap()
|
|
52
|
-
val timeStartToAnswer = call["time_start_to_answer"] as Long?
|
|
53
|
-
val timeEnd = call["time_end"] as Long
|
|
54
|
-
map.putString("transaction_id", call["transaction_id"] as String?)
|
|
55
|
-
map.putString("direction", call["direction"] as String)
|
|
56
|
-
map.putString("source_number", call["source_number"] as String)
|
|
57
|
-
map.putString("destination_number", call["destination_number"] as String)
|
|
58
|
-
map.putDouble("time_start_to_answer", (timeStartToAnswer ?: 0).toDouble())
|
|
59
|
-
map.putDouble("time_end", timeEnd.toDouble())
|
|
60
|
-
map.putString("sip_user", call["sip_user"] as String)
|
|
61
|
-
map.putString("disposition", call["disposition"] as String)
|
|
62
|
-
sendEvent(CALL_END, map)
|
|
63
|
-
} else {
|
|
64
|
-
sendEvent(CALL_END, null)
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
override fun networkHealth(mos: Float, quality: Int) {
|
|
51
|
+
override fun networkHealth(stat: Map<String, *>, quality: Int) {
|
|
69
52
|
val map: WritableMap = WritableNativeMap()
|
|
70
53
|
map.putInt("quality", quality)
|
|
71
|
-
map.putDouble("mos", mos.toDouble())
|
|
72
54
|
sendEvent(CALL_QUALITY, map)
|
|
73
55
|
}
|
|
74
56
|
|
|
57
|
+
override fun onCallEnd(callInfo: MutableMap<String, Any?>, statusCode: Int) {
|
|
58
|
+
val call = callInfo as Map<*, *>
|
|
59
|
+
val map: WritableMap = WritableNativeMap()
|
|
60
|
+
val timeStartToAnswer = call["time_start_to_answer"] as Long?
|
|
61
|
+
val timeEnd = call["time_end"] as Long
|
|
62
|
+
map.putString("transaction_id", call["transaction_id"] as String?)
|
|
63
|
+
map.putString("direction", call["direction"] as String)
|
|
64
|
+
map.putString("source_number", call["source_number"] as String)
|
|
65
|
+
map.putString("destination_number", call["destination_number"] as String)
|
|
66
|
+
map.putDouble("time_start_to_answer", (timeStartToAnswer ?: 0).toDouble())
|
|
67
|
+
map.putDouble("time_end", timeEnd.toDouble())
|
|
68
|
+
map.putString("sip_user", call["sip_user"] as String)
|
|
69
|
+
map.putString("disposition", call["disposition"] as String)
|
|
70
|
+
map.putInt("status", CallState.disconnected.value)
|
|
71
|
+
sendEvent(CALL_STATE_CHANGED, map)
|
|
72
|
+
}
|
|
73
|
+
|
|
75
74
|
override fun onCallEstablished(
|
|
76
75
|
callerId: Int,
|
|
77
76
|
phoneNumber: String?,
|
|
@@ -85,31 +84,43 @@ class OmikitPluginModule(reactContext: ReactApplicationContext?) :
|
|
|
85
84
|
map.putString("callerNumber", phoneNumber)
|
|
86
85
|
map.putBoolean("isVideo", isVideo ?: true)
|
|
87
86
|
map.putString("transactionId", transactionId)
|
|
88
|
-
|
|
87
|
+
map.putInt("status", CallState.confirmed.value)
|
|
88
|
+
sendEvent(CALL_STATE_CHANGED, map)
|
|
89
89
|
}, 500)
|
|
90
90
|
}
|
|
91
91
|
|
|
92
|
-
override fun
|
|
93
|
-
|
|
92
|
+
override fun onConnecting() {
|
|
93
|
+
val map: WritableMap = WritableNativeMap()
|
|
94
|
+
map.putString("callerNumber", "")
|
|
95
|
+
map.putBoolean("isVideo", NotificationService.isVideo)
|
|
96
|
+
map.putString("transactionId", "")
|
|
97
|
+
map.putInt("status", CallState.connecting.value)
|
|
98
|
+
sendEvent(CALL_STATE_CHANGED, map)
|
|
94
99
|
}
|
|
95
100
|
|
|
101
|
+
|
|
96
102
|
override fun onHold(isHold: Boolean) {
|
|
97
|
-
// val map: WritableMap = WritableNativeMap()
|
|
98
|
-
// map.putBoolean("isHold", isHold)
|
|
99
|
-
// sendEvent(HOLD, map)
|
|
100
103
|
}
|
|
101
104
|
|
|
102
105
|
override fun onMuted(isMuted: Boolean) {
|
|
103
|
-
// val map: WritableMap = WritableNativeMap()
|
|
104
|
-
// map.putBoolean("isMuted", isMuted)
|
|
105
|
-
// sendEvent(MUTED, map)
|
|
106
106
|
}
|
|
107
107
|
|
|
108
108
|
override fun onOutgoingStarted(callerId: Int, phoneNumber: String?, isVideo: Boolean?) {
|
|
109
|
-
|
|
109
|
+
val map: WritableMap = WritableNativeMap()
|
|
110
|
+
map.putString("callerNumber", "")
|
|
111
|
+
map.putBoolean("isVideo", NotificationService.isVideo)
|
|
112
|
+
map.putString("transactionId", "")
|
|
113
|
+
map.putInt("status", CallState.calling.value)
|
|
114
|
+
sendEvent(CALL_STATE_CHANGED, map)
|
|
110
115
|
}
|
|
111
116
|
|
|
112
117
|
override fun onRinging() {
|
|
118
|
+
val map: WritableMap = WritableNativeMap()
|
|
119
|
+
map.putString("callerNumber", "")
|
|
120
|
+
map.putBoolean("isVideo", false)
|
|
121
|
+
map.putString("transactionId", "")
|
|
122
|
+
map.putInt("status", CallState.early.value)
|
|
123
|
+
sendEvent(CALL_STATE_CHANGED, map)
|
|
113
124
|
}
|
|
114
125
|
|
|
115
126
|
override fun onSwitchBoardAnswer(sip: String) {
|
|
@@ -152,6 +163,7 @@ class OmikitPluginModule(reactContext: ReactApplicationContext?) :
|
|
|
152
163
|
promise.resolve(result)
|
|
153
164
|
}
|
|
154
165
|
|
|
166
|
+
@RequiresApi(Build.VERSION_CODES.M)
|
|
155
167
|
@ReactMethod
|
|
156
168
|
fun openSystemAlertSetting(promise: Promise) {
|
|
157
169
|
val intent = Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
|
|
@@ -202,8 +214,8 @@ class OmikitPluginModule(reactContext: ReactApplicationContext?) :
|
|
|
202
214
|
OmiClient.register(
|
|
203
215
|
userName,
|
|
204
216
|
password,
|
|
205
|
-
isVideo,
|
|
206
217
|
realm,
|
|
218
|
+
isVideo,
|
|
207
219
|
host,
|
|
208
220
|
)
|
|
209
221
|
}
|
|
@@ -321,24 +333,19 @@ class OmikitPluginModule(reactContext: ReactApplicationContext?) :
|
|
|
321
333
|
@ReactMethod
|
|
322
334
|
fun endCall(promise: Promise) {
|
|
323
335
|
currentActivity?.runOnUiThread {
|
|
324
|
-
val
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
map.putString("disposition", call["disposition"] as String)
|
|
338
|
-
sendEvent(CALL_END, map)
|
|
339
|
-
} else {
|
|
340
|
-
promise.resolve(null)
|
|
341
|
-
}
|
|
336
|
+
val call = OmiClient.instance.hangUp()
|
|
337
|
+
val map: WritableMap = WritableNativeMap()
|
|
338
|
+
val timeStartToAnswer = call["time_start_to_answer"] as Long?
|
|
339
|
+
val timeEnd = call["time_end"] as Long
|
|
340
|
+
map.putString("transaction_id", call["transaction_id"] as String?)
|
|
341
|
+
map.putString("direction", call["direction"] as String)
|
|
342
|
+
map.putString("source_number", call["source_number"] as String)
|
|
343
|
+
map.putString("destination_number", call["destination_number"] as String)
|
|
344
|
+
map.putDouble("time_start_to_answer", (timeStartToAnswer ?: 0).toDouble())
|
|
345
|
+
map.putDouble("time_end", timeEnd.toDouble())
|
|
346
|
+
map.putString("sip_user", call["sip_user"] as String)
|
|
347
|
+
map.putString("disposition", call["disposition"] as String)
|
|
348
|
+
sendEvent(CALL_STATE_CHANGED, map)
|
|
342
349
|
}
|
|
343
350
|
}
|
|
344
351
|
|
|
@@ -536,9 +543,11 @@ class OmikitPluginModule(reactContext: ReactApplicationContext?) :
|
|
|
536
543
|
}
|
|
537
544
|
|
|
538
545
|
private fun sendEvent(eventName: String?, params: Any?) {
|
|
539
|
-
currentActivity
|
|
540
|
-
|
|
541
|
-
.
|
|
546
|
+
if (currentActivity != null) {
|
|
547
|
+
currentActivity!!.runOnUiThread {
|
|
548
|
+
reactApplicationContext.getJSModule(RCTNativeAppEventEmitter::class.java)
|
|
549
|
+
.emit(eventName, params)
|
|
550
|
+
}
|
|
542
551
|
}
|
|
543
552
|
}
|
|
544
553
|
|
|
@@ -26,9 +26,7 @@ const val GET_GUEST_USER = "GET_GUEST_USER"
|
|
|
26
26
|
const val GET_USER_INFO = "GET_USER_INFO"
|
|
27
27
|
|
|
28
28
|
//LISTENER
|
|
29
|
-
const val
|
|
30
|
-
const val CALL_END = "CALL_END"
|
|
31
|
-
const val INCOMING_RECEIVED = "INCOMING_RECEIVED"
|
|
29
|
+
const val CALL_STATE_CHANGED = "CALL_STATE_CHANGED"
|
|
32
30
|
const val VIDEO = "VIDEO"
|
|
33
31
|
const val SPEAKER = "SPEAKER"
|
|
34
32
|
const val MUTED = "MUTED"
|
|
@@ -20,6 +20,7 @@ class CallManager {
|
|
|
20
20
|
var isSpeaker = false
|
|
21
21
|
private var guestPhone : String = ""
|
|
22
22
|
private var lastStatusCall : String?
|
|
23
|
+
private var tempCallInfo : [String: Any]?
|
|
23
24
|
|
|
24
25
|
/// Get instance
|
|
25
26
|
static func shareInstance() -> CallManager {
|
|
@@ -183,9 +184,6 @@ class CallManager {
|
|
|
183
184
|
return;
|
|
184
185
|
}
|
|
185
186
|
switch (state) {
|
|
186
|
-
case 0:
|
|
187
|
-
OmikitPlugin.instance.sendEvent(withName: LOCAL_VIDEO_READY, body: nil)
|
|
188
|
-
break
|
|
189
187
|
case 1:
|
|
190
188
|
OmikitPlugin.instance.sendEvent(withName: REMOTE_VIDEO_READY, body: nil)
|
|
191
189
|
break
|
|
@@ -195,23 +193,9 @@ class CallManager {
|
|
|
195
193
|
}
|
|
196
194
|
|
|
197
195
|
@objc func callDealloc(_ notification: NSNotification) {
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
}
|
|
202
|
-
if (call.callState == .disconnected) {
|
|
203
|
-
DispatchQueue.main.async {[weak self] in
|
|
204
|
-
guard let self = self else { return }
|
|
205
|
-
if (self.videoManager != nil) {
|
|
206
|
-
self.videoManager = nil
|
|
207
|
-
}
|
|
208
|
-
let callInfo = self.getCallInfo(call: call)
|
|
209
|
-
self.lastStatusCall = nil
|
|
210
|
-
self.guestPhone = ""
|
|
211
|
-
DispatchQueue.main.async {
|
|
212
|
-
OmikitPlugin.instance.sendEvent(withName: CALL_END, body: callInfo)
|
|
213
|
-
}
|
|
214
|
-
}
|
|
196
|
+
if (tempCallInfo != nil) {
|
|
197
|
+
tempCallInfo!["status"] = CallState.disconnected.rawValue
|
|
198
|
+
OmikitPlugin.instance.sendEvent(withName: CALL_STATE_CHANGED, body: tempCallInfo!)
|
|
215
199
|
}
|
|
216
200
|
}
|
|
217
201
|
|
|
@@ -224,30 +208,44 @@ class CallManager {
|
|
|
224
208
|
print(call.callState)
|
|
225
209
|
switch (call.callState) {
|
|
226
210
|
case .calling:
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
211
|
+
NSLog("Outgoing call, in CALLING state, with UUID \(call.uuid)")
|
|
212
|
+
var callInfo = baseInfoFromCall(call: call)
|
|
213
|
+
callInfo["status"] = CallState.calling.rawValue
|
|
214
|
+
OmikitPlugin.instance.sendEvent(withName: CALL_STATE_CHANGED, body: callInfo)
|
|
230
215
|
break
|
|
231
216
|
case .early:
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
217
|
+
var callInfo = baseInfoFromCall(call: call)
|
|
218
|
+
callInfo["status"] = CallState.early.rawValue
|
|
219
|
+
OmikitPlugin.instance.sendEvent(withName: CALL_STATE_CHANGED, body: callInfo)
|
|
235
220
|
break
|
|
236
221
|
case .connecting:
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
222
|
+
var callInfo = baseInfoFromCall(call: call)
|
|
223
|
+
callInfo["status"] = CallState.connecting.rawValue
|
|
224
|
+
OmikitPlugin.instance.sendEvent(withName: CALL_STATE_CHANGED, body: callInfo)
|
|
240
225
|
break
|
|
241
226
|
case .confirmed:
|
|
242
|
-
NSLog("Outgoing call, in CONFIRMED state, with UUID: \(call
|
|
227
|
+
NSLog("Outgoing call, in CONFIRMED state, with UUID: \(call)")
|
|
243
228
|
if (videoManager == nil && call.isVideo) {
|
|
244
229
|
videoManager = OMIVideoViewManager.init()
|
|
245
230
|
}
|
|
246
231
|
isSpeaker = call.isVideo
|
|
247
232
|
lastStatusCall = "answered"
|
|
248
|
-
|
|
233
|
+
var callInfo = baseInfoFromCall(call: call)
|
|
234
|
+
callInfo["status"] = CallState.confirmed.rawValue
|
|
235
|
+
OmikitPlugin.instance.sendEvent(withName: CALL_STATE_CHANGED, body: callInfo)
|
|
249
236
|
OmikitPlugin.instance.sendMuteStatus()
|
|
250
|
-
|
|
237
|
+
break
|
|
238
|
+
case .incoming:
|
|
239
|
+
guestPhone = call.callerNumber ?? ""
|
|
240
|
+
DispatchQueue.main.async {[weak self] in
|
|
241
|
+
guard let self = self else { return }
|
|
242
|
+
let state: UIApplication.State = UIApplication.shared.applicationState
|
|
243
|
+
if (state == .active) {
|
|
244
|
+
var callInfo = self.baseInfoFromCall(call: call)
|
|
245
|
+
callInfo["status"] = CallState.incoming.rawValue
|
|
246
|
+
OmikitPlugin.instance.sendEvent(withName: CALL_STATE_CHANGED, body: callInfo)
|
|
247
|
+
}
|
|
248
|
+
}
|
|
251
249
|
break
|
|
252
250
|
case .disconnected:
|
|
253
251
|
if (!call.connected) {
|
|
@@ -255,21 +253,17 @@ class CallManager {
|
|
|
255
253
|
} else if (!call.userDidHangUp) {
|
|
256
254
|
NSLog("Call remotly ended, in DISCONNECTED state, with UUID: \(call.uuid)")
|
|
257
255
|
}
|
|
258
|
-
|
|
256
|
+
tempCallInfo = getCallInfo(call: call)
|
|
259
257
|
if (videoManager != nil) {
|
|
260
258
|
videoManager = nil
|
|
261
259
|
}
|
|
262
260
|
lastStatusCall = nil
|
|
263
261
|
guestPhone = ""
|
|
264
|
-
|
|
265
|
-
OmikitPlugin.instance.sendEvent(withName:
|
|
266
|
-
|
|
267
|
-
case .incoming:
|
|
268
|
-
guestPhone = call.callerNumber ?? ""
|
|
269
|
-
OmikitPlugin.instance.sendEvent(withName: INCOMING_RECEIVED, body: ["isVideo": call.isVideo, "callerNumber": call.callerNumber ?? ""])
|
|
262
|
+
tempCallInfo!["status"] = CallState.disconnected.rawValue
|
|
263
|
+
OmikitPlugin.instance.sendEvent(withName: CALL_STATE_CHANGED, body: tempCallInfo!)
|
|
264
|
+
tempCallInfo = nil
|
|
270
265
|
break
|
|
271
266
|
default:
|
|
272
|
-
NSLog("Default call state")
|
|
273
267
|
break
|
|
274
268
|
}
|
|
275
269
|
}
|
|
@@ -305,12 +299,15 @@ class CallManager {
|
|
|
305
299
|
|
|
306
300
|
func endAvailableCall() -> [String: Any] {
|
|
307
301
|
guard let call = getAvailableCall() else {
|
|
308
|
-
|
|
302
|
+
let callInfo = [
|
|
303
|
+
"status": CallState.disconnected.rawValue,
|
|
304
|
+
]
|
|
305
|
+
OmikitPlugin.instance.sendEvent(withName: CALL_STATE_CHANGED, body: callInfo)
|
|
309
306
|
return [:]
|
|
310
307
|
}
|
|
311
|
-
|
|
308
|
+
tempCallInfo = getCallInfo(call: call)
|
|
312
309
|
omiLib.callManager.end(call)
|
|
313
|
-
return
|
|
310
|
+
return tempCallInfo!
|
|
314
311
|
}
|
|
315
312
|
|
|
316
313
|
func endAllCalls() {
|
|
@@ -483,6 +480,14 @@ class CallManager {
|
|
|
483
480
|
"disposition" : lastStatusCall == nil ? "no_answered" : "answered",
|
|
484
481
|
]
|
|
485
482
|
}
|
|
483
|
+
|
|
484
|
+
private func baseInfoFromCall(call: OMICall) -> [String: Any] {
|
|
485
|
+
return [
|
|
486
|
+
"callerNumber": call.callerNumber,
|
|
487
|
+
"isVideo": call.isVideo,
|
|
488
|
+
"transactionId": call.omiId,
|
|
489
|
+
]
|
|
490
|
+
}
|
|
486
491
|
}
|
|
487
492
|
|
|
488
493
|
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
//
|
|
2
|
+
// CallState.swift
|
|
3
|
+
// omicall_flutter_plugin
|
|
4
|
+
//
|
|
5
|
+
// Created by PRO 2019 16' on 25/05/2023.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
import Foundation
|
|
9
|
+
enum CallState: Int {
|
|
10
|
+
case calling = 0
|
|
11
|
+
case early
|
|
12
|
+
case connecting
|
|
13
|
+
case confirmed
|
|
14
|
+
case incoming
|
|
15
|
+
case disconnected
|
|
16
|
+
}
|
|
@@ -36,13 +36,9 @@ let GET_GUEST_USER = "GET_GUEST_USER"
|
|
|
36
36
|
let GET_USER_INFO = "GET_USER_INFO"
|
|
37
37
|
|
|
38
38
|
//LISTENER
|
|
39
|
-
let
|
|
40
|
-
let CALL_END = "CALL_END"
|
|
41
|
-
let INCOMING_RECEIVED = "INCOMING_RECEIVED"
|
|
42
|
-
let VIDEO = "VIDEO"
|
|
39
|
+
let CALL_STATE_CHANGED = "CALL_STATE_CHANGED"
|
|
43
40
|
let SPEAKER = "SPEAKER"
|
|
44
41
|
let MUTED = "MUTED"
|
|
45
|
-
let LOCAL_VIDEO_READY = "LOCAL_VIDEO_READY"
|
|
46
42
|
let REMOTE_VIDEO_READY = "REMOTE_VIDEO_READY"
|
|
47
43
|
let CLICK_MISSED_CALL = "CLICK_MISSED_CALL"
|
|
48
44
|
let SWITCHBOARD_ANSWER = "SWITCHBOARD_ANSWER"
|
|
@@ -195,14 +195,10 @@ public class OmikitPlugin: RCTEventEmitter {
|
|
|
195
195
|
|
|
196
196
|
public override func supportedEvents() -> [String]! {
|
|
197
197
|
return [
|
|
198
|
-
|
|
199
|
-
CALL_ESTABLISHED,
|
|
200
|
-
CALL_END,
|
|
198
|
+
CALL_STATE_CHANGED,
|
|
201
199
|
MUTED,
|
|
202
200
|
SPEAKER,
|
|
203
|
-
VIDEO,
|
|
204
201
|
REMOTE_VIDEO_READY,
|
|
205
|
-
LOCAL_VIDEO_READY,
|
|
206
202
|
CLICK_MISSED_CALL,
|
|
207
203
|
SWITCHBOARD_ANSWER,
|
|
208
204
|
CALL_QUALITY
|
package/lib/commonjs/index.js
CHANGED
|
@@ -36,4 +36,15 @@ Object.keys(_omi_remote_camera).forEach(function (key) {
|
|
|
36
36
|
}
|
|
37
37
|
});
|
|
38
38
|
});
|
|
39
|
+
var _omi_call_state = require("./omi_call_state");
|
|
40
|
+
Object.keys(_omi_call_state).forEach(function (key) {
|
|
41
|
+
if (key === "default" || key === "__esModule") return;
|
|
42
|
+
if (key in exports && exports[key] === _omi_call_state[key]) return;
|
|
43
|
+
Object.defineProperty(exports, key, {
|
|
44
|
+
enumerable: true,
|
|
45
|
+
get: function () {
|
|
46
|
+
return _omi_call_state[key];
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
});
|
|
39
50
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_omikit","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_omi_local_camera","_omi_remote_camera"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,OAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,OAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,OAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,iBAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,iBAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,iBAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,iBAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,kBAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,kBAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,kBAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,kBAAA,CAAAN,GAAA;IAAA;EAAA;AAAA"}
|
|
1
|
+
{"version":3,"names":["_omikit","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_omi_local_camera","_omi_remote_camera","_omi_call_state"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,OAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,OAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,OAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,iBAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,iBAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,iBAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,iBAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,kBAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,kBAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,kBAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,kBAAA,CAAAN,GAAA;IAAA;EAAA;AAAA;AACA,IAAAO,eAAA,GAAAX,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAS,eAAA,EAAAR,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAO,eAAA,CAAAP,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAG,eAAA,CAAAP,GAAA;IAAA;EAAA;AAAA"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.OmiCallState = void 0;
|
|
7
|
+
let OmiCallState;
|
|
8
|
+
exports.OmiCallState = OmiCallState;
|
|
9
|
+
(function (OmiCallState) {
|
|
10
|
+
OmiCallState[OmiCallState["calling"] = 0] = "calling";
|
|
11
|
+
OmiCallState[OmiCallState["early"] = 1] = "early";
|
|
12
|
+
OmiCallState[OmiCallState["connecting"] = 2] = "connecting";
|
|
13
|
+
OmiCallState[OmiCallState["confirmed"] = 3] = "confirmed";
|
|
14
|
+
OmiCallState[OmiCallState["incoming"] = 4] = "incoming";
|
|
15
|
+
OmiCallState[OmiCallState["disconnected"] = 5] = "disconnected";
|
|
16
|
+
})(OmiCallState || (exports.OmiCallState = OmiCallState = {}));
|
|
17
|
+
//# sourceMappingURL=omi_call_state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["OmiCallState","exports"],"sourceRoot":"../../src","sources":["omi_call_state.tsx"],"mappings":";;;;;;IAAYA,YAAY;AAAAC,OAAA,CAAAD,YAAA,GAAAA,YAAA;AAAA,WAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;AAAA,GAAZA,YAAY,KAAAC,OAAA,CAAAD,YAAA,GAAZA,YAAY"}
|
package/lib/commonjs/omikit.js
CHANGED
|
@@ -115,12 +115,9 @@ function openSystemAlertSetting() {
|
|
|
115
115
|
const omiEmitter = new _reactNative.NativeEventEmitter(OmikitPlugin);
|
|
116
116
|
exports.omiEmitter = omiEmitter;
|
|
117
117
|
const OmiCallEvent = {
|
|
118
|
-
|
|
119
|
-
onCallEnd: 'CALL_END',
|
|
120
|
-
incomingReceived: 'INCOMING_RECEIVED',
|
|
118
|
+
onCallStateChanged: 'CALL_STATE_CHANGED',
|
|
121
119
|
onSpeaker: 'SPEAKER',
|
|
122
120
|
onMuted: 'MUTED',
|
|
123
|
-
onLocalVideoReady: 'LOCAL_VIDEO_READY',
|
|
124
121
|
onRemoteVideoReady: 'REMOTE_VIDEO_READY',
|
|
125
122
|
onClickMissedCall: 'CLICK_MISSED_CALL',
|
|
126
123
|
onSwitchboardAnswer: 'SWITCHBOARD_ANSWER',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","LINKING_ERROR","Platform","select","ios","default","OmikitPlugin","NativeModules","Proxy","get","Error","startServices","configPushNotification","data","getInitialCall","initCallWithUserPassword","console","log","initCallWithApiKey","updateToken","startCall","startCallWithUuid","joinCall","endCall","toggleMute","toggleSpeaker","onHold","sendDTMF","switchOmiCamera","toggleOmiVideo","logout","registerVideoEvent","removeVideoEvent","getCurrentUser","getGuestUser","systemAlertWindow","openSystemAlertSetting","omiEmitter","NativeEventEmitter","exports","OmiCallEvent","
|
|
1
|
+
{"version":3,"names":["_reactNative","require","LINKING_ERROR","Platform","select","ios","default","OmikitPlugin","NativeModules","Proxy","get","Error","startServices","configPushNotification","data","getInitialCall","initCallWithUserPassword","console","log","initCallWithApiKey","updateToken","startCall","startCallWithUuid","joinCall","endCall","toggleMute","toggleSpeaker","onHold","sendDTMF","switchOmiCamera","toggleOmiVideo","logout","registerVideoEvent","removeVideoEvent","getCurrentUser","getGuestUser","systemAlertWindow","openSystemAlertSetting","omiEmitter","NativeEventEmitter","exports","OmiCallEvent","onCallStateChanged","onSpeaker","onMuted","onRemoteVideoReady","onClickMissedCall","onSwitchboardAnswer","onCallQuality"],"sourceRoot":"../../src","sources":["omikit.tsx"],"mappings":"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"}
|
package/lib/module/index.js
CHANGED
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,cAAc,UAAU;AACxB,cAAc,oBAAoB;AAClC,cAAc,qBAAqB"}
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,cAAc,UAAU;AACxB,cAAc,oBAAoB;AAClC,cAAc,qBAAqB;AACnC,cAAc,kBAAkB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export let OmiCallState;
|
|
2
|
+
(function (OmiCallState) {
|
|
3
|
+
OmiCallState[OmiCallState["calling"] = 0] = "calling";
|
|
4
|
+
OmiCallState[OmiCallState["early"] = 1] = "early";
|
|
5
|
+
OmiCallState[OmiCallState["connecting"] = 2] = "connecting";
|
|
6
|
+
OmiCallState[OmiCallState["confirmed"] = 3] = "confirmed";
|
|
7
|
+
OmiCallState[OmiCallState["incoming"] = 4] = "incoming";
|
|
8
|
+
OmiCallState[OmiCallState["disconnected"] = 5] = "disconnected";
|
|
9
|
+
})(OmiCallState || (OmiCallState = {}));
|
|
10
|
+
//# sourceMappingURL=omi_call_state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["OmiCallState"],"sourceRoot":"../../src","sources":["omi_call_state.tsx"],"mappings":"AAAA,WAAYA,YAAY;AAOvB,WAPWA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;AAAA,GAAZA,YAAY,KAAZA,YAAY"}
|
package/lib/module/omikit.js
CHANGED
|
@@ -84,12 +84,9 @@ export function openSystemAlertSetting() {
|
|
|
84
84
|
}
|
|
85
85
|
export const omiEmitter = new NativeEventEmitter(OmikitPlugin);
|
|
86
86
|
export const OmiCallEvent = {
|
|
87
|
-
|
|
88
|
-
onCallEnd: 'CALL_END',
|
|
89
|
-
incomingReceived: 'INCOMING_RECEIVED',
|
|
87
|
+
onCallStateChanged: 'CALL_STATE_CHANGED',
|
|
90
88
|
onSpeaker: 'SPEAKER',
|
|
91
89
|
onMuted: 'MUTED',
|
|
92
|
-
onLocalVideoReady: 'LOCAL_VIDEO_READY',
|
|
93
90
|
onRemoteVideoReady: 'REMOTE_VIDEO_READY',
|
|
94
91
|
onClickMissedCall: 'CLICK_MISSED_CALL',
|
|
95
92
|
onSwitchboardAnswer: 'SWITCHBOARD_ANSWER',
|
package/lib/module/omikit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NativeModules","Platform","NativeEventEmitter","LINKING_ERROR","select","ios","default","OmikitPlugin","Proxy","get","Error","startServices","configPushNotification","data","getInitialCall","initCallWithUserPassword","console","log","initCallWithApiKey","updateToken","startCall","startCallWithUuid","joinCall","endCall","toggleMute","toggleSpeaker","onHold","sendDTMF","switchOmiCamera","toggleOmiVideo","logout","registerVideoEvent","removeVideoEvent","getCurrentUser","getGuestUser","systemAlertWindow","openSystemAlertSetting","omiEmitter","OmiCallEvent","
|
|
1
|
+
{"version":3,"names":["NativeModules","Platform","NativeEventEmitter","LINKING_ERROR","select","ios","default","OmikitPlugin","Proxy","get","Error","startServices","configPushNotification","data","getInitialCall","initCallWithUserPassword","console","log","initCallWithApiKey","updateToken","startCall","startCallWithUuid","joinCall","endCall","toggleMute","toggleSpeaker","onHold","sendDTMF","switchOmiCamera","toggleOmiVideo","logout","registerVideoEvent","removeVideoEvent","getCurrentUser","getGuestUser","systemAlertWindow","openSystemAlertSetting","omiEmitter","OmiCallEvent","onCallStateChanged","onSpeaker","onMuted","onRemoteVideoReady","onClickMissedCall","onSwitchboardAnswer","onCallQuality"],"sourceRoot":"../../src","sources":["omikit.tsx"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"omi_call_state.d.ts","sourceRoot":"","sources":["../../src/omi_call_state.tsx"],"names":[],"mappings":"AAAA,oBAAY,YAAY;IACtB,OAAO,IAAI;IACX,KAAK,IAAI;IACT,UAAU,IAAI;IACd,SAAS,IAAI;IACb,QAAQ,IAAI;IACZ,YAAY,IAAI;CACjB"}
|
|
@@ -24,12 +24,9 @@ export declare function systemAlertWindow(): Promise<boolean>;
|
|
|
24
24
|
export declare function openSystemAlertSetting(): Promise<void>;
|
|
25
25
|
export declare const omiEmitter: NativeEventEmitter;
|
|
26
26
|
export declare const OmiCallEvent: {
|
|
27
|
-
|
|
28
|
-
onCallEnd: string;
|
|
29
|
-
incomingReceived: string;
|
|
27
|
+
onCallStateChanged: string;
|
|
30
28
|
onSpeaker: string;
|
|
31
29
|
onMuted: string;
|
|
32
|
-
onLocalVideoReady: string;
|
|
33
30
|
onRemoteVideoReady: string;
|
|
34
31
|
onClickMissedCall: string;
|
|
35
32
|
onSwitchboardAnswer: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"omikit.d.ts","sourceRoot":"","sources":["../../src/omikit.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA2B,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAmB3E,wBAAgB,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,CAE5C;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAE9D;AAED,wBAAgB,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,CAE7C;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAGpE;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAG9D;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAGpD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAGrD;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAG7D;AAED,wBAAgB,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC,CAE3C;AAED,wBAAgB,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAE1C;AAED,wBAAgB,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,CAE7C;AAED,wBAAgB,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC,CAEhD;AAED,wBAAgB,MAAM,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAElD;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAEpD;AAED,wBAAgB,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC,CAElD;AAED,wBAAgB,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC,CAEjD;AAED,wBAAgB,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,CAEzC;AAED,wBAAgB,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC,CAErD;AAED,wBAAgB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC,CAEnD;AAED,wBAAgB,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,CAE7C;AAED,wBAAgB,YAAY,IAAI,OAAO,CAAC,GAAG,CAAC,CAE3C;AAED,wBAAgB,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC,CAEpD;AAED,wBAAgB,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CAEtD;AAED,eAAO,MAAM,UAAU,oBAAuC,CAAC;AAE/D,eAAO,MAAM,YAAY
|
|
1
|
+
{"version":3,"file":"omikit.d.ts","sourceRoot":"","sources":["../../src/omikit.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA2B,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAmB3E,wBAAgB,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,CAE5C;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAE9D;AAED,wBAAgB,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,CAE7C;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAGpE;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAG9D;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAGpD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAGrD;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAG7D;AAED,wBAAgB,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC,CAE3C;AAED,wBAAgB,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAE1C;AAED,wBAAgB,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,CAE7C;AAED,wBAAgB,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC,CAEhD;AAED,wBAAgB,MAAM,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAElD;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAEpD;AAED,wBAAgB,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC,CAElD;AAED,wBAAgB,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC,CAEjD;AAED,wBAAgB,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,CAEzC;AAED,wBAAgB,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC,CAErD;AAED,wBAAgB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC,CAEnD;AAED,wBAAgB,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,CAE7C;AAED,wBAAgB,YAAY,IAAI,OAAO,CAAC,GAAG,CAAC,CAE3C;AAED,wBAAgB,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC,CAEpD;AAED,wBAAgB,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CAEtD;AAED,eAAO,MAAM,UAAU,oBAAuC,CAAC;AAE/D,eAAO,MAAM,YAAY;;;;;;;;CAQxB,CAAC"}
|
package/omikit-plugin.podspec
CHANGED
package/package.json
CHANGED
package/src/index.tsx
CHANGED
package/src/omikit.tsx
CHANGED
|
@@ -117,12 +117,9 @@ export function openSystemAlertSetting(): Promise<void> {
|
|
|
117
117
|
export const omiEmitter = new NativeEventEmitter(OmikitPlugin);
|
|
118
118
|
|
|
119
119
|
export const OmiCallEvent = {
|
|
120
|
-
|
|
121
|
-
onCallEnd: 'CALL_END',
|
|
122
|
-
incomingReceived: 'INCOMING_RECEIVED',
|
|
120
|
+
onCallStateChanged: 'CALL_STATE_CHANGED',
|
|
123
121
|
onSpeaker: 'SPEAKER',
|
|
124
122
|
onMuted: 'MUTED',
|
|
125
|
-
onLocalVideoReady: 'LOCAL_VIDEO_READY',
|
|
126
123
|
onRemoteVideoReady: 'REMOTE_VIDEO_READY',
|
|
127
124
|
onClickMissedCall: 'CLICK_MISSED_CALL',
|
|
128
125
|
onSwitchboardAnswer: 'SWITCHBOARD_ANSWER',
|