BowlerKernel
GoogleChatConversation.java
Go to the documentation of this file.
1 package com.neuronrobotics.application.xmpp.GoogleChat;
2 
3 import org.jivesoftware.smack.Chat;
4 import org.jivesoftware.smack.MessageListener;
5 import org.jivesoftware.smack.XMPPException;
6 import org.jivesoftware.smack.packet.Message;
7 
8 import com.neuronrobotics.application.xmpp.IConversation;
9 
10 
11 // TODO: Auto-generated Javadoc
15 public class GoogleChatConversation implements MessageListener,IConversation{
16 
18  private static int numConversations = 0;
19 
21  private int myIndex = 0;
22 
28  }
29 
30  /* (non-Javadoc)
31  * @see com.neuronrobotics.application.xmpp.IConversation#onMessage(java.lang.String, org.jivesoftware.smack.Chat, java.lang.String)
32  */
33  @Override
34  public String onMessage(String input,Chat chat, String from) {
35 
36  return "I am Artillect bot index: "+myIndex+". You said: " + input;
37  }
38 
39  /* (non-Javadoc)
40  * @see org.jivesoftware.smack.MessageListener#processMessage(org.jivesoftware.smack.Chat, org.jivesoftware.smack.packet.Message)
41  */
42  public void processMessage(Chat chat, Message message) {
43  Message msg = new Message(message.getFrom(), Message.Type.chat);
44  if(message.getType().equals(Message.Type.chat) && message.getBody() != null) {
45  System.out.println("Received: " + message.getBody());
46  try {
47  msg.setBody(onMessage(message.getBody(),chat, message.getFrom()));
48  System.out.println("Sending: "+msg.getBody());
49  chat.sendMessage(msg);
50  } catch (XMPPException ex) {
51  ex.printStackTrace();
52  System.out.println("Failed to send message");
53  }
54  } else {
55  System.out.println("I got a message I didn't understand\n\n"+message.getType());
56  }
57  }
58 
59 }