@telnyx/react-voice-commons-sdk 0.1.2 → 0.1.3
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/CHANGELOG.md +42 -0
- package/TelnyxVoiceCommons.podspec +31 -31
- package/ios/CallKitBridge.m +43 -43
- package/ios/CallKitBridge.swift +874 -879
- package/ios/VoicePnBridge.m +30 -30
- package/ios/VoicePnBridge.swift +86 -86
- package/lib/callkit/callkit-coordinator.d.ts +110 -117
- package/lib/callkit/callkit-coordinator.js +664 -727
- package/lib/callkit/callkit.d.ts +41 -41
- package/lib/callkit/callkit.js +252 -242
- package/lib/callkit/index.js +15 -47
- package/lib/callkit/use-callkit.d.ts +19 -19
- package/lib/callkit/use-callkit.js +270 -310
- package/lib/context/TelnyxVoiceContext.d.ts +9 -9
- package/lib/context/TelnyxVoiceContext.js +10 -13
- package/lib/hooks/use-callkit-coordinator.d.ts +9 -17
- package/lib/hooks/use-callkit-coordinator.js +45 -50
- package/lib/hooks/useAppReadyNotifier.js +13 -15
- package/lib/hooks/useAppStateHandler.d.ts +6 -11
- package/lib/hooks/useAppStateHandler.js +95 -110
- package/lib/hooks/useNetworkStateHandler.d.ts +0 -0
- package/lib/hooks/useNetworkStateHandler.js +0 -0
- package/lib/index.d.ts +3 -21
- package/lib/index.js +50 -201
- package/lib/internal/CallKitHandler.d.ts +6 -6
- package/lib/internal/CallKitHandler.js +96 -104
- package/lib/internal/callkit-manager.d.ts +57 -57
- package/lib/internal/callkit-manager.js +299 -316
- package/lib/internal/calls/call-state-controller.d.ts +73 -86
- package/lib/internal/calls/call-state-controller.js +263 -307
- package/lib/internal/session/session-manager.d.ts +71 -75
- package/lib/internal/session/session-manager.js +360 -424
- package/lib/internal/user-defaults-helpers.js +49 -39
- package/lib/internal/voice-pn-bridge.d.ts +114 -12
- package/lib/internal/voice-pn-bridge.js +212 -5
- package/lib/models/call-state.d.ts +46 -44
- package/lib/models/call-state.js +70 -68
- package/lib/models/call.d.ts +161 -133
- package/lib/models/call.js +454 -382
- package/lib/models/config.d.ts +11 -18
- package/lib/models/config.js +37 -35
- package/lib/models/connection-state.d.ts +10 -10
- package/lib/models/connection-state.js +16 -16
- package/lib/telnyx-voice-app.d.ts +28 -28
- package/lib/telnyx-voice-app.js +463 -481
- package/lib/telnyx-voip-client.d.ts +167 -167
- package/lib/telnyx-voip-client.js +385 -390
- package/package.json +11 -4
- package/src/callkit/callkit-coordinator.ts +18 -34
- package/src/hooks/useNetworkStateHandler.ts +0 -0
- package/src/internal/calls/call-state-controller.ts +81 -58
- package/src/internal/session/session-manager.ts +42 -26
- package/src/internal/voice-pn-bridge.ts +250 -2
- package/src/models/call-state.ts +8 -1
- package/src/models/call.ts +119 -5
- package/src/telnyx-voice-app.tsx +87 -40
- package/src/telnyx-voip-client.ts +15 -3
- package/src/types/telnyx-sdk.d.ts +16 -2
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# CHANGELOG.md
|
|
2
|
+
|
|
3
|
+
## [0.1.2](https://github.com/team-telnyx/react-native-voice-commons/releases/tag/0.1.2) (2025-11-04)
|
|
4
|
+
|
|
5
|
+
### Enhancement
|
|
6
|
+
|
|
7
|
+
• Comprehensive package README with integration examples
|
|
8
|
+
• Documentation for credential-based and token-based authentication
|
|
9
|
+
• Native integration guides for Android (MainActivity) and iOS (AppDelegate)
|
|
10
|
+
• Examples for push notification setup
|
|
11
|
+
• Troubleshooting section
|
|
12
|
+
|
|
13
|
+
### Bug Fixing
|
|
14
|
+
|
|
15
|
+
• Package metadata and npm publishing configuration
|
|
16
|
+
|
|
17
|
+
## [0.1.1](https://github.com/team-telnyx/react-native-voice-commons/releases/tag/0.1.1) (2025-11-02)
|
|
18
|
+
|
|
19
|
+
### Enhancement
|
|
20
|
+
|
|
21
|
+
• Initial npm package release
|
|
22
|
+
• Core VoIP client (`TelnyxVoipClient`)
|
|
23
|
+
• TelnyxVoiceApp component for React Native lifecycle management
|
|
24
|
+
• CallKit integration for iOS native call UI
|
|
25
|
+
• Android ConnectionService support
|
|
26
|
+
• Push notification handling (FCM for Android, APNs for iOS)
|
|
27
|
+
• Reactive state streams with RxJS
|
|
28
|
+
• Call management APIs (make, answer, hold, mute, transfer, hangup)
|
|
29
|
+
• Connection state management
|
|
30
|
+
• Call state machine
|
|
31
|
+
• Automatic reconnection logic
|
|
32
|
+
• Session management
|
|
33
|
+
• TypeScript type definitions
|
|
34
|
+
|
|
35
|
+
## [0.1.0](https://github.com/team-telnyx/react-native-voice-commons/releases/tag/0.1.0) (2025-11-01)
|
|
36
|
+
|
|
37
|
+
### Enhancement
|
|
38
|
+
|
|
39
|
+
• Initial development version
|
|
40
|
+
• Basic VoIP functionality
|
|
41
|
+
• Call management
|
|
42
|
+
• State management interfaces
|
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
require 'json'
|
|
2
|
-
|
|
3
|
-
package = JSON.parse(File.read(File.join(__dir__, 'package.json')))
|
|
4
|
-
|
|
5
|
-
Pod::Spec.new do |s|
|
|
6
|
-
s.name = 'TelnyxVoiceCommons'
|
|
7
|
-
s.version = package['version']
|
|
8
|
-
s.summary = package['description']
|
|
9
|
-
s.description = package['description']
|
|
10
|
-
s.homepage = package['homepage']
|
|
11
|
-
s.license = package['license']
|
|
12
|
-
s.platforms = { :ios => '13.0' }
|
|
13
|
-
s.swift_version = '5.4'
|
|
14
|
-
s.author = package['author']
|
|
15
|
-
s.source = { :git => package['repository']['url'], :tag => "#{s.version}" }
|
|
16
|
-
|
|
17
|
-
s.source_files = "ios/**/*.{h,m,swift}"
|
|
18
|
-
s.requires_arc = true
|
|
19
|
-
|
|
20
|
-
# Dependencies
|
|
21
|
-
s.dependency 'React'
|
|
22
|
-
s.dependency 'React-Core'
|
|
23
|
-
|
|
24
|
-
# WebRTC Framework dependency
|
|
25
|
-
s.dependency 'JitsiWebRTC', '~> 124.0.0'
|
|
26
|
-
|
|
27
|
-
# iOS Frameworks
|
|
28
|
-
s.frameworks = 'CallKit', 'PushKit', 'AVFoundation'
|
|
29
|
-
|
|
30
|
-
# Compiler flags for Swift
|
|
31
|
-
s.compiler_flags = '-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1'
|
|
1
|
+
require 'json'
|
|
2
|
+
|
|
3
|
+
package = JSON.parse(File.read(File.join(__dir__, 'package.json')))
|
|
4
|
+
|
|
5
|
+
Pod::Spec.new do |s|
|
|
6
|
+
s.name = 'TelnyxVoiceCommons'
|
|
7
|
+
s.version = package['version']
|
|
8
|
+
s.summary = package['description']
|
|
9
|
+
s.description = package['description']
|
|
10
|
+
s.homepage = package['homepage']
|
|
11
|
+
s.license = package['license']
|
|
12
|
+
s.platforms = { :ios => '13.0' }
|
|
13
|
+
s.swift_version = '5.4'
|
|
14
|
+
s.author = package['author']
|
|
15
|
+
s.source = { :git => package['repository']['url'], :tag => "#{s.version}" }
|
|
16
|
+
|
|
17
|
+
s.source_files = "ios/**/*.{h,m,swift}"
|
|
18
|
+
s.requires_arc = true
|
|
19
|
+
|
|
20
|
+
# Dependencies
|
|
21
|
+
s.dependency 'React'
|
|
22
|
+
s.dependency 'React-Core'
|
|
23
|
+
|
|
24
|
+
# WebRTC Framework dependency
|
|
25
|
+
s.dependency 'JitsiWebRTC', '~> 124.0.0'
|
|
26
|
+
|
|
27
|
+
# iOS Frameworks
|
|
28
|
+
s.frameworks = 'CallKit', 'PushKit', 'AVFoundation'
|
|
29
|
+
|
|
30
|
+
# Compiler flags for Swift
|
|
31
|
+
s.compiler_flags = '-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1'
|
|
32
32
|
end
|
package/ios/CallKitBridge.m
CHANGED
|
@@ -1,44 +1,44 @@
|
|
|
1
|
-
#import <React/RCTBridgeModule.h>
|
|
2
|
-
#import <React/RCTEventEmitter.h>
|
|
3
|
-
|
|
4
|
-
@interface RCT_EXTERN_MODULE(CallKitBridge, RCTEventEmitter)
|
|
5
|
-
|
|
6
|
-
RCT_EXTERN_METHOD(startOutgoingCall:(NSString *)callUUID
|
|
7
|
-
handle:(NSString *)handle
|
|
8
|
-
displayName:(NSString *)displayName
|
|
9
|
-
resolver:(RCTPromiseResolveBlock)resolve
|
|
10
|
-
rejecter:(RCTPromiseRejectBlock)reject)
|
|
11
|
-
|
|
12
|
-
RCT_EXTERN_METHOD(reportIncomingCall:(NSString *)callUUID
|
|
13
|
-
handle:(NSString *)handle
|
|
14
|
-
displayName:(NSString *)displayName
|
|
15
|
-
resolver:(RCTPromiseResolveBlock)resolve
|
|
16
|
-
rejecter:(RCTPromiseRejectBlock)reject)
|
|
17
|
-
|
|
18
|
-
RCT_EXTERN_METHOD(answerCall:(NSString *)callUUID
|
|
19
|
-
resolver:(RCTPromiseResolveBlock)resolve
|
|
20
|
-
rejecter:(RCTPromiseRejectBlock)reject)
|
|
21
|
-
|
|
22
|
-
RCT_EXTERN_METHOD(endCall:(NSString *)callUUID
|
|
23
|
-
resolver:(RCTPromiseResolveBlock)resolve
|
|
24
|
-
rejecter:(RCTPromiseRejectBlock)reject)
|
|
25
|
-
|
|
26
|
-
RCT_EXTERN_METHOD(reportCallConnected:(NSString *)callUUID
|
|
27
|
-
resolver:(RCTPromiseResolveBlock)resolve
|
|
28
|
-
rejecter:(RCTPromiseRejectBlock)reject)
|
|
29
|
-
|
|
30
|
-
RCT_EXTERN_METHOD(reportCallEnded:(NSString *)callUUID
|
|
31
|
-
reason:(NSNumber *)reason
|
|
32
|
-
resolver:(RCTPromiseResolveBlock)resolve
|
|
33
|
-
rejecter:(RCTPromiseRejectBlock)reject)
|
|
34
|
-
|
|
35
|
-
RCT_EXTERN_METHOD(updateCall:(NSString *)callUUID
|
|
36
|
-
displayName:(NSString *)displayName
|
|
37
|
-
handle:(NSString *)handle
|
|
38
|
-
resolver:(RCTPromiseResolveBlock)resolve
|
|
39
|
-
rejecter:(RCTPromiseRejectBlock)reject)
|
|
40
|
-
|
|
41
|
-
RCT_EXTERN_METHOD(getActiveCalls:(RCTPromiseResolveBlock)resolve
|
|
42
|
-
rejecter:(RCTPromiseRejectBlock)reject)
|
|
43
|
-
|
|
1
|
+
#import <React/RCTBridgeModule.h>
|
|
2
|
+
#import <React/RCTEventEmitter.h>
|
|
3
|
+
|
|
4
|
+
@interface RCT_EXTERN_MODULE(CallKitBridge, RCTEventEmitter)
|
|
5
|
+
|
|
6
|
+
RCT_EXTERN_METHOD(startOutgoingCall:(NSString *)callUUID
|
|
7
|
+
handle:(NSString *)handle
|
|
8
|
+
displayName:(NSString *)displayName
|
|
9
|
+
resolver:(RCTPromiseResolveBlock)resolve
|
|
10
|
+
rejecter:(RCTPromiseRejectBlock)reject)
|
|
11
|
+
|
|
12
|
+
RCT_EXTERN_METHOD(reportIncomingCall:(NSString *)callUUID
|
|
13
|
+
handle:(NSString *)handle
|
|
14
|
+
displayName:(NSString *)displayName
|
|
15
|
+
resolver:(RCTPromiseResolveBlock)resolve
|
|
16
|
+
rejecter:(RCTPromiseRejectBlock)reject)
|
|
17
|
+
|
|
18
|
+
RCT_EXTERN_METHOD(answerCall:(NSString *)callUUID
|
|
19
|
+
resolver:(RCTPromiseResolveBlock)resolve
|
|
20
|
+
rejecter:(RCTPromiseRejectBlock)reject)
|
|
21
|
+
|
|
22
|
+
RCT_EXTERN_METHOD(endCall:(NSString *)callUUID
|
|
23
|
+
resolver:(RCTPromiseResolveBlock)resolve
|
|
24
|
+
rejecter:(RCTPromiseRejectBlock)reject)
|
|
25
|
+
|
|
26
|
+
RCT_EXTERN_METHOD(reportCallConnected:(NSString *)callUUID
|
|
27
|
+
resolver:(RCTPromiseResolveBlock)resolve
|
|
28
|
+
rejecter:(RCTPromiseRejectBlock)reject)
|
|
29
|
+
|
|
30
|
+
RCT_EXTERN_METHOD(reportCallEnded:(NSString *)callUUID
|
|
31
|
+
reason:(NSNumber *)reason
|
|
32
|
+
resolver:(RCTPromiseResolveBlock)resolve
|
|
33
|
+
rejecter:(RCTPromiseRejectBlock)reject)
|
|
34
|
+
|
|
35
|
+
RCT_EXTERN_METHOD(updateCall:(NSString *)callUUID
|
|
36
|
+
displayName:(NSString *)displayName
|
|
37
|
+
handle:(NSString *)handle
|
|
38
|
+
resolver:(RCTPromiseResolveBlock)resolve
|
|
39
|
+
rejecter:(RCTPromiseRejectBlock)reject)
|
|
40
|
+
|
|
41
|
+
RCT_EXTERN_METHOD(getActiveCalls:(RCTPromiseResolveBlock)resolve
|
|
42
|
+
rejecter:(RCTPromiseRejectBlock)reject)
|
|
43
|
+
|
|
44
44
|
@end
|