Package com.slack.api.rtm
Class RTMClient
java.lang.Object
com.slack.api.rtm.RTMClient
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable
public class RTMClient
extends java.lang.Object
implements java.io.Closeable
Real Time Messaging (RTM) API
- See Also:
- RTM API
-
Constructor Summary
-
Method Summary
Modifier and Type Method Description voidaddCloseHandler(RTMCloseHandler closeHandler)voidaddErrorHandler(RTMErrorHandler errorHandler)voidaddMessageHandler(RTMMessageHandler messageHandler)voidclose()voidconnect()Connects to the wss endpoint and starts a new WebSocket session.voiddisconnect()Disconnects from the wss endpoint.UsergetConnectedBotUser()java.net.URIgetWssUri()voidonClose(javax.websocket.Session session, javax.websocket.CloseReason reason)voidonError(javax.websocket.Session session, java.lang.Throwable reason)voidonMessage(java.lang.String message)voidonOpen(javax.websocket.Session session)voidreconnect()Re-connects to a new wss endpoint and starts a new WebSocket session.voidremoveCloseHandler(RTMCloseHandler closeHandler)voidremoveErrorHandler(RTMErrorHandler errorHandler)voidremoveMessageHandler(RTMMessageHandler messageHandler)voidsendMessage(java.lang.String message)
-
Constructor Details
-
Method Details
-
connect
public void connect() throws java.io.IOException, javax.websocket.DeploymentExceptionConnects to the wss endpoint and starts a new WebSocket session. If you'd like to reconnect to the endpoint with this instance, call #reconnect() instead. Calling this method won't work as you expect.- Throws:
java.io.IOExceptionjavax.websocket.DeploymentException
-
disconnect
public void disconnect() throws java.io.IOExceptionDisconnects from the wss endpoint. After calling this method, calling #connect() doesn't work. You need to call #reconnect() or instantiate a new RTMClient instead.- Throws:
java.io.IOException
-
reconnect
public void reconnect() throws java.io.IOException, SlackApiException, java.net.URISyntaxException, javax.websocket.DeploymentExceptionRe-connects to a new wss endpoint and starts a new WebSocket session. This method calls rtm.connect API. Please be aware of the rate limit. https://api.slack.com/docs/rate-limits#rtm- Throws:
java.io.IOExceptionSlackApiExceptionjava.net.URISyntaxExceptionjavax.websocket.DeploymentException
-
close
public void close() throws java.io.IOException- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Throws:
java.io.IOException
-
onOpen
public void onOpen(javax.websocket.Session session) -
onClose
public void onClose(javax.websocket.Session session, javax.websocket.CloseReason reason) -
onError
public void onError(javax.websocket.Session session, java.lang.Throwable reason) -
onMessage
public void onMessage(java.lang.String message) -
addMessageHandler
-
removeMessageHandler
-
addErrorHandler
-
removeErrorHandler
-
addCloseHandler
-
removeCloseHandler
-
sendMessage
public void sendMessage(java.lang.String message) -
getWssUri
public java.net.URI getWssUri() -
getConnectedBotUser
-