/** * Hudson Sametime Plugin */ package hudson.plugins.sametime.im.transport.bot; import java.util.logging.Level; import java.util.logging.Logger; import com.lotus.sametime.im.ImEvent; import com.lotus.sametime.im.ImListener; /** * This is a default bot that simply ignores Im opening, closing and failing, but responds to the reception of messages with a standard brush-off response. * @author Jamie Burrell * @since 16 Jan 2008 * @version 1.0 */ public class SametimeDefaultBot implements ImListener { public static final String DEFAULT_MESSAGE = "Sorry, but I am a bot, and don't respond to input."; private static final Logger log = Logger.getLogger(SametimeDefaultBot.class.getName()); /* (non-Javadoc) * @see com.lotus.sametime.im.ImListener#dataReceived(com.lotus.sametime.im.ImEvent) */ public void dataReceived(ImEvent ie) { //FIXME Handle WHAT text is recieved. In SAmetime Connect 7.5.1 sends default message with notifications. ie.getIm().sendText(true, DEFAULT_MESSAGE); } /* (non-Javadoc) * @see com.lotus.sametime.im.ImListener#imClosed(com.lotus.sametime.im.ImEvent) */ public void imClosed(ImEvent arg0) { } /* (non-Javadoc) * @see com.lotus.sametime.im.ImListener#imOpened(com.lotus.sametime.im.ImEvent) */ public void imOpened(ImEvent arg0) { } /* (non-Javadoc) * @see com.lotus.sametime.im.ImListener#openImFailed(com.lotus.sametime.im.ImEvent) */ public void openImFailed(ImEvent ie) { //FIXME Handle when IMTarget is offline. log.log(Level.SEVERE, "Could not open IM session with ["+ ie.getIm().getPartner().getName()+ "]. Error code: " + ie.getReason(), ie); } /* (non-Javadoc) * @see com.lotus.sametime.im.ImListener#textReceived(com.lotus.sametime.im.ImEvent) */ public void textReceived(ImEvent ie) { //FIXME Handle WHAT text is recieved. In SAmetime Connect 7.5.1 sends default message with notifications. ie.getIm().sendText(true, DEFAULT_MESSAGE); } }