tuxmartin

Java XMPP spam bot

Feb 20th, 2013
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.05 KB | None | 0 0
  1. import java.util.Date;
  2.  
  3. import org.jivesoftware.smack.Connection;
  4. import org.jivesoftware.smack.Roster;
  5. import org.jivesoftware.smack.XMPPConnection;
  6. import org.jivesoftware.smack.XMPPException;
  7. import org.jivesoftware.smack.packet.Message;
  8. import org.jivesoftware.smack.packet.Presence;
  9. import org.jivesoftware.smackx.packet.Nick;
  10. import org.jivesoftware.smackx.packet.VCard;
  11.  
  12. public class Nespi {
  13.     private final static String SERVER = "jabber.cz";
  14.     private final static String JMENO = "login";
  15.     private final static String HESLO = "heslo";
  16.     private final static String NICK = "Nespi!";
  17.     private final static int STATUS_UPDATE_INTERVAL = 60; // [s]
  18.    
  19.     public static boolean aktualizovat = true;
  20.  
  21.     private static Connection con;
  22.     private static Presence pr;
  23.    
  24.     public static void main(String[] args) throws XMPPException,
  25.             InterruptedException {
  26.  
  27.         con = new XMPPConnection(SERVER);
  28.         con.connect();
  29.         con.login(JMENO, HESLO);
  30.  
  31.         Roster.setDefaultSubscriptionMode(Roster.SubscriptionMode.accept_all);
  32.  
  33.         pr = new Presence(Presence.Type.available);
  34.         pr.setStatus(";-)");
  35.         con.sendPacket(pr);
  36.  
  37.         new Nick(NICK);
  38.         VCard vCard = new VCard();
  39.         vCard.setJabberId(JMENO + "@" + SERVER);
  40.         vCard.setNickName(NICK);
  41.         vCard.save(con);
  42.  
  43.         class Status implements Runnable {
  44.             @Override
  45.             public void run() {
  46.                 while (aktualizovat) {
  47.                     posliZpravu("JABBER_ID", "Nespi!");
  48.                     try {
  49.                         Thread.sleep(STATUS_UPDATE_INTERVAL*1000);
  50.                     } catch (InterruptedException e) {
  51.                         e.printStackTrace();
  52.                     }
  53.                 }
  54.             }
  55.         }
  56.  
  57.         Status st = new Status();
  58.         Thread vlakno = new Thread(st);
  59.         vlakno.start();
  60.         System.out.println("XMPP klient byl uspesne spusten.");
  61.         vlakno.join();
  62.         con.disconnect();
  63.  
  64.     }
  65.  
  66.     public static void posliZpravu(String komuJID, String textZpravy) {
  67.         Message zprava = new Message();    
  68.         zprava.setTo(komuJID);    
  69.         zprava.setBody(textZpravy);    
  70.         zprava.setType(Message.Type.chat);    
  71.         con.sendPacket(zprava);    
  72.        
  73.         System.out.println("Zprava odeslana: " + new Date().toString());
  74.     }
  75.  
  76. }
Advertisement
Add Comment
Please, Sign In to add comment