⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 javaphoneframe.java

📁 基于Cisco CTI OS 6.0的Java 软电话简单实例
💻 JAVA
📖 第 1 页 / 共 4 页
字号:

	    // Create and Arguments object for the request
	    Arguments rReqArgs = new Arguments();

		// Set the dialed number
	    rReqArgs.SetValue(CTIOS_DIALEDNUMBER, dn);

		// If the call varable field was set, add CallVariable1
	    if (cv.compareTo("") != 0)
	    {
		    rReqArgs.SetValue(CTIOS_CALLVARIABLE1, cv);
	    }

		// Make the request to place a call.  This is done on the
		// Agent object because 1) the Agent is making the call
		// and 2) there is no call object until we get a call
		// event
	    m_ctiAgent.MakeCall( rReqArgs );

	    AddLogMessage("Requesting MakeCall");

	} // m_btnMakeCall_MouseClicked

	///////////////////////////////////////////////////////////////////////////
    /**
     * Answer button was clicked
     */
	///////////////////////////////////////////////////////////////////////////
	void m_btnAnswer_MouseClicked(java.awt.event.MouseEvent event)
	{
		// Make sure session is open, agent logged in, etc.
		if ( !CheckAgentState() )
		    return;

		// Get the current call.
	    Call rCall = m_ctiSession.GetCurrentCall();
	    if (rCall != null)
	    {
			AddLogMessage("Requesting Call Answer for: " +
						  rCall.GetValueString(CTIOS_UNIQUEOBJECTID));
	
			// Answer the call.  No arguments are required in most cases
			// so pass in an empty Arguments object.
			rCall.Answer( new Arguments() );
	    }

	} // m_btnAnswer_MouseClicked

	///////////////////////////////////////////////////////////////////////////
    /**
     * Release button was clicked
     */
	///////////////////////////////////////////////////////////////////////////
	void m_btnRelease_MouseClicked(java.awt.event.MouseEvent event)
	{
		// Make sure session is open, agent logged in, etc.
		if ( !CheckAgentState() )
		    return;

		// Get the default call.
	    Call rCall = m_ctiSession.GetCurrentCall();
	    if (rCall != null)
	    {
			AddLogMessage("Requesting Call Release for: " +
						  rCall.GetValueString(CTIOS_UNIQUEOBJECTID));
	
			// Clear the call connection.  No arguments are required
			// in most cases so pass in an empty Arguments object.
			rCall.ClearConnection( new Arguments() );
	    }

	} // m_btnRelease_MouseClicked

	///////////////////////////////////////////////////////////////////////////
    /**
     * Hold button was clicked
     */
	///////////////////////////////////////////////////////////////////////////
	void m_btnHold_MouseClicked(java.awt.event.MouseEvent event)
	{
		// Make sure session is open, agent logged in, etc.
		if ( !CheckAgentState() )
		    return;

		// Get the default call.
	    Call rCall = m_ctiSession.GetCurrentCall();
	    if (rCall != null)
	    {
			AddLogMessage("Requesting Call Hold for: " +
						  rCall.GetValueString(CTIOS_UNIQUEOBJECTID));
	
			// Clear the call connection.  No arguments are required
			// in most cases so pass in an empty Arguments object.
			rCall.Hold( new Arguments() );
	    }

	} // m_btnHold_MouseClicked

	///////////////////////////////////////////////////////////////////////////
    /**
     * Retrieve button was clicked
     */
	///////////////////////////////////////////////////////////////////////////
	void m_btnRetrieve_MouseClicked(java.awt.event.MouseEvent event)
	{
		// Make sure session is open, agent logged in, etc.
		if ( !CheckAgentState() )
		    return;

		// Get the default call.
	    Call rCall = m_ctiSession.GetCurrentCall();
	    if (rCall != null)
	    {
			AddLogMessage("Requesting Call Retrieve for: " +
						  rCall.GetValueString(CTIOS_UNIQUEOBJECTID));
	
			// Retrieve the call
			rCall.Retrieve( new Arguments() );
	    }

	} // m_btnRetrieve_MouseClicked

	///////////////////////////////////////////////////////////////////////////
    /**
     * Consult Conference button was clicked
     */
	///////////////////////////////////////////////////////////////////////////
	void m_btnCCConference_MouseClicked(java.awt.event.MouseEvent event)
	{
		// Make sure session is open, agent logged in, etc.
		if ( !CheckAgentState() )
		    return;

	    // Get the Dialed number
	    String sDialedNum = m_edtPhoneNumber.getText();
	    if (sDialedNum.length() == 0)
	    {
		    AddLogMessage("Must fill in phone number field for conference");
		    return;
	    }

	    // Get Call Variable1 value
	    String sCallVar1 = m_edtCallVariable1.getText();

	    // Retrieve the currently active call object
	    Call rCall = m_ctiSession.GetCurrentCall();
	    if (rCall != null)
	    {
		    AddLogMessage("Requesting Consult Call - Conference");

		    // create and add arguments
		    Arguments rArgConference = new Arguments();
		    rArgConference.SetValue(CTIOS_DIALEDNUMBER, sDialedNum);
		    rArgConference.SetValue(CTIOS_CALLVARIABLE1, sCallVar1);
		    rArgConference.SetValue(CTIOS_CONSULTTYPE, 2);

		    rCall.MakeConsultCall(rArgConference);
	    }

	} // m_btnCCConference_MouseClicked

	///////////////////////////////////////////////////////////////////////////
    /**
     * Complete Conference button was clicked
     */
	///////////////////////////////////////////////////////////////////////////
	void m_btnConference_MouseClicked(java.awt.event.MouseEvent event)
	{
		// Make sure session is open, agent logged in, etc.
		if ( !CheckAgentState() )
		    return;

		// Retrieve the currently active call object
	    Call rCall = m_ctiSession.GetCurrentCall();
		if (rCall != null)
		{
			AddLogMessage("Requesting Call Conference Complete for: " +
						  rCall.GetValueString(CTIOS_UNIQUEOBJECTID));
			rCall.Conference( new Arguments() );
		}

	} // m_btnConference_MouseClicked

	///////////////////////////////////////////////////////////////////////////
    /**
     * Single Step Conference button was clicked
     */
	///////////////////////////////////////////////////////////////////////////
	void m_btnSSConference_MouseClicked(java.awt.event.MouseEvent event)
	{
		// Make sure session is open, agent logged in, etc.
		if ( !CheckAgentState() )
		    return;

	    // Get Phone number
	    String sDialedNum = m_edtPhoneNumber.getText();
	    if (sDialedNum.length() == 0)
	    {
		    AddLogMessage("Must fill in phone number field for conference");
		    return;
	    }

	    // Get Call Variable1 value
	    String sCallVar1 = m_edtCallVariable1.getText();

	    // Retrieve the currently active call object
	    Call rCall = m_ctiSession.GetCurrentCall();
	    if (rCall != null)
	    {
			AddLogMessage("Requesting Single Step Conference Complete for: " +
						  rCall.GetValueString(CTIOS_UNIQUEOBJECTID));

		    // create and add arguments
		    Arguments rArgConference = new Arguments();
		    rArgConference.SetValue(CTIOS_DIALEDNUMBER, sDialedNum);
		    rArgConference.SetValue(CTIOS_CALLVARIABLE1, sCallVar1);

		    rCall.SingleStepConference(rArgConference);
	    }

	} // m_btnSSConference_MouseClicked

	///////////////////////////////////////////////////////////////////////////
    /**
     * Consult Transfer button was clicked
     */
	///////////////////////////////////////////////////////////////////////////
	void m_btnCCTransfer_MouseClicked(java.awt.event.MouseEvent event)
	{
		// Make sure session is open, agent logged in, etc.
		if ( !CheckAgentState() )
		    return;

	    // Get Phone number
	    String sDialedNum = m_edtPhoneNumber.getText();
	    if (sDialedNum.length() == 0)
	    {
		    AddLogMessage("Must fill in phone number field for transfer");
		    return;
	    }

	    // Get Call Variable1 value
	    String sCallVar1 = m_edtCallVariable1.getText();

	    // Retrieve the currently active call object
	    Call rCall = m_ctiSession.GetCurrentCall();
	    if (rCall != null)
	    {
		    AddLogMessage("Requesting Consult Call - Transfer");

		    // create and add arguments
		    Arguments rArgTransfer = new Arguments();
		    rArgTransfer.SetValue(CTIOS_DIALEDNUMBER, sDialedNum);
		    rArgTransfer.SetValue(CTIOS_CALLVARIABLE1, sCallVar1);
		    rArgTransfer.SetValue(CTIOS_CONSULTTYPE, 1);

		    rCall.MakeConsultCall(rArgTransfer);
	    }
	} // m_btnCCTransfer_MouseClicked

	///////////////////////////////////////////////////////////////////////////
    /**
     * Complete Transfer button was clicked
     */
	///////////////////////////////////////////////////////////////////////////
	void m_btnTransfer_MouseClicked(java.awt.event.MouseEvent event)
	{
		// Make sure session is open, agent logged in, etc.
		if ( !CheckAgentState() )
		    return;

	    // Retrieve the currently active call object
	    Call rCall = m_ctiSession.GetCurrentCall();
	    if (rCall != null)
	    {
			AddLogMessage("Requesting Transfer Complete");
			rCall.Transfer( new Arguments() );
        }
	} // m_btnTransfer_MouseClicked

	///////////////////////////////////////////////////////////////////////////
    /**
     * Single Step Transfer button was clicked
     */
	///////////////////////////////////////////////////////////////////////////
	void m_btnSSTransfer_MouseClicked(java.awt.event.MouseEvent event)
	{
		// Make sure session is open, agent logged in, etc.
		if ( !CheckAgentState() )
		    return;

	    // Get Phone number
	    String sDialedNum = m_edtPhoneNumber.getText();
	    if (sDialedNum.length() == 0)
	    {
		    AddLogMessage("Must fill in phone number field for transfer");
		    return;
	    }

	    // Get Call Variable1 value
	    String sCallVar1 = m_edtCallVariable1.getText();

	    // Retrieve the currently active call object
	    Call rCall = m_ctiSession.GetCurrentCall();
	    if (rCall != null)
	    {
		    AddLogMessage("Requesting Single Step Transfer");

		    // create and add arguments
		    Arguments rArgTransfer = new Arguments();
		    rArgTransfer.SetValue(CTIOS_DIALEDNUMBER, sDialedNum);
		    rArgTransfer.SetValue(CTIOS_CALLVARIABLE1, sCallVar1);

		    rCall.SingleStepTransfer(rArgTransfer);
	    }
	} // m_btnSSTransfer_MouseClicked

	///////////////////////////////////////////////////////////////////////////
    /**
     * Get Call Data from the Default call.
     */
	///////////////////////////////////////////////////////////////////////////
	void m_btnGetData_MouseClicked(java.awt.event.MouseEvent event)
	{
		// Make sure session is open, agent logged in, etc.
		if ( !CheckAgentState() )
			return;
	
		AddLogMessage("Get Data pressed.");
	
		// Retrieve currently active call object
	    Call rCall = m_ctiSession.GetCurrentCall();
		if (rCall != null)
		{
			AddLogMessage("Requesting to get Call Data");
			Arguments rCallDataArgs = rCall.GetCallData();
			LogEvent("GetCallData returns:", rCallDataArgs);
		}
		else
		{
			AddLogMessage("No active call to get data from.");
		}
	} // m_btnGetData_MouseClicked

	///////////////////////////////////////////////////////////////////////////
    /**
     * Set Call Data for the default call.
     */
	///////////////////////////////////////////////////////////////////////////
	void m_btnSetData_MouseClicked(java.awt.event.MouseEvent event)
	{
		AddLogMessage("Set Data pressed.");
	
		// Retrieve currently active call object
	    Call rCall = m_ctiSession.GetCurrentCall();
		if (rCall != null)
		{
			// One Arguments for regular call data
			Arguments rArgs = new Arguments();
	
			// One for ECC variables
			Arguments rECCArgs = new Arguments();
	
			// regular variables
			rArgs.SetValue(CTIOS_ANI, "MyANI");
			rArgs.SetValue(CTIOS_USERTOUSERINFO, "MyUserToUserInfo");
			rArgs.SetValue(CTIOS_CALLERENTEREDDIGITS, "MyCED");
			rArgs.SetValue(CTIOS_CALLWRAPUPDATA, "MyCallWrapupData");
			rArgs.SetValue(CTIOS_CALLVARIABLE1, m_edtCallVariable1.getText());
	
			// ECC variables
			rECCArgs.SetValue("Scalar1", "MyScalar1");
			rECCArgs.SetValue("Scalar2", "MyScalar2");
			rECCArgs.SetValue("Array1[1]", "FirstArrayValue");
			rECCArgs.SetValue("Array1[2]", "SecondArrayValue");
	
			// Embed the ECC arguments int the regular Arguments
			rArgs.SetValue(CTIOS_ECC, rECCArgs);
	
			// Set the call data for the call
			rCall.SetCallData(rArgs);
	
			LogEvent("SetData sending:", rArgs);
		}
		else
		{
			AddLogMessage("No active call to set data into.");
		}
	} // m_btnSetData_MouseClicked

	///////////////////////////////////////////////////////////////////////////
    /**
     * Get the context information of the current call.
     */
	///////////////////////////////////////////////////////////////////////////
	void m_btnGetContext_MouseClicked(java.awt.event.MouseEvent event)
	{
	    AddLogMessage("Get Context pressed.");

		// Retrieve currently active call object
	    Call rCall = m_ctiSession.GetCurrentCall();
	    if (rCall != null)
	    {
		    Arguments rCallContextArgs = rCall.GetCallContext();
		    LogEvent("GetCallContext returns:", rCallContextArgs);
	    }
	    else
	    {
		    AddLogMessage("No active call to get context data from.");
	    }
	} // m_btnGetContext_MouseClicked

	///////////////////////////////////////////////////////////////////////////
    /**
     * Clear the Log Window
     */
	///////////////////////////////////////////////////////////////////////////
	void m_btnClearLog_MouseClicked(java.awt.event.MouseEvent event)
	{
	    m_edtLogWindow.setText("");  // Clear text from log window

	} // m_btnClearLog_MouseClicked

	///////////////////////////////////////////////////////////////////////////
	/**
	 * Shortcut to the m_Log.Trace() method to make tracing lines shorter.
	 *
	 * @param   iTraceLevel  The trace level for this trace statement.
	 * @param   Message     The trace message to be logged.
	 *
	 * @return  None.
	 */
	///////////////////////////////////////////////////////////////////////////
	protected void Trace(int iTraceLevel, String Message)
	{
		if (m_Log == null)
			m_Log = LogManager.Instance();

		if (m_Log != null)
			m_Log.Trace(iTraceLevel, Message);
	}  // Trace

	///////////////////////////////////////////////////////////////////////////
	/**
	 *  Initialization method to initialize local variables, logging, and
	 *  event thread.
	 *
	 * @param None.
	 *
	 * @return None.
	 */
	///////////////////////////////////////////////////////////////////////////
	void Initialize()

⌨️ 快捷键说明

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