react-native-altibbi 0.1.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.
Files changed (150) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +190 -0
  3. package/android/build.gradle +104 -0
  4. package/android/gradle.properties +5 -0
  5. package/android/src/main/AndroidManifest.xml +3 -0
  6. package/android/src/main/AndroidManifestNew.xml +2 -0
  7. package/android/src/main/java/com/altibbi/AltibbiModule.kt +18 -0
  8. package/android/src/main/java/com/altibbi/AltibbiPackage.kt +18 -0
  9. package/android/src/main/java/com/altibbi/OTCustomAudioDevice.java +1146 -0
  10. package/android/src/main/java/com/altibbi/OTPublisherLayout.java +61 -0
  11. package/android/src/main/java/com/altibbi/OTPublisherViewManager.java +30 -0
  12. package/android/src/main/java/com/altibbi/OTRN.java +101 -0
  13. package/android/src/main/java/com/altibbi/OTScreenCapturer.java +120 -0
  14. package/android/src/main/java/com/altibbi/OTSessionManager.java +1281 -0
  15. package/android/src/main/java/com/altibbi/OTSubscriberLayout.java +68 -0
  16. package/android/src/main/java/com/altibbi/OTSubscriberViewManager.java +30 -0
  17. package/android/src/main/java/com/altibbi/Socket.kt +294 -0
  18. package/android/src/main/java/com/altibbi/SocketEventEmitter.kt +25 -0
  19. package/android/src/main/java/com/altibbi/utils/EventUtils.java +189 -0
  20. package/android/src/main/java/com/altibbi/utils/Utils.java +135 -0
  21. package/ios/Altibbi-Bridging-Header.h +6 -0
  22. package/ios/Altibbi.mm +10 -0
  23. package/ios/Altibbi.swift +4 -0
  24. package/ios/OTCustomAudioDriver.swift +696 -0
  25. package/ios/OTPublisher.m +16 -0
  26. package/ios/OTPublisherManager.swift +21 -0
  27. package/ios/OTPublisherView.swift +28 -0
  28. package/ios/OTRN.swift +27 -0
  29. package/ios/OTScreenCapture.h +27 -0
  30. package/ios/OTScreenCapture.m +171 -0
  31. package/ios/OTSessionManager.m +127 -0
  32. package/ios/OTSessionManager.swift +866 -0
  33. package/ios/OTSubscriber.m +15 -0
  34. package/ios/OTSubscriberManager.swift +21 -0
  35. package/ios/OTSubscriberView.swift +29 -0
  36. package/ios/OpenTokReactNative.h +13 -0
  37. package/ios/OpenTokReactNative.m +13 -0
  38. package/ios/SocketReactNative.m +38 -0
  39. package/ios/SocketReactNative.swift +276 -0
  40. package/ios/Utils/EventUtils.swift +143 -0
  41. package/ios/Utils/Utils.swift +126 -0
  42. package/lib/commonjs/connection.js +200 -0
  43. package/lib/commonjs/connection.js.map +1 -0
  44. package/lib/commonjs/data.js +12 -0
  45. package/lib/commonjs/data.js.map +1 -0
  46. package/lib/commonjs/index.js +275 -0
  47. package/lib/commonjs/index.js.map +1 -0
  48. package/lib/commonjs/scoket.js +245 -0
  49. package/lib/commonjs/scoket.js.map +1 -0
  50. package/lib/commonjs/service.js +21 -0
  51. package/lib/commonjs/service.js.map +1 -0
  52. package/lib/commonjs/types.js +2 -0
  53. package/lib/commonjs/types.js.map +1 -0
  54. package/lib/commonjs/video/OT.js +57 -0
  55. package/lib/commonjs/video/OT.js.map +1 -0
  56. package/lib/commonjs/video/OTError.js +17 -0
  57. package/lib/commonjs/video/OTError.js.map +1 -0
  58. package/lib/commonjs/video/OTPublisher.js +171 -0
  59. package/lib/commonjs/video/OTPublisher.js.map +1 -0
  60. package/lib/commonjs/video/OTSession.js +205 -0
  61. package/lib/commonjs/video/OTSession.js.map +1 -0
  62. package/lib/commonjs/video/OTSubscriber.js +185 -0
  63. package/lib/commonjs/video/OTSubscriber.js.map +1 -0
  64. package/lib/commonjs/video/contexts/OTContext.js +11 -0
  65. package/lib/commonjs/video/contexts/OTContext.js.map +1 -0
  66. package/lib/commonjs/video/helpers/OTHelper.js +92 -0
  67. package/lib/commonjs/video/helpers/OTHelper.js.map +1 -0
  68. package/lib/commonjs/video/helpers/OTPublisherHelper.js +117 -0
  69. package/lib/commonjs/video/helpers/OTPublisherHelper.js.map +1 -0
  70. package/lib/commonjs/video/helpers/OTSessionHelper.js +206 -0
  71. package/lib/commonjs/video/helpers/OTSessionHelper.js.map +1 -0
  72. package/lib/commonjs/video/helpers/OTSubscriberHelper.js +121 -0
  73. package/lib/commonjs/video/helpers/OTSubscriberHelper.js.map +1 -0
  74. package/lib/commonjs/video/index.js +42 -0
  75. package/lib/commonjs/video/index.js.map +1 -0
  76. package/lib/commonjs/video/views/OTPublisherView.js +26 -0
  77. package/lib/commonjs/video/views/OTPublisherView.js.map +1 -0
  78. package/lib/commonjs/video/views/OTSubscriberView.js +25 -0
  79. package/lib/commonjs/video/views/OTSubscriberView.js.map +1 -0
  80. package/lib/module/connection.js +180 -0
  81. package/lib/module/connection.js.map +1 -0
  82. package/lib/module/data.js +6 -0
  83. package/lib/module/data.js.map +1 -0
  84. package/lib/module/index.js +12 -0
  85. package/lib/module/index.js.map +1 -0
  86. package/lib/module/scoket.js +235 -0
  87. package/lib/module/scoket.js.map +1 -0
  88. package/lib/module/service.js +14 -0
  89. package/lib/module/service.js.map +1 -0
  90. package/lib/module/types.js +2 -0
  91. package/lib/module/types.js.map +1 -0
  92. package/lib/module/video/OT.js +49 -0
  93. package/lib/module/video/OT.js.map +1 -0
  94. package/lib/module/video/OTError.js +10 -0
  95. package/lib/module/video/OTError.js.map +1 -0
  96. package/lib/module/video/OTPublisher.js +162 -0
  97. package/lib/module/video/OTPublisher.js.map +1 -0
  98. package/lib/module/video/OTSession.js +195 -0
  99. package/lib/module/video/OTSession.js.map +1 -0
  100. package/lib/module/video/OTSubscriber.js +175 -0
  101. package/lib/module/video/OTSubscriber.js.map +1 -0
  102. package/lib/module/video/contexts/OTContext.js +4 -0
  103. package/lib/module/video/contexts/OTContext.js.map +1 -0
  104. package/lib/module/video/helpers/OTHelper.js +82 -0
  105. package/lib/module/video/helpers/OTHelper.js.map +1 -0
  106. package/lib/module/video/helpers/OTPublisherHelper.js +110 -0
  107. package/lib/module/video/helpers/OTPublisherHelper.js.map +1 -0
  108. package/lib/module/video/helpers/OTSessionHelper.js +195 -0
  109. package/lib/module/video/helpers/OTSessionHelper.js.map +1 -0
  110. package/lib/module/video/helpers/OTSubscriberHelper.js +112 -0
  111. package/lib/module/video/helpers/OTSubscriberHelper.js.map +1 -0
  112. package/lib/module/video/index.js +7 -0
  113. package/lib/module/video/index.js.map +1 -0
  114. package/lib/module/video/views/OTPublisherView.js +18 -0
  115. package/lib/module/video/views/OTPublisherView.js.map +1 -0
  116. package/lib/module/video/views/OTSubscriberView.js +17 -0
  117. package/lib/module/video/views/OTSubscriberView.js.map +1 -0
  118. package/lib/typescript/src/connection.d.ts +40 -0
  119. package/lib/typescript/src/connection.d.ts.map +1 -0
  120. package/lib/typescript/src/data.d.ts +7 -0
  121. package/lib/typescript/src/data.d.ts.map +1 -0
  122. package/lib/typescript/src/index.d.ts +12 -0
  123. package/lib/typescript/src/index.d.ts.map +1 -0
  124. package/lib/typescript/src/scoket.d.ts +100 -0
  125. package/lib/typescript/src/scoket.d.ts.map +1 -0
  126. package/lib/typescript/src/service.d.ts +9 -0
  127. package/lib/typescript/src/service.d.ts.map +1 -0
  128. package/lib/typescript/src/types.d.ts +22 -0
  129. package/lib/typescript/src/types.d.ts.map +1 -0
  130. package/package.json +178 -0
  131. package/react-native-altibbi.podspec +46 -0
  132. package/src/connection.ts +255 -0
  133. package/src/data.ts +21 -0
  134. package/src/index.tsx +80 -0
  135. package/src/scoket.ts +365 -0
  136. package/src/service.ts +20 -0
  137. package/src/types.ts +22 -0
  138. package/src/video/OT.js +65 -0
  139. package/src/video/OTError.js +14 -0
  140. package/src/video/OTPublisher.js +193 -0
  141. package/src/video/OTSession.js +168 -0
  142. package/src/video/OTSubscriber.js +148 -0
  143. package/src/video/contexts/OTContext.js +5 -0
  144. package/src/video/helpers/OTHelper.js +91 -0
  145. package/src/video/helpers/OTPublisherHelper.js +122 -0
  146. package/src/video/helpers/OTSessionHelper.js +233 -0
  147. package/src/video/helpers/OTSubscriberHelper.js +125 -0
  148. package/src/video/index.js +13 -0
  149. package/src/video/views/OTPublisherView.js +19 -0
  150. package/src/video/views/OTSubscriberView.js +18 -0
@@ -0,0 +1,135 @@
1
+ package com.altibbi.utils;
2
+
3
+ import com.facebook.react.bridge.ReadableArray;
4
+ import com.opentok.android.BaseVideoCapturer.VideoContentHint;
5
+ import com.opentok.android.OpentokError;
6
+ import com.opentok.android.Publisher;
7
+ import com.opentok.android.PublisherKit;
8
+ import com.opentok.android.PublisherKit.VideoTransformer;
9
+ import com.opentok.android.Session.Builder.IceServer;
10
+ import com.opentok.android.Session.Builder.IncludeServers;
11
+ import com.opentok.android.Session.Builder.TransportPolicy;
12
+ import com.opentok.android.Subscriber;
13
+ import com.opentok.android.SubscriberKit;
14
+ import com.altibbi.OTRN;
15
+
16
+ import java.util.ArrayList;
17
+ import java.util.List;
18
+ import java.util.Map;
19
+
20
+ public final class Utils {
21
+
22
+ public static boolean didConnectionFail(OpentokError errorCode) {
23
+
24
+ switch (errorCode.getErrorCode()) {
25
+ case ConnectionFailed:
26
+ return true;
27
+ case ConnectionRefused:
28
+ return true;
29
+ case ConnectionTimedOut:
30
+ return true;
31
+ default:
32
+ return false;
33
+ }
34
+ }
35
+
36
+ public static boolean contains(ArrayList array, String value) {
37
+
38
+ for (int i = 0; i < array.size(); i++) {
39
+ if (array.get(i).equals(value)) {
40
+ return true;
41
+ }
42
+ }
43
+ return false;
44
+ }
45
+
46
+ public static String getPublisherId(PublisherKit publisherKit) {
47
+
48
+ Map<String, Publisher> publishers = OTRN.sharedState.getPublishers();
49
+ for (Map.Entry<String, Publisher> entry: publishers.entrySet()) {
50
+ Publisher mPublisher = entry.getValue();
51
+ if (mPublisher.equals(publisherKit)) {
52
+ return entry.getKey();
53
+ }
54
+ }
55
+ return "";
56
+ }
57
+
58
+ public static String getStreamIdBySubscriber(SubscriberKit subscriberKit) {
59
+
60
+ Map<String, Subscriber> subscribers = OTRN.sharedState.getSubscribers();
61
+ for (Map.Entry<String, Subscriber> entry: subscribers.entrySet()) {
62
+ Subscriber mSubcriber = entry.getValue();
63
+ if (mSubcriber.equals(subscriberKit)) {
64
+ return entry.getKey();
65
+ }
66
+ }
67
+ return "";
68
+ }
69
+
70
+ public static IncludeServers sanitizeIncludeServer(String value) {
71
+ IncludeServers includeServers = IncludeServers.All;
72
+ if (value != null && value.equals("custom")) {
73
+ includeServers = IncludeServers.Custom;
74
+ }
75
+ return includeServers;
76
+ }
77
+
78
+ public static TransportPolicy sanitizeTransportPolicy(String value) {
79
+ TransportPolicy transportPolicy = TransportPolicy.All;
80
+ if (value != null && value.equals("relay")) {
81
+ transportPolicy = TransportPolicy.Relay;
82
+ }
83
+ return transportPolicy;
84
+ }
85
+
86
+ public static List<IceServer> sanitizeIceServer(ReadableArray serverList) {
87
+ List<IceServer> iceServers = new ArrayList<>();
88
+ if (serverList != null) {
89
+ for (int i = 0; i < serverList.size(); i++) {
90
+ for (int j = 0; j < serverList.getMap(i).getArray("urls").size(); j++) {
91
+ iceServers.add(new IceServer(
92
+ serverList.getMap(i).getArray("urls").getString(j),
93
+ serverList.getMap(i).getString("username"),
94
+ serverList.getMap(i).getString("credential")
95
+
96
+ ));
97
+ }
98
+ }
99
+ }
100
+ return iceServers;
101
+ }
102
+
103
+ public static ArrayList<VideoTransformer> sanitizeVideoTransformerList(PublisherKit publisher, ReadableArray transformerList) {
104
+ ArrayList<VideoTransformer> nativeVideoTransformers = new ArrayList<>();
105
+ if (transformerList != null) {
106
+ for (int i = 0; i < transformerList.size(); i++) {
107
+ String transformerName = transformerList.getMap(i).getString("name");
108
+ if (transformerName == "BackgroundReplacement" ) {
109
+ // Only implemented in iOS -- ignore in Androd for now.
110
+ continue;
111
+ }
112
+ VideoTransformer transformer = publisher.new VideoTransformer(
113
+ transformerName,
114
+ transformerList.getMap(i).getString("properties")
115
+ );
116
+ nativeVideoTransformers.add(transformer);
117
+ }
118
+ }
119
+ return nativeVideoTransformers;
120
+ }
121
+
122
+ public static VideoContentHint convertVideoContentHint(String videoContentHint) {
123
+
124
+ switch (videoContentHint) {
125
+ case "motion":
126
+ return VideoContentHint.MOTION;
127
+ case "detail":
128
+ return VideoContentHint.DETAIL;
129
+ case "text":
130
+ return VideoContentHint.TEXT;
131
+ default:
132
+ return VideoContentHint.NONE;
133
+ }
134
+ }
135
+ }
@@ -0,0 +1,6 @@
1
+ #import <React/RCTBridgeModule.h>
2
+ #import <React/RCTViewManager.h>
3
+ #import <React/RCTEventEmitter.h>
4
+ #import <React/RCTEventEmitter.h>
5
+ #import <OpenTok/OpenTok.h>
6
+ #import "OTScreenCapture.h"
package/ios/Altibbi.mm ADDED
@@ -0,0 +1,10 @@
1
+ #import <React/RCTBridgeModule.h>
2
+
3
+ @interface RCT_EXTERN_MODULE(Altibbi, NSObject)
4
+
5
+ + (BOOL)requiresMainQueueSetup
6
+ {
7
+ return NO;
8
+ }
9
+
10
+ @end
@@ -0,0 +1,4 @@
1
+ @objc(Altibbi)
2
+ class Altibbi: NSObject {
3
+
4
+ }