📄 managerconnectionimpl.html
字号:
</DD></DL><HR><A NAME="doLogin(long, java.lang.String)"><!-- --></A><H3>doLogin</H3><PRE>protected void <B>doLogin</B>(long timeout, java.lang.String eventMask) throws java.io.IOException, <A HREF="../../../../org/asteriskjava/manager/AuthenticationFailedException.html" title="class in org.asteriskjava.manager">AuthenticationFailedException</A>, <A HREF="../../../../org/asteriskjava/manager/TimeoutException.html" title="class in org.asteriskjava.manager">TimeoutException</A></PRE><DL><DD>Does the real login, following the steps outlined below. <p/> <ol> <li>Connects to the asterisk server by calling <A HREF="../../../../org/asteriskjava/manager/internal/ManagerConnectionImpl.html#connect()"><CODE>connect()</CODE></A> if not already connected <li>Waits until the protocol identifier is received but not longer than timeout ms. <li>Sends a <A HREF="../../../../org/asteriskjava/manager/action/ChallengeAction.html" title="class in org.asteriskjava.manager.action"><CODE>ChallengeAction</CODE></A> requesting a challenge for authType MD5. <li>When the <A HREF="../../../../org/asteriskjava/manager/response/ChallengeResponse.html" title="class in org.asteriskjava.manager.response"><CODE>ChallengeResponse</CODE></A> is received a <A HREF="../../../../org/asteriskjava/manager/action/LoginAction.html" title="class in org.asteriskjava.manager.action"><CODE>LoginAction</CODE></A> is sent using the calculated key (MD5 hash of the password appended to the received challenge). </ol><P><DD><DL></DL></DD><DD><DL><DT><B>Parameters:</B><DD><CODE>timeout</CODE> - the maximum time to wait for the protocol identifier (in ms)<DD><CODE>eventMask</CODE> - the event mask. Set to "on" if all events should be send, "off" if not events should be sent or a combination of "system", "call" and "log" (separated by ',') to specify what kind of events should be sent.<DT><B>Throws:</B><DD><CODE>java.io.IOException</CODE> - if there is an i/o problem.<DD><CODE><A HREF="../../../../org/asteriskjava/manager/AuthenticationFailedException.html" title="class in org.asteriskjava.manager">AuthenticationFailedException</A></CODE> - if username or password are incorrect and the login action returns an error or if the MD5 hash cannot be computed. The connection is closed in this case.<DD><CODE><A HREF="../../../../org/asteriskjava/manager/TimeoutException.html" title="class in org.asteriskjava.manager">TimeoutException</A></CODE> - if a timeout occurs while waiting for the protocol identifier. The connection is closed in this case.</DL></DD></DL><HR><A NAME="determineVersion()"><!-- --></A><H3>determineVersion</H3><PRE>protected <A HREF="../../../../org/asteriskjava/AsteriskVersion.html" title="class in org.asteriskjava">AsteriskVersion</A> <B>determineVersion</B>() throws java.io.IOException, <A HREF="../../../../org/asteriskjava/manager/TimeoutException.html" title="class in org.asteriskjava.manager">TimeoutException</A></PRE><DL><DD><DL></DL></DD><DD><DL><DT><B>Throws:</B><DD><CODE>java.io.IOException</CODE><DD><CODE><A HREF="../../../../org/asteriskjava/manager/TimeoutException.html" title="class in org.asteriskjava.manager">TimeoutException</A></CODE></DL></DD></DL><HR><A NAME="getRawVersion()"><!-- --></A><H3>getRawVersion</H3><PRE>protected java.lang.String <B>getRawVersion</B>()</PRE><DL><DD><DL></DL></DD><DD><DL></DL></DD></DL><HR><A NAME="connect()"><!-- --></A><H3>connect</H3><PRE>protected void <B>connect</B>() throws java.io.IOException</PRE><DL><DD><DL></DL></DD><DD><DL><DT><B>Throws:</B><DD><CODE>java.io.IOException</CODE></DL></DD></DL><HR><A NAME="createSocket()"><!-- --></A><H3>createSocket</H3><PRE>protected <A HREF="../../../../org/asteriskjava/util/SocketConnectionFacade.html" title="interface in org.asteriskjava.util">SocketConnectionFacade</A> <B>createSocket</B>() throws java.io.IOException</PRE><DL><DD><DL></DL></DD><DD><DL><DT><B>Throws:</B><DD><CODE>java.io.IOException</CODE></DL></DD></DL><HR><A NAME="logoff()"><!-- --></A><H3>logoff</H3><PRE>public void <B>logoff</B>() throws java.lang.IllegalStateException</PRE><DL><DD><B>Description copied from interface: <CODE><A HREF="../../../../org/asteriskjava/manager/ManagerConnection.html#logoff()">ManagerConnection</A></CODE></B></DD><DD>Sends a LogoffAction to the Asterisk server and disconnects.<P><DD><DL><DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/asteriskjava/manager/ManagerConnection.html#logoff()">logoff</A></CODE> in interface <CODE><A HREF="../../../../org/asteriskjava/manager/ManagerConnection.html" title="interface in org.asteriskjava.manager">ManagerConnection</A></CODE></DL></DD><DD><DL><DT><B>Throws:</B><DD><CODE>java.lang.IllegalStateException</CODE> - if not in state CONNECTED or RECONNECTING.<DT><B>See Also:</B><DD><A HREF="../../../../org/asteriskjava/manager/action/LogoffAction.html" title="class in org.asteriskjava.manager.action"><CODE>LogoffAction</CODE></A></DL></DD></DL><HR><A NAME="disconnect()"><!-- --></A><H3>disconnect</H3><PRE>protected void <B>disconnect</B>()</PRE><DL><DD>Closes the socket connection.<P><DD><DL></DL></DD><DD><DL></DL></DD></DL><HR><A NAME="sendAction(org.asteriskjava.manager.action.ManagerAction)"><!-- --></A><H3>sendAction</H3><PRE>public <A HREF="../../../../org/asteriskjava/manager/response/ManagerResponse.html" title="class in org.asteriskjava.manager.response">ManagerResponse</A> <B>sendAction</B>(<A HREF="../../../../org/asteriskjava/manager/action/ManagerAction.html" title="interface in org.asteriskjava.manager.action">ManagerAction</A> action) throws java.io.IOException, <A HREF="../../../../org/asteriskjava/manager/TimeoutException.html" title="class in org.asteriskjava.manager">TimeoutException</A>, java.lang.IllegalArgumentException, java.lang.IllegalStateException</PRE><DL><DD><B>Description copied from interface: <CODE><A HREF="../../../../org/asteriskjava/manager/ManagerConnection.html#sendAction(org.asteriskjava.manager.action.ManagerAction)">ManagerConnection</A></CODE></B></DD><DD>Sends a ManagerAction to the Asterisk server and waits for the corresponding ManagerResponse.<P><DD><DL><DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/asteriskjava/manager/ManagerConnection.html#sendAction(org.asteriskjava.manager.action.ManagerAction)">sendAction</A></CODE> in interface <CODE><A HREF="../../../../org/asteriskjava/manager/ManagerConnection.html" title="interface in org.asteriskjava.manager">ManagerConnection</A></CODE></DL></DD><DD><DL><DT><B>Parameters:</B><DD><CODE>action</CODE> - the action to send to the Asterisk server<DT><B>Returns:</B><DD>the corresponding response received from the Asterisk server<DT><B>Throws:</B><DD><CODE>java.io.IOException</CODE> - if the network connection is disrupted.<DD><CODE><A HREF="../../../../org/asteriskjava/manager/TimeoutException.html" title="class in org.asteriskjava.manager">TimeoutException</A></CODE> - if no response is received within the default timeout period.<DD><CODE>java.lang.IllegalArgumentException</CODE> - if the action is <code>null</code>.<DD><CODE>java.lang.IllegalStateException</CODE> - if you are not connected to an Asterisk server.<DT><B>See Also:</B><DD><A HREF="../../../../org/asteriskjava/manager/ManagerConnection.html#sendAction(org.asteriskjava.manager.action.ManagerAction, long)"><CODE>ManagerConnection.sendAction(ManagerAction, long)</CODE></A>, <A HREF="../../../../org/asteriskjava/manager/ManagerConnection.html#sendAction(org.asteriskjava.manager.action.ManagerAction, org.asteriskjava.manager.SendActionCallback)"><CODE>ManagerConnection.sendAction(ManagerAction, SendActionCallback)</CODE></A></DL></DD></DL><HR><A NAME="sendAction(org.asteriskjava.manager.action.ManagerAction, long)"><!-- --></A><H3>sendAction</H3><PRE>public <A HREF="../../../../org/asteriskjava/manager/response/ManagerResponse.html" title="class in org.asteriskjava.manager.response">ManagerResponse</A> <B>sendAction</B>(<A HREF="../../../../org/asteriskjava/manager/action/ManagerAction.html" title="interface in org.asteriskjava.manager.action">ManagerAction</A> action, long timeout) throws java.io.IOException, <A HREF="../../../../org/asteriskjava/manager/TimeoutException.html" title="class in org.asteriskjava.manager">TimeoutException</A>, java.lang.IllegalArgumentException, java.lang.IllegalStateException</PRE><DL><DD><B>Description copied from interface: <CODE><A HREF="../../../../org/asteriskjava/manager/ManagerConnection.html#sendAction(org.asteriskjava.manager.action.ManagerAction, long)">ManagerConnection</A></CODE></B></DD><DD>Sends a ManagerAction to the Asterisk server and waits for the corresponding <A HREF="../../../../org/asteriskjava/manager/response/ManagerResponse.html" title="class in org.asteriskjava.manager.response"><CODE>ManagerResponse</CODE></A>.<P><DD><DL><DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/asteriskjava/manager/ManagerConnection.html#sendAction(org.asteriskjava.manager.action.ManagerAction, long)">sendAction</A></CODE> in interface <CODE><A HREF="../../../../org/asteriskjava/manager/ManagerConnection.html" title="interface in org.asteriskjava.manager">ManagerConnection</A></CODE></DL></DD><DD><DL><DT><B>Parameters:</B><DD><CODE>action</CODE> - the action to send to the Asterisk server<DD><CODE>timeout</CODE> - milliseconds to wait for the response before throwing a TimeoutException<DT><B>Returns:</B><DD>the corresponding response received from the Asterisk server<DT><B>Throws:</B><DD><CODE>java.io.IOException</CODE> - if the network connection is disrupted.<DD><CODE><A HREF="../../../../org/asteriskjava/manager/TimeoutException.html" title="class in org.asteriskjava.manager">TimeoutException</A></CODE> - if no response is received within the given timeout period.<DD><CODE>java.lang.IllegalArgumentException</CODE> - if the action is <code>null</code>.<DD><CODE>java.lang.IllegalStateException</CODE> - if you are not connected to an Asterisk server.<DT><B>See Also:</B><DD><A HREF="../../../../org/asteriskjava/manager/ManagerConnection.html#sendAction(org.asteriskjava.manager.action.ManagerAction, org.asteriskjava.manager.SendActionCallback)"><CODE>ManagerConnection.sendAction(ManagerAction, SendActionCallback)</CODE></A></DL></DD></DL><HR><A NAME="sendAction(org.asteriskjava.manager.action.ManagerAction, org.asteriskjava.manager.SendActionCallback)"><!-- --></A><H3>sendAction</H3><PRE>public void <B>sendAction</B>(<A HREF="../../../../org/asteriskjava/manager/action/ManagerAction.html" title="interface in org.asteriskjava.manager.action">ManagerAction</A> action, <A HREF="../../../../org/asteriskjava/manager/SendActionCallback.html" title="interface in org.asteriskjava.manager">SendActionCallback</A> callback) throws java.io.IOException, java.lang.IllegalArgumentException, java.lang.IllegalStateException</PRE><DL><DD><B>Description copied from interface: <CODE><A HREF="../../../../org/asteriskjava/manager/ManagerConnection.html#sendAction(org.asteriskjava.manager.action.ManagerAction, org.asteriskjava.manager.SendActionCallback)">ManagerConnection</A></CODE></B></DD><DD>Sends a ManagerAction to the Asterisk server and registers a callback handler to be called when the corresponding <A HREF="../../../../org/asteriskjava/manager/response/ManagerResponse.html" title="class in org.asteriskjava.manager.response"><CODE>ManagerResponse</CODE></A> is received. Be very careful that your callbackHandler terminates very quickly and does not do any fancy processing because it is called from the reader thread which is blocked for the time it takes to execute your callbackHandler.<P><DD><DL><DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/asteriskjava/manager/ManagerConnection.html#sendAction(org.asteriskjava.manager.action.ManagerAction, org.asteriskjava.manager.SendActionCallback)">sendAction</A></CODE> in interface <CODE><A HREF="../../../../org/asteriskjava/manager/ManagerConnection.html" title="interface in org.asteriskjava.manager">ManagerConnection</A></CODE></DL></DD><DD><DL><DT><B>Parameters:</B><DD><CODE>action</CODE> - the action to send to the Asterisk server<DD><CODE>callback</CODE> - the callback handler to call when the response is received or <code>null</code> if you are not interested in the response<DT><B>Throws:</B><DD><CODE>java.io.IOException</CODE> - if the network connection is disrupted.<DD><CODE>java.lang.IllegalArgumentException</CODE> - if the action is <code>null</code>.<DD><CODE>java.lang.IllegalStateException</CODE> - if you are not connected to the Asterisk server.</DL></DD></DL><HR><A NAME="sendEventGeneratingAction(org.asteriskjava.manager.action.EventGeneratingAction)"><!-- --></A><H3>sendEventGeneratingAction</H3><PRE>public <A HREF="../../../../org/asteriskjava/manager/ResponseEvents.html" title="interface in org.asteriskjava.manager">ResponseEvents</A> <B>sendEventGeneratingAction</B>(<A HREF="../../../../org/asteriskjava/manager/action/EventGeneratingAction.html" title="interface in org.asteriskjava.manager.action">EventGeneratingAction</A> action) throws java.io.IOException, <A HREF="../../../../org/asteris
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -