亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? c_trkin.c

?? 這是電信語音聊天設備的源碼
?? C
?? 第 1 頁 / 共 5 頁
字號:
					}
					break;
					case 11://上上一次發的是A1
					{
						user_e1[user_num].mfc_state = WAIT_ID_SIGNAL;//轉為接收ID信令
					}
					break;
					default:
					break;
				}
			}
			else
			{
				if(user_e1[user_num].delay == 0)//500毫秒沒有收到停發
				{
					user_e1[user_num].mfc_state = FAILURE_MFC;//轉為MFC失敗處理
				}
			}
		}
		break;
		case WAIT_KD_SIGNAL://等待KD信令
		{
			user_e1[user_num].delay--;//等待時間減1
			if((chat_mfc_resource[user_e1[user_num].mfc].buf[0] > 0) && (chat_mfc_resource[user_e1[user_num].mfc].buf[0] < 7))
			{
				if(user_monitor_num == user_num)//往后臺回應監視信息
				{
					command(1,0,user_num,FORWARD_MFC_SIGNAL,chat_mfc_resource[user_e1[user_num].mfc].buf[0] + 0x10,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE);
				}
				send_mfc_in(user_e1[user_num].mfc,1);//發送KB信令
				if(user_monitor_num == user_num)//往后臺回應監視信息
				{
					command(1,0,user_num,BACKWARD_MFC_SIGNAL,0x11,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE);
				}
				user_e1[user_num].mfc_state = KB_END;//轉為KB結束
				user_e1[user_num].delay = CTRL_TIME;//設置500毫秒的等待時間
			}
			else
			{
				if(user_e1[user_num].delay == 0)//500毫秒沒有收到停發
				{
					user_e1[user_num].mfc_state = FAILURE_MFC;//轉為MFC失敗處理
				}
			}
		}
		break;
		case WAIT_KA_SIGNAL://等待KA信令
		{
			user_e1[user_num].delay--;//等待時間減1
			if((chat_mfc_resource[user_e1[user_num].mfc].buf[0] > 0) && (chat_mfc_resource[user_e1[user_num].mfc].buf[0] < 7))
			{
				if(user_monitor_num == user_num)//往后臺回應監視信息
				{
					command(1,0,user_num,FORWARD_MFC_SIGNAL,chat_mfc_resource[user_e1[user_num].mfc].buf[0] + 0x20,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE);
				}
				send_mfc_in(user_e1[user_num].mfc,1);//發送A1信令 
				if(user_monitor_num == user_num)//往后臺回應監視信息
				{
					command(1,0,user_num,BACKWARD_MFC_SIGNAL,0x1,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE);
				}
				user_e1[user_num].sub_status = 11;//設置為接收主叫號碼
				user_e1[user_num].mfc_state = WAIT_PAUSE;//轉為等待停發
				user_e1[user_num].delay = CTRL_TIME;//設置500毫秒的等待時間
			}
			else
			{
				if(user_e1[user_num].delay == 0)//500毫秒沒有收到停發
				{
					user_e1[user_num].mfc_state = FAILURE_MFC;//轉為MFC失敗處理
				}
			}
		}
		break;
		case WAIT_ID_SIGNAL://等待ID信令
		{
			user_e1[user_num].delay--;//等待時間減1
			if((chat_mfc_resource[user_e1[user_num].mfc].buf[0] > 0) && (chat_mfc_resource[user_e1[user_num].mfc].buf[0] < 11))
			{
				if(user_monitor_num == user_num)//往后臺回應監視信息
				{
					command(1,0,user_num,FORWARD_MFC_SIGNAL,chat_mfc_resource[user_e1[user_num].mfc].buf[0],IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE);
				}
				if(chat_mfc_resource[user_e1[user_num].mfc].buf[0] == 0x0a)
				{
					user_e1[user_num].telephone[user_e1[user_num].user_index] = 0;//收集交換機發的號碼
				}
				else
				{
					//收集交換機發的號碼
					user_e1[user_num].telephone[user_e1[user_num].user_index] = chat_mfc_resource[user_e1[user_num].mfc].buf[0];
				}
				user_e1[user_num].user_index++;//號碼指針加1
				send_mfc_in(user_e1[user_num].mfc,1);//發送A1信令
				if(user_monitor_num == user_num)//往后臺回應監視信息
				{
					command(1,0,user_num,BACKWARD_MFC_SIGNAL,0x1,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE);
				}
				user_e1[user_num].sub_status = 11;//設置為接收主叫號碼
				user_e1[user_num].mfc_state = WAIT_PAUSE;//轉為等待停發
				user_e1[user_num].delay = CTRL_TIME;//設置500毫秒的等待時間
			}
			else
			{
				if(chat_mfc_resource[user_e1[user_num].mfc].buf[0] == 0x0f)//判斷主叫號碼是否發送結束
				{
					if(user_monitor_num == user_num)//往后臺回應監視信息
					{
						command(1,0,user_num,FORWARD_MFC_SIGNAL,chat_mfc_resource[user_e1[user_num].mfc].buf[0],IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE);
					}
					send_mfc_in(user_e1[user_num].mfc,1);//發送A1信令
					if(user_monitor_num == user_num)//往后臺回應監視信息
					{
						command(1,0,user_num,BACKWARD_MFC_SIGNAL,0x1,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE);
					}
					user_e1[user_num].sub_status = 0x1;//設置為發A1
					user_e1[user_num].mfc_state = WAIT_PAUSE;//轉為等待停發
					user_e1[user_num].delay = CTRL_TIME;//設置500毫秒的等待時間
					user_e1[user_num].user_index = LAN_num_length;//準備接收剩下的號碼
				}
				else
				{
					if(user_e1[user_num].delay == 0)//500毫秒沒有收到停發
					{
						user_e1[user_num].mfc_state = FAILURE_MFC;//轉為MFC失敗處理
					}
				}
			}
		}
		break;
		case KB_END://KB結束
		{
			user_e1[user_num].delay--;//等待時間減1
			if(chat_mfc_resource[user_e1[user_num].mfc].buf[1] == MFC_PAUSE)
			{
				send_mfc_in(user_e1[user_num].mfc,MFC_PAUSE);//發送停發信令
				if(user_monitor_num == user_num)//往后臺回應監視信息
				{
					command(1,0,user_num,BACKWARD_MFC_SIGNAL,0,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE);
				}
				user_e1[user_num].mfc_state = SUCCEED_MFC;//轉為MFC成功處理
			}
			else
			{
				if(user_e1[user_num].delay == 0)//500毫秒沒有收到停發
				{
					user_e1[user_num].mfc_state = FAILURE_MFC;//轉為MFC失敗處理
				}
			}
		}
		break;
		case FAILURE_MFC://MFC失敗處理
		{
			user_e1[user_num].mfc_state = IDLE;//轉為空閑
			user_e1[user_num].sub_status = 8;//置失敗標志
			mfc_release(user_e1[user_num].mfc);//釋放MFC	
		}
		break;
		case SUCCEED_MFC://MFC成功
		{
			user_e1[user_num].mfc_state = IDLE;//轉為空閑
			user_e1[user_num].sub_status = 9;//置成功標志
			mfc_release(user_e1[user_num].mfc);//釋放MFC
		}
		break;
		default:
		break;
	}
}

void trk_in_ctrl()//數字中繼呼入處理程序
{
	unsigned char xdata trk_i,trk_j,trk_k,phone[6],temp;
	for(trk_i = 0;trk_i < TRK_MAX;trk_i++)
	{
		if(user_e1[trk_i].type == CALL_IN)
		{
			switch(user_e1[trk_i].lc_state)
			{
				case HOLD_TEST://等待交換機發占用
				{
					if(user_e1[trk_i].backward_signal == SS_HOLD)//收到占用
					{
						if(user_monitor_num == trk_i)//往后臺回應監視信息
						{
							command(1,0,trk_i,FORWARD_LINE_SIGNAL,1,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE);
						}
						user_e1[trk_i].lc_state = CONFIRM_SEND;//轉為發占用證實
					}
				}
				break;
				case CONFIRM_SEND://發占用證實
				{
					if(mfc_req(trk_i,CALL_IN) != IDLE)//判斷是否申請到MFC
					{
						if(dtmf_req(trk_i,IDLE) != IDLE)//DTMF資源
						{
							for(trk_j = 0;trk_j < 2;trk_j++)//清空接收數據 
							{
								chat_mfc_resource[user_e1[trk_i].mfc].buf[trk_j] = IDLE;
							}
							chat_mfc_resource[user_e1[trk_i].mfc].buf_p = 0;//清空接收指針
							sig_req(RSD_CONFIRM,trk_i);//發占用證實
							if(user_monitor_num == trk_i)//往后臺回應監視信息
							{
								command(1,0,trk_i,BACKWARD_LINE_SIGNAL,1,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE);
							}
							user_e1[trk_i].lc_state = WAIT_MFC;//轉為等待MFC結束
							user_e1[trk_i].sub_status = 1;
							user_e1[trk_i].mfc_state = WAIT_DIGITAL_SIGNAL;//轉為等待交換機發電話號碼
							user_e1[trk_i].delay = CTRL_TIME;//設置500毫秒的等待時間
						}
						else
						{
							mfc_release(user_e1[trk_i].mfc);
							user_e1[trk_i].lc_state = LINE_FALSE;
						}
					}
					else
					{
						user_e1[trk_i].lc_state = LINE_FALSE;
					}	
				}
				break;
				case WAIT_MFC://等待MFC結束
				{
					if(user_e1[trk_i].backward_signal == SS_IDLE)//判斷主叫是否掛機
					{
						mfc_release(user_e1[trk_i].mfc);
						user_e1[trk_i].lc_state = LINE_FALSE;
					}
					else
					{
						if(user_e1[trk_i].sub_status == 8)//MFC失敗
						{
							mfc_release(user_e1[trk_i].mfc);
							user_e1[trk_i].lc_state = LINE_FALSE;
						}
						else
						{
							if(user_e1[trk_i].sub_status == 9)//MFC成功
							{
								user_e1[trk_i].lc_state = TALK_SEND;//轉為發送被叫摘機
							}
							else
							{
								in_mfc_line(trk_i);
							}
						}
					}
				}
				break;
				case TALK_SEND://發送被叫應答
				{
					sig_req(RSD_TALK,trk_i);//發送被叫摘機
					user_e1[trk_i].flag = OCCUPY;
					for(trk_j = 0;trk_j < 6;trk_j++)
					{
						user_e1[trk_i].telephone[trk_j] = ((user_e1[trk_i].telephone[2 * trk_j] & 0x0f) << 4) + (user_e1[trk_i].telephone[2 * trk_j + 1] & 0x0f);
					}
					for(trk_j = 6;trk_j < 32;trk_j++)
					{
						user_e1[trk_i].telephone[trk_j] = IDLE;
					}
					command(4,0,user_e1[trk_i].telephone[0],user_e1[trk_i].telephone[1],user_e1[trk_i].telephone[2],user_e1[trk_i].telephone[3],user_e1[trk_i].telephone[4],user_e1[trk_i].telephone[5],IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE);
					if(user_monitor_num == trk_i)//往后臺回應監視信息
					{
						command(1,0,trk_i,BACKWARD_LINE_SIGNAL,2,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE,IDLE);
					}
					user_e1[trk_i].lc_state = DTMF_START;//轉為開始放提示音
				}
				break;
				case DTMF_START://放提示音,開始處理用戶選擇
				{
					connect(audio_dtmf_resource[user_e1[trk_i].dtmf].slot,trk_i);//連接提示音
					connect(trk_i,audio_dtmf_resource[user_e1[trk_i].dtmf].slot);//連接提示音
					if((trk_i == user_test_num) || (trk_i == user_monitor_num))
					{
						connect(audio_dtmf_resource[user_e1[trk_i].dtmf].slot,CHAIRMAN_SLOT);//連接提示音
					}
					user_e1[trk_i].backward_signal = IDLE;//清空線路信令
					user_e1[trk_i].lc_state = WAIT_DOWN;//轉為掃描被叫掛機
					for(trk_j = 0;trk_j < 6;trk_j++)
					{
						phone[trk_j] = user_e1[trk_i].telephone[trk_j];
					}
					trk_j = back_search(phone,1);
					trk_k = number_release(phone,1);
					if((trk_j != IDLE) || (trk_k != IDLE))
					{
						if(trk_j != IDLE)
						{
							if(user_e1[user_back[trk_j].user_num].chat_num != IDLE)
							{
								if((user_back[trk_j].chat_type == PRIVATE_FEELING) && (chat_private_resource[user_e1[user_back[trk_j].user_num].chat_num].user_count > 1))
								{
									back_failure(trk_i);
								}
								else
								{
									user_e1[trk_i].back_flag = 1;
									user_e1[trk_i].user_sex = user_back[trk_j].user_sex;
									user_e1[trk_i].user_age = user_back[trk_j].user_age;
									user_e1[trk_i].opp_sex = user_back[trk_j].opp_sex;
									user_e1[trk_i].opp_age = user_back[trk_j].opp_age;
									user_e1[trk_i].chat_type = user_back[trk_j].chat_type;
									for(temp = 0;temp < 6;temp++)
									{
										user_e1[trk_i].password[temp] = user_back[trk_j].password[temp];
									}
									first_chuli(trk_i,user_e1[trk_i].chat_type,1);
									if((user_e1[user_back[trk_j].user_num].lc_state == WAIT_UP) || (user_e1[user_back[trk_j].user_num].lc_state == WAIT_DOWN))
									{
										user_e1[user_back[trk_j].user_num].user_state = INFORM_BACK;
									}
								}
							}
							else
							{
								back_failure(trk_i);
							}
							back_search(phone,0);
						}
						else
						{
							if(user_e1[chat_number[trk_k].user_num].chat_num != IDLE)
							{
								user_e1[trk_i].back_flag = 1;
								user_e1[trk_i].chat_type = PRIVATE_FEELING;
								user_e1[trk_i].opp_num = chat_number[trk_k].user_num;
								user_e1[trk_i].user_sex = chat_number[trk_k].user_sex;
								user_e1[trk_i].user_age = chat_number[trk_k].user_age;
								user_e1[chat_number[trk_k].user_num].opp_num = trk_i;
								if((user_e1[chat_number[trk_k].user_num].lc_state == WAIT_U

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久日韩精品一区二区五区| 捆绑调教一区二区三区| 日韩中文字幕麻豆| 成人av网站在线观看免费| 777午夜精品免费视频| 成人免费小视频| 国产高清精品网站| 精品久久久久一区| 免费在线欧美视频| 欧美乱妇23p| 亚洲你懂的在线视频| 国产成人精品免费视频网站| 56国语精品自产拍在线观看| 一区二区在线观看免费| 成人美女视频在线看| 久久精品夜色噜噜亚洲a∨| 免费三级欧美电影| 日韩亚洲欧美一区二区三区| 一区二区国产盗摄色噜噜| 成人午夜在线免费| 国产精品视频九色porn| 国产麻豆精品视频| 欧美精品一区二区三| 五月激情综合婷婷| 欧美人与z0zoxxxx视频| 亚洲图片欧美视频| 在线观看区一区二| 亚洲综合色噜噜狠狠| 99国产精品国产精品久久| 最新日韩在线视频| 99视频国产精品| 中文字幕一区二| 91麻豆免费视频| 亚洲同性gay激情无套| 日本久久精品电影| 亚洲一区在线观看视频| 欧美日本一区二区三区四区| 天天色综合成人网| 日韩女优av电影| 国产夫妻精品视频| 亚洲欧洲另类国产综合| 91免费观看视频在线| 一区二区欧美国产| 日韩一区二区电影| 国产一区二区三区香蕉| 国产精品久久久久aaaa| 在线观看亚洲精品| 欧美aaa在线| 国产日韩欧美精品在线| 色综合夜色一区| 婷婷六月综合亚洲| 久久久精品蜜桃| 在线视频国内自拍亚洲视频| 午夜成人免费电影| 国产视频一区不卡| 色久优优欧美色久优优| 日韩中文字幕亚洲一区二区va在线 | 色94色欧美sute亚洲线路一久| 亚洲狠狠丁香婷婷综合久久久| 欧美日本乱大交xxxxx| 精品写真视频在线观看| 国产精品久久久久久妇女6080| 欧美特级限制片免费在线观看| 蜜桃av一区二区| 国产精品久久久久久户外露出 | 国产91富婆露脸刺激对白| 国产精品久久久久久久久免费丝袜 | 精品国产91久久久久久久妲己 | 国产成人一级电影| 一区二区高清免费观看影视大全| 91精品国产91久久久久久最新毛片 | 亚洲精品视频自拍| 精品国产露脸精彩对白| 色香色香欲天天天影视综合网| 喷水一区二区三区| 亚洲视频每日更新| 久久亚洲一区二区三区四区| 色综合天天天天做夜夜夜夜做| 麻豆国产一区二区| 香港成人在线视频| 亚洲少妇30p| 国产丝袜在线精品| 日韩欧美成人午夜| 欧美日韩国产片| 91亚洲男人天堂| 国产精品亚洲成人| 蜜臀精品久久久久久蜜臀| 亚洲免费在线播放| 亚洲精品一区二区精华| 欧美精品日韩精品| 欧美亚洲国产一卡| 成人av动漫在线| 国产精品1区2区| 久久国产人妖系列| 男人的天堂久久精品| 亚洲电影在线免费观看| **性色生活片久久毛片| 国产午夜精品久久久久久久| 91精品国产综合久久精品图片| 色88888久久久久久影院野外| 福利电影一区二区| 国产精品影音先锋| 精品一区精品二区高清| 日本va欧美va瓶| 丝瓜av网站精品一区二区| 亚洲一区二区在线免费看| 亚洲视频在线一区二区| 综合婷婷亚洲小说| 亚洲欧美日韩国产中文在线| 国产精品久久久久一区二区三区 | 精品精品欲导航| 制服丝袜一区二区三区| 欧美日本精品一区二区三区| 欧美三级在线播放| 欧美日韩免费电影| 欧美日韩国产成人在线91| 欧美疯狂性受xxxxx喷水图片| 欧美日韩一区在线观看| 欧美精品v国产精品v日韩精品| 欧美视频一区在线| 91精品国产91久久久久久最新毛片 | 亚洲视频一区在线| 亚洲精品亚洲人成人网在线播放| 亚洲欧美激情视频在线观看一区二区三区 | 91电影在线观看| 欧美日韩精品电影| 欧美一级专区免费大片| 26uuu欧美日本| 亚洲国产精品二十页| 日韩美女久久久| 夜夜揉揉日日人人青青一国产精品| 亚洲高清视频的网址| 蜜桃视频一区二区| 懂色av噜噜一区二区三区av| 成人avav在线| 欧美日韩一区二区三区高清 | 国产精品网曝门| 国产精品丝袜黑色高跟| 一区二区在线观看视频| 日韩av一区二区三区四区| 国产美女在线精品| 91丨九色丨尤物| 欧美日韩精品欧美日韩精品| 久久一区二区视频| 一区二区三区在线免费视频| 丝袜美腿高跟呻吟高潮一区| 国产精品伊人色| 欧美视频在线观看一区二区| 欧美v亚洲v综合ⅴ国产v| 中文字幕亚洲精品在线观看| 一区二区三区**美女毛片| 紧缚捆绑精品一区二区| 99视频一区二区三区| 欧美一区二区三区四区视频| 国产精品色在线观看| 日韩精品电影在线| 99视频超级精品| 亚洲精品在线观| 亚洲精品免费一二三区| 国产综合一区二区| 欧美视频一区二区三区四区| 国产欧美精品一区二区色综合| 亚洲国产成人porn| 粗大黑人巨茎大战欧美成人| 欧美一区二区不卡视频| 国产精品成人一区二区三区夜夜夜| 免费观看30秒视频久久| 色婷婷国产精品| 久久久久国产精品人| 婷婷六月综合亚洲| 99久久久精品| 国产欧美日韩另类一区| 久久精品99国产精品| 欧美色图12p| 亚洲色图在线看| av在线不卡免费看| 久久久综合视频| 久久精品99国产精品| 欧美老年两性高潮| 一区二区三区四区不卡在线 | 91在线观看高清| 久久精品一级爱片| 久久国产精品区| 欧美日产在线观看| 夜夜嗨av一区二区三区网页 | 国产suv精品一区二区三区| 日韩欧美国产系列| 日日夜夜免费精品| 在线观看视频一区二区| 亚洲人亚洲人成电影网站色| 国产91精品一区二区麻豆网站| 精品久久久三级丝袜| 久久99精品一区二区三区三区| 欧美日本在线一区| 婷婷夜色潮精品综合在线| 欧美日韩国产电影| 五月天视频一区| 日韩午夜av一区| 免费成人在线影院| 精品第一国产综合精品aⅴ|