import 'dart:async'; import 'dart:typed_data'; import 'package:flutter/material.dart'; import 'package:flutter_voice_processor/flutter_voice_processor.dart'; import 'package:get/get.dart'; import 'package:network_info_plus/network_info_plus.dart'; import '../../../../tools/storage.dart'; class RealTimePictureState { var isOpenVoice = false.obs; var udpSendDataFrameNumber = 0; // 帧序号 // var isSenderAudioData = false.obs;// 是否要发送音频数据 var userMobileIP = NetworkInfo().getWifiIP(); var userUid = Storage.getUid(); var udpStatus = 0.obs; //0:初始状态 1:等待监视 2: 3:监视中 4:呼叫成功 5:主角通话中 6:被叫通话 8:被叫通话中 9:长按说话 var passwordTF = TextEditingController(); var listData = Uint8List(0).obs; //得到的视频流字节数据 var listAudioData = [].obs; //得到的音频流字节数据 late final VoiceProcessor? voiceProcessor; late Timer oneMinuteTimeTimer = Timer(const Duration(seconds: 1), () {}); // 定时器超过60秒关闭当前界面 var oneMinuteTime = 0.obs; // 定时器秒数 var getLockName = ''.obs; //lockName // 定时器如果发送了接听的命令 而没收到回复就每秒重复发送10次 late Timer answerTimer; late Timer hangUpTimer; late Timer openDoorTimer; late AnimationController animationController; late Timer autoBackTimer = Timer(const Duration(seconds: 1), () {}); //发送30秒监视后自动返回 late Timer realTimePicTimer = Timer(const Duration(seconds: 1), () {}); //监视命令定时器 var elapsedSeconds = 0.obs; RealTimePictureState() { getLockName.value = Get.arguments["lockName"].toString(); } }