netWork.lua 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. local netWork = {}
  2. local moduleName = "netWork"
  3. local logSwitch = true
  4. local ipReady, simReady, timeSync = false, false, false
  5. local isFlyMode = false
  6. local cellInfo
  7. local function logF(...)
  8. if logSwitch then
  9. log.info(moduleName, ...)
  10. end
  11. end
  12. local function ipReadyInd()
  13. logF("ipReadyInd")
  14. ipReady = true
  15. end
  16. local function ipLoseInd()
  17. logF("ipLoseInd")
  18. ipReady = false
  19. end
  20. local function timeSyncInd(time)
  21. timeSync = true
  22. end
  23. local function simStatusInd(status)
  24. logF("simStatusInd", status)
  25. if status == "RDY" then
  26. simReady = true
  27. elseif status == "NORDY" then
  28. simReady = false
  29. end
  30. end
  31. -- sys.taskInit(function()
  32. -- while true do
  33. -- mobile.reqCellInfo(15)
  34. -- sys.wait(3 * 60 * 1000)
  35. -- end
  36. -- end)
  37. -- sys.taskInit(function()
  38. -- sys.wait(15000)
  39. -- while true do
  40. -- wlan.scan()
  41. -- sys.wait(5 * 60 * 1000)
  42. -- end
  43. -- end)
  44. sys.subscribe("CELL_INFO_UPDATE", function()
  45. cellInfo = mobile.getCellInfo()
  46. logF("CELL_INFO_UPDATE")
  47. end)
  48. function netWork.isReady()
  49. return ipReady
  50. end
  51. function netWork.simReady()
  52. return simReady
  53. end
  54. function netWork.getCellInfo()
  55. return cellInfo
  56. end
  57. function netWork.timeSync()
  58. return timeSync
  59. end
  60. function netWork.setFlyMode(onoff)
  61. if onoff then
  62. if chip == "EC718UM" or chip == "EC718HM" then
  63. log.info("vsim", "因为开启的vsim, 不允许进入飞行模式")
  64. end
  65. if not isFlyMode then
  66. isFlyMode = true
  67. mobile.flymode(0, true)
  68. end
  69. else
  70. if isFlyMode then
  71. isFlyMode = false
  72. mobile.flymode(0, false)
  73. end
  74. end
  75. end
  76. sys.subscribe("IP_READY", ipReadyInd)
  77. sys.subscribe("IP_LOSE", ipLoseInd)
  78. sys.subscribe("SIM_IND", simStatusInd)
  79. sys.subscribe("NTP_UPDATE", timeSyncInd)
  80. return netWork