@techsee/techsee-media-service 2.0.0 → 3.0.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 (45) hide show
  1. package/lib/MediaConstants.d.ts +4 -0
  2. package/lib/MediaConstants.d.ts.map +1 -1
  3. package/lib/MediaConstants.js +8 -1
  4. package/lib/MediaConstants.js.map +1 -1
  5. package/lib/MediaUtils/index.d.ts +1 -0
  6. package/lib/MediaUtils/index.d.ts.map +1 -0
  7. package/lib/MediaUtils/index.js +16 -0
  8. package/lib/MediaUtils/index.js.map +1 -0
  9. package/lib/MultiParty/Contracts.d.ts +3 -2
  10. package/lib/MultiParty/Contracts.d.ts.map +1 -1
  11. package/lib/MultiParty/{MediaCapabilitiesHelper.d.ts → MediaCapabilitiesService.d.ts} +3 -3
  12. package/lib/MultiParty/MediaCapabilitiesService.d.ts.map +1 -0
  13. package/lib/MultiParty/{MediaCapabilitiesHelper.js → MediaCapabilitiesService.js} +70 -109
  14. package/lib/MultiParty/MediaCapabilitiesService.js.map +1 -0
  15. package/lib/MultiParty/MediaCapabilitiesUtils.d.ts +5 -0
  16. package/lib/MultiParty/MediaCapabilitiesUtils.d.ts.map +1 -0
  17. package/lib/MultiParty/MediaCapabilitiesUtils.js +305 -0
  18. package/lib/MultiParty/MediaCapabilitiesUtils.js.map +1 -0
  19. package/lib/MultiParty/{MultiParty.d.ts → MultiPartyService.d.ts} +4 -15
  20. package/lib/MultiParty/MultiPartyService.d.ts.map +1 -0
  21. package/lib/MultiParty/{MultiParty.js → MultiPartyService.js} +9 -192
  22. package/lib/MultiParty/MultiPartyService.js.map +1 -0
  23. package/lib/MultiParty/MultiPartyServiceFactory.d.ts +4 -0
  24. package/lib/MultiParty/MultiPartyServiceFactory.d.ts.map +1 -0
  25. package/lib/MultiParty/MultiPartyServiceFactory.js +21 -0
  26. package/lib/MultiParty/MultiPartyServiceFactory.js.map +1 -0
  27. package/lib/MultiParty/{OpentokMultiparty.d.ts → OpentokMultiPartyService.d.ts} +4 -8
  28. package/lib/MultiParty/OpentokMultiPartyService.d.ts.map +1 -0
  29. package/lib/MultiParty/{OpentokMultiparty.js → OpentokMultiPartyService.js} +240 -266
  30. package/lib/MultiParty/OpentokMultiPartyService.js.map +1 -0
  31. package/lib/MultiParty/index.d.ts +3 -0
  32. package/lib/MultiParty/index.d.ts.map +1 -0
  33. package/lib/MultiParty/index.js +52 -0
  34. package/lib/MultiParty/index.js.map +1 -0
  35. package/package.json +2 -2
  36. package/lib/MultiParty/MediaCapabilitiesHelper.d.ts.map +0 -1
  37. package/lib/MultiParty/MediaCapabilitiesHelper.js.map +0 -1
  38. package/lib/MultiParty/MultiParty.d.ts.map +0 -1
  39. package/lib/MultiParty/MultiParty.js.map +0 -1
  40. package/lib/MultiParty/MultipartyFactory.d.ts +0 -4
  41. package/lib/MultiParty/MultipartyFactory.d.ts.map +0 -1
  42. package/lib/MultiParty/MultipartyFactory.js +0 -21
  43. package/lib/MultiParty/MultipartyFactory.js.map +0 -1
  44. package/lib/MultiParty/OpentokMultiparty.d.ts.map +0 -1
  45. package/lib/MultiParty/OpentokMultiparty.js.map +0 -1
@@ -13,6 +13,10 @@ export declare enum CameraTypes {
13
13
  BACK = "back",
14
14
  NONE = "none"
15
15
  }
16
+ export declare enum MultiPartyCameraTypes {
17
+ FRONT = "front",
18
+ BACK = "back"
19
+ }
16
20
  export declare enum MediaServiceType {
17
21
  OPENTOK = "OPENTOK",
18
22
  TURNSERVER = "TURN_SERVER",
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/MediaConstants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,qBAAqB,EAAC,MAAM,kBAAkB,CAAC;AAEvD,oBAAY,oBAAoB;IAC5B,MAAM,WAAW;IACjB,YAAY,iBAAiB;IAC7B,aAAa,kBAAkB;CAClC;AAED,oBAAY,cAAc;IACtB,GAAG,QAAQ;IACX,KAAK,UAAU;CAClB;AAED,oBAAY,WAAW;IACnB,KAAK,UAAU;IACf,IAAI,SAAS;IACb,IAAI,SAAS;CAChB;AAED,oBAAY,gBAAgB;IACxB,OAAO,YAAY;IACnB,UAAU,gBAAgB;IAC1B,WAAW,iBAAiB;CAC/B;AAED,oBAAY,iBAAiB;IACzB,KAAK,UAAU;IACf,QAAQ,aAAa;IACrB,IAAI,SAAS;CAChB;AAED,oBAAY,iBAAiB;IACzB,SAAS,cAAc;IACvB,KAAK,eAAe;CACvB;AAED,oBAAY,qBAAqB;IAC7B,eAAe,oBAAoB;IACnC,gBAAgB,qBAAqB;IACrC,YAAY,iBAAiB;CAChC;AAED,oBAAY,oBAAoB;IAC5B,KAAK,UAAU;IACf,KAAK,UAAU;CAClB;AAED,oBAAY,gBAAgB;IACxB,kBAAkB,2BAA2B;IAC7C,qBAAqB,0BAA0B;IAC/C,iBAAiB,+BAA+B;IAChD,iBAAiB,+BAA+B;IAChD,wBAAwB,6BAA6B;CACxD;AAED,oBAAY,4BAA4B;IAEpC,gBAAgB,qBAAqB;IACrC,yBAAyB,8BAA8B;IACvD,gCAAgC,qCAAqC;IACrE,wBAAwB,6BAA6B;IACrD,wBAAwB,6BAA6B;IACrD,gBAAgB,qBAAqB;IACrC,0BAA0B,+BAA+B;CAC5D;AAED,oBAAY,2BAA2B;IACnC,WAAW,gBAAgB;IAC3B,eAAe,oBAAoB;IACnC,cAAc,mBAAmB;IACjC,cAAc,mBAAmB;CACpC;AAED,eAAO,MAAM,wBAAwB,YAAY,CAAC;AAClD,eAAO,MAAM,6BAA6B,uBAAuB,CAAC;AAClE,eAAO,MAAM,yCAAyC,KAAK,CAAC;AAC5D,eAAO,MAAM,kCAAkC,KAAK,CAAC;AAErD,eAAO,MAAM,yBAAyB,EAAE,qBAGvC,CAAC;AAEF,eAAO,MAAM,6BAA6B,EAAE,qBAAqB,EAIhE,CAAC","file":"MediaConstants.d.ts","sourcesContent":["import {VideoStreamResolution} from './MediaContracts';\n\nexport enum LocalVideoSourceType {\n CAMERA = 'CAMERA',\n CAMERA_FRONT = 'CAMERA_FRONT',\n DESKTOP_SHARE = 'DESKTOP_SHARE'\n}\n\nexport enum ConstraintType {\n MIN = 'min',\n IDEAL = 'ideal'\n}\n\nexport enum CameraTypes {\n FRONT = 'front',\n BACK = 'back',\n NONE = 'none'\n}\n\nexport enum MediaServiceType {\n OPENTOK = 'OPENTOK',\n TURNSERVER = 'TURN_SERVER',\n MEDIASERVER = 'MEDIA_SERVER'\n}\n\nexport enum SessionClientRole {\n AGENT = 'AGENT',\n OBSERVER = 'OBSERVER',\n USER = 'USER'\n}\n\nexport enum SessionClientType {\n INITIATOR = 'publisher',\n GUEST = 'subscriber'\n}\n\nexport enum MediaRequestErrorCode {\n Overconstrained = 'Overconstrained',\n PermissionDenied = 'PermissionDenied',\n GeneralError = 'GeneralError'\n}\n\nexport enum KnownMediaStreamKind {\n Audio = 'audio',\n Video = 'video'\n}\n\nexport enum KnownMediaStream {\n AGENT_AUDIO_STREAM = 'DASHBOARD_AUDIO_STREAM',\n OBSERVER_AUDIO_STREAM = 'OBSERVER_AUDIO_STREAM',\n USER_AUDIO_STREAM = 'MOBILE_CLIENT_AUDIO_STREAM',\n USER_VIDEO_STREAM = 'MOBILE_CLIENT_VIDEO_STREAM',\n USER_SCREEN_SHARE_STREAM = 'USER_SCREEN_SHARE_STREAM'\n}\n\nexport enum MediaSessionDisconnectReason {\n //Raised on initiator peer when guest peer was disconnected from signaling\n PeerDisconnected = 'PeerDisconnected',\n PeerConnectionInterrupted = 'PeerConnectionInterrupted',\n PeerConnectionStateChangeTimeout = 'PeerConnectionStateChangeTimeout',\n InitiatorPeerReconnected = 'InitiatorPeerReconnected',\n PublishedStreamDestroyed = 'PublishedStreamDestroyed',\n ForcedByConsumer = 'ForcedByConsumer',\n SignalingChannelDisconnect = 'SignalingChannelDisconnect'\n}\n\nexport enum MediaStreamUnregisterReason {\n NativeEvent = 'NativeEvent',\n ReplacingStream = 'ReplacingStream',\n ClosedRemotely = 'ClosedRemotely',\n ServiceCleanUp = 'ServiceCleanUp'\n}\n\nexport const DEFAULT_VIDEO_RESOLUTION = '640x480';\nexport const DEFAULT_VIDEO_CONSTRAINT_TYPE = ConstraintType.IDEAL;\nexport const DEFAULT_PEER_CONNECTIVITY_TIMEOUT_SECONDS = 10;\nexport const DEFAULT_VIDEO_WAIT_TIMEOUT_SECONDS = 30;\n\nexport const DEFAULT_VIDEO_CONSTRAINTS: VideoStreamResolution = {\n resolution: DEFAULT_VIDEO_RESOLUTION,\n constraintType: DEFAULT_VIDEO_CONSTRAINT_TYPE\n};\n\nexport const POSSIBLE_LOOPBACK_RESOLUTIONS: VideoStreamResolution[] = [\n {resolution: '1920x1080', constraintType: ConstraintType.MIN}, // FHD\n {resolution: '1280x720', constraintType: ConstraintType.MIN}, // HD\n DEFAULT_VIDEO_CONSTRAINTS // fallback\n];\n"]}
1
+ {"version":3,"sources":["../src/MediaConstants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,qBAAqB,EAAC,MAAM,kBAAkB,CAAC;AAEvD,oBAAY,oBAAoB;IAC5B,MAAM,WAAW;IACjB,YAAY,iBAAiB;IAC7B,aAAa,kBAAkB;CAClC;AAED,oBAAY,cAAc;IACtB,GAAG,QAAQ;IACX,KAAK,UAAU;CAClB;AAED,oBAAY,WAAW;IACnB,KAAK,UAAU;IACf,IAAI,SAAS;IACb,IAAI,SAAS;CAChB;AAED,oBAAY,qBAAqB;IAC7B,KAAK,UAAoB;IACzB,IAAI,SAAmB;CAC1B;AAED,oBAAY,gBAAgB;IACxB,OAAO,YAAY;IACnB,UAAU,gBAAgB;IAC1B,WAAW,iBAAiB;CAC/B;AAED,oBAAY,iBAAiB;IACzB,KAAK,UAAU;IACf,QAAQ,aAAa;IACrB,IAAI,SAAS;CAChB;AAED,oBAAY,iBAAiB;IACzB,SAAS,cAAc;IACvB,KAAK,eAAe;CACvB;AAED,oBAAY,qBAAqB;IAC7B,eAAe,oBAAoB;IACnC,gBAAgB,qBAAqB;IACrC,YAAY,iBAAiB;CAChC;AAED,oBAAY,oBAAoB;IAC5B,KAAK,UAAU;IACf,KAAK,UAAU;CAClB;AAED,oBAAY,gBAAgB;IACxB,kBAAkB,2BAA2B;IAC7C,qBAAqB,0BAA0B;IAC/C,iBAAiB,+BAA+B;IAChD,iBAAiB,+BAA+B;IAChD,wBAAwB,6BAA6B;CACxD;AAED,oBAAY,4BAA4B;IAEpC,gBAAgB,qBAAqB;IACrC,yBAAyB,8BAA8B;IACvD,gCAAgC,qCAAqC;IACrE,wBAAwB,6BAA6B;IACrD,wBAAwB,6BAA6B;IACrD,gBAAgB,qBAAqB;IACrC,0BAA0B,+BAA+B;CAC5D;AAED,oBAAY,2BAA2B;IACnC,WAAW,gBAAgB;IAC3B,eAAe,oBAAoB;IACnC,cAAc,mBAAmB;IACjC,cAAc,mBAAmB;CACpC;AAED,eAAO,MAAM,wBAAwB,YAAY,CAAC;AAClD,eAAO,MAAM,6BAA6B,uBAAuB,CAAC;AAClE,eAAO,MAAM,yCAAyC,KAAK,CAAC;AAC5D,eAAO,MAAM,kCAAkC,KAAK,CAAC;AAErD,eAAO,MAAM,yBAAyB,EAAE,qBAGvC,CAAC;AAEF,eAAO,MAAM,6BAA6B,EAAE,qBAAqB,EAIhE,CAAC","file":"MediaConstants.d.ts","sourcesContent":["import {VideoStreamResolution} from './MediaContracts';\n\nexport enum LocalVideoSourceType {\n CAMERA = 'CAMERA',\n CAMERA_FRONT = 'CAMERA_FRONT',\n DESKTOP_SHARE = 'DESKTOP_SHARE'\n}\n\nexport enum ConstraintType {\n MIN = 'min',\n IDEAL = 'ideal'\n}\n\nexport enum CameraTypes {\n FRONT = 'front',\n BACK = 'back',\n NONE = 'none'\n}\n\nexport enum MultiPartyCameraTypes {\n FRONT = CameraTypes.FRONT,\n BACK = CameraTypes.BACK\n}\n\nexport enum MediaServiceType {\n OPENTOK = 'OPENTOK',\n TURNSERVER = 'TURN_SERVER',\n MEDIASERVER = 'MEDIA_SERVER'\n}\n\nexport enum SessionClientRole {\n AGENT = 'AGENT',\n OBSERVER = 'OBSERVER',\n USER = 'USER'\n}\n\nexport enum SessionClientType {\n INITIATOR = 'publisher',\n GUEST = 'subscriber'\n}\n\nexport enum MediaRequestErrorCode {\n Overconstrained = 'Overconstrained',\n PermissionDenied = 'PermissionDenied',\n GeneralError = 'GeneralError'\n}\n\nexport enum KnownMediaStreamKind {\n Audio = 'audio',\n Video = 'video'\n}\n\nexport enum KnownMediaStream {\n AGENT_AUDIO_STREAM = 'DASHBOARD_AUDIO_STREAM',\n OBSERVER_AUDIO_STREAM = 'OBSERVER_AUDIO_STREAM',\n USER_AUDIO_STREAM = 'MOBILE_CLIENT_AUDIO_STREAM',\n USER_VIDEO_STREAM = 'MOBILE_CLIENT_VIDEO_STREAM',\n USER_SCREEN_SHARE_STREAM = 'USER_SCREEN_SHARE_STREAM'\n}\n\nexport enum MediaSessionDisconnectReason {\n //Raised on initiator peer when guest peer was disconnected from signaling\n PeerDisconnected = 'PeerDisconnected',\n PeerConnectionInterrupted = 'PeerConnectionInterrupted',\n PeerConnectionStateChangeTimeout = 'PeerConnectionStateChangeTimeout',\n InitiatorPeerReconnected = 'InitiatorPeerReconnected',\n PublishedStreamDestroyed = 'PublishedStreamDestroyed',\n ForcedByConsumer = 'ForcedByConsumer',\n SignalingChannelDisconnect = 'SignalingChannelDisconnect'\n}\n\nexport enum MediaStreamUnregisterReason {\n NativeEvent = 'NativeEvent',\n ReplacingStream = 'ReplacingStream',\n ClosedRemotely = 'ClosedRemotely',\n ServiceCleanUp = 'ServiceCleanUp'\n}\n\nexport const DEFAULT_VIDEO_RESOLUTION = '640x480';\nexport const DEFAULT_VIDEO_CONSTRAINT_TYPE = ConstraintType.IDEAL;\nexport const DEFAULT_PEER_CONNECTIVITY_TIMEOUT_SECONDS = 10;\nexport const DEFAULT_VIDEO_WAIT_TIMEOUT_SECONDS = 30;\n\nexport const DEFAULT_VIDEO_CONSTRAINTS: VideoStreamResolution = {\n resolution: DEFAULT_VIDEO_RESOLUTION,\n constraintType: DEFAULT_VIDEO_CONSTRAINT_TYPE\n};\n\nexport const POSSIBLE_LOOPBACK_RESOLUTIONS: VideoStreamResolution[] = [\n {resolution: '1920x1080', constraintType: ConstraintType.MIN}, // FHD\n {resolution: '1280x720', constraintType: ConstraintType.MIN}, // HD\n DEFAULT_VIDEO_CONSTRAINTS // fallback\n];\n"]}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.POSSIBLE_LOOPBACK_RESOLUTIONS = exports.DEFAULT_VIDEO_CONSTRAINTS = exports.DEFAULT_VIDEO_WAIT_TIMEOUT_SECONDS = exports.DEFAULT_PEER_CONNECTIVITY_TIMEOUT_SECONDS = exports.DEFAULT_VIDEO_CONSTRAINT_TYPE = exports.DEFAULT_VIDEO_RESOLUTION = exports.MediaStreamUnregisterReason = exports.MediaSessionDisconnectReason = exports.KnownMediaStream = exports.KnownMediaStreamKind = exports.MediaRequestErrorCode = exports.SessionClientType = exports.SessionClientRole = exports.MediaServiceType = exports.CameraTypes = exports.ConstraintType = exports.LocalVideoSourceType = void 0;
6
+ exports.POSSIBLE_LOOPBACK_RESOLUTIONS = exports.DEFAULT_VIDEO_CONSTRAINTS = exports.DEFAULT_VIDEO_WAIT_TIMEOUT_SECONDS = exports.DEFAULT_PEER_CONNECTIVITY_TIMEOUT_SECONDS = exports.DEFAULT_VIDEO_CONSTRAINT_TYPE = exports.DEFAULT_VIDEO_RESOLUTION = exports.MediaStreamUnregisterReason = exports.MediaSessionDisconnectReason = exports.KnownMediaStream = exports.KnownMediaStreamKind = exports.MediaRequestErrorCode = exports.SessionClientType = exports.SessionClientRole = exports.MediaServiceType = exports.MultiPartyCameraTypes = exports.CameraTypes = exports.ConstraintType = exports.LocalVideoSourceType = void 0;
7
7
  var LocalVideoSourceType;
8
8
 
9
9
  (function (LocalVideoSourceType) {
@@ -27,6 +27,13 @@ var CameraTypes;
27
27
  CameraTypes["NONE"] = "none";
28
28
  })(CameraTypes = exports.CameraTypes || (exports.CameraTypes = {}));
29
29
 
30
+ var MultiPartyCameraTypes;
31
+
32
+ (function (MultiPartyCameraTypes) {
33
+ MultiPartyCameraTypes["FRONT"] = "front";
34
+ MultiPartyCameraTypes["BACK"] = "back";
35
+ })(MultiPartyCameraTypes = exports.MultiPartyCameraTypes || (exports.MultiPartyCameraTypes = {}));
36
+
30
37
  var MediaServiceType;
31
38
 
32
39
  (function (MediaServiceType) {
@@ -1 +1 @@
1
- {"version":3,"sources":["MediaConstants.js","../src/MediaConstants.ts"],"names":["Object","defineProperty","exports","value","POSSIBLE_LOOPBACK_RESOLUTIONS","DEFAULT_VIDEO_CONSTRAINTS","DEFAULT_VIDEO_WAIT_TIMEOUT_SECONDS","DEFAULT_PEER_CONNECTIVITY_TIMEOUT_SECONDS","DEFAULT_VIDEO_CONSTRAINT_TYPE","DEFAULT_VIDEO_RESOLUTION","MediaStreamUnregisterReason","MediaSessionDisconnectReason","KnownMediaStream","KnownMediaStreamKind","MediaRequestErrorCode","SessionClientType","SessionClientRole","MediaServiceType","CameraTypes","ConstraintType","LocalVideoSourceType","IDEAL","resolution","constraintType","MIN"],"mappings":"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","file":"MediaConstants.js","sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.POSSIBLE_LOOPBACK_RESOLUTIONS = exports.DEFAULT_VIDEO_CONSTRAINTS = exports.DEFAULT_VIDEO_WAIT_TIMEOUT_SECONDS = exports.DEFAULT_PEER_CONNECTIVITY_TIMEOUT_SECONDS = exports.DEFAULT_VIDEO_CONSTRAINT_TYPE = exports.DEFAULT_VIDEO_RESOLUTION = exports.MediaStreamUnregisterReason = exports.MediaSessionDisconnectReason = exports.KnownMediaStream = exports.KnownMediaStreamKind = exports.MediaRequestErrorCode = exports.SessionClientType = exports.SessionClientRole = exports.MediaServiceType = exports.CameraTypes = exports.ConstraintType = exports.LocalVideoSourceType = void 0;\nvar LocalVideoSourceType;\n(function (LocalVideoSourceType) {\n LocalVideoSourceType[\"CAMERA\"] = \"CAMERA\";\n LocalVideoSourceType[\"CAMERA_FRONT\"] = \"CAMERA_FRONT\";\n LocalVideoSourceType[\"DESKTOP_SHARE\"] = \"DESKTOP_SHARE\";\n})(LocalVideoSourceType = exports.LocalVideoSourceType || (exports.LocalVideoSourceType = {}));\nvar ConstraintType;\n(function (ConstraintType) {\n ConstraintType[\"MIN\"] = \"min\";\n ConstraintType[\"IDEAL\"] = \"ideal\";\n})(ConstraintType = exports.ConstraintType || (exports.ConstraintType = {}));\nvar CameraTypes;\n(function (CameraTypes) {\n CameraTypes[\"FRONT\"] = \"front\";\n CameraTypes[\"BACK\"] = \"back\";\n CameraTypes[\"NONE\"] = \"none\";\n})(CameraTypes = exports.CameraTypes || (exports.CameraTypes = {}));\nvar MediaServiceType;\n(function (MediaServiceType) {\n MediaServiceType[\"OPENTOK\"] = \"OPENTOK\";\n MediaServiceType[\"TURNSERVER\"] = \"TURN_SERVER\";\n MediaServiceType[\"MEDIASERVER\"] = \"MEDIA_SERVER\";\n})(MediaServiceType = exports.MediaServiceType || (exports.MediaServiceType = {}));\nvar SessionClientRole;\n(function (SessionClientRole) {\n SessionClientRole[\"AGENT\"] = \"AGENT\";\n SessionClientRole[\"OBSERVER\"] = \"OBSERVER\";\n SessionClientRole[\"USER\"] = \"USER\";\n})(SessionClientRole = exports.SessionClientRole || (exports.SessionClientRole = {}));\nvar SessionClientType;\n(function (SessionClientType) {\n SessionClientType[\"INITIATOR\"] = \"publisher\";\n SessionClientType[\"GUEST\"] = \"subscriber\";\n})(SessionClientType = exports.SessionClientType || (exports.SessionClientType = {}));\nvar MediaRequestErrorCode;\n(function (MediaRequestErrorCode) {\n MediaRequestErrorCode[\"Overconstrained\"] = \"Overconstrained\";\n MediaRequestErrorCode[\"PermissionDenied\"] = \"PermissionDenied\";\n MediaRequestErrorCode[\"GeneralError\"] = \"GeneralError\";\n})(MediaRequestErrorCode = exports.MediaRequestErrorCode || (exports.MediaRequestErrorCode = {}));\nvar KnownMediaStreamKind;\n(function (KnownMediaStreamKind) {\n KnownMediaStreamKind[\"Audio\"] = \"audio\";\n KnownMediaStreamKind[\"Video\"] = \"video\";\n})(KnownMediaStreamKind = exports.KnownMediaStreamKind || (exports.KnownMediaStreamKind = {}));\nvar KnownMediaStream;\n(function (KnownMediaStream) {\n KnownMediaStream[\"AGENT_AUDIO_STREAM\"] = \"DASHBOARD_AUDIO_STREAM\";\n KnownMediaStream[\"OBSERVER_AUDIO_STREAM\"] = \"OBSERVER_AUDIO_STREAM\";\n KnownMediaStream[\"USER_AUDIO_STREAM\"] = \"MOBILE_CLIENT_AUDIO_STREAM\";\n KnownMediaStream[\"USER_VIDEO_STREAM\"] = \"MOBILE_CLIENT_VIDEO_STREAM\";\n KnownMediaStream[\"USER_SCREEN_SHARE_STREAM\"] = \"USER_SCREEN_SHARE_STREAM\";\n})(KnownMediaStream = exports.KnownMediaStream || (exports.KnownMediaStream = {}));\nvar MediaSessionDisconnectReason;\n(function (MediaSessionDisconnectReason) {\n //Raised on initiator peer when guest peer was disconnected from signaling\n MediaSessionDisconnectReason[\"PeerDisconnected\"] = \"PeerDisconnected\";\n MediaSessionDisconnectReason[\"PeerConnectionInterrupted\"] = \"PeerConnectionInterrupted\";\n MediaSessionDisconnectReason[\"PeerConnectionStateChangeTimeout\"] = \"PeerConnectionStateChangeTimeout\";\n MediaSessionDisconnectReason[\"InitiatorPeerReconnected\"] = \"InitiatorPeerReconnected\";\n MediaSessionDisconnectReason[\"PublishedStreamDestroyed\"] = \"PublishedStreamDestroyed\";\n MediaSessionDisconnectReason[\"ForcedByConsumer\"] = \"ForcedByConsumer\";\n MediaSessionDisconnectReason[\"SignalingChannelDisconnect\"] = \"SignalingChannelDisconnect\";\n})(MediaSessionDisconnectReason = exports.MediaSessionDisconnectReason || (exports.MediaSessionDisconnectReason = {}));\nvar MediaStreamUnregisterReason;\n(function (MediaStreamUnregisterReason) {\n MediaStreamUnregisterReason[\"NativeEvent\"] = \"NativeEvent\";\n MediaStreamUnregisterReason[\"ReplacingStream\"] = \"ReplacingStream\";\n MediaStreamUnregisterReason[\"ClosedRemotely\"] = \"ClosedRemotely\";\n MediaStreamUnregisterReason[\"ServiceCleanUp\"] = \"ServiceCleanUp\";\n})(MediaStreamUnregisterReason = exports.MediaStreamUnregisterReason || (exports.MediaStreamUnregisterReason = {}));\nexports.DEFAULT_VIDEO_RESOLUTION = '640x480';\nexports.DEFAULT_VIDEO_CONSTRAINT_TYPE = ConstraintType.IDEAL;\nexports.DEFAULT_PEER_CONNECTIVITY_TIMEOUT_SECONDS = 10;\nexports.DEFAULT_VIDEO_WAIT_TIMEOUT_SECONDS = 30;\nexports.DEFAULT_VIDEO_CONSTRAINTS = {\n resolution: exports.DEFAULT_VIDEO_RESOLUTION,\n constraintType: exports.DEFAULT_VIDEO_CONSTRAINT_TYPE\n};\nexports.POSSIBLE_LOOPBACK_RESOLUTIONS = [\n { resolution: '1920x1080', constraintType: ConstraintType.MIN },\n { resolution: '1280x720', constraintType: ConstraintType.MIN },\n exports.DEFAULT_VIDEO_CONSTRAINTS // fallback\n];\n\n//# sourceMappingURL=MediaConstants.js.map\n","import {VideoStreamResolution} from './MediaContracts';\n\nexport enum LocalVideoSourceType {\n CAMERA = 'CAMERA',\n CAMERA_FRONT = 'CAMERA_FRONT',\n DESKTOP_SHARE = 'DESKTOP_SHARE'\n}\n\nexport enum ConstraintType {\n MIN = 'min',\n IDEAL = 'ideal'\n}\n\nexport enum CameraTypes {\n FRONT = 'front',\n BACK = 'back',\n NONE = 'none'\n}\n\nexport enum MediaServiceType {\n OPENTOK = 'OPENTOK',\n TURNSERVER = 'TURN_SERVER',\n MEDIASERVER = 'MEDIA_SERVER'\n}\n\nexport enum SessionClientRole {\n AGENT = 'AGENT',\n OBSERVER = 'OBSERVER',\n USER = 'USER'\n}\n\nexport enum SessionClientType {\n INITIATOR = 'publisher',\n GUEST = 'subscriber'\n}\n\nexport enum MediaRequestErrorCode {\n Overconstrained = 'Overconstrained',\n PermissionDenied = 'PermissionDenied',\n GeneralError = 'GeneralError'\n}\n\nexport enum KnownMediaStreamKind {\n Audio = 'audio',\n Video = 'video'\n}\n\nexport enum KnownMediaStream {\n AGENT_AUDIO_STREAM = 'DASHBOARD_AUDIO_STREAM',\n OBSERVER_AUDIO_STREAM = 'OBSERVER_AUDIO_STREAM',\n USER_AUDIO_STREAM = 'MOBILE_CLIENT_AUDIO_STREAM',\n USER_VIDEO_STREAM = 'MOBILE_CLIENT_VIDEO_STREAM',\n USER_SCREEN_SHARE_STREAM = 'USER_SCREEN_SHARE_STREAM'\n}\n\nexport enum MediaSessionDisconnectReason {\n //Raised on initiator peer when guest peer was disconnected from signaling\n PeerDisconnected = 'PeerDisconnected',\n PeerConnectionInterrupted = 'PeerConnectionInterrupted',\n PeerConnectionStateChangeTimeout = 'PeerConnectionStateChangeTimeout',\n InitiatorPeerReconnected = 'InitiatorPeerReconnected',\n PublishedStreamDestroyed = 'PublishedStreamDestroyed',\n ForcedByConsumer = 'ForcedByConsumer',\n SignalingChannelDisconnect = 'SignalingChannelDisconnect'\n}\n\nexport enum MediaStreamUnregisterReason {\n NativeEvent = 'NativeEvent',\n ReplacingStream = 'ReplacingStream',\n ClosedRemotely = 'ClosedRemotely',\n ServiceCleanUp = 'ServiceCleanUp'\n}\n\nexport const DEFAULT_VIDEO_RESOLUTION = '640x480';\nexport const DEFAULT_VIDEO_CONSTRAINT_TYPE = ConstraintType.IDEAL;\nexport const DEFAULT_PEER_CONNECTIVITY_TIMEOUT_SECONDS = 10;\nexport const DEFAULT_VIDEO_WAIT_TIMEOUT_SECONDS = 30;\n\nexport const DEFAULT_VIDEO_CONSTRAINTS: VideoStreamResolution = {\n resolution: DEFAULT_VIDEO_RESOLUTION,\n constraintType: DEFAULT_VIDEO_CONSTRAINT_TYPE\n};\n\nexport const POSSIBLE_LOOPBACK_RESOLUTIONS: VideoStreamResolution[] = [\n {resolution: '1920x1080', constraintType: ConstraintType.MIN}, // FHD\n {resolution: '1280x720', constraintType: ConstraintType.MIN}, // HD\n DEFAULT_VIDEO_CONSTRAINTS // fallback\n];\n"]}
1
+ {"version":3,"sources":["MediaConstants.js","../src/MediaConstants.ts"],"names":["Object","defineProperty","exports","value","POSSIBLE_LOOPBACK_RESOLUTIONS","DEFAULT_VIDEO_CONSTRAINTS","DEFAULT_VIDEO_WAIT_TIMEOUT_SECONDS","DEFAULT_PEER_CONNECTIVITY_TIMEOUT_SECONDS","DEFAULT_VIDEO_CONSTRAINT_TYPE","DEFAULT_VIDEO_RESOLUTION","MediaStreamUnregisterReason","MediaSessionDisconnectReason","KnownMediaStream","KnownMediaStreamKind","MediaRequestErrorCode","SessionClientType","SessionClientRole","MediaServiceType","MultiPartyCameraTypes","CameraTypes","ConstraintType","LocalVideoSourceType","IDEAL","resolution","constraintType","MIN"],"mappings":"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","file":"MediaConstants.js","sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.POSSIBLE_LOOPBACK_RESOLUTIONS = exports.DEFAULT_VIDEO_CONSTRAINTS = exports.DEFAULT_VIDEO_WAIT_TIMEOUT_SECONDS = exports.DEFAULT_PEER_CONNECTIVITY_TIMEOUT_SECONDS = exports.DEFAULT_VIDEO_CONSTRAINT_TYPE = exports.DEFAULT_VIDEO_RESOLUTION = exports.MediaStreamUnregisterReason = exports.MediaSessionDisconnectReason = exports.KnownMediaStream = exports.KnownMediaStreamKind = exports.MediaRequestErrorCode = exports.SessionClientType = exports.SessionClientRole = exports.MediaServiceType = exports.MultiPartyCameraTypes = exports.CameraTypes = exports.ConstraintType = exports.LocalVideoSourceType = void 0;\nvar LocalVideoSourceType;\n(function (LocalVideoSourceType) {\n LocalVideoSourceType[\"CAMERA\"] = \"CAMERA\";\n LocalVideoSourceType[\"CAMERA_FRONT\"] = \"CAMERA_FRONT\";\n LocalVideoSourceType[\"DESKTOP_SHARE\"] = \"DESKTOP_SHARE\";\n})(LocalVideoSourceType = exports.LocalVideoSourceType || (exports.LocalVideoSourceType = {}));\nvar ConstraintType;\n(function (ConstraintType) {\n ConstraintType[\"MIN\"] = \"min\";\n ConstraintType[\"IDEAL\"] = \"ideal\";\n})(ConstraintType = exports.ConstraintType || (exports.ConstraintType = {}));\nvar CameraTypes;\n(function (CameraTypes) {\n CameraTypes[\"FRONT\"] = \"front\";\n CameraTypes[\"BACK\"] = \"back\";\n CameraTypes[\"NONE\"] = \"none\";\n})(CameraTypes = exports.CameraTypes || (exports.CameraTypes = {}));\nvar MultiPartyCameraTypes;\n(function (MultiPartyCameraTypes) {\n MultiPartyCameraTypes[\"FRONT\"] = \"front\";\n MultiPartyCameraTypes[\"BACK\"] = \"back\";\n})(MultiPartyCameraTypes = exports.MultiPartyCameraTypes || (exports.MultiPartyCameraTypes = {}));\nvar MediaServiceType;\n(function (MediaServiceType) {\n MediaServiceType[\"OPENTOK\"] = \"OPENTOK\";\n MediaServiceType[\"TURNSERVER\"] = \"TURN_SERVER\";\n MediaServiceType[\"MEDIASERVER\"] = \"MEDIA_SERVER\";\n})(MediaServiceType = exports.MediaServiceType || (exports.MediaServiceType = {}));\nvar SessionClientRole;\n(function (SessionClientRole) {\n SessionClientRole[\"AGENT\"] = \"AGENT\";\n SessionClientRole[\"OBSERVER\"] = \"OBSERVER\";\n SessionClientRole[\"USER\"] = \"USER\";\n})(SessionClientRole = exports.SessionClientRole || (exports.SessionClientRole = {}));\nvar SessionClientType;\n(function (SessionClientType) {\n SessionClientType[\"INITIATOR\"] = \"publisher\";\n SessionClientType[\"GUEST\"] = \"subscriber\";\n})(SessionClientType = exports.SessionClientType || (exports.SessionClientType = {}));\nvar MediaRequestErrorCode;\n(function (MediaRequestErrorCode) {\n MediaRequestErrorCode[\"Overconstrained\"] = \"Overconstrained\";\n MediaRequestErrorCode[\"PermissionDenied\"] = \"PermissionDenied\";\n MediaRequestErrorCode[\"GeneralError\"] = \"GeneralError\";\n})(MediaRequestErrorCode = exports.MediaRequestErrorCode || (exports.MediaRequestErrorCode = {}));\nvar KnownMediaStreamKind;\n(function (KnownMediaStreamKind) {\n KnownMediaStreamKind[\"Audio\"] = \"audio\";\n KnownMediaStreamKind[\"Video\"] = \"video\";\n})(KnownMediaStreamKind = exports.KnownMediaStreamKind || (exports.KnownMediaStreamKind = {}));\nvar KnownMediaStream;\n(function (KnownMediaStream) {\n KnownMediaStream[\"AGENT_AUDIO_STREAM\"] = \"DASHBOARD_AUDIO_STREAM\";\n KnownMediaStream[\"OBSERVER_AUDIO_STREAM\"] = \"OBSERVER_AUDIO_STREAM\";\n KnownMediaStream[\"USER_AUDIO_STREAM\"] = \"MOBILE_CLIENT_AUDIO_STREAM\";\n KnownMediaStream[\"USER_VIDEO_STREAM\"] = \"MOBILE_CLIENT_VIDEO_STREAM\";\n KnownMediaStream[\"USER_SCREEN_SHARE_STREAM\"] = \"USER_SCREEN_SHARE_STREAM\";\n})(KnownMediaStream = exports.KnownMediaStream || (exports.KnownMediaStream = {}));\nvar MediaSessionDisconnectReason;\n(function (MediaSessionDisconnectReason) {\n //Raised on initiator peer when guest peer was disconnected from signaling\n MediaSessionDisconnectReason[\"PeerDisconnected\"] = \"PeerDisconnected\";\n MediaSessionDisconnectReason[\"PeerConnectionInterrupted\"] = \"PeerConnectionInterrupted\";\n MediaSessionDisconnectReason[\"PeerConnectionStateChangeTimeout\"] = \"PeerConnectionStateChangeTimeout\";\n MediaSessionDisconnectReason[\"InitiatorPeerReconnected\"] = \"InitiatorPeerReconnected\";\n MediaSessionDisconnectReason[\"PublishedStreamDestroyed\"] = \"PublishedStreamDestroyed\";\n MediaSessionDisconnectReason[\"ForcedByConsumer\"] = \"ForcedByConsumer\";\n MediaSessionDisconnectReason[\"SignalingChannelDisconnect\"] = \"SignalingChannelDisconnect\";\n})(MediaSessionDisconnectReason = exports.MediaSessionDisconnectReason || (exports.MediaSessionDisconnectReason = {}));\nvar MediaStreamUnregisterReason;\n(function (MediaStreamUnregisterReason) {\n MediaStreamUnregisterReason[\"NativeEvent\"] = \"NativeEvent\";\n MediaStreamUnregisterReason[\"ReplacingStream\"] = \"ReplacingStream\";\n MediaStreamUnregisterReason[\"ClosedRemotely\"] = \"ClosedRemotely\";\n MediaStreamUnregisterReason[\"ServiceCleanUp\"] = \"ServiceCleanUp\";\n})(MediaStreamUnregisterReason = exports.MediaStreamUnregisterReason || (exports.MediaStreamUnregisterReason = {}));\nexports.DEFAULT_VIDEO_RESOLUTION = '640x480';\nexports.DEFAULT_VIDEO_CONSTRAINT_TYPE = ConstraintType.IDEAL;\nexports.DEFAULT_PEER_CONNECTIVITY_TIMEOUT_SECONDS = 10;\nexports.DEFAULT_VIDEO_WAIT_TIMEOUT_SECONDS = 30;\nexports.DEFAULT_VIDEO_CONSTRAINTS = {\n resolution: exports.DEFAULT_VIDEO_RESOLUTION,\n constraintType: exports.DEFAULT_VIDEO_CONSTRAINT_TYPE\n};\nexports.POSSIBLE_LOOPBACK_RESOLUTIONS = [\n { resolution: '1920x1080', constraintType: ConstraintType.MIN },\n { resolution: '1280x720', constraintType: ConstraintType.MIN },\n exports.DEFAULT_VIDEO_CONSTRAINTS // fallback\n];\n\n//# sourceMappingURL=MediaConstants.js.map\n","import {VideoStreamResolution} from './MediaContracts';\n\nexport enum LocalVideoSourceType {\n CAMERA = 'CAMERA',\n CAMERA_FRONT = 'CAMERA_FRONT',\n DESKTOP_SHARE = 'DESKTOP_SHARE'\n}\n\nexport enum ConstraintType {\n MIN = 'min',\n IDEAL = 'ideal'\n}\n\nexport enum CameraTypes {\n FRONT = 'front',\n BACK = 'back',\n NONE = 'none'\n}\n\nexport enum MultiPartyCameraTypes {\n FRONT = CameraTypes.FRONT,\n BACK = CameraTypes.BACK\n}\n\nexport enum MediaServiceType {\n OPENTOK = 'OPENTOK',\n TURNSERVER = 'TURN_SERVER',\n MEDIASERVER = 'MEDIA_SERVER'\n}\n\nexport enum SessionClientRole {\n AGENT = 'AGENT',\n OBSERVER = 'OBSERVER',\n USER = 'USER'\n}\n\nexport enum SessionClientType {\n INITIATOR = 'publisher',\n GUEST = 'subscriber'\n}\n\nexport enum MediaRequestErrorCode {\n Overconstrained = 'Overconstrained',\n PermissionDenied = 'PermissionDenied',\n GeneralError = 'GeneralError'\n}\n\nexport enum KnownMediaStreamKind {\n Audio = 'audio',\n Video = 'video'\n}\n\nexport enum KnownMediaStream {\n AGENT_AUDIO_STREAM = 'DASHBOARD_AUDIO_STREAM',\n OBSERVER_AUDIO_STREAM = 'OBSERVER_AUDIO_STREAM',\n USER_AUDIO_STREAM = 'MOBILE_CLIENT_AUDIO_STREAM',\n USER_VIDEO_STREAM = 'MOBILE_CLIENT_VIDEO_STREAM',\n USER_SCREEN_SHARE_STREAM = 'USER_SCREEN_SHARE_STREAM'\n}\n\nexport enum MediaSessionDisconnectReason {\n //Raised on initiator peer when guest peer was disconnected from signaling\n PeerDisconnected = 'PeerDisconnected',\n PeerConnectionInterrupted = 'PeerConnectionInterrupted',\n PeerConnectionStateChangeTimeout = 'PeerConnectionStateChangeTimeout',\n InitiatorPeerReconnected = 'InitiatorPeerReconnected',\n PublishedStreamDestroyed = 'PublishedStreamDestroyed',\n ForcedByConsumer = 'ForcedByConsumer',\n SignalingChannelDisconnect = 'SignalingChannelDisconnect'\n}\n\nexport enum MediaStreamUnregisterReason {\n NativeEvent = 'NativeEvent',\n ReplacingStream = 'ReplacingStream',\n ClosedRemotely = 'ClosedRemotely',\n ServiceCleanUp = 'ServiceCleanUp'\n}\n\nexport const DEFAULT_VIDEO_RESOLUTION = '640x480';\nexport const DEFAULT_VIDEO_CONSTRAINT_TYPE = ConstraintType.IDEAL;\nexport const DEFAULT_PEER_CONNECTIVITY_TIMEOUT_SECONDS = 10;\nexport const DEFAULT_VIDEO_WAIT_TIMEOUT_SECONDS = 30;\n\nexport const DEFAULT_VIDEO_CONSTRAINTS: VideoStreamResolution = {\n resolution: DEFAULT_VIDEO_RESOLUTION,\n constraintType: DEFAULT_VIDEO_CONSTRAINT_TYPE\n};\n\nexport const POSSIBLE_LOOPBACK_RESOLUTIONS: VideoStreamResolution[] = [\n {resolution: '1920x1080', constraintType: ConstraintType.MIN}, // FHD\n {resolution: '1280x720', constraintType: ConstraintType.MIN}, // HD\n DEFAULT_VIDEO_CONSTRAINTS // fallback\n];\n"]}
@@ -0,0 +1 @@
1
+ export { getMediaTracer } from './MediaTracer';
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/MediaUtils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC","file":"index.d.ts","sourcesContent":["export {getMediaTracer} from './MediaTracer';\n"]}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getMediaTracer = void 0;
7
+
8
+ var MediaTracer_1 = require("./MediaTracer");
9
+
10
+ Object.defineProperty(exports, "getMediaTracer", {
11
+ enumerable: true,
12
+ get: function get() {
13
+ return MediaTracer_1.getMediaTracer;
14
+ }
15
+ });
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["MediaUtils/index.js"],"names":["Object","defineProperty","exports","value","getMediaTracer","MediaTracer_1","require","enumerable","get"],"mappings":"AAAA;;AACAA,MAAM,CAACC,cAAP,CAAsBC,OAAtB,EAA+B,YAA/B,EAA6C;AAAEC,EAAAA,KAAK,EAAE;AAAT,CAA7C;AACAD,OAAO,CAACE,cAAR,GAAyB,KAAK,CAA9B;;AACA,IAAIC,aAAa,GAAGC,OAAO,CAAC,eAAD,CAA3B;;AACAN,MAAM,CAACC,cAAP,CAAsBC,OAAtB,EAA+B,gBAA/B,EAAiD;AAAEK,EAAAA,UAAU,EAAE,IAAd;AAAoBC,EAAAA,GAAG,EAAE,eAAY;AAAE,WAAOH,aAAa,CAACD,cAArB;AAAsC;AAA7E,CAAjD","file":"index.js","sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getMediaTracer = void 0;\nvar MediaTracer_1 = require(\"./MediaTracer\");\nObject.defineProperty(exports, \"getMediaTracer\", { enumerable: true, get: function () { return MediaTracer_1.getMediaTracer; } });\n\n//# sourceMappingURL=index.js.map\n"]}
@@ -1,4 +1,4 @@
1
- import { CameraTypes, MediaServiceType } from '../MediaConstants';
1
+ import { MultiPartyCameraTypes, MediaServiceType } from '../MediaConstants';
2
2
  export declare type Credentials = {
3
3
  apiKey: string;
4
4
  sessionId: string;
@@ -8,7 +8,8 @@ export declare type BrandingSettings = {
8
8
  backgroundImageURI?: string;
9
9
  };
10
10
  export declare type SessionSettings = {
11
- defaultCamera: CameraTypes;
11
+ selectedCamera: MultiPartyCameraTypes;
12
+ cameraEnabled: boolean;
12
13
  startWithAudioMuted: boolean;
13
14
  mediaServiceType: MediaServiceType;
14
15
  branding?: BrandingSettings;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/MultiParty/Contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAE,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AAEhE,oBAAY,WAAW,GAAG;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,oBAAY,gBAAgB,GAAG;IAC3B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,oBAAY,eAAe,GAAG;IAC1B,aAAa,EAAE,WAAW,CAAC;IAC3B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,QAAQ,CAAC,EAAE,gBAAgB,CAAC;CAC/B,CAAA","file":"Contracts.d.ts","sourcesContent":["import {CameraTypes, MediaServiceType} from '../MediaConstants';\n\nexport type Credentials = {\n apiKey: string,\n sessionId: string,\n token: string\n}\n\nexport type BrandingSettings = {\n backgroundImageURI?: string;\n};\n\nexport type SessionSettings = {\n defaultCamera: CameraTypes,\n startWithAudioMuted: boolean,\n mediaServiceType: MediaServiceType,\n branding?: BrandingSettings,\n}\n"]}
1
+ {"version":3,"sources":["../src/MultiParty/Contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,qBAAqB,EAAE,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AAE1E,oBAAY,WAAW,GAAG;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,oBAAY,gBAAgB,GAAG;IAC3B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,oBAAY,eAAe,GAAG;IAC1B,cAAc,EAAE,qBAAqB,CAAC;IACtC,aAAa,EAAE,OAAO,CAAA;IACtB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,QAAQ,CAAC,EAAE,gBAAgB,CAAA;CAC9B,CAAA","file":"Contracts.d.ts","sourcesContent":["import {MultiPartyCameraTypes, MediaServiceType} from '../MediaConstants';\n\nexport type Credentials = {\n apiKey: string,\n sessionId: string,\n token: string\n}\n\nexport type BrandingSettings = {\n backgroundImageURI?: string;\n};\n\nexport type SessionSettings = {\n selectedCamera: MultiPartyCameraTypes,\n cameraEnabled: boolean\n startWithAudioMuted: boolean,\n mediaServiceType: MediaServiceType,\n branding?: BrandingSettings\n}\n"]}
@@ -1,7 +1,7 @@
1
- export declare class MediaCapabilitiesHelper {
1
+ export declare class MediaCapabilitiesService {
2
2
  private static detectWebRtcService;
3
3
  private static webRtcSupportInfo;
4
- private static mediaCapabilitiesHelper;
4
+ private static instance;
5
5
  private static devicesList;
6
6
  private static groupedDevices;
7
7
  private static _supportSwitchCamera;
@@ -9,7 +9,7 @@ export declare class MediaCapabilitiesHelper {
9
9
  private static _frontCameraDeviceId;
10
10
  private static _initPromise;
11
11
  private environmentService;
12
- static getInstance(): Promise<MediaCapabilitiesHelper>;
12
+ static getInstance(): Promise<MediaCapabilitiesService>;
13
13
  private static init;
14
14
  hasCamera(): boolean;
15
15
  hasMicrophone(): boolean;
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/MultiParty/MediaCapabilitiesService.ts"],"names":[],"mappings":"AA6BA,qBAAa,wBAAwB;IACjC,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAsB;IACxD,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAA+B;IAC/D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA2B;IAClD,OAAO,CAAC,MAAM,CAAC,WAAW,CAAyD;IACnF,OAAO,CAAC,MAAM,CAAC,cAAc,CAA8C;IAC3E,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAU;IAC7C,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAS;IAC3C,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAS;IAC5C,OAAO,CAAC,MAAM,CAAC,YAAY,CAAoC;IAE/D,OAAO,CAAC,kBAAkB,CAA6B;WAEnC,WAAW,IAAI,OAAO,CAAC,wBAAwB,CAAC;mBAoB/C,IAAI;IAmBlB,SAAS,IAAI,OAAO;IAIpB,aAAa,IAAI,OAAO;IAMxB,SAAS,IAAI,OAAO;IAIpB,wBAAwB,IAAI,OAAO;IAI1C,OAAO,CAAC,MAAM,CAAC,iBAAiB;WAaZ,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAWnD,IAAW,mBAAmB,YAE7B;IAED,IAAW,kBAAkB,WAE5B;IAED,IAAW,mBAAmB,WAE7B;CACJ","file":"MediaCapabilitiesService.d.ts","sourcesContent":["// eslint-disable-next-line @typescript-eslint/no-var-requires\nimport {getMediaTracer} from '../MediaUtils/MediaTracer';\nimport {DETECT_RTC_ADVISED_TIMEOUT, DetectWebRtcService} from './DetectWebRtcService';\nimport {ClientWebRtcInfo} from '../MediaContracts';\nimport filter from 'lodash/filter';\nimport {TsEnvironmentDetect} from '@techsee/techsee-common/lib/helpers/ts-environment-detect';\nimport {CameraTypes} from '../MediaConstants';\nimport last from 'lodash/last';\nimport first from 'lodash/first';\nimport get from 'lodash/get';\nimport {Nullable} from '@techsee/techsee-common';\n\nconst trace = getMediaTracer('MediaCapabilitiesService');\n\nfunction enumerateMediaDevices(): Promise<MediaDeviceInfo[]> {\n return new Promise((resolve, reject) => {\n if (navigator.mediaDevices && navigator.mediaDevices.enumerateDevices) {\n return navigator.mediaDevices.enumerateDevices().then(resolve).catch(reject);\n }\n\n return resolve([]);\n });\n}\n\ntype GroupedDevices = {\n video: Nullable<{ back?: MediaDeviceInfo; front?: MediaDeviceInfo }>;\n audio: Nullable<MediaDeviceInfo>;\n}\n\nexport class MediaCapabilitiesService {\n private static detectWebRtcService: DetectWebRtcService;\n private static webRtcSupportInfo: ClientWebRtcInfo | undefined;\n private static instance: MediaCapabilitiesService;\n private static devicesList: { video: MediaDeviceInfo[]; audio: MediaDeviceInfo[] };\n private static groupedDevices: GroupedDevices = {video: null, audio: null};\n private static _supportSwitchCamera: boolean;\n private static _backCameraDeviceId: string;\n private static _frontCameraDeviceId: string;\n private static _initPromise: Promise<MediaCapabilitiesService>;\n\n private environmentService = new TsEnvironmentDetect();\n\n public static async getInstance(): Promise<MediaCapabilitiesService> {\n try {\n if (this.instance) {\n return this.instance;\n }\n\n if (this._initPromise) {\n return this._initPromise;\n }\n\n this._initPromise = this.init();\n\n return this._initPromise;\n } catch (err) {\n trace.error(JSON.stringify(err));\n\n throw err;\n }\n }\n\n private static async init(): Promise<MediaCapabilitiesService> {\n try {\n this.instance = new MediaCapabilitiesService();\n\n this.detectWebRtcService = new DetectWebRtcService(DETECT_RTC_ADVISED_TIMEOUT);\n\n this.webRtcSupportInfo = await this.detectWebRtcService.getWebRtcInfo();\n await this.setDevicesList();\n\n trace.info('initialize media capabilities helper successfully');\n\n return this.instance;\n } catch (err) {\n trace.error(JSON.stringify(err));\n\n throw err;\n }\n }\n\n public hasCamera(): boolean {\n return MediaCapabilitiesService.devicesList.video.length > 0 && this.hasGetUserMediaSupported();\n }\n\n public hasMicrophone(): boolean {\n return this.environmentService.isIOS()\n ? this.hasGetUserMediaSupported()\n : MediaCapabilitiesService.devicesList.audio.length > 0 && this.hasGetUserMediaSupported();\n }\n\n public hasWebRTC(): boolean {\n return MediaCapabilitiesService.webRtcSupportInfo!.isWebRTCSupported;\n }\n\n public hasGetUserMediaSupported(): boolean {\n return MediaCapabilitiesService.webRtcSupportInfo!.isGetUserMediaSupported;\n }\n\n private static setGroupedDevices() {\n trace.info('setGroupedDevices', this.devicesList);\n this.groupedDevices = {\n video: this.devicesList.video\n ? {[CameraTypes.BACK]: last(this.devicesList.video), [CameraTypes.FRONT]: first(this.devicesList.video)}\n : null,\n audio: last(this.devicesList.audio) || null\n };\n this._supportSwitchCamera = this.devicesList.video.length > 1;\n this._backCameraDeviceId = get(this.groupedDevices, `video.${CameraTypes.BACK}.deviceId`) || '';\n this._frontCameraDeviceId = get(this.groupedDevices, `video.${CameraTypes.FRONT}.deviceId`) || '';\n }\n\n public static async setDevicesList(): Promise<void> {\n const localDevicesList = this.webRtcSupportInfo!.isWebRTCSupported ? await enumerateMediaDevices() : [];\n\n this.devicesList = {\n video: filter(localDevicesList, (device) => device.kind.toLowerCase() === 'videoinput'),\n audio: filter(localDevicesList, (device) => device.kind.toLowerCase() === 'audioinput')\n };\n\n this.setGroupedDevices();\n }\n\n public get supportSwitchCamera() {\n return MediaCapabilitiesService._supportSwitchCamera;\n }\n\n public get backCameraDeviceId() {\n return MediaCapabilitiesService._backCameraDeviceId;\n }\n\n public get frontCameraDeviceId() {\n return MediaCapabilitiesService._frontCameraDeviceId;\n }\n}\n"]}
@@ -152,7 +152,7 @@ var __importDefault = void 0 && (void 0).__importDefault || function (mod) {
152
152
  Object.defineProperty(exports, "__esModule", {
153
153
  value: true
154
154
  });
155
- exports.MediaCapabilitiesHelper = void 0; // eslint-disable-next-line @typescript-eslint/no-var-requires
155
+ exports.MediaCapabilitiesService = void 0; // eslint-disable-next-line @typescript-eslint/no-var-requires
156
156
 
157
157
  var MediaTracer_1 = require("../MediaUtils/MediaTracer");
158
158
 
@@ -170,7 +170,7 @@ var first_1 = __importDefault(require("lodash/first"));
170
170
 
171
171
  var get_1 = __importDefault(require("lodash/get"));
172
172
 
173
- var trace = MediaTracer_1.getMediaTracer('MediaCapabilitiesHelper');
173
+ var trace = MediaTracer_1.getMediaTracer('MediaCapabilitiesService');
174
174
 
175
175
  function enumerateMediaDevices() {
176
176
  return new Promise(function (resolve, reject) {
@@ -182,107 +182,81 @@ function enumerateMediaDevices() {
182
182
  });
183
183
  }
184
184
 
185
- var MediaCapabilitiesHelper =
185
+ var MediaCapabilitiesService =
186
186
  /** @class */
187
187
  function () {
188
- function MediaCapabilitiesHelper() {
188
+ function MediaCapabilitiesService() {
189
189
  this.environmentService = new ts_environment_detect_1.TsEnvironmentDetect();
190
190
  }
191
191
 
192
- MediaCapabilitiesHelper.getInstance = function () {
192
+ MediaCapabilitiesService.getInstance = function () {
193
193
  return __awaiter(this, void 0, void 0, function () {
194
- var err_1;
195
194
  return __generator(this, function (_a) {
196
- switch (_a.label) {
197
- case 0:
198
- _a.trys.push([0, 3,, 4]);
199
-
200
- if (!this.mediaCapabilitiesHelper) return [3
201
- /*break*/
202
- , 2];
203
- return [4
204
- /*yield*/
205
- , this.mediaCapabilitiesHelper];
206
-
207
- case 1:
195
+ try {
196
+ if (this.instance) {
208
197
  return [2
209
198
  /*return*/
210
- , _a.sent()];
199
+ , this.instance];
200
+ }
211
201
 
212
- case 2:
213
- if (this._initPromise) {
214
- return [2
215
- /*return*/
216
- , this._initPromise];
217
- }
218
-
219
- this._initPromise = this.init();
202
+ if (this._initPromise) {
220
203
  return [2
221
204
  /*return*/
222
205
  , this._initPromise];
223
-
224
- case 3:
225
- err_1 = _a.sent();
226
- trace.error(JSON.stringify(err_1));
227
- throw err_1;
228
-
229
- case 4:
230
- return [2
231
- /*return*/
232
- ];
206
+ }
207
+
208
+ this._initPromise = this.init();
209
+ return [2
210
+ /*return*/
211
+ , this._initPromise];
212
+ } catch (err) {
213
+ trace.error(JSON.stringify(err));
214
+ throw err;
233
215
  }
216
+
217
+ return [2
218
+ /*return*/
219
+ ];
234
220
  });
235
221
  });
236
222
  };
237
223
 
238
- MediaCapabilitiesHelper.init = function () {
224
+ MediaCapabilitiesService.init = function () {
239
225
  return __awaiter(this, void 0, void 0, function () {
240
- var _a, _b, _c, err_2;
226
+ var _a, err_1;
241
227
 
242
- return __generator(this, function (_d) {
243
- switch (_d.label) {
228
+ return __generator(this, function (_b) {
229
+ switch (_b.label) {
244
230
  case 0:
245
- _d.trys.push([0, 5,, 6]);
231
+ _b.trys.push([0, 3,, 4]);
246
232
 
233
+ this.instance = new MediaCapabilitiesService();
234
+ this.detectWebRtcService = new DetectWebRtcService_1.DetectWebRtcService(DetectWebRtcService_1.DETECT_RTC_ADVISED_TIMEOUT);
247
235
  _a = this;
248
236
  return [4
249
237
  /*yield*/
250
- , new MediaCapabilitiesHelper()];
251
-
252
- case 1:
253
- _a.mediaCapabilitiesHelper = _d.sent();
254
- _b = this;
255
- return [4
256
- /*yield*/
257
- , new DetectWebRtcService_1.DetectWebRtcService(DetectWebRtcService_1.DETECT_RTC_ADVISED_TIMEOUT)];
258
-
259
- case 2:
260
- _b.detectWebRtcService = _d.sent();
261
- _c = this;
262
- return [4
263
- /*yield*/
264
238
  , this.detectWebRtcService.getWebRtcInfo()];
265
239
 
266
- case 3:
267
- _c.webRtcSupportInfo = _d.sent();
240
+ case 1:
241
+ _a.webRtcSupportInfo = _b.sent();
268
242
  return [4
269
243
  /*yield*/
270
244
  , this.setDevicesList()];
271
245
 
272
- case 4:
273
- _d.sent();
246
+ case 2:
247
+ _b.sent();
274
248
 
275
249
  trace.info('initialize media capabilities helper successfully');
276
250
  return [2
277
251
  /*return*/
278
- , this.mediaCapabilitiesHelper];
252
+ , this.instance];
279
253
 
280
- case 5:
281
- err_2 = _d.sent();
282
- trace.error(JSON.stringify(err_2));
283
- throw err_2;
254
+ case 3:
255
+ err_1 = _b.sent();
256
+ trace.error(JSON.stringify(err_1));
257
+ throw err_1;
284
258
 
285
- case 6:
259
+ case 4:
286
260
  return [2
287
261
  /*return*/
288
262
  ];
@@ -291,43 +265,36 @@ function () {
291
265
  });
292
266
  };
293
267
 
294
- MediaCapabilitiesHelper.prototype.hasCamera = function () {
295
- return MediaCapabilitiesHelper.devicesList.video.length > 0 && this.hasGetUserMediaSupported();
268
+ MediaCapabilitiesService.prototype.hasCamera = function () {
269
+ return MediaCapabilitiesService.devicesList.video.length > 0 && this.hasGetUserMediaSupported();
296
270
  };
297
271
 
298
- MediaCapabilitiesHelper.prototype.hasMicrophone = function () {
299
- return this.environmentService.isIOS() ? this.hasGetUserMediaSupported() : MediaCapabilitiesHelper.devicesList.audio.length > 0 && this.hasGetUserMediaSupported();
272
+ MediaCapabilitiesService.prototype.hasMicrophone = function () {
273
+ return this.environmentService.isIOS() ? this.hasGetUserMediaSupported() : MediaCapabilitiesService.devicesList.audio.length > 0 && this.hasGetUserMediaSupported();
300
274
  };
301
275
 
302
- MediaCapabilitiesHelper.prototype.hasWebRTC = function () {
303
- return MediaCapabilitiesHelper.webRtcSupportInfo.isWebRTCSupported;
276
+ MediaCapabilitiesService.prototype.hasWebRTC = function () {
277
+ return MediaCapabilitiesService.webRtcSupportInfo.isWebRTCSupported;
304
278
  };
305
279
 
306
- MediaCapabilitiesHelper.prototype.hasGetUserMediaSupported = function () {
307
- return MediaCapabilitiesHelper.webRtcSupportInfo.isGetUserMediaSupported;
280
+ MediaCapabilitiesService.prototype.hasGetUserMediaSupported = function () {
281
+ return MediaCapabilitiesService.webRtcSupportInfo.isGetUserMediaSupported;
308
282
  };
309
283
 
310
- MediaCapabilitiesHelper.setGroupedDevices = function () {
311
- return __awaiter(this, void 0, void 0, function () {
312
- var _a;
284
+ MediaCapabilitiesService.setGroupedDevices = function () {
285
+ var _a;
313
286
 
314
- return __generator(this, function (_b) {
315
- trace.info('setGroupedDevices', this.devicesList);
316
- this.groupedDevices = {
317
- video: this.devicesList.video ? (_a = {}, _a[MediaConstants_1.CameraTypes.BACK] = last_1["default"](this.devicesList.video), _a[MediaConstants_1.CameraTypes.FRONT] = first_1["default"](this.devicesList.video), _a) : null,
318
- audio: last_1["default"](this.devicesList.audio) || null
319
- };
320
- this._supportSwitchCamera = this.devicesList.video.length > 1;
321
- this._backCameraDeviceId = get_1["default"](this.groupedDevices, "video." + MediaConstants_1.CameraTypes.BACK + ".deviceId") || '';
322
- this._frontCameraDeviceId = get_1["default"](this.groupedDevices, "video." + MediaConstants_1.CameraTypes.FRONT + ".deviceId") || '';
323
- return [2
324
- /*return*/
325
- ];
326
- });
327
- });
287
+ trace.info('setGroupedDevices', this.devicesList);
288
+ this.groupedDevices = {
289
+ video: this.devicesList.video ? (_a = {}, _a[MediaConstants_1.CameraTypes.BACK] = last_1["default"](this.devicesList.video), _a[MediaConstants_1.CameraTypes.FRONT] = first_1["default"](this.devicesList.video), _a) : null,
290
+ audio: last_1["default"](this.devicesList.audio) || null
291
+ };
292
+ this._supportSwitchCamera = this.devicesList.video.length > 1;
293
+ this._backCameraDeviceId = get_1["default"](this.groupedDevices, "video." + MediaConstants_1.CameraTypes.BACK + ".deviceId") || '';
294
+ this._frontCameraDeviceId = get_1["default"](this.groupedDevices, "video." + MediaConstants_1.CameraTypes.FRONT + ".deviceId") || '';
328
295
  };
329
296
 
330
- MediaCapabilitiesHelper.setDevicesList = function () {
297
+ MediaCapabilitiesService.setDevicesList = function () {
331
298
  return __awaiter(this, void 0, void 0, function () {
332
299
  var localDevicesList, _a;
333
300
 
@@ -361,13 +328,7 @@ function () {
361
328
  return device.kind.toLowerCase() === 'audioinput';
362
329
  })
363
330
  };
364
- return [4
365
- /*yield*/
366
- , this.setGroupedDevices()];
367
-
368
- case 4:
369
- _b.sent();
370
-
331
+ this.setGroupedDevices();
371
332
  return [2
372
333
  /*return*/
373
334
  ];
@@ -376,33 +337,33 @@ function () {
376
337
  });
377
338
  };
378
339
 
379
- Object.defineProperty(MediaCapabilitiesHelper.prototype, "supportSwitchCamera", {
340
+ Object.defineProperty(MediaCapabilitiesService.prototype, "supportSwitchCamera", {
380
341
  get: function get() {
381
- return MediaCapabilitiesHelper._supportSwitchCamera;
342
+ return MediaCapabilitiesService._supportSwitchCamera;
382
343
  },
383
344
  enumerable: false,
384
345
  configurable: true
385
346
  });
386
- Object.defineProperty(MediaCapabilitiesHelper.prototype, "backCameraDeviceId", {
347
+ Object.defineProperty(MediaCapabilitiesService.prototype, "backCameraDeviceId", {
387
348
  get: function get() {
388
- return MediaCapabilitiesHelper._backCameraDeviceId;
349
+ return MediaCapabilitiesService._backCameraDeviceId;
389
350
  },
390
351
  enumerable: false,
391
352
  configurable: true
392
353
  });
393
- Object.defineProperty(MediaCapabilitiesHelper.prototype, "frontCameraDeviceId", {
354
+ Object.defineProperty(MediaCapabilitiesService.prototype, "frontCameraDeviceId", {
394
355
  get: function get() {
395
- return MediaCapabilitiesHelper._frontCameraDeviceId;
356
+ return MediaCapabilitiesService._frontCameraDeviceId;
396
357
  },
397
358
  enumerable: false,
398
359
  configurable: true
399
360
  });
400
- MediaCapabilitiesHelper.groupedDevices = {
361
+ MediaCapabilitiesService.groupedDevices = {
401
362
  video: null,
402
363
  audio: null
403
364
  };
404
- return MediaCapabilitiesHelper;
365
+ return MediaCapabilitiesService;
405
366
  }();
406
367
 
407
- exports.MediaCapabilitiesHelper = MediaCapabilitiesHelper;
408
- //# sourceMappingURL=MediaCapabilitiesHelper.js.map
368
+ exports.MediaCapabilitiesService = MediaCapabilitiesService;
369
+ //# sourceMappingURL=MediaCapabilitiesService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["MultiParty/MediaCapabilitiesService.js"],"names":["__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","e","rejected","result","done","then","apply","__generator","body","_","label","sent","t","trys","ops","f","y","g","verb","Symbol","iterator","n","v","op","TypeError","call","pop","length","push","__importDefault","mod","__esModule","Object","defineProperty","exports","MediaCapabilitiesService","MediaTracer_1","require","DetectWebRtcService_1","filter_1","ts_environment_detect_1","MediaConstants_1","last_1","first_1","get_1","trace","getMediaTracer","enumerateMediaDevices","navigator","mediaDevices","enumerateDevices","environmentService","TsEnvironmentDetect","getInstance","_a","instance","_initPromise","init","err","error","JSON","stringify","err_1","_b","detectWebRtcService","DetectWebRtcService","DETECT_RTC_ADVISED_TIMEOUT","getWebRtcInfo","webRtcSupportInfo","setDevicesList","info","prototype","hasCamera","devicesList","video","hasGetUserMediaSupported","hasMicrophone","isIOS","audio","hasWebRTC","isWebRTCSupported","isGetUserMediaSupported","setGroupedDevices","groupedDevices","CameraTypes","BACK","FRONT","_supportSwitchCamera","_backCameraDeviceId","_frontCameraDeviceId","localDevicesList","device","kind","toLowerCase","get","enumerable","configurable"],"mappings":"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","file":"MediaCapabilitiesService.js","sourcesContent":["\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.MediaCapabilitiesService = void 0;\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nvar MediaTracer_1 = require(\"../MediaUtils/MediaTracer\");\nvar DetectWebRtcService_1 = require(\"./DetectWebRtcService\");\nvar filter_1 = __importDefault(require(\"lodash/filter\"));\nvar ts_environment_detect_1 = require(\"@techsee/techsee-common/lib/helpers/ts-environment-detect\");\nvar MediaConstants_1 = require(\"../MediaConstants\");\nvar last_1 = __importDefault(require(\"lodash/last\"));\nvar first_1 = __importDefault(require(\"lodash/first\"));\nvar get_1 = __importDefault(require(\"lodash/get\"));\nvar trace = MediaTracer_1.getMediaTracer('MediaCapabilitiesService');\nfunction enumerateMediaDevices() {\n return new Promise(function (resolve, reject) {\n if (navigator.mediaDevices && navigator.mediaDevices.enumerateDevices) {\n return navigator.mediaDevices.enumerateDevices().then(resolve).catch(reject);\n }\n return resolve([]);\n });\n}\nvar MediaCapabilitiesService = /** @class */ (function () {\n function MediaCapabilitiesService() {\n this.environmentService = new ts_environment_detect_1.TsEnvironmentDetect();\n }\n MediaCapabilitiesService.getInstance = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n try {\n if (this.instance) {\n return [2 /*return*/, this.instance];\n }\n if (this._initPromise) {\n return [2 /*return*/, this._initPromise];\n }\n this._initPromise = this.init();\n return [2 /*return*/, this._initPromise];\n }\n catch (err) {\n trace.error(JSON.stringify(err));\n throw err;\n }\n return [2 /*return*/];\n });\n });\n };\n MediaCapabilitiesService.init = function () {\n return __awaiter(this, void 0, void 0, function () {\n var _a, err_1;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n _b.trys.push([0, 3, , 4]);\n this.instance = new MediaCapabilitiesService();\n this.detectWebRtcService = new DetectWebRtcService_1.DetectWebRtcService(DetectWebRtcService_1.DETECT_RTC_ADVISED_TIMEOUT);\n _a = this;\n return [4 /*yield*/, this.detectWebRtcService.getWebRtcInfo()];\n case 1:\n _a.webRtcSupportInfo = _b.sent();\n return [4 /*yield*/, this.setDevicesList()];\n case 2:\n _b.sent();\n trace.info('initialize media capabilities helper successfully');\n return [2 /*return*/, this.instance];\n case 3:\n err_1 = _b.sent();\n trace.error(JSON.stringify(err_1));\n throw err_1;\n case 4: return [2 /*return*/];\n }\n });\n });\n };\n MediaCapabilitiesService.prototype.hasCamera = function () {\n return MediaCapabilitiesService.devicesList.video.length > 0 && this.hasGetUserMediaSupported();\n };\n MediaCapabilitiesService.prototype.hasMicrophone = function () {\n return this.environmentService.isIOS()\n ? this.hasGetUserMediaSupported()\n : MediaCapabilitiesService.devicesList.audio.length > 0 && this.hasGetUserMediaSupported();\n };\n MediaCapabilitiesService.prototype.hasWebRTC = function () {\n return MediaCapabilitiesService.webRtcSupportInfo.isWebRTCSupported;\n };\n MediaCapabilitiesService.prototype.hasGetUserMediaSupported = function () {\n return MediaCapabilitiesService.webRtcSupportInfo.isGetUserMediaSupported;\n };\n MediaCapabilitiesService.setGroupedDevices = function () {\n var _a;\n trace.info('setGroupedDevices', this.devicesList);\n this.groupedDevices = {\n video: this.devicesList.video\n ? (_a = {}, _a[MediaConstants_1.CameraTypes.BACK] = last_1.default(this.devicesList.video), _a[MediaConstants_1.CameraTypes.FRONT] = first_1.default(this.devicesList.video), _a) : null,\n audio: last_1.default(this.devicesList.audio) || null\n };\n this._supportSwitchCamera = this.devicesList.video.length > 1;\n this._backCameraDeviceId = get_1.default(this.groupedDevices, \"video.\" + MediaConstants_1.CameraTypes.BACK + \".deviceId\") || '';\n this._frontCameraDeviceId = get_1.default(this.groupedDevices, \"video.\" + MediaConstants_1.CameraTypes.FRONT + \".deviceId\") || '';\n };\n MediaCapabilitiesService.setDevicesList = function () {\n return __awaiter(this, void 0, void 0, function () {\n var localDevicesList, _a;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n if (!this.webRtcSupportInfo.isWebRTCSupported) return [3 /*break*/, 2];\n return [4 /*yield*/, enumerateMediaDevices()];\n case 1:\n _a = _b.sent();\n return [3 /*break*/, 3];\n case 2:\n _a = [];\n _b.label = 3;\n case 3:\n localDevicesList = _a;\n this.devicesList = {\n video: filter_1.default(localDevicesList, function (device) { return device.kind.toLowerCase() === 'videoinput'; }),\n audio: filter_1.default(localDevicesList, function (device) { return device.kind.toLowerCase() === 'audioinput'; })\n };\n this.setGroupedDevices();\n return [2 /*return*/];\n }\n });\n });\n };\n Object.defineProperty(MediaCapabilitiesService.prototype, \"supportSwitchCamera\", {\n get: function () {\n return MediaCapabilitiesService._supportSwitchCamera;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(MediaCapabilitiesService.prototype, \"backCameraDeviceId\", {\n get: function () {\n return MediaCapabilitiesService._backCameraDeviceId;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(MediaCapabilitiesService.prototype, \"frontCameraDeviceId\", {\n get: function () {\n return MediaCapabilitiesService._frontCameraDeviceId;\n },\n enumerable: false,\n configurable: true\n });\n MediaCapabilitiesService.groupedDevices = { video: null, audio: null };\n return MediaCapabilitiesService;\n}());\nexports.MediaCapabilitiesService = MediaCapabilitiesService;\n\n//# sourceMappingURL=MediaCapabilitiesService.js.map\n"]}
@@ -0,0 +1,5 @@
1
+ export declare const checkIsMobile: () => boolean;
2
+ export declare const checkWebRtc: () => Promise<boolean>;
3
+ export declare function checkVideoCapabilities(): Promise<boolean>;
4
+ export declare function checkAudioCapabilities(): Promise<boolean>;
5
+ export declare function checkSupportSwitchCamera(): Promise<boolean>;
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/MultiParty/MediaCapabilitiesUtils.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,aAAa,QAAO,OAIhC,CAAC;AAGF,eAAO,MAAM,WAAW,QAAa,QAAQ,OAAO,CAQnD,CAAC;AAEF,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,OAAO,CAAC,CAQ/D;AAED,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,OAAO,CAAC,CAQ/D;AAED,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,OAAO,CAAC,CAQjE","file":"MediaCapabilitiesUtils.d.ts","sourcesContent":["import {TsEnvironmentDetect} from '@techsee/techsee-common/lib/helpers/ts-environment-detect';\nimport {getMediaTracer} from '../MediaUtils';\nimport {MediaCapabilitiesService} from './MediaCapabilitiesService';\n\nconst trace = getMediaTracer('MediaCapabilitiesUtils');\n\nexport const checkIsMobile = (): boolean => {\n const environmentService = new TsEnvironmentDetect();\n\n return environmentService.isMobile();\n};\n\n\nexport const checkWebRtc = async (): Promise<boolean> => {\n try {\n return (await MediaCapabilitiesService.getInstance()).hasWebRTC();\n } catch (err) {\n trace.error(JSON.stringify(err));\n }\n\n return false;\n};\n\nexport async function checkVideoCapabilities(): Promise<boolean> {\n try {\n return (await MediaCapabilitiesService.getInstance()).hasCamera();\n } catch (err) {\n trace.error(JSON.stringify(err));\n }\n\n return false;\n}\n\nexport async function checkAudioCapabilities(): Promise<boolean> {\n try {\n return (await MediaCapabilitiesService.getInstance()).hasMicrophone();\n } catch (err) {\n trace.error(JSON.stringify(err));\n }\n\n return false;\n}\n\nexport async function checkSupportSwitchCamera(): Promise<boolean> {\n try {\n return (await MediaCapabilitiesService.getInstance()).supportSwitchCamera;\n } catch (err) {\n trace.error(JSON.stringify(err));\n }\n\n return false;\n}\n"]}