Kaynağa Gözat

fix ICP answer PAD

dujunchen 2 hafta önce
ebeveyn
işleme
5bdd0b0e02

+ 6 - 6
internal/app/ami/action/index.go

@@ -107,16 +107,16 @@ func HandleAMI(event map[string]string) {
 			alstatus.PaStatus(event["CallerIDNum"], "CPA", "start")
 		}
 
-		if utils.IsIO(event["CallerIDNum"]) && event["Exten"] == "0511" { //PAD answered by ICP; PACUs connected ICP1
+		if event["ConnectedLineNum"] == "ani1" && event["Exten"] == "0511" { //PAD answered by ICP; PACUs connected ICP1
 			lfshook.NewLogger().Infof("====PAD answered by ICP1:%s=====", event["CallerIDNum"])
-			alstatus.AlarmStatus(event["CallerIDNum"], "connect")
-			go RedirectInQueue(event["CallerIDName"], "2311", "chanspy-rule", "") //PAD whisper ICP1
+			alstatus.AlarmStatus(event["ConnectedLineName"], "connect")
+			go RedirectInQueue(event["ConnectedLineName"], "2311", "chanspy-rule", "") //PAD whisper ICP1
 		}
 
-		if utils.IsIO(event["CallerIDNum"]) && event["Exten"] == "0512" { //PAD ansered by ICP8; PACUs connected ICP8
+		if event["ConnectedLineNum"] == "ani8" && event["Exten"] == "0512" { //PAD ansered by ICP8; PACUs connected ICP8
 			lfshook.NewLogger().Infof("====PAD answered by ICP8:%s=====", event["CallerIDNum"])
-			alstatus.AlarmStatus(event["CallerIDNum"], "connect")
-			go RedirectInQueue(event["CallerIDName"], "2381", "chanspy-rule", "") //PAD whisper ICP8
+			alstatus.AlarmStatus(event["ConnectedLineName"], "connect")
+			go RedirectInQueue(event["ConnectedLineName"], "2381", "chanspy-rule", "") //PAD whisper ICP8
 		}
 
 	case "ConfbridgeLeave":

+ 4 - 10
internal/app/stc/broadcast/stc-broadcast.go

@@ -100,6 +100,7 @@ func processPacket(packet []byte) {
 		SelfCheck(packet)
 	case 0x0a:
 		AlarmHandleTMS(packet)
+		//AlarmHandleICP(packet)
 	case 0x0b:
 		AlarmResetAll()
 	case 0x0c:
@@ -359,7 +360,7 @@ func AlarmHandleICP(data []byte) {
 	carr := data[12]
 	pos := data[13]
 	exten := fmt.Sprintf("24%c%c", carr, pos)
-	PacuNum := fmt.Sprintf("21%c%c", carr, pos)
+	//PacuNum := fmt.Sprintf("21%c%c", carr, pos)
 
 	key := suppressKey(exten, handler)
 
@@ -382,19 +383,12 @@ func AlarmHandleICP(data []byte) {
 	case 0x01: //answer(ICP+Alarm+PACU)
 		//NotifyPaiu(exten, "answer")
 
-		//get pacu status
-		var infoExt model.Extension
-		_, er := mysql.DBOrmInstance.Where("exten = ?", PacuNum).Get(&infoExt)
-		if er != nil {
-			lfshook.NewLogger().Logger.Infof("update special voice to exten err : %+v", er.Error())
-		}
-
 		lfshook.NewLogger().Logger.Infof("================ICP Answer PAD================:%s ", exten)
 
 		if active.CabNum == "1" && active.Actived {
-			action.Dial("0402", "0511", "pad-rule-cab1", "ani-1", exten, "1") // PACU dial ICP MC1
+			action.Dial("0402", "0511", "pad-rule-cab1", "ani1", exten, "1") // PACU dial ICP MC1
 		} else if active.CabNum == "8" && active.Actived {
-			action.Dial("0402", "0512", "pad-rule-cab8", "ani-8", exten, "8") // PACU dial ICP MC8
+			action.Dial("0402", "0512", "pad-rule-cab8", "ani8", exten, "8") // PACU dial ICP MC8
 		}
 
 	case 0x02: //hold  重新放回队列里面