@wazo/sdk 0.39.0-beta.12 → 0.39.0-beta.13

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.
@@ -1,6 +1,7 @@
1
1
  /* eslint-disable no-nested-ternary */
2
2
  import { KEYUTIL, KJUR, b64utoutf8 } from 'jsrsasign';
3
3
  import swarmPublicKey from '../pubkey';
4
+ import Contact from './Contact';
4
5
  import newFrom from '../utils/new-from';
5
6
  import compareVersions from '../utils/compare-version';
6
7
  const { jws } = KJUR;
@@ -8,6 +9,7 @@ const swarmKey = (KEYUTIL.getKey(swarmPublicKey));
8
9
  const MINIMUM_WAZO_ENGINE_VERSION_FOR_DEFAULT_CONTEXT = '19.08';
9
10
  export default class Session {
10
11
  acl;
12
+ contact;
11
13
  token;
12
14
  refreshToken;
13
15
  uuid;
@@ -95,6 +97,27 @@ export default class Session {
95
97
  primaryCtiLine() {
96
98
  return this.profile && (this.profile.sipLines || []).find(sipLine => sipLine && !sipLine.isWebRtc());
97
99
  }
100
+ getContact() {
101
+ if (this.contact) {
102
+ return this.contact;
103
+ }
104
+ const { email, firstName, lastName, mobileNumber, state, status } = this.profile || {};
105
+ const number = this.primaryNumber() || '';
106
+ const numbers = [{ label: 'primary', number }];
107
+ if (mobileNumber) {
108
+ numbers.push({ label: 'mobile', number: mobileNumber });
109
+ }
110
+ return new Contact({
111
+ uuid: this.uuid || '',
112
+ email,
113
+ name: `${firstName} ${lastName}`,
114
+ number,
115
+ numbers,
116
+ state: state || '',
117
+ status,
118
+ backend: 'wazo',
119
+ });
120
+ }
98
121
  primaryContext() {
99
122
  if (this.engineVersion) {
100
123
  if (this.hasEngineVersionGte(MINIMUM_WAZO_ENGINE_VERSION_FOR_DEFAULT_CONTEXT)) {
@@ -55,6 +55,7 @@ type SessionArguments = {
55
55
  };
56
56
  export default class Session {
57
57
  acl: string[];
58
+ contact?: Contact;
58
59
  token: string;
59
60
  refreshToken: string | null | undefined;
60
61
  uuid: string | null | undefined;
@@ -78,6 +79,7 @@ export default class Session {
78
79
  primarySipLine(): SipLine | null | undefined;
79
80
  primaryWebRtcLine(): SipLine | null | undefined;
80
81
  primaryCtiLine(): SipLine | null | undefined;
82
+ getContact(): Contact;
81
83
  primaryContext(): string;
82
84
  hasEngineVersionGte(version: string): boolean | "" | null | undefined;
83
85
  primaryNumber(): string | null | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../../src/domain/Session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../../src/domain/Session.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  /* eslint-disable no-nested-ternary */
7
7
  const jsrsasign_1 = require("jsrsasign");
8
8
  const pubkey_1 = __importDefault(require("../pubkey"));
9
+ const Contact_1 = __importDefault(require("./Contact"));
9
10
  const new_from_1 = __importDefault(require("../utils/new-from"));
10
11
  const compare_version_1 = __importDefault(require("../utils/compare-version"));
11
12
  const { jws } = jsrsasign_1.KJUR;
@@ -89,6 +90,27 @@ class Session {
89
90
  primaryCtiLine() {
90
91
  return this.profile && (this.profile.sipLines || []).find(sipLine => sipLine && !sipLine.isWebRtc());
91
92
  }
93
+ getContact() {
94
+ if (this.contact) {
95
+ return this.contact;
96
+ }
97
+ const { email, firstName, lastName, mobileNumber, state, status } = this.profile || {};
98
+ const number = this.primaryNumber() || '';
99
+ const numbers = [{ label: 'primary', number }];
100
+ if (mobileNumber) {
101
+ numbers.push({ label: 'mobile', number: mobileNumber });
102
+ }
103
+ return new Contact_1.default({
104
+ uuid: this.uuid || '',
105
+ email,
106
+ name: `${firstName} ${lastName}`,
107
+ number,
108
+ numbers,
109
+ state: state || '',
110
+ status,
111
+ backend: 'wazo',
112
+ });
113
+ }
92
114
  primaryContext() {
93
115
  if (this.engineVersion) {
94
116
  if (this.hasEngineVersionGte(MINIMUM_WAZO_ENGINE_VERSION_FOR_DEFAULT_CONTEXT)) {
@@ -55,6 +55,7 @@ type SessionArguments = {
55
55
  };
56
56
  export default class Session {
57
57
  acl: string[];
58
+ contact?: Contact;
58
59
  token: string;
59
60
  refreshToken: string | null | undefined;
60
61
  uuid: string | null | undefined;
@@ -78,6 +79,7 @@ export default class Session {
78
79
  primarySipLine(): SipLine | null | undefined;
79
80
  primaryWebRtcLine(): SipLine | null | undefined;
80
81
  primaryCtiLine(): SipLine | null | undefined;
82
+ getContact(): Contact;
81
83
  primaryContext(): string;
82
84
  hasEngineVersionGte(version: string): boolean | "" | null | undefined;
83
85
  primaryNumber(): string | null | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../../src/domain/Session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../../src/domain/Session.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wazo/sdk",
3
- "version": "0.39.0-beta.12",
3
+ "version": "0.39.0-beta.13",
4
4
  "description": "Wazo's JavaScript Software Development Kit.",
5
5
  "main": "dist/wazo-sdk.js",
6
6
  "author": "Wazo (http://wazo.io)",
@@ -72,6 +72,8 @@ type SessionArguments = {
72
72
  export default class Session {
73
73
  acl: string[];
74
74
 
75
+ contact?: Contact;
76
+
75
77
  token: string;
76
78
 
77
79
  refreshToken: string | null | undefined;
@@ -198,6 +200,31 @@ export default class Session {
198
200
  return this.profile && (this.profile.sipLines || []).find(sipLine => sipLine && !sipLine.isWebRtc());
199
201
  }
200
202
 
203
+ getContact(): Contact {
204
+ if (this.contact) {
205
+ return this.contact;
206
+ }
207
+
208
+ const { email, firstName, lastName, mobileNumber, state, status } = this.profile || {};
209
+ const number = this.primaryNumber() || '';
210
+ const numbers = [{ label: 'primary', number }];
211
+
212
+ if (mobileNumber) {
213
+ numbers.push({ label: 'mobile', number: mobileNumber });
214
+ }
215
+
216
+ return new Contact({
217
+ uuid: this.uuid || '',
218
+ email,
219
+ name: `${firstName} ${lastName}`,
220
+ number,
221
+ numbers,
222
+ state: state || '',
223
+ status,
224
+ backend: 'wazo',
225
+ });
226
+ }
227
+
201
228
  primaryContext(): string {
202
229
  if (this.engineVersion) {
203
230
  if (this.hasEngineVersionGte(MINIMUM_WAZO_ENGINE_VERSION_FOR_DEFAULT_CONTEXT)) {