name.js 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. import axios from "axios"
  2. import { WebSocket } from "ws"
  3. const {
  4. data: { access_token }
  5. } = await axios.post("http://47.98.225.28/api/auth/admin/login", {
  6. username: "zoumaAdmin",
  7. password: "WQ%B6j9uXKPvYf",
  8. code: "123123",
  9. bindingCode: ""
  10. })
  11. const axiosInstance = axios.create({
  12. baseURL: "http://47.98.225.28/api",
  13. headers: {
  14. Authorization: `Bearer ${access_token}`
  15. }
  16. })
  17. const {
  18. data: { items: devices }
  19. } = await axiosInstance.post("/device", {
  20. page: { page: 1, limit: 1000 },
  21. search: { where: { online: true }, order: { name: "ASC" } }
  22. })
  23. const ws = new WebSocket("ws://121.40.132.44:6001")
  24. let xwDevices = []
  25. ws.onopen = () => {
  26. console.log("Connected to WebSocket")
  27. ws.send(
  28. JSON.stringify({
  29. action: "list"
  30. })
  31. )
  32. console.log("Requesting device list")
  33. setTimeout(() => {
  34. console.log("Updating device names")
  35. if (xwDevices.length > 0) {
  36. let i = 101
  37. for (let device of devices) {
  38. const xwDevice = xwDevices.find(
  39. xwDevice => xwDevice.onlySerial === device.id
  40. )
  41. if (xwDevice) {
  42. console.log(device.name)
  43. if (device.name.startsWith("NJ-01")) {
  44. } else if (device.name.startsWith("NJ-02")) {
  45. } else if (device.name.startsWith("SZ-03")) {
  46. }
  47. ws.send(
  48. JSON.stringify({
  49. action: "updateDevices",
  50. devices: xwDevice.serial,
  51. data: {
  52. sort: i++,
  53. name: device.name
  54. }
  55. })
  56. )
  57. }
  58. }
  59. } else {
  60. console.log("No device found")
  61. }
  62. }, 2000)
  63. }
  64. ws.onmessage = e => {
  65. const data = JSON.parse(e.data)
  66. if (data.code === 10000 && data.data instanceof Array) {
  67. xwDevices = data.data
  68. console.log("found " + xwDevices.length + " devices")
  69. }
  70. }