@koi-design/callkit 2.0.2 → 2.0.4
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/dist/index.d.ts +4 -2
- package/dist/index.global.js +263 -224
- package/dist/index.global.js.map +1 -1
- package/dist/index.js +82 -43
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +79 -40
- package/dist/index.mjs.map +1 -1
- package/package.json +48 -48
package/dist/index.mjs
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
//
|
|
1
|
+
// core/index.ts
|
|
2
2
|
import md5 from "blueimp-md5";
|
|
3
3
|
|
|
4
|
-
//
|
|
4
|
+
// core/axios.ts
|
|
5
5
|
import axios from "axios";
|
|
6
6
|
var instance = axios.create({
|
|
7
7
|
headers: {
|
|
8
8
|
"Content-Type": "application/x-www-form-urlencoded"
|
|
9
|
-
}
|
|
9
|
+
},
|
|
10
|
+
timeout: 6e4
|
|
10
11
|
});
|
|
11
12
|
instance.interceptors.request.use((config) => config);
|
|
12
13
|
instance.interceptors.response.use(
|
|
@@ -16,25 +17,49 @@ instance.interceptors.response.use(
|
|
|
16
17
|
var request = (config) => instance.request(config);
|
|
17
18
|
var axios_default = request;
|
|
18
19
|
|
|
19
|
-
//
|
|
20
|
+
// core/api.ts
|
|
20
21
|
var Api = class {
|
|
21
22
|
callKit;
|
|
22
23
|
constructor(callKit) {
|
|
23
24
|
this.callKit = callKit;
|
|
24
25
|
}
|
|
26
|
+
isLogining = false;
|
|
27
|
+
isLoginOuting = false;
|
|
25
28
|
async login(params) {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
29
|
+
if (this.isLogining) {
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
this.isLogining = true;
|
|
33
|
+
try {
|
|
34
|
+
const res = await this.post({
|
|
35
|
+
url: "/auth/agentUser/login",
|
|
36
|
+
method: "post",
|
|
37
|
+
data: params
|
|
38
|
+
});
|
|
39
|
+
this.isLogining = false;
|
|
40
|
+
return res;
|
|
41
|
+
} catch (error) {
|
|
42
|
+
this.isLogining = false;
|
|
43
|
+
throw error;
|
|
44
|
+
}
|
|
31
45
|
}
|
|
32
46
|
async loginOut(params) {
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
47
|
+
if (this.isLoginOuting) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
this.isLoginOuting = true;
|
|
51
|
+
try {
|
|
52
|
+
const res = await this.post({
|
|
53
|
+
url: "/auth/agentUser/loginOut",
|
|
54
|
+
method: "post",
|
|
55
|
+
data: params
|
|
56
|
+
});
|
|
57
|
+
this.isLoginOuting = false;
|
|
58
|
+
return res;
|
|
59
|
+
} catch (error) {
|
|
60
|
+
this.isLoginOuting = false;
|
|
61
|
+
throw error;
|
|
62
|
+
}
|
|
38
63
|
}
|
|
39
64
|
async trackLogs(log) {
|
|
40
65
|
return this.post(
|
|
@@ -97,7 +122,7 @@ var Api = class {
|
|
|
97
122
|
}
|
|
98
123
|
};
|
|
99
124
|
|
|
100
|
-
//
|
|
125
|
+
// core/const.ts
|
|
101
126
|
var CallStatus = {
|
|
102
127
|
/**
|
|
103
128
|
* Initial state/Hang up
|
|
@@ -446,7 +471,7 @@ var trackLogsDefaultConfig = {
|
|
|
446
471
|
maxSize: 8192
|
|
447
472
|
};
|
|
448
473
|
|
|
449
|
-
//
|
|
474
|
+
// core/call.ts
|
|
450
475
|
var Call = class {
|
|
451
476
|
callKit;
|
|
452
477
|
constructor(callKit) {
|
|
@@ -587,20 +612,20 @@ var Call = class {
|
|
|
587
612
|
// package.json
|
|
588
613
|
var package_default = {
|
|
589
614
|
name: "@koi-design/callkit",
|
|
590
|
-
version: "2.0.
|
|
615
|
+
version: "2.0.4",
|
|
591
616
|
description: "callkit",
|
|
592
617
|
author: "koi",
|
|
593
618
|
license: "ISC",
|
|
594
619
|
scripts: {
|
|
595
620
|
build: "tsup",
|
|
596
|
-
|
|
621
|
+
"build:watch": "tsup --watch",
|
|
597
622
|
dev: "vite",
|
|
598
|
-
lint: "eslint -c
|
|
599
|
-
prepare: "husky install",
|
|
623
|
+
lint: "eslint -c ../../.eslintrc.js --ext .jsx,.js,.tsx,.ts ./package --fix",
|
|
600
624
|
release: "tsup && node scripts/pkg.js"
|
|
601
625
|
},
|
|
602
626
|
exports: {
|
|
603
627
|
".": {
|
|
628
|
+
types: "./dist/index.d.ts",
|
|
604
629
|
require: "./dist/index.js",
|
|
605
630
|
import: "./dist/index.mjs"
|
|
606
631
|
}
|
|
@@ -637,7 +662,7 @@ var package_default = {
|
|
|
637
662
|
}
|
|
638
663
|
};
|
|
639
664
|
|
|
640
|
-
//
|
|
665
|
+
// core/config.ts
|
|
641
666
|
var Config = class {
|
|
642
667
|
callKit;
|
|
643
668
|
constructor(callKit) {
|
|
@@ -653,6 +678,7 @@ var Config = class {
|
|
|
653
678
|
socket: "",
|
|
654
679
|
userInfo: {
|
|
655
680
|
wsUrl: "",
|
|
681
|
+
logGather: false,
|
|
656
682
|
sessionId: "",
|
|
657
683
|
// User
|
|
658
684
|
username: "",
|
|
@@ -707,7 +733,8 @@ var Config = class {
|
|
|
707
733
|
fsPort: "",
|
|
708
734
|
iceInfo: [],
|
|
709
735
|
iceGatheringTimeout: this.config.userInfo.iceGatheringTimeout,
|
|
710
|
-
encryptionMethod: EncryptionMethod.INTERNAL
|
|
736
|
+
encryptionMethod: EncryptionMethod.INTERNAL,
|
|
737
|
+
logGather: false
|
|
711
738
|
};
|
|
712
739
|
this.callKit.trigger(KitEvent.KIT_LOGIN_CHANGE, false);
|
|
713
740
|
}
|
|
@@ -740,7 +767,7 @@ var Config = class {
|
|
|
740
767
|
}
|
|
741
768
|
};
|
|
742
769
|
|
|
743
|
-
//
|
|
770
|
+
// core/logger.ts
|
|
744
771
|
import stringify from "json-stringify-safe";
|
|
745
772
|
function getLevel(level) {
|
|
746
773
|
return LoggerLevelMap[level];
|
|
@@ -877,7 +904,7 @@ var Logger = class {
|
|
|
877
904
|
}
|
|
878
905
|
};
|
|
879
906
|
|
|
880
|
-
//
|
|
907
|
+
// core/connect.ts
|
|
881
908
|
import {
|
|
882
909
|
UserAgent,
|
|
883
910
|
Web,
|
|
@@ -886,7 +913,7 @@ import {
|
|
|
886
913
|
RegistererState
|
|
887
914
|
} from "sip.js";
|
|
888
915
|
|
|
889
|
-
//
|
|
916
|
+
// core/utils.ts
|
|
890
917
|
var formatGetInviteData = (inviteData) => {
|
|
891
918
|
const extendInfoStr = inviteData["x-antaios-manual-extend_info"] || inviteData["x-antaios-manual-extend-info"];
|
|
892
919
|
let extendInfoObj = null;
|
|
@@ -901,7 +928,7 @@ var formatGetInviteData = (inviteData) => {
|
|
|
901
928
|
}
|
|
902
929
|
};
|
|
903
930
|
|
|
904
|
-
//
|
|
931
|
+
// core/connect.ts
|
|
905
932
|
var DEFAULT_RECONNECT_CONFIG = {
|
|
906
933
|
maxAttempts: 3,
|
|
907
934
|
delay: 500
|
|
@@ -1431,7 +1458,7 @@ var Connect = class {
|
|
|
1431
1458
|
this.setCallId(inviteData.callUuid);
|
|
1432
1459
|
} else {
|
|
1433
1460
|
this.setCallId(null);
|
|
1434
|
-
this.callKit.logger.
|
|
1461
|
+
this.callKit.logger.warn("call id is not exist", {
|
|
1435
1462
|
caller: "Connect.register.onInvite",
|
|
1436
1463
|
content: {
|
|
1437
1464
|
inviteData
|
|
@@ -1495,9 +1522,7 @@ var Connect = class {
|
|
|
1495
1522
|
onDisconnect: (error) => {
|
|
1496
1523
|
console.log("onDisconnect", error);
|
|
1497
1524
|
if (error) {
|
|
1498
|
-
this.
|
|
1499
|
-
} else {
|
|
1500
|
-
this.callKit.logger.info("SIP User Agent Disconnected", {
|
|
1525
|
+
this.callKit.logger.info("SIP User Agent Disconnected with error", {
|
|
1501
1526
|
caller: "Connect.register",
|
|
1502
1527
|
type: "SIP",
|
|
1503
1528
|
content: {
|
|
@@ -1505,6 +1530,13 @@ var Connect = class {
|
|
|
1505
1530
|
errCode: ErrorCode.WEBRTC_USER_AGENT_ERROR
|
|
1506
1531
|
}
|
|
1507
1532
|
});
|
|
1533
|
+
this.startReconnectTimer();
|
|
1534
|
+
} else {
|
|
1535
|
+
this.callKit.logger.info("SIP User Agent Disconnected", {
|
|
1536
|
+
caller: "Connect.register",
|
|
1537
|
+
type: "SIP",
|
|
1538
|
+
content: {}
|
|
1539
|
+
});
|
|
1508
1540
|
}
|
|
1509
1541
|
},
|
|
1510
1542
|
onRegister: () => {
|
|
@@ -1613,6 +1645,15 @@ var Connect = class {
|
|
|
1613
1645
|
}
|
|
1614
1646
|
});
|
|
1615
1647
|
});
|
|
1648
|
+
await this.userAgent?.stop().catch((err) => {
|
|
1649
|
+
this.callKit.logger.warn(err, {
|
|
1650
|
+
caller: "Connect.unregister",
|
|
1651
|
+
type: "SIP",
|
|
1652
|
+
content: {
|
|
1653
|
+
errCode: ErrorCode.WEBRTC_CANCEL_REGISTER_ERROR
|
|
1654
|
+
}
|
|
1655
|
+
});
|
|
1656
|
+
});
|
|
1616
1657
|
}
|
|
1617
1658
|
async call(callback) {
|
|
1618
1659
|
this.callKit.logger.info("connect call", {
|
|
@@ -1847,12 +1888,11 @@ var Connect = class {
|
|
|
1847
1888
|
}
|
|
1848
1889
|
};
|
|
1849
1890
|
|
|
1850
|
-
//
|
|
1891
|
+
// core/socket.ts
|
|
1851
1892
|
var RECONNECT_CONFIG = {
|
|
1852
1893
|
enabled: true,
|
|
1853
1894
|
maxAttempts: 3,
|
|
1854
|
-
delay:
|
|
1855
|
-
backoffMultiplier: 1.5,
|
|
1895
|
+
delay: 1e3,
|
|
1856
1896
|
pingInterval: 3e4,
|
|
1857
1897
|
pingTimeout: 5e3
|
|
1858
1898
|
};
|
|
@@ -1897,6 +1937,9 @@ var Socket = class {
|
|
|
1897
1937
|
});
|
|
1898
1938
|
return;
|
|
1899
1939
|
}
|
|
1940
|
+
if (this.socketError) {
|
|
1941
|
+
return;
|
|
1942
|
+
}
|
|
1900
1943
|
if (this.isReconnecting) {
|
|
1901
1944
|
return;
|
|
1902
1945
|
}
|
|
@@ -1909,8 +1952,8 @@ var Socket = class {
|
|
|
1909
1952
|
this.ws.onerror = null;
|
|
1910
1953
|
this.ws.onmessage = null;
|
|
1911
1954
|
}
|
|
1912
|
-
if (this.ws
|
|
1913
|
-
this.ws
|
|
1955
|
+
if (this.ws?.readyState === WebSocket.CONNECTING || this.ws?.readyState === WebSocket.OPEN) {
|
|
1956
|
+
this.ws?.close(1e3, "socket close");
|
|
1914
1957
|
this.callKit.logger.info("socket clear", {
|
|
1915
1958
|
caller: "Socket.clearWebSocket",
|
|
1916
1959
|
type: "INCALL",
|
|
@@ -1969,9 +2012,6 @@ var Socket = class {
|
|
|
1969
2012
|
type: "INCALL",
|
|
1970
2013
|
content: { ev }
|
|
1971
2014
|
});
|
|
1972
|
-
if (this.socketError) {
|
|
1973
|
-
return;
|
|
1974
|
-
}
|
|
1975
2015
|
this.handleDisconnect();
|
|
1976
2016
|
}
|
|
1977
2017
|
onError(ev) {
|
|
@@ -2300,7 +2340,6 @@ var Socket = class {
|
|
|
2300
2340
|
this.resetReconnectState();
|
|
2301
2341
|
this.lastPingTime = void 0;
|
|
2302
2342
|
this.satrtConfirm = false;
|
|
2303
|
-
this.socketError = false;
|
|
2304
2343
|
this.clearWebSocket();
|
|
2305
2344
|
}
|
|
2306
2345
|
attemptReconnect() {
|
|
@@ -2350,7 +2389,7 @@ var Socket = class {
|
|
|
2350
2389
|
}
|
|
2351
2390
|
};
|
|
2352
2391
|
|
|
2353
|
-
//
|
|
2392
|
+
// core/index.ts
|
|
2354
2393
|
var CallKit = class {
|
|
2355
2394
|
api;
|
|
2356
2395
|
config;
|