index.js 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. import { io } from "socket.io-client"
  2. import axios from "axios"
  3. import { setTimeout } from "timers/promises"
  4. const axiosInstance = axios.create({
  5. baseURL: "http://47.98.225.28/api",
  6. headers: {
  7. Authorization:
  8. "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6InpvdW1hQWRtaW4iLCJzdWIiOjEsInJvbGVzIjpbImFkbWluIl0sImlhdCI6MTcyNjU4MTk1OH0.dQiHFYaDDa1qp4OpEHaH5SCZ9dafJ8uO9fAAc8HZgAo"
  9. }
  10. })
  11. const {
  12. data: { items: devices }
  13. } = await axiosInstance.post("/device", {
  14. page: { page: 1, limit: 1000 },
  15. search: { where: { online: true }, order: { name: "ASC" } }
  16. })
  17. console.log(devices)
  18. const socket = io("http://47.98.225.28/")
  19. socket.on("connect", async () => {
  20. console.log("connected")
  21. for (let d of devices) {
  22. if (parseInt(d.version) < 136) {
  23. console.log("update " + d.name)
  24. socket.emit(
  25. "redirect",
  26. {
  27. to: d.socketId,
  28. message: {
  29. id: new Date().getTime() + "",
  30. action: "installApk",
  31. data: {
  32. apkUrl: "https://nebuai.oss-cn-hangzhou.aliyuncs.com/application/20241016/zje1ynoq.apk"
  33. }
  34. }
  35. },
  36. data => {
  37. console.log(data)
  38. }
  39. )
  40. await setTimeout(500)
  41. }
  42. }
  43. })