Ver código fonte

Revert "test"

This reverts commit 83518917a6074b7cf5da44608345bc28e3abb57d.
root 1 semana atrás
pai
commit
efe0a8e131

+ 3 - 9
internal/app/ami/action/call.go

@@ -150,7 +150,7 @@ func InterruptRunningTask(toRunTask string) string {
 			return ""
 		}
 	}
-	utils.LoggerDebug.Printf("%s InterruptRunningTask  RunningTask:%+v", toRunTask, task)
+	utils.LoggerDebug.Printf("InterruptRunningTask  RunningTask:%+v", taskName)
 	lfshook.NewLogger().Infof("InterruptRunningTask RunningTask:%+v  ", task)
 	//same type return
 	if toRunTask == taskName {
@@ -226,20 +226,14 @@ func InterruptRunningTask(toRunTask string) string {
 		}
 		time.Sleep(time.Millisecond * 200)
 	case "EMG":
-
-		utils.LoggerDebug.Printf("InterruptRunningTask  =======KICKEMG  %s:%s", toRunTask, taskName)
 		//kick EMG members
-		if toRunTask == "EMG" {
-			ConfbridgeKick(task.ConfbridgeID, "all")
-			alstatus.PaStatus("", "EMG", "end")
-		} else if toRunTask != "C2C" {
+		if toRunTask != "C2C" {
 			EMGConfbridgeKick(task.ConfbridgeID)
 			alstatus.PaStatus("", "EMG", "end")
 		} else if toRunTask == "C2C" {
 			HangupICP()
 			//alstatus.PaStatus("", "EMG", "end")
 		}
-
 		time.Sleep(time.Millisecond * 200)
 	case "C2C": // Interrupt C2C task running,
 		if toRunTask == "PA" || toRunTask == "PAD-ICP" || toRunTask == "PAD-TMS" {
@@ -664,7 +658,7 @@ func ConfbridgeKick(confnum, channel string) (res map[string]string, err error)
 	if err != nil {
 		return nil, err
 	}
-	lfshook.NewLogger().Infof("ConfbridgeKick para:%+v res:%+v", action, res)
+	lfshook.NewLogger().Infof("ConfbridgeKick res:%+v", res)
 
 	if res["Response"] != "Success" {
 		return nil, errors.New(res["Message"])

+ 25 - 22
internal/app/ami/action/index.go

@@ -69,8 +69,10 @@ func HandleAMI(event map[string]string) {
 					Hangup(event["CallerIDNum"])
 				}
 
+				WaitTaskCreate("PA", event["CallerIDNum"])
+
 				if priority.CheckPriority("ManuPa") {
-					WaitTaskCreate("PA", event["CallerIDNum"])
+
 					//hangup others if priority is higher
 					//lfshook.NewLogger().Infof("UserEvent event :PA start")
 					utils.LoggerDebug.Printf("PA calling, check priority return true !")
@@ -80,19 +82,20 @@ func HandleAMI(event map[string]string) {
 						time.Sleep(time.Millisecond * 100) //wait endpoint release
 					}
 
-					time.Sleep(2 * time.Second)
-					if priority.TaskCreating == "PA" {
-						priority.TaskCreating = ""
-					}
 				} else {
 					Hangup(event["CallerIDNum"]) //lowwer priority ,hangup caller
 				}
+
+				time.Sleep(2 * time.Second)
+				if priority.TaskCreating == "PA" {
+					priority.TaskCreating = ""
+				}
 			} else if utils.IsIO(event["CallerIDNum"]) { // CPA
 
 				utils.LoggerDebug.Printf("Get UserEvent , %s calling !", event["Type"])
+				WaitTaskCreate("CPA", event["CallerIDNum"])
 
 				if priority.CheckPriority("CPA") {
-					WaitTaskCreate("CPA", event["CallerIDNum"])
 
 					//lfshook.NewLogger().Infof("========event:%s  ========devide:%d", event["Event"], active.TrainDevide)
 					utils.LoggerDebug.Printf("CPA calling, check priority return true !")
@@ -115,24 +118,22 @@ func HandleAMI(event map[string]string) {
 					if runningTaskName != "" {
 						time.Sleep(time.Millisecond * 100) //wait endpoint release
 					}
-
-					time.Sleep(2 * time.Second)
-					if priority.TaskCreating == "CPA" {
-						priority.TaskCreating = ""
-					}
-
 				} else {
 					utils.LoggerDebug.Printf("CPA calling failed , check priority return false !")
 					Hangup(event["CallerIDNum"]) //lowwer priority ,hangup caller
 				}
 
+				time.Sleep(2 * time.Second)
+				if priority.TaskCreating == "CPA" {
+					priority.TaskCreating = ""
+				}
 			}
 		} else if event["UserEvent"] == "CallType" && event["Type"] == "C2C" { //CabCab start; check cab cab priority
 			utils.LoggerDebug.Printf("Get UserEvent , %s calling !", event["Type"])
+			WaitTaskCreate("C2C", event["CallerIDNum"])
 
 			if priority.CheckPriority("CabCab") { // interrupt OCC-PAD
 				//C2C start PAD interrupt
-				WaitTaskCreate("C2C", event["CallerIDNum"])
 
 				taskName, _, ok := priority.RegistryTask.HighestPriorityRunningTask1()
 
@@ -157,16 +158,17 @@ func HandleAMI(event map[string]string) {
 					}
 				}
 
-				time.Sleep(2 * time.Second)
-				if priority.TaskCreating == "C2C" {
-					priority.TaskCreating = ""
-				}
 			} else { // hangup caller; C2C start failed
 				//lfshook.NewLogger().Infof("CabCab  hangup caller %s", event["CallerIDNum"])
 				utils.LoggerDebug.Printf("C2C calling failed , check priority return false !")
 				Hangup(event["CallerIDNum"])
 			}
 
+			time.Sleep(2 * time.Second)
+			if priority.TaskCreating == "C2C" {
+				priority.TaskCreating = ""
+			}
+
 			break
 
 			//Get  record file name ,encode and upload
@@ -610,9 +612,9 @@ func HandleAMI(event map[string]string) {
 		if utils.IsPAIU(event["CallerIDNum"]) && event["Queue"] == "0301" && priority.OCCAnswer == 0 { // The first PAD to OCC ,caller is PAD
 
 			utils.LoggerDebug.Printf("The first PAD to OCC queue .")
+			WaitTaskCreate("PAD-OCC")
 
 			if priority.CheckPriority("PAD-OCC") {
-				WaitTaskCreate("PAD-OCC")
 
 				runningTaskName := InterruptRunningTask("PAD-OCC") //PAD-OCC interrupt other
 				if runningTaskName != "" {
@@ -651,13 +653,14 @@ func HandleAMI(event map[string]string) {
 					}
 				}
 
-				time.Sleep(2 * time.Second)
-				if priority.TaskCreating == "PAD-OCC" {
-					priority.TaskCreating = ""
-				}
 			} else {
 				lfshook.NewLogger().Infof("====PAD-OCC Priority false===")
 			}
+
+			time.Sleep(2 * time.Second)
+			if priority.TaskCreating == "PAD-OCC" {
+				priority.TaskCreating = ""
+			}
 		}
 
 	case "ConfbridgeJoin":

+ 61 - 61
internal/app/stc/broadcast/stc-broadcast.go

@@ -172,146 +172,142 @@ func processPacket(packet []byte) {
 
 	case 0x02: // STN
 		if active.ActivedCab != "" {
+			//检查是否有任务正在创建
+			action.WaitTaskCreate("STN")
 
 			if priority.CheckPriority("STN") {
-				//检查是否有任务正在创建
-				action.WaitTaskCreate("STN")
 
 				runningTaskName := action.InterruptRunningTask("STN") //STN interrupt other
 				if runningTaskName != "" {
 					time.Sleep(time.Millisecond * 100) //wait endpoint release
 				}
 				StationAnn(packet)
-				time.Sleep(3 * time.Second)
-				if priority.TaskCreating == "STN" {
-					priority.TaskCreating = ""
-				}
-
 			} else {
 				alstatus.PaStatus("", "STN", "refuse")
 			}
 		}
 
+		time.Sleep(3 * time.Second)
+		if priority.TaskCreating == "STN" {
+			priority.TaskCreating = ""
+		}
+
 	case 0x05: // SPC
 		if active.ActivedCab != "" {
+			//检查是否有任务正在创建
+			action.WaitTaskCreate("SPC")
 
 			if priority.CheckPriority("SPC") {
-				//检查是否有任务正在创建
-				action.WaitTaskCreate("SPC")
 
 				runningTaskName := action.InterruptRunningTask("SPC") //SPC interrupt other
 				if runningTaskName != "" {
 					time.Sleep(time.Millisecond * 100) //wait endpoint release
 				}
 				SpecialAnn(packet)
-
-				time.Sleep(3 * time.Second)
-				if priority.TaskCreating == "SPC" {
-					priority.TaskCreating = ""
-				}
-
 			} else {
 				alstatus.PaStatus("", "SPC", "refuse")
 			}
 		}
 
+		time.Sleep(3 * time.Second)
+		if priority.TaskCreating == "SPC" {
+			priority.TaskCreating = ""
+		}
+
 	case 0x06: // EMG
 
 		if active.ActivedCab != "" {
+			//检查是否有任务正在创建
+			action.WaitTaskCreate("EMG")
 
 			if priority.CheckPriority("EMG") {
-				//检查是否有任务正在创建
-				action.WaitTaskCreate("EMG")
 
 				runningTaskName := action.InterruptRunningTask("EMG") //EMG interrupt other
 				if runningTaskName != "" {
 					time.Sleep(time.Millisecond * 100) //wait endpoint release
 				}
 				EmgMsg(packet)
-
-				time.Sleep(3 * time.Second)
-				if priority.TaskCreating == "EMG" {
-					priority.TaskCreating = ""
-				}
-
 			} else {
 				alstatus.PaStatus("", "EMG", "refuse")
 			}
 		}
 
+		time.Sleep(3 * time.Second)
+		if priority.TaskCreating == "EMG" {
+			priority.TaskCreating = ""
+		}
+
 	case 0x07: // STOP
 		AnnStop([4]byte{packet[8], packet[9], packet[10], packet[11]})
 
 	case 0x08: // DCS
 
 		if active.ActivedCab != "" {
+			//检查是否有任务正在创建
+			action.WaitTaskCreate("DCS")
 
 			if priority.CheckPriority("DCS") {
-				//检查是否有任务正在创建
-				action.WaitTaskCreate("DCS")
+
 				runningTaskName := action.InterruptRunningTask("DCS") //DCS interrupt other
 				if runningTaskName != "" {
 					time.Sleep(time.Millisecond * 100) //wait endpoint release
 				}
 				DcsAnn(packet)
-
-				time.Sleep(3 * time.Second)
-				if priority.TaskCreating == "DCS" {
-					priority.TaskCreating = ""
-				}
 			} else {
 				alstatus.PaStatus("", "DCS", "refuse")
 			}
 		}
 
+		time.Sleep(3 * time.Second)
+		if priority.TaskCreating == "DCS" {
+			priority.TaskCreating = ""
+		}
+
 	case 0x09: // SELF CHECK
 
 		if active.ActivedCab != "" {
+			//检查是否有任务正在创建
+			action.WaitTaskCreate("CHK")
 
 			if priority.CheckPriority("CHK") {
 
-				//检查是否有任务正在创建
-				action.WaitTaskCreate("CHK")
-
 				runningTaskName := action.InterruptRunningTask("CHK") //CHK interrupt other
 				if runningTaskName != "" {
 					time.Sleep(time.Millisecond * 100) //wait endpoint release
 				}
 				SelfCheck(packet)
-
-				time.Sleep(3 * time.Second)
-				if priority.TaskCreating == "CHK" {
-					priority.TaskCreating = ""
-				}
 			} else {
 				alstatus.PaStatus("", "CHK", "refuse")
 			}
 		}
 
+		time.Sleep(3 * time.Second)
+		if priority.TaskCreating == "CHK" {
+			priority.TaskCreating = ""
+		}
+
 	case 0x0a: // Tone-test
 		if active.ActivedCab != "" {
+			//检查是否有任务正在创建
+			action.WaitTaskCreate("VOL")
 
 			if priority.CheckPriority("VOL") {
 
-				//检查是否有任务正在创建
-				action.WaitTaskCreate("VOL")
-
 				runningTaskName := action.InterruptRunningTask("VOL") //VOL interrupt other
 				if runningTaskName != "" {
 					time.Sleep(time.Millisecond * 100) //wait endpoint release
 				}
 				ToneTest(packet)
-
-				time.Sleep(3 * time.Second)
-				if priority.TaskCreating == "VOL" {
-					priority.TaskCreating = ""
-				}
-
 			} else {
 				alstatus.PaStatus("", "VOL", "refuse")
 			}
 		}
 
+		time.Sleep(3 * time.Second)
+		if priority.TaskCreating == "VOL" {
+			priority.TaskCreating = ""
+		}
+
 	case 0x0e: //TMS answer PAD
 
 		handler := packet[8]
@@ -332,10 +328,12 @@ func processPacket(packet []byte) {
 			})
 			//}
 
+			//检查是否有任务正在创建
+			action.WaitTaskCreate("PAD-TMS")
+
 			//if packet[8] == 0x01 { //answer PAD
 			if priority.CheckPriority("PAD-TMS") {
-				//检查是否有任务正在创建
-				action.WaitTaskCreate("PAD-TMS")
+
 				//Before Answer PAD
 				//if packet[8] == 0x01 {
 
@@ -354,11 +352,6 @@ func processPacket(packet []byte) {
 				}
 
 				AlarmHandleTMS(packet)
-
-				time.Sleep(3 * time.Second)
-				if priority.TaskCreating == "PAD-TMS" {
-					priority.TaskCreating = ""
-				}
 			} else {
 				alstatus.PaStatus("", "PAD-TMS", "refuse")
 			}
@@ -366,6 +359,11 @@ func processPacket(packet []byte) {
 			AlarmHandleTMS(packet)
 		}
 
+		time.Sleep(3 * time.Second)
+		if priority.TaskCreating == "PAD-TMS" {
+			priority.TaskCreating = ""
+		}
+
 	case 0x0b: // reset all PAD
 		AlarmHoldResetAll(packet[8]) // reset all pad
 
@@ -395,10 +393,12 @@ func processPacket(packet []byte) {
 			})
 			//}
 
+			//检查是否有任务正在创建
+			action.WaitTaskCreate("PAD-ICP")
+
 			//if packet[8] == 0x01 { //answer PAD
 			if priority.CheckPriority("PAD-ICP") {
-				//检查是否有任务正在创建
-				action.WaitTaskCreate("PAD-ICP")
+
 				//Before Answer PAD
 				//if packet[8] == 0x01 {
 
@@ -418,11 +418,6 @@ func processPacket(packet []byte) {
 				}
 
 				AlarmHandleICP(packet)
-
-				time.Sleep(3 * time.Second)
-				if priority.TaskCreating == "PAD-ICP" {
-					priority.TaskCreating = ""
-				}
 			} else {
 				alstatus.PaStatus("", "PAD-ICP", "refuse")
 			}
@@ -430,6 +425,11 @@ func processPacket(packet []byte) {
 			AlarmHandleICP(packet)
 		}
 
+		time.Sleep(3 * time.Second)
+		if priority.TaskCreating == "PAD-ICP" {
+			priority.TaskCreating = ""
+		}
+
 		//case 0xf1: //Set remote master
 
 		//default: