Skip to content

Commit 575cff5

Browse files
committed
Support MISSED on Android
1 parent 03be33b commit 575cff5

File tree

4 files changed

+15
-8
lines changed

4 files changed

+15
-8
lines changed

README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,8 @@ const CONSTANTS = {
9696
REMOTE_ENDED: 2,
9797
UNANSWERED: 3,
9898
ANSWERED_ELSEWHERE: 4,
99-
DECLINED_ELSEWHERE: 5
99+
DECLINED_ELSEWHERE: 5,
100+
MISSED: 6
100101
}
101102
};
102103
@@ -260,6 +261,7 @@ RNCallKeep.reportEndCallWithUUID(uuid, reason);
260261
- Remote user did not answer: 3
261262
- Call Answered elsewhere: 4
262263
- Call declined elsewhere: 5 (on Android this will map to Remote user ended call if you use the constants)
264+
- Missed: 6 (on iOS this will map to remote user ended call)
263265
- Access reasons as constants
264266
```js
265267
const { CONSTANTS as CK_CONSTANTS, RNCallKeep } from 'react-native-callkeep';

android/src/main/java/io/wazo/callkeep/VoiceConnection.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,7 @@ public void reportDisconnect(int reason) {
135135
setDisconnected(new DisconnectCause(DisconnectCause.ERROR));
136136
break;
137137
case 2:
138+
case 5:
138139
setDisconnected(new DisconnectCause(DisconnectCause.REMOTE));
139140
break;
140141
case 3:
@@ -143,6 +144,9 @@ public void reportDisconnect(int reason) {
143144
case 4:
144145
setDisconnected(new DisconnectCause(DisconnectCause.ANSWERED_ELSEWHERE));
145146
break;
147+
case 6:
148+
setDisconnected(new DisconnectCause(DisconnectCause.MISSED));
149+
break;
146150
default:
147151
break;
148152
}

index.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ const CONSTANTS = {
1212
REMOTE_ENDED: 2,
1313
UNANSWERED: 3,
1414
ANSWERED_ELSEWHERE: 4,
15-
DECLINED_ELSEWHERE: isIOS ? 5 : 2 // make declined elsewhere link to "Remote ended" on android because that's kinda true
16-
}
15+
DECLINED_ELSEWHERE: isIOS ? 5 : 2, // make declined elsewhere link to "Remote ended" on android because that's kinda true
16+
MISSED: isIOS ? 2 : 6 }
1717
};
1818

1919
export { CONSTANTS };

ios/RNCallKeep/RNCallKeep.m

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -236,19 +236,20 @@ + (void)initCallKitProvider {
236236
#endif
237237
NSUUID *uuid = [[NSUUID alloc] initWithUUIDString:uuidString];
238238
switch (reason) {
239-
case CXCallEndedReasonFailed:
239+
case 1:
240240
[self.callKeepProvider reportCallWithUUID:uuid endedAtDate:[NSDate date] reason:CXCallEndedReasonFailed];
241241
break;
242-
case CXCallEndedReasonRemoteEnded:
242+
case 2:
243+
case 6:
243244
[self.callKeepProvider reportCallWithUUID:uuid endedAtDate:[NSDate date] reason:CXCallEndedReasonRemoteEnded];
244245
break;
245-
case CXCallEndedReasonUnanswered:
246+
case 3:
246247
[self.callKeepProvider reportCallWithUUID:uuid endedAtDate:[NSDate date] reason:CXCallEndedReasonUnanswered];
247248
break;
248-
case CXCallEndedReasonAnsweredElsewhere:
249+
case 4:
249250
[self.callKeepProvider reportCallWithUUID:uuid endedAtDate:[NSDate date] reason:CXCallEndedReasonAnsweredElsewhere];
250251
break;
251-
case CXCallEndedReasonDeclinedElsewhere:
252+
case 5:
252253
[self.callKeepProvider reportCallWithUUID:uuid endedAtDate:[NSDate date] reason:CXCallEndedReasonDeclinedElsewhere];
253254
break;
254255
default:

0 commit comments

Comments
 (0)