oambts.go 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. //同步参数查询响应
  2. // 秒寻科技
  3. // zt 2024-10-03
  4. package oam
  5. import (
  6. "encoding/binary"
  7. "ipsomc/module/bparam/bparammodel"
  8. )
  9. type OamBts struct {
  10. }
  11. const (
  12. ORDER_BTS_ID = 0x0601 // 基站ID,32bit
  13. ORDER_BTS_CARRIER_ID = 0x0602 // 载波ID(1,2,3,4,5,6,7,8,9)
  14. ORDER_BTS_TIMESLOT = 0x0603 // 信号发送时隙(1,2,3,4)
  15. ORDER_BTS_LOCATION_TYPE = 0x0604 // 定位类型
  16. ORDER_BTS_TWO_BTS_NUM = 0x0605 // 两基站定位数量
  17. ORDER_BTS_TWO_BTS_LIST = 0x0606 // 两基站定位基站列表,以英文逗号分割
  18. )
  19. // 同步参数查询响应
  20. // dataModel:基站基本参数模型
  21. // wCommand:监控命令
  22. // datalist:数据队列
  23. // wLen:队列长度
  24. func (obj *OamBts) OamBtsQueryResp(dataModel *bparammodel.BtsBaseParam, wCommand uint16, datalist []byte, wLen uint16) error {
  25. switch wCommand {
  26. case ORDER_BTS_ID: //基站ID
  27. dataModel.BtsID = int(binary.LittleEndian.Uint32(datalist[0:4]))
  28. case ORDER_BTS_CARRIER_ID: //载波id
  29. dataModel.CarrierID = uint8(datalist[0])
  30. case ORDER_BTS_TIMESLOT: //基站时隙
  31. dataModel.Timeslot = uint8(datalist[0])
  32. default:
  33. break
  34. }
  35. return nil
  36. }