answer.cpp

来自「multi-line Adjunct Communication Server」· C++ 代码 · 共 60 行

CPP
60 行
字号
// Copyright (C) 2000 Open Source Telecom Corporation.//  // This program is free software; you can redistribute it and/or modify// it under the terms of the GNU General Public License as published by// the Free Software Foundation; either version 2 of the License, or// (at your option) any later version.// // This program is distributed in the hope that it will be useful,// but WITHOUT ANY WARRANTY; without even the implied warranty of// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the// GNU General Public License for more details.// // You should have received a copy of the GNU General Public License// along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.#include <config.h>#include <syslog.h>#include "server.h"#include "trunk.h"void Trunk::Answer(EventRecord *er){	int rtn;	switch(er->event)	{	case UM_EVENT_ENTER_STATE:		if(offhook)			break;		ring_count = atoi(getOption("0"));		ring_timer = atoi(getOption("6"));	case UM_EVENT_RING_LINE:		rings = 0;	case PH_EVENT_LINE_RINGING:		if(!rings || rings >= ring_count)		{			endTimer();			ioctl(device, PHONE_PSTN_SET_STATE, PSTN_OFF_HOOK);			time(&starttime);			offhook = true;			break;		}		++rings;		setTimer(ring_timer * 1000);		setDTMF();				return;	case PH_EVENT_TIMER_EXPIRED:		endTimer();		setHandler((handler_t)&Trunk::Idle);		return;	default:		Default(er);		return;	}	scrNext();}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?