Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Q
qingdaoMuseumPlatform
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
node_server
qingdaoMuseumPlatform
Commits
8874fba1
Commit
8874fba1
authored
Jun 17, 2026
by
PC-20251223ZVQQ\Administrator
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
mqtt服务
parent
d6c9a9f9
Show whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
1187 additions
and
66 deletions
+1187
-66
package-lock.json
package-lock.json
+978
-64
package.json
package.json
+1
-0
serverConfig.xml
serverConfig.xml
+7
-0
mqttClient.ts
src/biz/mqttClient.ts
+110
-0
running.ts
src/biz/running.ts
+19
-0
serverConfig.ts
src/config/serverConfig.ts
+15
-1
systemClass.ts
src/config/systemClass.ts
+8
-1
main.ts
src/main.ts
+3
-0
mqttInit.ts
src/service/mqttInit.ts
+46
-0
No files found.
package-lock.json
View file @
8874fba1
...
...
@@ -24,6 +24,7 @@
"md5"
:
"^2.2.1"
,
"moment"
:
"^2.24.0"
,
"mongoose"
:
"^7.6.0"
,
"mqtt"
:
"^5.15.1"
,
"mysql"
:
"^2.18.1"
,
"mysql2"
:
"^3.6.0"
,
"node-xlsx"
:
"^0.16.1"
,
...
...
@@ -111,18 +112,14 @@
}
},
"node_modules/@babel/runtime"
:
{
"version"
:
"7.13.10"
,
"resolved"
:
"https://registry.npmjs.org/@babel/runtime/-/runtime-7.13.10.tgz"
,
"integrity"
:
"sha512-4QPkjJq6Ns3V/RgpEahRk+AGfL0eO6RHHtTWoNNr5mO49G6B5+X6d6THgWEAvTrznU5xYpbAlVKRYcsCgh/Akw=="
,
"dependencies"
:
{
"regenerator-runtime"
:
"^0.13.4"
"version"
:
"7.29.7"
,
"resolved"
:
"https://registry.npmmirror.com/@babel/runtime/-/runtime-7.29.7.tgz"
,
"integrity"
:
"sha512-Nq8OhGWiZIZGV6hLHoyAKLLcJihP/xFeBMGJoUrxTX2psI8dCifzLhZISFb+VWS3wFMRDmCGw5R+dOySCqPLhw=="
,
"license"
:
"MIT"
,
"engines"
:
{
"node"
:
">=6.9.0"
}
},
"node_modules/@babel/runtime/node_modules/regenerator-runtime"
:
{
"version"
:
"0.13.7"
,
"resolved"
:
"https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz"
,
"integrity"
:
"sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew=="
},
"node_modules/@colors/colors"
:
{
"version"
:
"1.6.0"
,
"resolved"
:
"https://registry.npmmirror.com/@colors/colors/-/colors-1.6.0.tgz"
,
...
...
@@ -235,6 +232,15 @@
"integrity"
:
"sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ=="
,
"dev"
:
true
},
"node_modules/@types/readable-stream"
:
{
"version"
:
"4.0.23"
,
"resolved"
:
"https://registry.npmmirror.com/@types/readable-stream/-/readable-stream-4.0.23.tgz"
,
"integrity"
:
"sha512-wwXrtQvbMHxCbBgjHaMGEmImFTQxxpfMOR/ZoQnXxB1woqkUbdLGFDgauo00Py9IudiaqSeiBiulSV9i6XIPig=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"@types/node"
:
"*"
}
},
"node_modules/@types/send"
:
{
"version"
:
"0.17.4"
,
"resolved"
:
"https://registry.npmmirror.com/@types/send/-/send-0.17.4.tgz"
,
...
...
@@ -280,6 +286,27 @@
"@types/webidl-conversions"
:
"*"
}
},
"node_modules/@types/ws"
:
{
"version"
:
"8.18.1"
,
"resolved"
:
"https://registry.npmmirror.com/@types/ws/-/ws-8.18.1.tgz"
,
"integrity"
:
"sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"@types/node"
:
"*"
}
},
"node_modules/abort-controller"
:
{
"version"
:
"3.0.0"
,
"resolved"
:
"https://registry.npmmirror.com/abort-controller/-/abort-controller-3.0.0.tgz"
,
"integrity"
:
"sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"event-target-shim"
:
"^5.0.0"
},
"engines"
:
{
"node"
:
">=6.5"
}
},
"node_modules/accepts"
:
{
"version"
:
"1.3.7"
,
"resolved"
:
"https://registry.npm.taobao.org/accepts/download/accepts-1.3.7.tgz"
,
...
...
@@ -406,6 +433,26 @@
"regenerator-runtime"
:
"^0.11.0"
}
},
"node_modules/base64-js"
:
{
"version"
:
"1.5.1"
,
"resolved"
:
"https://registry.npmmirror.com/base64-js/-/base64-js-1.5.1.tgz"
,
"integrity"
:
"sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA=="
,
"funding"
:
[
{
"type"
:
"github"
,
"url"
:
"https://github.com/sponsors/feross"
},
{
"type"
:
"patreon"
,
"url"
:
"https://www.patreon.com/feross"
},
{
"type"
:
"consulting"
,
"url"
:
"https://feross.org/support"
}
],
"license"
:
"MIT"
},
"node_modules/bcrypt-pbkdf"
:
{
"version"
:
"1.0.2"
,
"resolved"
:
"https://registry.npm.taobao.org/bcrypt-pbkdf/download/bcrypt-pbkdf-1.0.2.tgz"
,
...
...
@@ -422,6 +469,63 @@
"node"
:
"*"
}
},
"node_modules/bl"
:
{
"version"
:
"6.1.6"
,
"resolved"
:
"https://registry.npmmirror.com/bl/-/bl-6.1.6.tgz"
,
"integrity"
:
"sha512-jLsPgN/YSvPUg9UX0Kd73CXpm2Psg9FxMeCSXnk3WBO3CMT10JMwijubhGfHCnFu6TPn1ei3b975dxv7K2pWVg=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"@types/readable-stream"
:
"^4.0.0"
,
"buffer"
:
"^6.0.3"
,
"inherits"
:
"^2.0.4"
,
"readable-stream"
:
"^4.2.0"
}
},
"node_modules/bl/node_modules/readable-stream"
:
{
"version"
:
"4.7.0"
,
"resolved"
:
"https://registry.npmmirror.com/readable-stream/-/readable-stream-4.7.0.tgz"
,
"integrity"
:
"sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"abort-controller"
:
"^3.0.0"
,
"buffer"
:
"^6.0.3"
,
"events"
:
"^3.3.0"
,
"process"
:
"^0.11.10"
,
"string_decoder"
:
"^1.3.0"
},
"engines"
:
{
"node"
:
"^12.22.0 || ^14.17.0 || >=16.0.0"
}
},
"node_modules/bl/node_modules/safe-buffer"
:
{
"version"
:
"5.2.1"
,
"resolved"
:
"https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.2.1.tgz"
,
"integrity"
:
"sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
,
"funding"
:
[
{
"type"
:
"github"
,
"url"
:
"https://github.com/sponsors/feross"
},
{
"type"
:
"patreon"
,
"url"
:
"https://www.patreon.com/feross"
},
{
"type"
:
"consulting"
,
"url"
:
"https://feross.org/support"
}
],
"license"
:
"MIT"
},
"node_modules/bl/node_modules/string_decoder"
:
{
"version"
:
"1.3.0"
,
"resolved"
:
"https://registry.npmmirror.com/string_decoder/-/string_decoder-1.3.0.tgz"
,
"integrity"
:
"sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"safe-buffer"
:
"~5.2.0"
}
},
"node_modules/body-parser"
:
{
"version"
:
"1.20.3"
,
"resolved"
:
"https://registry.npmmirror.com/body-parser/-/body-parser-1.20.3.tgz"
,
...
...
@@ -507,6 +611,24 @@
"url"
:
"https://github.com/sponsors/ljharb"
}
},
"node_modules/broker-factory"
:
{
"version"
:
"3.1.15"
,
"resolved"
:
"https://registry.npmmirror.com/broker-factory/-/broker-factory-3.1.15.tgz"
,
"integrity"
:
"sha512-ko+aWvgNuP49meGrdjUu7rC+Y+Wai3cCPxP3xWwHsHfehFjOh5ZQM2yC4gEB2UddeZ/YXhm0K1eG/L6fxym2Og=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"@babel/runtime"
:
"^7.29.7"
,
"fast-unique-numbers"
:
"^9.0.27"
,
"tslib"
:
"^2.8.1"
,
"worker-factory"
:
"^7.0.50"
}
},
"node_modules/broker-factory/node_modules/tslib"
:
{
"version"
:
"2.8.1"
,
"resolved"
:
"https://registry.npmmirror.com/tslib/-/tslib-2.8.1.tgz"
,
"integrity"
:
"sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="
,
"license"
:
"0BSD"
},
"node_modules/bson"
:
{
"version"
:
"6.1.0"
,
"resolved"
:
"https://registry.npmmirror.com/bson/-/bson-6.1.0.tgz"
,
...
...
@@ -515,6 +637,30 @@
"node"
:
">=16.20.1"
}
},
"node_modules/buffer"
:
{
"version"
:
"6.0.3"
,
"resolved"
:
"https://registry.npmmirror.com/buffer/-/buffer-6.0.3.tgz"
,
"integrity"
:
"sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA=="
,
"funding"
:
[
{
"type"
:
"github"
,
"url"
:
"https://github.com/sponsors/feross"
},
{
"type"
:
"patreon"
,
"url"
:
"https://www.patreon.com/feross"
},
{
"type"
:
"consulting"
,
"url"
:
"https://feross.org/support"
}
],
"license"
:
"MIT"
,
"dependencies"
:
{
"base64-js"
:
"^1.3.1"
,
"ieee754"
:
"^1.2.1"
}
},
"node_modules/buffer-from"
:
{
"version"
:
"1.1.1"
,
"resolved"
:
"https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz"
,
...
...
@@ -718,6 +864,12 @@
"integrity"
:
"sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg=="
,
"license"
:
"MIT"
},
"node_modules/commist"
:
{
"version"
:
"3.2.0"
,
"resolved"
:
"https://registry.npmmirror.com/commist/-/commist-3.2.0.tgz"
,
"integrity"
:
"sha512-4PIMoPniho+LqXmpS5d3NuGYncG6XWlkBSVGiWycL22dd42OYdUGil2CWuzklaJoNxyxUSpO4MKIBU94viWNAw=="
,
"license"
:
"MIT"
},
"node_modules/compressible"
:
{
"version"
:
"2.0.18"
,
"resolved"
:
"https://registry.npmmirror.com/compressible/-/compressible-2.0.18.tgz"
,
...
...
@@ -746,6 +898,35 @@
"node"
:
">= 0.8.0"
}
},
"node_modules/concat-stream"
:
{
"version"
:
"2.0.0"
,
"resolved"
:
"https://registry.npmmirror.com/concat-stream/-/concat-stream-2.0.0.tgz"
,
"integrity"
:
"sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A=="
,
"engines"
:
[
"node >= 6.0"
],
"license"
:
"MIT"
,
"dependencies"
:
{
"buffer-from"
:
"^1.0.0"
,
"inherits"
:
"^2.0.3"
,
"readable-stream"
:
"^3.0.2"
,
"typedarray"
:
"^0.0.6"
}
},
"node_modules/concat-stream/node_modules/readable-stream"
:
{
"version"
:
"3.6.2"
,
"resolved"
:
"https://registry.npmmirror.com/readable-stream/-/readable-stream-3.6.2.tgz"
,
"integrity"
:
"sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"inherits"
:
"^2.0.3"
,
"string_decoder"
:
"^1.1.1"
,
"util-deprecate"
:
"^1.0.1"
},
"engines"
:
{
"node"
:
">= 6"
}
},
"node_modules/connect-history-api-fallback"
:
{
"version"
:
"2.0.0"
,
"resolved"
:
"https://registry.npmmirror.com/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz"
,
...
...
@@ -988,6 +1169,24 @@
"node"
:
">= 0.6"
}
},
"node_modules/event-target-shim"
:
{
"version"
:
"5.0.1"
,
"resolved"
:
"https://registry.npmmirror.com/event-target-shim/-/event-target-shim-5.0.1.tgz"
,
"integrity"
:
"sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ=="
,
"license"
:
"MIT"
,
"engines"
:
{
"node"
:
">=6"
}
},
"node_modules/events"
:
{
"version"
:
"3.3.0"
,
"resolved"
:
"https://registry.npmmirror.com/events/-/events-3.3.0.tgz"
,
"integrity"
:
"sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q=="
,
"license"
:
"MIT"
,
"engines"
:
{
"node"
:
">=0.8.x"
}
},
"node_modules/exit-on-epipe"
:
{
"version"
:
"1.0.1"
,
"resolved"
:
"https://registry.npmmirror.com/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz"
,
...
...
@@ -1176,6 +1375,25 @@
"resolved"
:
"https://registry.npm.taobao.org/fast-json-stable-stringify/download/fast-json-stable-stringify-2.1.0.tgz"
,
"integrity"
:
"sha1-h0v2nG9ATCtdmcSBNBOZ/VWJJjM="
},
"node_modules/fast-unique-numbers"
:
{
"version"
:
"9.0.27"
,
"resolved"
:
"https://registry.npmmirror.com/fast-unique-numbers/-/fast-unique-numbers-9.0.27.tgz"
,
"integrity"
:
"sha512-nDA9ADeINN8SA2u2wCtU+siWFTTDqQR37XvgPIDDmboWQeExz7X0mImxuaN+kJddliIqy2FpVRmnvRZ+j8i1/A=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"@babel/runtime"
:
"^7.29.2"
,
"tslib"
:
"^2.8.1"
},
"engines"
:
{
"node"
:
">=18.2.0"
}
},
"node_modules/fast-unique-numbers/node_modules/tslib"
:
{
"version"
:
"2.8.1"
,
"resolved"
:
"https://registry.npmmirror.com/tslib/-/tslib-2.8.1.tgz"
,
"integrity"
:
"sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="
,
"license"
:
"0BSD"
},
"node_modules/fecha"
:
{
"version"
:
"4.2.3"
,
"resolved"
:
"https://registry.npmmirror.com/fecha/-/fecha-4.2.3.tgz"
,
...
...
@@ -1416,6 +1634,12 @@
"url"
:
"https://github.com/sponsors/ljharb"
}
},
"node_modules/help-me"
:
{
"version"
:
"5.0.0"
,
"resolved"
:
"https://registry.npmmirror.com/help-me/-/help-me-5.0.0.tgz"
,
"integrity"
:
"sha512-7xgomUX6ADmcYzFik0HzAxh/73YlKR9bmFzf51CZwR+b6YtzU2m0u49hQCqV6SvlqIqsaxovfwdvbnsw3b/zpg=="
,
"license"
:
"MIT"
},
"node_modules/http-errors"
:
{
"version"
:
"2.0.0"
,
"resolved"
:
"https://registry.npmmirror.com/http-errors/-/http-errors-2.0.0.tgz"
,
...
...
@@ -1431,11 +1655,6 @@
"node"
:
">= 0.8"
}
},
"node_modules/http-errors/node_modules/inherits"
:
{
"version"
:
"2.0.4"
,
"resolved"
:
"https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz"
,
"integrity"
:
"sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
},
"node_modules/http-signature"
:
{
"version"
:
"1.2.0"
,
"resolved"
:
"https://registry.npm.taobao.org/http-signature/download/http-signature-1.2.0.tgz?cache=0&sync_timestamp=1600868613104&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhttp-signature%2Fdownload%2Fhttp-signature-1.2.0.tgz"
,
...
...
@@ -1533,6 +1752,26 @@
"url"
:
"https://opencollective.com/express"
}
},
"node_modules/ieee754"
:
{
"version"
:
"1.2.1"
,
"resolved"
:
"https://registry.npmmirror.com/ieee754/-/ieee754-1.2.1.tgz"
,
"integrity"
:
"sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA=="
,
"funding"
:
[
{
"type"
:
"github"
,
"url"
:
"https://github.com/sponsors/feross"
},
{
"type"
:
"patreon"
,
"url"
:
"https://www.patreon.com/feross"
},
{
"type"
:
"consulting"
,
"url"
:
"https://feross.org/support"
}
],
"license"
:
"BSD-3-Clause"
},
"node_modules/inflection"
:
{
"version"
:
"1.13.4"
,
"resolved"
:
"https://registry.npmjs.org/inflection/-/inflection-1.13.4.tgz"
,
...
...
@@ -1542,14 +1781,19 @@
]
},
"node_modules/inherits"
:
{
"version"
:
"2.0.3"
,
"resolved"
:
"https://registry.npm.taobao.org/inherits/download/inherits-2.0.3.tgz"
,
"integrity"
:
"sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
"version"
:
"2.0.4"
,
"resolved"
:
"https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz"
,
"integrity"
:
"sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
,
"license"
:
"ISC"
},
"node_modules/ip"
:
{
"version"
:
"2.0.0"
,
"resolved"
:
"https://registry.npmmirror.com/ip/-/ip-2.0.0.tgz"
,
"integrity"
:
"sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ=="
"node_modules/ip-address"
:
{
"version"
:
"10.2.0"
,
"resolved"
:
"https://registry.npmmirror.com/ip-address/-/ip-address-10.2.0.tgz"
,
"integrity"
:
"sha512-/+S6j4E9AHvW9SWMSEY9Xfy66O5PWvVEJ08O0y5JGyEKQpojb0K0GKpz/v5HJ/G0vi3D2sjGK78119oXZeE0qA=="
,
"license"
:
"MIT"
,
"engines"
:
{
"node"
:
">= 12"
}
},
"node_modules/ipaddr.js"
:
{
"version"
:
"1.9.1"
,
...
...
@@ -1600,6 +1844,16 @@
"resolved"
:
"https://registry.npm.taobao.org/isstream/download/isstream-0.1.2.tgz"
,
"integrity"
:
"sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo="
},
"node_modules/js-sdsl"
:
{
"version"
:
"4.3.0"
,
"resolved"
:
"https://registry.npmmirror.com/js-sdsl/-/js-sdsl-4.3.0.tgz"
,
"integrity"
:
"sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ=="
,
"license"
:
"MIT"
,
"funding"
:
{
"type"
:
"opencollective"
,
"url"
:
"https://opencollective.com/js-sdsl"
}
},
"node_modules/jsbn"
:
{
"version"
:
"0.1.1"
,
"resolved"
:
"https://registry.npm.taobao.org/jsbn/download/jsbn-0.1.1.tgz"
,
...
...
@@ -1822,6 +2076,15 @@
"node"
:
">= 0.6"
}
},
"node_modules/minimist"
:
{
"version"
:
"1.2.8"
,
"resolved"
:
"https://registry.npmmirror.com/minimist/-/minimist-1.2.8.tgz"
,
"integrity"
:
"sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA=="
,
"license"
:
"MIT"
,
"funding"
:
{
"url"
:
"https://github.com/sponsors/ljharb"
}
},
"node_modules/moment"
:
{
"version"
:
"2.29.1"
,
"resolved"
:
"https://registry.npm.taobao.org/moment/download/moment-2.29.1.tgz?cache=0&sync_timestamp=1601983320283&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmoment%2Fdownload%2Fmoment-2.29.1.tgz"
,
...
...
@@ -1979,6 +2242,167 @@
"node"
:
">=4.0.0"
}
},
"node_modules/mqtt"
:
{
"version"
:
"5.15.1"
,
"resolved"
:
"https://registry.npmmirror.com/mqtt/-/mqtt-5.15.1.tgz"
,
"integrity"
:
"sha512-V1WnkGuJh3ec9QXzy5Iylw8OOBK+Xu1WhxcQ9mMpLThG+/JZIMV1PgLNRgIiqXhZnvnVLsuyxHl5A/3bHHbcAA=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"@types/readable-stream"
:
"^4.0.21"
,
"@types/ws"
:
"^8.18.1"
,
"commist"
:
"^3.2.0"
,
"concat-stream"
:
"^2.0.0"
,
"debug"
:
"^4.4.1"
,
"help-me"
:
"^5.0.0"
,
"lru-cache"
:
"^10.4.3"
,
"minimist"
:
"^1.2.8"
,
"mqtt-packet"
:
"^9.0.2"
,
"number-allocator"
:
"^1.0.14"
,
"readable-stream"
:
"^4.7.0"
,
"rfdc"
:
"^1.4.1"
,
"socks"
:
"^2.8.6"
,
"split2"
:
"^4.2.0"
,
"worker-timers"
:
"^8.0.23"
,
"ws"
:
"^8.18.3"
},
"bin"
:
{
"mqtt"
:
"build/bin/mqtt.js"
,
"mqtt_pub"
:
"build/bin/pub.js"
,
"mqtt_sub"
:
"build/bin/sub.js"
},
"engines"
:
{
"node"
:
">=16.0.0"
}
},
"node_modules/mqtt-packet"
:
{
"version"
:
"9.0.2"
,
"resolved"
:
"https://registry.npmmirror.com/mqtt-packet/-/mqtt-packet-9.0.2.tgz"
,
"integrity"
:
"sha512-MvIY0B8/qjq7bKxdN1eD+nrljoeaai+qjLJgfRn3TiMuz0pamsIWY2bFODPZMSNmabsLANXsLl4EMoWvlaTZWA=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"bl"
:
"^6.0.8"
,
"debug"
:
"^4.3.4"
,
"process-nextick-args"
:
"^2.0.1"
}
},
"node_modules/mqtt-packet/node_modules/debug"
:
{
"version"
:
"4.4.3"
,
"resolved"
:
"https://registry.npmmirror.com/debug/-/debug-4.4.3.tgz"
,
"integrity"
:
"sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"ms"
:
"^2.1.3"
},
"engines"
:
{
"node"
:
">=6.0"
},
"peerDependenciesMeta"
:
{
"supports-color"
:
{
"optional"
:
true
}
}
},
"node_modules/mqtt-packet/node_modules/ms"
:
{
"version"
:
"2.1.3"
,
"resolved"
:
"https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz"
,
"integrity"
:
"sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
,
"license"
:
"MIT"
},
"node_modules/mqtt/node_modules/debug"
:
{
"version"
:
"4.4.3"
,
"resolved"
:
"https://registry.npmmirror.com/debug/-/debug-4.4.3.tgz"
,
"integrity"
:
"sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"ms"
:
"^2.1.3"
},
"engines"
:
{
"node"
:
">=6.0"
},
"peerDependenciesMeta"
:
{
"supports-color"
:
{
"optional"
:
true
}
}
},
"node_modules/mqtt/node_modules/lru-cache"
:
{
"version"
:
"10.4.3"
,
"resolved"
:
"https://registry.npmmirror.com/lru-cache/-/lru-cache-10.4.3.tgz"
,
"integrity"
:
"sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ=="
,
"license"
:
"ISC"
},
"node_modules/mqtt/node_modules/ms"
:
{
"version"
:
"2.1.3"
,
"resolved"
:
"https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz"
,
"integrity"
:
"sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
,
"license"
:
"MIT"
},
"node_modules/mqtt/node_modules/readable-stream"
:
{
"version"
:
"4.7.0"
,
"resolved"
:
"https://registry.npmmirror.com/readable-stream/-/readable-stream-4.7.0.tgz"
,
"integrity"
:
"sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"abort-controller"
:
"^3.0.0"
,
"buffer"
:
"^6.0.3"
,
"events"
:
"^3.3.0"
,
"process"
:
"^0.11.10"
,
"string_decoder"
:
"^1.3.0"
},
"engines"
:
{
"node"
:
"^12.22.0 || ^14.17.0 || >=16.0.0"
}
},
"node_modules/mqtt/node_modules/safe-buffer"
:
{
"version"
:
"5.2.1"
,
"resolved"
:
"https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.2.1.tgz"
,
"integrity"
:
"sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
,
"funding"
:
[
{
"type"
:
"github"
,
"url"
:
"https://github.com/sponsors/feross"
},
{
"type"
:
"patreon"
,
"url"
:
"https://www.patreon.com/feross"
},
{
"type"
:
"consulting"
,
"url"
:
"https://feross.org/support"
}
],
"license"
:
"MIT"
},
"node_modules/mqtt/node_modules/string_decoder"
:
{
"version"
:
"1.3.0"
,
"resolved"
:
"https://registry.npmmirror.com/string_decoder/-/string_decoder-1.3.0.tgz"
,
"integrity"
:
"sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"safe-buffer"
:
"~5.2.0"
}
},
"node_modules/mqtt/node_modules/ws"
:
{
"version"
:
"8.21.0"
,
"resolved"
:
"https://registry.npmmirror.com/ws/-/ws-8.21.0.tgz"
,
"integrity"
:
"sha512-Vsp28b7DRcimFQvrqu2Wek3z1iYxDCWqHYB8Qsnk/S4RfaCQzPGPyBNuVjJV3cd6UiKtUtp6sNM77gWvzcCH+g=="
,
"license"
:
"MIT"
,
"engines"
:
{
"node"
:
">=10.0.0"
},
"peerDependencies"
:
{
"bufferutil"
:
"^4.0.1"
,
"utf-8-validate"
:
">=5.0.2"
},
"peerDependenciesMeta"
:
{
"bufferutil"
:
{
"optional"
:
true
},
"utf-8-validate"
:
{
"optional"
:
true
}
}
},
"node_modules/mquery"
:
{
"version"
:
"5.0.0"
,
"resolved"
:
"https://registry.npmmirror.com/mquery/-/mquery-5.0.0.tgz"
,
...
...
@@ -2226,6 +2650,39 @@
"node"
:
">=6.0.0"
}
},
"node_modules/number-allocator"
:
{
"version"
:
"1.0.14"
,
"resolved"
:
"https://registry.npmmirror.com/number-allocator/-/number-allocator-1.0.14.tgz"
,
"integrity"
:
"sha512-OrL44UTVAvkKdOdRQZIJpLkAdjXGTRda052sN4sO77bKEzYYqWKMBjQvrJFzqygI99gL6Z4u2xctPW1tB8ErvA=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"debug"
:
"^4.3.1"
,
"js-sdsl"
:
"4.3.0"
}
},
"node_modules/number-allocator/node_modules/debug"
:
{
"version"
:
"4.4.3"
,
"resolved"
:
"https://registry.npmmirror.com/debug/-/debug-4.4.3.tgz"
,
"integrity"
:
"sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"ms"
:
"^2.1.3"
},
"engines"
:
{
"node"
:
">=6.0"
},
"peerDependenciesMeta"
:
{
"supports-color"
:
{
"optional"
:
true
}
}
},
"node_modules/number-allocator/node_modules/ms"
:
{
"version"
:
"2.1.3"
,
"resolved"
:
"https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz"
,
"integrity"
:
"sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
,
"license"
:
"MIT"
},
"node_modules/oauth-sign"
:
{
"version"
:
"0.9.0"
,
"resolved"
:
"https://registry.npm.taobao.org/oauth-sign/download/oauth-sign-0.9.0.tgz"
,
...
...
@@ -2315,6 +2772,15 @@
"node"
:
">=0.8"
}
},
"node_modules/process"
:
{
"version"
:
"0.11.10"
,
"resolved"
:
"https://registry.npmmirror.com/process/-/process-0.11.10.tgz"
,
"integrity"
:
"sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A=="
,
"license"
:
"MIT"
,
"engines"
:
{
"node"
:
">= 0.6.0"
}
},
"node_modules/process-nextick-args"
:
{
"version"
:
"2.0.1"
,
"resolved"
:
"https://registry.npm.taobao.org/process-nextick-args/download/process-nextick-args-2.0.1.tgz"
,
...
...
@@ -2469,9 +2935,10 @@
"integrity"
:
"sha512-XgmCoxKWkDofwH8WddD0w85ZfqYz+ZHlr5yo+3YUCfycWawU56T5ckWXsScsj5B8tqUcIG67DxXByo3VUgiAdA=="
},
"node_modules/rfdc"
:
{
"version"
:
"1.3.0"
,
"resolved"
:
"https://registry.npmmirror.com/rfdc/-/rfdc-1.3.0.tgz"
,
"integrity"
:
"sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA=="
"version"
:
"1.4.1"
,
"resolved"
:
"https://registry.npmmirror.com/rfdc/-/rfdc-1.4.1.tgz"
,
"integrity"
:
"sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA=="
,
"license"
:
"MIT"
},
"node_modules/safe-buffer"
:
{
"version"
:
"5.1.2"
,
...
...
@@ -2895,15 +3362,16 @@
}
},
"node_modules/socks"
:
{
"version"
:
"2.7.1"
,
"resolved"
:
"https://registry.npmmirror.com/socks/-/socks-2.7.1.tgz"
,
"integrity"
:
"sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ=="
,
"version"
:
"2.8.9"
,
"resolved"
:
"https://registry.npmmirror.com/socks/-/socks-2.8.9.tgz"
,
"integrity"
:
"sha512-LJhUYUvItdQ0LkJTmPeaEObWXAqFyfmP85x0tch/ez9cahmhlBBLbIqDFnvBnUJGagb0JbIQrkBs1wJ+yRYpEw=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"ip
"
:
"^2.0.0
"
,
"ip
-address"
:
"^10.1.1
"
,
"smart-buffer"
:
"^4.2.0"
},
"engines"
:
{
"node"
:
">= 10.
13
.0"
,
"node"
:
">= 10.
0
.0"
,
"npm"
:
">= 3.0.0"
}
},
...
...
@@ -2916,6 +3384,15 @@
"memory-pager"
:
"^1.0.2"
}
},
"node_modules/split2"
:
{
"version"
:
"4.2.0"
,
"resolved"
:
"https://registry.npmmirror.com/split2/-/split2-4.2.0.tgz"
,
"integrity"
:
"sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg=="
,
"license"
:
"ISC"
,
"engines"
:
{
"node"
:
">= 10.x"
}
},
"node_modules/sqlstring"
:
{
"version"
:
"2.3.1"
,
"resolved"
:
"https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.1.tgz"
,
...
...
@@ -3155,6 +3632,12 @@
"node"
:
">= 0.6"
}
},
"node_modules/typedarray"
:
{
"version"
:
"0.0.6"
,
"resolved"
:
"https://registry.npmmirror.com/typedarray/-/typedarray-0.0.6.tgz"
,
"integrity"
:
"sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA=="
,
"license"
:
"MIT"
},
"node_modules/universalify"
:
{
"version"
:
"0.1.2"
,
"resolved"
:
"https://registry.npmmirror.com/universalify/-/universalify-0.1.2.tgz"
,
...
...
@@ -3328,6 +3811,77 @@
"node"
:
">=0.8"
}
},
"node_modules/worker-factory"
:
{
"version"
:
"7.0.50"
,
"resolved"
:
"https://registry.npmmirror.com/worker-factory/-/worker-factory-7.0.50.tgz"
,
"integrity"
:
"sha512-hhwc0G+sFwM4qBuhJIUBn2p1Jf8v/FwmLUANBf/Q+Lt2uI8mfIZQhXaZQACodQD4R7Zp6cn/6702bIvNn2puJQ=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"@babel/runtime"
:
"^7.29.7"
,
"fast-unique-numbers"
:
"^9.0.27"
,
"tslib"
:
"^2.8.1"
}
},
"node_modules/worker-factory/node_modules/tslib"
:
{
"version"
:
"2.8.1"
,
"resolved"
:
"https://registry.npmmirror.com/tslib/-/tslib-2.8.1.tgz"
,
"integrity"
:
"sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="
,
"license"
:
"0BSD"
},
"node_modules/worker-timers"
:
{
"version"
:
"8.0.32"
,
"resolved"
:
"https://registry.npmmirror.com/worker-timers/-/worker-timers-8.0.32.tgz"
,
"integrity"
:
"sha512-huEv5mB6xIqcadsZ8SuuFQH9Lg9Hq0h0xD9vAZZsLPNw0aLxoDWyjTALAUD3hAA4cuKbKaqrjbBcbEYClwSh3w=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"@babel/runtime"
:
"^7.29.7"
,
"tslib"
:
"^2.8.1"
,
"worker-timers-broker"
:
"^8.0.16"
,
"worker-timers-worker"
:
"^9.0.14"
}
},
"node_modules/worker-timers-broker"
:
{
"version"
:
"8.0.17"
,
"resolved"
:
"https://registry.npmmirror.com/worker-timers-broker/-/worker-timers-broker-8.0.17.tgz"
,
"integrity"
:
"sha512-avGDVB9AP5k5eCAP2AiT/nwCHGCNla7Z+nMZWXpmhbiSTry6A7VwEzlffTO34/5Eo55O+XLbWQu0bBW3uEO0UA=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"@babel/runtime"
:
"^7.29.7"
,
"broker-factory"
:
"^3.1.15"
,
"fast-unique-numbers"
:
"^9.0.27"
,
"tslib"
:
"^2.8.1"
,
"worker-timers-worker"
:
"^9.0.14"
}
},
"node_modules/worker-timers-broker/node_modules/tslib"
:
{
"version"
:
"2.8.1"
,
"resolved"
:
"https://registry.npmmirror.com/tslib/-/tslib-2.8.1.tgz"
,
"integrity"
:
"sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="
,
"license"
:
"0BSD"
},
"node_modules/worker-timers-worker"
:
{
"version"
:
"9.0.15"
,
"resolved"
:
"https://registry.npmmirror.com/worker-timers-worker/-/worker-timers-worker-9.0.15.tgz"
,
"integrity"
:
"sha512-KKUe7lZ/Aignr51H6hOUik8LwTnIgojH/1lwhli8A8qIEIyewogZTpNpMW5B6BF7nmwBOkUoTYgf1H3QShcjSA=="
,
"license"
:
"MIT"
,
"dependencies"
:
{
"@babel/runtime"
:
"^7.29.7"
,
"tslib"
:
"^2.8.1"
,
"worker-factory"
:
"^7.0.50"
}
},
"node_modules/worker-timers-worker/node_modules/tslib"
:
{
"version"
:
"2.8.1"
,
"resolved"
:
"https://registry.npmmirror.com/tslib/-/tslib-2.8.1.tgz"
,
"integrity"
:
"sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="
,
"license"
:
"0BSD"
},
"node_modules/worker-timers/node_modules/tslib"
:
{
"version"
:
"2.8.1"
,
"resolved"
:
"https://registry.npmmirror.com/tslib/-/tslib-2.8.1.tgz"
,
"integrity"
:
"sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="
,
"license"
:
"0BSD"
},
"node_modules/ws"
:
{
"version"
:
"5.2.2"
,
"resolved"
:
"https://registry.npm.taobao.org/ws/download/ws-5.2.2.tgz?cache=0&sync_timestamp=1615063662500&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fws%2Fdownload%2Fws-5.2.2.tgz"
,
...
...
@@ -3471,19 +4025,9 @@
}
},
"@babel/runtime"
:
{
"version"
:
"7.13.10"
,
"resolved"
:
"https://registry.npmjs.org/@babel/runtime/-/runtime-7.13.10.tgz"
,
"integrity"
:
"sha512-4QPkjJq6Ns3V/RgpEahRk+AGfL0eO6RHHtTWoNNr5mO49G6B5+X6d6THgWEAvTrznU5xYpbAlVKRYcsCgh/Akw=="
,
"requires"
:
{
"regenerator-runtime"
:
"^0.13.4"
},
"dependencies"
:
{
"regenerator-runtime"
:
{
"version"
:
"0.13.7"
,
"resolved"
:
"https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz"
,
"integrity"
:
"sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew=="
}
}
"version"
:
"7.29.7"
,
"resolved"
:
"https://registry.npmmirror.com/@babel/runtime/-/runtime-7.29.7.tgz"
,
"integrity"
:
"sha512-Nq8OhGWiZIZGV6hLHoyAKLLcJihP/xFeBMGJoUrxTX2psI8dCifzLhZISFb+VWS3wFMRDmCGw5R+dOySCqPLhw=="
},
"@colors/colors"
:
{
"version"
:
"1.6.0"
,
...
...
@@ -3594,6 +4138,14 @@
"integrity"
:
"sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ=="
,
"dev"
:
true
},
"@types/readable-stream"
:
{
"version"
:
"4.0.23"
,
"resolved"
:
"https://registry.npmmirror.com/@types/readable-stream/-/readable-stream-4.0.23.tgz"
,
"integrity"
:
"sha512-wwXrtQvbMHxCbBgjHaMGEmImFTQxxpfMOR/ZoQnXxB1woqkUbdLGFDgauo00Py9IudiaqSeiBiulSV9i6XIPig=="
,
"requires"
:
{
"@types/node"
:
"*"
}
},
"@types/send"
:
{
"version"
:
"0.17.4"
,
"resolved"
:
"https://registry.npmmirror.com/@types/send/-/send-0.17.4.tgz"
,
...
...
@@ -3639,6 +4191,22 @@
"@types/webidl-conversions"
:
"*"
}
},
"@types/ws"
:
{
"version"
:
"8.18.1"
,
"resolved"
:
"https://registry.npmmirror.com/@types/ws/-/ws-8.18.1.tgz"
,
"integrity"
:
"sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg=="
,
"requires"
:
{
"@types/node"
:
"*"
}
},
"abort-controller"
:
{
"version"
:
"3.0.0"
,
"resolved"
:
"https://registry.npmmirror.com/abort-controller/-/abort-controller-3.0.0.tgz"
,
"integrity"
:
"sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg=="
,
"requires"
:
{
"event-target-shim"
:
"^5.0.0"
}
},
"accepts"
:
{
"version"
:
"1.3.7"
,
"resolved"
:
"https://registry.npm.taobao.org/accepts/download/accepts-1.3.7.tgz"
,
...
...
@@ -3739,6 +4307,11 @@
"regenerator-runtime"
:
"^0.11.0"
}
},
"base64-js"
:
{
"version"
:
"1.5.1"
,
"resolved"
:
"https://registry.npmmirror.com/base64-js/-/base64-js-1.5.1.tgz"
,
"integrity"
:
"sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA=="
},
"bcrypt-pbkdf"
:
{
"version"
:
"1.0.2"
,
"resolved"
:
"https://registry.npm.taobao.org/bcrypt-pbkdf/download/bcrypt-pbkdf-1.0.2.tgz"
,
...
...
@@ -3752,6 +4325,44 @@
"resolved"
:
"https://registry.npm.taobao.org/bignumber.js/download/bignumber.js-9.0.1.tgz"
,
"integrity"
:
"sha1-jXuhJMiCv9jkMmDGdHVRjQaJ5OU="
},
"bl"
:
{
"version"
:
"6.1.6"
,
"resolved"
:
"https://registry.npmmirror.com/bl/-/bl-6.1.6.tgz"
,
"integrity"
:
"sha512-jLsPgN/YSvPUg9UX0Kd73CXpm2Psg9FxMeCSXnk3WBO3CMT10JMwijubhGfHCnFu6TPn1ei3b975dxv7K2pWVg=="
,
"requires"
:
{
"@types/readable-stream"
:
"^4.0.0"
,
"buffer"
:
"^6.0.3"
,
"inherits"
:
"^2.0.4"
,
"readable-stream"
:
"^4.2.0"
},
"dependencies"
:
{
"readable-stream"
:
{
"version"
:
"4.7.0"
,
"resolved"
:
"https://registry.npmmirror.com/readable-stream/-/readable-stream-4.7.0.tgz"
,
"integrity"
:
"sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg=="
,
"requires"
:
{
"abort-controller"
:
"^3.0.0"
,
"buffer"
:
"^6.0.3"
,
"events"
:
"^3.3.0"
,
"process"
:
"^0.11.10"
,
"string_decoder"
:
"^1.3.0"
}
},
"safe-buffer"
:
{
"version"
:
"5.2.1"
,
"resolved"
:
"https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.2.1.tgz"
,
"integrity"
:
"sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
},
"string_decoder"
:
{
"version"
:
"1.3.0"
,
"resolved"
:
"https://registry.npmmirror.com/string_decoder/-/string_decoder-1.3.0.tgz"
,
"integrity"
:
"sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA=="
,
"requires"
:
{
"safe-buffer"
:
"~5.2.0"
}
}
}
},
"body-parser"
:
{
"version"
:
"1.20.3"
,
"resolved"
:
"https://registry.npmmirror.com/body-parser/-/body-parser-1.20.3.tgz"
,
...
...
@@ -3811,11 +4422,38 @@
}
}
},
"broker-factory"
:
{
"version"
:
"3.1.15"
,
"resolved"
:
"https://registry.npmmirror.com/broker-factory/-/broker-factory-3.1.15.tgz"
,
"integrity"
:
"sha512-ko+aWvgNuP49meGrdjUu7rC+Y+Wai3cCPxP3xWwHsHfehFjOh5ZQM2yC4gEB2UddeZ/YXhm0K1eG/L6fxym2Og=="
,
"requires"
:
{
"@babel/runtime"
:
"^7.29.7"
,
"fast-unique-numbers"
:
"^9.0.27"
,
"tslib"
:
"^2.8.1"
,
"worker-factory"
:
"^7.0.50"
},
"dependencies"
:
{
"tslib"
:
{
"version"
:
"2.8.1"
,
"resolved"
:
"https://registry.npmmirror.com/tslib/-/tslib-2.8.1.tgz"
,
"integrity"
:
"sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="
}
}
},
"bson"
:
{
"version"
:
"6.1.0"
,
"resolved"
:
"https://registry.npmmirror.com/bson/-/bson-6.1.0.tgz"
,
"integrity"
:
"sha512-yiQ3KxvpVoRpx1oD1uPz4Jit9tAVTJgjdmjDKtUErkOoL9VNoF8Dd58qtAOL5E40exx2jvAT9sqdRSK/r+SHlA=="
},
"buffer"
:
{
"version"
:
"6.0.3"
,
"resolved"
:
"https://registry.npmmirror.com/buffer/-/buffer-6.0.3.tgz"
,
"integrity"
:
"sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA=="
,
"requires"
:
{
"base64-js"
:
"^1.3.1"
,
"ieee754"
:
"^1.2.1"
}
},
"buffer-from"
:
{
"version"
:
"1.1.1"
,
"resolved"
:
"https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz"
,
...
...
@@ -3972,6 +4610,11 @@
"resolved"
:
"https://registry.npmmirror.com/commander/-/commander-2.17.1.tgz"
,
"integrity"
:
"sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg=="
},
"commist"
:
{
"version"
:
"3.2.0"
,
"resolved"
:
"https://registry.npmmirror.com/commist/-/commist-3.2.0.tgz"
,
"integrity"
:
"sha512-4PIMoPniho+LqXmpS5d3NuGYncG6XWlkBSVGiWycL22dd42OYdUGil2CWuzklaJoNxyxUSpO4MKIBU94viWNAw=="
},
"compressible"
:
{
"version"
:
"2.0.18"
,
"resolved"
:
"https://registry.npmmirror.com/compressible/-/compressible-2.0.18.tgz"
,
...
...
@@ -3994,6 +4637,29 @@
"vary"
:
"~1.1.2"
}
},
"concat-stream"
:
{
"version"
:
"2.0.0"
,
"resolved"
:
"https://registry.npmmirror.com/concat-stream/-/concat-stream-2.0.0.tgz"
,
"integrity"
:
"sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A=="
,
"requires"
:
{
"buffer-from"
:
"^1.0.0"
,
"inherits"
:
"^2.0.3"
,
"readable-stream"
:
"^3.0.2"
,
"typedarray"
:
"^0.0.6"
},
"dependencies"
:
{
"readable-stream"
:
{
"version"
:
"3.6.2"
,
"resolved"
:
"https://registry.npmmirror.com/readable-stream/-/readable-stream-3.6.2.tgz"
,
"integrity"
:
"sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA=="
,
"requires"
:
{
"inherits"
:
"^2.0.3"
,
"string_decoder"
:
"^1.1.1"
,
"util-deprecate"
:
"^1.0.1"
}
}
}
},
"connect-history-api-fallback"
:
{
"version"
:
"2.0.0"
,
"resolved"
:
"https://registry.npmmirror.com/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz"
,
...
...
@@ -4162,6 +4828,16 @@
"resolved"
:
"https://registry.npmmirror.com/etag/-/etag-1.8.1.tgz"
,
"integrity"
:
"sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg=="
},
"event-target-shim"
:
{
"version"
:
"5.0.1"
,
"resolved"
:
"https://registry.npmmirror.com/event-target-shim/-/event-target-shim-5.0.1.tgz"
,
"integrity"
:
"sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ=="
},
"events"
:
{
"version"
:
"3.3.0"
,
"resolved"
:
"https://registry.npmmirror.com/events/-/events-3.3.0.tgz"
,
"integrity"
:
"sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q=="
},
"exit-on-epipe"
:
{
"version"
:
"1.0.1"
,
"resolved"
:
"https://registry.npmmirror.com/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz"
,
...
...
@@ -4294,6 +4970,22 @@
"resolved"
:
"https://registry.npm.taobao.org/fast-json-stable-stringify/download/fast-json-stable-stringify-2.1.0.tgz"
,
"integrity"
:
"sha1-h0v2nG9ATCtdmcSBNBOZ/VWJJjM="
},
"fast-unique-numbers"
:
{
"version"
:
"9.0.27"
,
"resolved"
:
"https://registry.npmmirror.com/fast-unique-numbers/-/fast-unique-numbers-9.0.27.tgz"
,
"integrity"
:
"sha512-nDA9ADeINN8SA2u2wCtU+siWFTTDqQR37XvgPIDDmboWQeExz7X0mImxuaN+kJddliIqy2FpVRmnvRZ+j8i1/A=="
,
"requires"
:
{
"@babel/runtime"
:
"^7.29.2"
,
"tslib"
:
"^2.8.1"
},
"dependencies"
:
{
"tslib"
:
{
"version"
:
"2.8.1"
,
"resolved"
:
"https://registry.npmmirror.com/tslib/-/tslib-2.8.1.tgz"
,
"integrity"
:
"sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="
}
}
},
"fecha"
:
{
"version"
:
"4.2.3"
,
"resolved"
:
"https://registry.npmmirror.com/fecha/-/fecha-4.2.3.tgz"
,
...
...
@@ -4470,6 +5162,11 @@
}
}
},
"help-me"
:
{
"version"
:
"5.0.0"
,
"resolved"
:
"https://registry.npmmirror.com/help-me/-/help-me-5.0.0.tgz"
,
"integrity"
:
"sha512-7xgomUX6ADmcYzFik0HzAxh/73YlKR9bmFzf51CZwR+b6YtzU2m0u49hQCqV6SvlqIqsaxovfwdvbnsw3b/zpg=="
},
"http-errors"
:
{
"version"
:
"2.0.0"
,
"resolved"
:
"https://registry.npmmirror.com/http-errors/-/http-errors-2.0.0.tgz"
,
...
...
@@ -4480,13 +5177,6 @@
"setprototypeof"
:
"1.2.0"
,
"statuses"
:
"2.0.1"
,
"toidentifier"
:
"1.0.1"
},
"dependencies"
:
{
"inherits"
:
{
"version"
:
"2.0.4"
,
"resolved"
:
"https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz"
,
"integrity"
:
"sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
}
}
},
"http-signature"
:
{
...
...
@@ -4560,20 +5250,25 @@
"safer-buffer"
:
">= 2.1.2 < 3.0.0"
}
},
"ieee754"
:
{
"version"
:
"1.2.1"
,
"resolved"
:
"https://registry.npmmirror.com/ieee754/-/ieee754-1.2.1.tgz"
,
"integrity"
:
"sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA=="
},
"inflection"
:
{
"version"
:
"1.13.4"
,
"resolved"
:
"https://registry.npmjs.org/inflection/-/inflection-1.13.4.tgz"
,
"integrity"
:
"sha512-6I/HUDeYFfuNCVS3td055BaXBwKYuzw7K3ExVMStBowKo9oOAMJIXIHvdyR3iboTCp1b+1i5DSkIZTcwIktuDw=="
},
"inherits"
:
{
"version"
:
"2.0.
3
"
,
"resolved"
:
"https://registry.npm
.taobao.org/inherits/download/inherits-2.0.3
.tgz"
,
"integrity"
:
"sha
1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4
="
"version"
:
"2.0.
4
"
,
"resolved"
:
"https://registry.npm
mirror.com/inherits/-/inherits-2.0.4
.tgz"
,
"integrity"
:
"sha
512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=
="
},
"ip"
:
{
"version"
:
"
2.0
.0"
,
"resolved"
:
"https://registry.npmmirror.com/ip
/-/ip-2.0
.0.tgz"
,
"integrity"
:
"sha512-
WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ
=="
"ip
-address
"
:
{
"version"
:
"
10.2
.0"
,
"resolved"
:
"https://registry.npmmirror.com/ip
-address/-/ip-address-10.2
.0.tgz"
,
"integrity"
:
"sha512-
/+S6j4E9AHvW9SWMSEY9Xfy66O5PWvVEJ08O0y5JGyEKQpojb0K0GKpz/v5HJ/G0vi3D2sjGK78119oXZeE0qA
=="
},
"ipaddr.js"
:
{
"version"
:
"1.9.1"
,
...
...
@@ -4615,6 +5310,11 @@
"resolved"
:
"https://registry.npm.taobao.org/isstream/download/isstream-0.1.2.tgz"
,
"integrity"
:
"sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo="
},
"js-sdsl"
:
{
"version"
:
"4.3.0"
,
"resolved"
:
"https://registry.npmmirror.com/js-sdsl/-/js-sdsl-4.3.0.tgz"
,
"integrity"
:
"sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ=="
},
"jsbn"
:
{
"version"
:
"0.1.1"
,
"resolved"
:
"https://registry.npm.taobao.org/jsbn/download/jsbn-0.1.1.tgz"
,
...
...
@@ -4797,6 +5497,11 @@
"mime-db"
:
"1.46.0"
}
},
"minimist"
:
{
"version"
:
"1.2.8"
,
"resolved"
:
"https://registry.npmmirror.com/minimist/-/minimist-1.2.8.tgz"
,
"integrity"
:
"sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA=="
},
"moment"
:
{
"version"
:
"2.29.1"
,
"resolved"
:
"https://registry.npm.taobao.org/moment/download/moment-2.29.1.tgz?cache=0&sync_timestamp=1601983320283&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmoment%2Fdownload%2Fmoment-2.29.1.tgz"
,
...
...
@@ -4899,6 +5604,105 @@
"resolved"
:
"https://registry.npmmirror.com/mpath/-/mpath-0.9.0.tgz"
,
"integrity"
:
"sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew=="
},
"mqtt"
:
{
"version"
:
"5.15.1"
,
"resolved"
:
"https://registry.npmmirror.com/mqtt/-/mqtt-5.15.1.tgz"
,
"integrity"
:
"sha512-V1WnkGuJh3ec9QXzy5Iylw8OOBK+Xu1WhxcQ9mMpLThG+/JZIMV1PgLNRgIiqXhZnvnVLsuyxHl5A/3bHHbcAA=="
,
"requires"
:
{
"@types/readable-stream"
:
"^4.0.21"
,
"@types/ws"
:
"^8.18.1"
,
"commist"
:
"^3.2.0"
,
"concat-stream"
:
"^2.0.0"
,
"debug"
:
"^4.4.1"
,
"help-me"
:
"^5.0.0"
,
"lru-cache"
:
"^10.4.3"
,
"minimist"
:
"^1.2.8"
,
"mqtt-packet"
:
"^9.0.2"
,
"number-allocator"
:
"^1.0.14"
,
"readable-stream"
:
"^4.7.0"
,
"rfdc"
:
"^1.4.1"
,
"socks"
:
"^2.8.6"
,
"split2"
:
"^4.2.0"
,
"worker-timers"
:
"^8.0.23"
,
"ws"
:
"^8.18.3"
},
"dependencies"
:
{
"debug"
:
{
"version"
:
"4.4.3"
,
"resolved"
:
"https://registry.npmmirror.com/debug/-/debug-4.4.3.tgz"
,
"integrity"
:
"sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA=="
,
"requires"
:
{
"ms"
:
"^2.1.3"
}
},
"lru-cache"
:
{
"version"
:
"10.4.3"
,
"resolved"
:
"https://registry.npmmirror.com/lru-cache/-/lru-cache-10.4.3.tgz"
,
"integrity"
:
"sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ=="
},
"ms"
:
{
"version"
:
"2.1.3"
,
"resolved"
:
"https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz"
,
"integrity"
:
"sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
},
"readable-stream"
:
{
"version"
:
"4.7.0"
,
"resolved"
:
"https://registry.npmmirror.com/readable-stream/-/readable-stream-4.7.0.tgz"
,
"integrity"
:
"sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg=="
,
"requires"
:
{
"abort-controller"
:
"^3.0.0"
,
"buffer"
:
"^6.0.3"
,
"events"
:
"^3.3.0"
,
"process"
:
"^0.11.10"
,
"string_decoder"
:
"^1.3.0"
}
},
"safe-buffer"
:
{
"version"
:
"5.2.1"
,
"resolved"
:
"https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.2.1.tgz"
,
"integrity"
:
"sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
},
"string_decoder"
:
{
"version"
:
"1.3.0"
,
"resolved"
:
"https://registry.npmmirror.com/string_decoder/-/string_decoder-1.3.0.tgz"
,
"integrity"
:
"sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA=="
,
"requires"
:
{
"safe-buffer"
:
"~5.2.0"
}
},
"ws"
:
{
"version"
:
"8.21.0"
,
"resolved"
:
"https://registry.npmmirror.com/ws/-/ws-8.21.0.tgz"
,
"integrity"
:
"sha512-Vsp28b7DRcimFQvrqu2Wek3z1iYxDCWqHYB8Qsnk/S4RfaCQzPGPyBNuVjJV3cd6UiKtUtp6sNM77gWvzcCH+g=="
,
"requires"
:
{}
}
}
},
"mqtt-packet"
:
{
"version"
:
"9.0.2"
,
"resolved"
:
"https://registry.npmmirror.com/mqtt-packet/-/mqtt-packet-9.0.2.tgz"
,
"integrity"
:
"sha512-MvIY0B8/qjq7bKxdN1eD+nrljoeaai+qjLJgfRn3TiMuz0pamsIWY2bFODPZMSNmabsLANXsLl4EMoWvlaTZWA=="
,
"requires"
:
{
"bl"
:
"^6.0.8"
,
"debug"
:
"^4.3.4"
,
"process-nextick-args"
:
"^2.0.1"
},
"dependencies"
:
{
"debug"
:
{
"version"
:
"4.4.3"
,
"resolved"
:
"https://registry.npmmirror.com/debug/-/debug-4.4.3.tgz"
,
"integrity"
:
"sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA=="
,
"requires"
:
{
"ms"
:
"^2.1.3"
}
},
"ms"
:
{
"version"
:
"2.1.3"
,
"resolved"
:
"https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz"
,
"integrity"
:
"sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
}
}
},
"mquery"
:
{
"version"
:
"5.0.0"
,
"resolved"
:
"https://registry.npmmirror.com/mquery/-/mquery-5.0.0.tgz"
,
...
...
@@ -5078,6 +5882,30 @@
"resolved"
:
"https://registry.npm.taobao.org/nodemailer/download/nodemailer-6.5.0.tgz?cache=0&sync_timestamp=1614329161993&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnodemailer%2Fdownload%2Fnodemailer-6.5.0.tgz"
,
"integrity"
:
"sha1-0Swo2NSHeJGOJfGZnZeRAjGxddk="
},
"number-allocator"
:
{
"version"
:
"1.0.14"
,
"resolved"
:
"https://registry.npmmirror.com/number-allocator/-/number-allocator-1.0.14.tgz"
,
"integrity"
:
"sha512-OrL44UTVAvkKdOdRQZIJpLkAdjXGTRda052sN4sO77bKEzYYqWKMBjQvrJFzqygI99gL6Z4u2xctPW1tB8ErvA=="
,
"requires"
:
{
"debug"
:
"^4.3.1"
,
"js-sdsl"
:
"4.3.0"
},
"dependencies"
:
{
"debug"
:
{
"version"
:
"4.4.3"
,
"resolved"
:
"https://registry.npmmirror.com/debug/-/debug-4.4.3.tgz"
,
"integrity"
:
"sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA=="
,
"requires"
:
{
"ms"
:
"^2.1.3"
}
},
"ms"
:
{
"version"
:
"2.1.3"
,
"resolved"
:
"https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz"
,
"integrity"
:
"sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
}
}
},
"oauth-sign"
:
{
"version"
:
"0.9.0"
,
"resolved"
:
"https://registry.npm.taobao.org/oauth-sign/download/oauth-sign-0.9.0.tgz"
,
...
...
@@ -5142,6 +5970,11 @@
"resolved"
:
"https://registry.npmmirror.com/printj/-/printj-1.1.2.tgz"
,
"integrity"
:
"sha512-zA2SmoLaxZyArQTOPj5LXecR+RagfPSU5Kw1qP+jkWeNlrq+eJZyY2oS68SU1Z/7/myXM4lo9716laOFAVStCQ=="
},
"process"
:
{
"version"
:
"0.11.10"
,
"resolved"
:
"https://registry.npmmirror.com/process/-/process-0.11.10.tgz"
,
"integrity"
:
"sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A=="
},
"process-nextick-args"
:
{
"version"
:
"2.0.1"
,
"resolved"
:
"https://registry.npm.taobao.org/process-nextick-args/download/process-nextick-args-2.0.1.tgz"
,
...
...
@@ -5269,9 +6102,9 @@
"integrity"
:
"sha512-XgmCoxKWkDofwH8WddD0w85ZfqYz+ZHlr5yo+3YUCfycWawU56T5ckWXsScsj5B8tqUcIG67DxXByo3VUgiAdA=="
},
"rfdc"
:
{
"version"
:
"1.
3.0
"
,
"resolved"
:
"https://registry.npmmirror.com/rfdc/-/rfdc-1.
3.0
.tgz"
,
"integrity"
:
"sha512-
V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGr
A=="
"version"
:
"1.
4.1
"
,
"resolved"
:
"https://registry.npmmirror.com/rfdc/-/rfdc-1.
4.1
.tgz"
,
"integrity"
:
"sha512-
q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawI
A=="
},
"safe-buffer"
:
{
"version"
:
"5.1.2"
,
...
...
@@ -5556,11 +6389,11 @@
"integrity"
:
"sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg=="
},
"socks"
:
{
"version"
:
"2.
7.1
"
,
"resolved"
:
"https://registry.npmmirror.com/socks/-/socks-2.
7.1
.tgz"
,
"integrity"
:
"sha512-
7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ
=="
,
"version"
:
"2.
8.9
"
,
"resolved"
:
"https://registry.npmmirror.com/socks/-/socks-2.
8.9
.tgz"
,
"integrity"
:
"sha512-
LJhUYUvItdQ0LkJTmPeaEObWXAqFyfmP85x0tch/ez9cahmhlBBLbIqDFnvBnUJGagb0JbIQrkBs1wJ+yRYpEw
=="
,
"requires"
:
{
"ip
"
:
"^2.0.0
"
,
"ip
-address"
:
"^10.1.1
"
,
"smart-buffer"
:
"^4.2.0"
}
},
...
...
@@ -5573,6 +6406,11 @@
"memory-pager"
:
"^1.0.2"
}
},
"split2"
:
{
"version"
:
"4.2.0"
,
"resolved"
:
"https://registry.npmmirror.com/split2/-/split2-4.2.0.tgz"
,
"integrity"
:
"sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg=="
},
"sqlstring"
:
{
"version"
:
"2.3.1"
,
"resolved"
:
"https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.1.tgz"
,
...
...
@@ -5755,6 +6593,11 @@
"mime-types"
:
"~2.1.24"
}
},
"typedarray"
:
{
"version"
:
"0.0.6"
,
"resolved"
:
"https://registry.npmmirror.com/typedarray/-/typedarray-0.0.6.tgz"
,
"integrity"
:
"sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA=="
},
"universalify"
:
{
"version"
:
"0.1.2"
,
"resolved"
:
"https://registry.npmmirror.com/universalify/-/universalify-0.1.2.tgz"
,
...
...
@@ -5892,6 +6735,77 @@
"resolved"
:
"https://registry.npmmirror.com/word/-/word-0.3.0.tgz"
,
"integrity"
:
"sha512-OELeY0Q61OXpdUfTp+oweA/vtLVg5VDOXh+3he3PNzLGG/y0oylSOC1xRVj0+l4vQ3tj/bB1HVHv1ocXkQceFA=="
},
"worker-factory"
:
{
"version"
:
"7.0.50"
,
"resolved"
:
"https://registry.npmmirror.com/worker-factory/-/worker-factory-7.0.50.tgz"
,
"integrity"
:
"sha512-hhwc0G+sFwM4qBuhJIUBn2p1Jf8v/FwmLUANBf/Q+Lt2uI8mfIZQhXaZQACodQD4R7Zp6cn/6702bIvNn2puJQ=="
,
"requires"
:
{
"@babel/runtime"
:
"^7.29.7"
,
"fast-unique-numbers"
:
"^9.0.27"
,
"tslib"
:
"^2.8.1"
},
"dependencies"
:
{
"tslib"
:
{
"version"
:
"2.8.1"
,
"resolved"
:
"https://registry.npmmirror.com/tslib/-/tslib-2.8.1.tgz"
,
"integrity"
:
"sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="
}
}
},
"worker-timers"
:
{
"version"
:
"8.0.32"
,
"resolved"
:
"https://registry.npmmirror.com/worker-timers/-/worker-timers-8.0.32.tgz"
,
"integrity"
:
"sha512-huEv5mB6xIqcadsZ8SuuFQH9Lg9Hq0h0xD9vAZZsLPNw0aLxoDWyjTALAUD3hAA4cuKbKaqrjbBcbEYClwSh3w=="
,
"requires"
:
{
"@babel/runtime"
:
"^7.29.7"
,
"tslib"
:
"^2.8.1"
,
"worker-timers-broker"
:
"^8.0.16"
,
"worker-timers-worker"
:
"^9.0.14"
},
"dependencies"
:
{
"tslib"
:
{
"version"
:
"2.8.1"
,
"resolved"
:
"https://registry.npmmirror.com/tslib/-/tslib-2.8.1.tgz"
,
"integrity"
:
"sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="
}
}
},
"worker-timers-broker"
:
{
"version"
:
"8.0.17"
,
"resolved"
:
"https://registry.npmmirror.com/worker-timers-broker/-/worker-timers-broker-8.0.17.tgz"
,
"integrity"
:
"sha512-avGDVB9AP5k5eCAP2AiT/nwCHGCNla7Z+nMZWXpmhbiSTry6A7VwEzlffTO34/5Eo55O+XLbWQu0bBW3uEO0UA=="
,
"requires"
:
{
"@babel/runtime"
:
"^7.29.7"
,
"broker-factory"
:
"^3.1.15"
,
"fast-unique-numbers"
:
"^9.0.27"
,
"tslib"
:
"^2.8.1"
,
"worker-timers-worker"
:
"^9.0.14"
},
"dependencies"
:
{
"tslib"
:
{
"version"
:
"2.8.1"
,
"resolved"
:
"https://registry.npmmirror.com/tslib/-/tslib-2.8.1.tgz"
,
"integrity"
:
"sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="
}
}
},
"worker-timers-worker"
:
{
"version"
:
"9.0.15"
,
"resolved"
:
"https://registry.npmmirror.com/worker-timers-worker/-/worker-timers-worker-9.0.15.tgz"
,
"integrity"
:
"sha512-KKUe7lZ/Aignr51H6hOUik8LwTnIgojH/1lwhli8A8qIEIyewogZTpNpMW5B6BF7nmwBOkUoTYgf1H3QShcjSA=="
,
"requires"
:
{
"@babel/runtime"
:
"^7.29.7"
,
"tslib"
:
"^2.8.1"
,
"worker-factory"
:
"^7.0.50"
},
"dependencies"
:
{
"tslib"
:
{
"version"
:
"2.8.1"
,
"resolved"
:
"https://registry.npmmirror.com/tslib/-/tslib-2.8.1.tgz"
,
"integrity"
:
"sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="
}
}
},
"ws"
:
{
"version"
:
"5.2.2"
,
"resolved"
:
"https://registry.npm.taobao.org/ws/download/ws-5.2.2.tgz?cache=0&sync_timestamp=1615063662500&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fws%2Fdownload%2Fws-5.2.2.tgz"
,
...
...
package.json
View file @
8874fba1
...
...
@@ -19,6 +19,7 @@
"
md5
"
:
"^2.2.1"
,
"
moment
"
:
"^2.24.0"
,
"
mongoose
"
:
"^7.6.0"
,
"
mqtt
"
:
"^5.15.1"
,
"
mysql
"
:
"^2.18.1"
,
"
mysql2
"
:
"^3.6.0"
,
"
node-xlsx
"
:
"^0.16.1"
,
...
...
serverConfig.xml
View file @
8874fba1
...
...
@@ -16,4 +16,11 @@
<mysqlPwd>qaz123456</mysqlPwd>
<dataBase>beermuseumplatform</dataBase> -->
</mysqldb>
<mqttsrv>
<mqttHost>
10.100.48.16
</mqttHost>
<mqttPort>
1883
</mqttPort>
<mqttTopic>
/milesight/uplink/2026
</mqttTopic>
<username>
admin
</username>
<password>
admin123
</password>
</mqttsrv>
</config>
src/biz/mqttClient.ts
0 → 100644
View file @
8874fba1
import
{
TABLENAME
}
from
"../config/dbEnum"
;
import
{
addData
}
from
"../data/addData"
;
import
{
selectOneDataByParam
}
from
"../data/findData"
;
/**
* 处理接收到的单条设备数据,并存入数据库
*
* 消息示例:
* {
* "applicationID": 1,
* "cellularIP": "0.0.0.0",
* "co2": 1649,
* "devEUI": "24e124710e466786",
* "deviceName": "cgq3",
* "gatewayTime": "2026-06-17T09:53:55+08:00",
* "hcho": 0.01,
* "humidity": 66.5,
* "light_level": 0,
* "pir": 1,
* "pm10": 32,
* "pm2_5": 32,
* "pressure": 1009.7,
* "temperature": 22.5,
* "tvoc": 1.56
* }
*/
export
async
function
processDeviceData
(
message
)
{
try
{
// 解析JSON消息
const
msgStr
=
message
.
toString
();
let
data
:
any
;
try
{
data
=
JSON
.
parse
(
msgStr
);
}
catch
(
e
)
{
console
.
error
(
'消息不是合法JSON,跳过:'
,
msgStr
);
return
;
}
console
.
log
(
'收到数据:'
,
data
);
// 提取关键字段
const
devEUI
=
data
.
devEUI
;
if
(
!
devEUI
)
{
console
.
warn
(
'消息缺少devEUI字段,跳过'
);
return
;
}
const
gatewayTime
=
data
.
gatewayTime
?
new
Date
(
data
.
gatewayTime
)
:
new
Date
();
// 解码data字段(Base64 -> 十六进制)
// const rawHex = decodePayload(data.data);
// if (!rawHex) {
// console.warn('data字段为空或无效');
// return;
// }
// ===== 设备校验(保留) =====
const
deviceRow
=
await
selectOneDataByParam
(
TABLENAME
.
设备表
,
{
device_id
:
devEUI
}
);
if
(
!
deviceRow
)
{
console
.
warn
(
`设备不存在,跳过入库:
${
devEUI
}
`
);
return
;
}
// ===== 新设备入库(注释掉,设备由定时任务从设备商接口同步) =====
// let now = formatLocalTime(new Date());
// if (!deviceRow) {
// // 设备不存在,插入新设备(区域等后续可手动关联)
// await addData(
// TABLENAME.设备表, {
// device_id: devEUI,
// region_key: 0,
// device_type: '环境监测',
// device_name: `Device_${devEUI.slice(-6)}`,
// control_params: message.toString(),
// created_at: now,
// updated_at: now,
// }
// );
// console.log(`新设备已创建: ${devEUI}`);
// }
// ===== 插入设备数据(优化) =====
const
now
=
new
Date
();
await
addData
(
TABLENAME
.
设备数据表
,
{
device_id
:
devEUI
,
data
:
data
,
received_time
:
now
,
device_time
:
gatewayTime
,
created_at
:
now
}
);
console
.
log
(
`数据入库成功: 设备
${
devEUI
}
`
);
}
catch
(
error
)
{
console
.
error
(
'数据处理失败:'
,
error
);
}
}
// ==================== 数据解析与入库函数 ====================
/**
* 将Base64编码的payload解码为十六进制字符串
* 如果已知具体传感器协议,可以在这里进一步解析为具体数值
*/
function
decodePayload
(
base64Data
)
{
if
(
!
base64Data
)
return
null
;
// 方法1: 转为十六进制字符串(便于查看和存储)
const
buffer
=
Buffer
.
from
(
base64Data
,
'base64'
);
return
buffer
.
toString
(
'hex'
).
toUpperCase
();
// 方法2: 如果知道协议格式,可以直接解析数值,例如:
// return { temperature: buffer.readInt16BE(0) / 10.0, humidity: buffer.readUInt8(2) };
}
\ No newline at end of file
src/biz/running.ts
View file @
8874fba1
...
...
@@ -301,11 +301,16 @@ export async function getRunAnalysis(regionGroup: string, regionType: string) {
regionCustomerMap
.
set
(
regionName
,
totalNum
);
}
}
// 当日客流
let
todayCustomer
=
0
;
let
yesterdayCustomer
=
0
;
// 计算每个区域的饱和度(客流量/区域最大承载量),并转换成表格
for
(
let
[
regionName
,
customerNum
]
of
regionCustomerMap
.
entries
())
{
let
regionMaxCustomer
=
regionMaxCustomerMap
.
get
(
regionName
)
||
10000
;
// 默认最大承载量为10000
let
saturation
=
`
${((
customerNum
/
regionMaxCustomer
)
*
100
).
toFixed
(
2
)}
%`
;
regionCustomerTable
.
push
({
regionName
,
customerNum
,
saturation
});
todayCustomer
+=
customerNum
;
}
// 6.3 客流量趋势分析:根据查询到的客流传感器数据,统计所选区域过去24小时客流量变化趋势
...
...
@@ -342,9 +347,23 @@ export async function getRunAnalysis(regionGroup: string, regionType: string) {
let
val
=
hourlyCustomerMap
.
get
(
key
)
??
0
;
customerTrend
.
push
({
time
:
`
${
i
}
:00`
,
value
:
val
});
}
// 获取昨日客流量数据
let
yesterdayDatas
=
await
selectDataListByParam
(
TABLENAME
.
设备数据表
,
{
device_id
:
{
"%in%"
:
customerDeviceIds
},
device_time
:
{
"%gte%"
:
formatLocalTime
(
yesterdayStart
),
"%lte%"
:
formatLocalTime
(
yesterdayEnd
)
},
"%orderAsc%"
:
"device_time"
},
[
"device_id"
,
"data"
,
"device_time"
]);
for
(
let
rec
of
yesterdayDatas
.
data
)
{
let
data
=
rec
.
data
;
let
customerNum
=
data
.
presence
===
'进'
?
1
:
0
;
yesterdayCustomer
+=
customerNum
;
}
}
// 6.4. 人流监控实时数据和趋势图数据
resultAny
.
customerOnlineTrend
=
{
todayCustomer
:
todayCustomer
,
customerCompare
:
(
todayCustomer
-
yesterdayCustomer
)
/
yesterdayCustomer
*
100
,
// 同比昨日(今日人流量-昨日人流量)÷昨日人流量x100%
passengerFlowTable
:
regionCustomerTable
,
customerTrend
:
customerTrend
};
...
...
src/config/serverConfig.ts
View file @
8874fba1
...
...
@@ -16,7 +16,7 @@ export async function initConfig() {
if
(
!
configInfo
||
!
configInfo
.
config
)
throw
new
BizError
(
'xml中无配置'
);
let
{
port
,
sign
,
img
,
mysqldb
}
=
configInfo
.
config
;
let
{
port
,
sign
,
img
,
mysqldb
,
mqttsrv
}
=
configInfo
.
config
;
// 基本配置
systemConfig
.
port
=
parseInt
(
port
[
0
]);
...
...
@@ -37,6 +37,20 @@ export async function initConfig() {
}
}
// mqtt
if
(
mqttsrv
)
{
let
configInfo
=
mqttsrv
[
0
];
systemConfig
.
mqttsrv
=
{
host
:
''
,
port
:
0
,
topic
:
''
,
username
:
''
,
password
:
''
};
if
(
configInfo
.
mqttHost
&&
configInfo
.
mqttPort
&&
configInfo
.
mqttTopic
)
{
systemConfig
.
mqttsrv
.
host
=
configInfo
.
mqttHost
[
0
];
systemConfig
.
mqttsrv
.
port
=
parseInt
(
configInfo
.
mqttPort
[
0
]);
systemConfig
.
mqttsrv
.
topic
=
configInfo
.
mqttTopic
[
0
];
systemConfig
.
mqttsrv
.
username
=
configInfo
.
username
[
0
];
systemConfig
.
mqttsrv
.
password
=
configInfo
.
password
[
0
];
}
}
}
catch
(
err
)
{
console
.
log
(
'ERROR => 服务器配置解析错误 请检查根目录下 serverConfig.xml 文件是否正确'
);
console
.
log
(
err
);
...
...
src/config/systemClass.ts
View file @
8874fba1
...
...
@@ -15,5 +15,11 @@ export class ServerConfig {
pwd
:
string
,
dataBase
:
string
,
}
mqttsrv
:
{
host
:
string
,
port
:
number
,
topic
:
string
,
username
:
string
,
password
:
string
}
}
\ No newline at end of file
src/main.ts
View file @
8874fba1
import
{
initConfig
,
systemConfig
}
from
"./config/serverConfig"
;
import
*
as
mysqlDB
from
"./db/mysqlInit"
;
import
*
as
mqttSrv
from
"./service/mqttInit"
;
import
{
initMysqlModel
}
from
"./model/sqlModelBind"
;
import
{
httpServer
}
from
"./net/http_server"
;
import
{
startSchedule
}
from
"./config/schedule"
;
...
...
@@ -13,6 +14,8 @@ async function lanuch() {
await
initMysqlModel
();
/**创建http服务 */
httpServer
.
createServer
(
systemConfig
.
port
);
/**启动MQTT订阅服务 */
await
mqttSrv
.
startMqttClient
();
/**启动定时任务 */
startSchedule
();
...
...
src/service/mqttInit.ts
0 → 100644
View file @
8874fba1
import
{
processDeviceData
}
from
"../biz/mqttClient"
;
import
{
systemConfig
}
from
"../config/serverConfig"
;
const
mqtt
=
require
(
'mqtt'
);
// ==================== 启动MQTT客户端并订阅 ====================
export
async
function
startMqttClient
()
{
// 在连接选项中添加用户名和密码
const
mqttOptions
=
{
username
:
systemConfig
.
mqttsrv
.
username
,
password
:
systemConfig
.
mqttsrv
.
password
,
// 可选:如果遇到连接问题,可以添加以下参数
// clientId: 'node_subscriber_' + Math.random().toString(16).substring(2, 8),
// clean: true,
// connectTimeout: 4000,
// reconnectPeriod: 1000,
};
// 连接MQTT Broker
const
client
=
mqtt
.
connect
(
`mqtt://
${
systemConfig
.
mqttsrv
.
host
}
:
${
systemConfig
.
mqttsrv
.
port
}
`
,
mqttOptions
);
client
.
on
(
'connect'
,
()
=>
{
console
.
log
(
'MQTT客户端已连接,正在订阅主题...'
);
// 订阅网关的上行主题
client
.
subscribe
(
systemConfig
.
mqttsrv
.
topic
,
(
err
)
=>
{
if
(
err
)
{
console
.
error
(
'订阅失败:'
,
err
);
}
else
{
console
.
log
(
`成功订阅主题:
${
systemConfig
.
mqttsrv
.
topic
}
`
);
console
.
log
(
'等待设备数据...'
);
}
});
});
// 当收到消息时触发处理
client
.
on
(
'message'
,
(
topic
,
message
)
=>
{
// 只处理配置的上行主题
if
(
topic
===
systemConfig
.
mqttsrv
.
topic
)
{
processDeviceData
(
message
);
}
});
client
.
on
(
'error'
,
(
err
)
=>
{
console
.
error
(
'MQTT连接错误:'
,
err
);
});
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment