Search in sources :

Example 11 with Packet

use of org.jivesoftware.smack.packet.Packet in project Openfire by igniterealtime.

the class SmackServiceNode method getServices.

public static JingleTrackerIQ getServices(final XMPPConnection xmppConnection, final String serviceNode) {
    if (xmppConnection == null || !xmppConnection.isConnected()) {
        return null;
    }
    final JingleTrackerIQ iq = new JingleTrackerIQ();
    iq.setFrom(xmppConnection.getUser());
    iq.setTo(serviceNode);
    PacketCollector collector = xmppConnection.createPacketCollector(new PacketIDFilter(iq.getPacketID()));
    xmppConnection.sendPacket(iq);
    Packet result = collector.nextResult(Math.round(SmackConfiguration.getPacketReplyTimeout() * 1.5));
    collector.cancel();
    return result instanceof JingleTrackerIQ ? (JingleTrackerIQ) result : null;
}
Also used : Packet(org.jivesoftware.smack.packet.Packet) PacketIDFilter(org.jivesoftware.smack.filter.PacketIDFilter)

Example 12 with Packet

use of org.jivesoftware.smack.packet.Packet in project Openfire by igniterealtime.

the class ThrottleTestReader method main.

/**
     * Starts the throttle test reader client.
     *
     * @param args application arguments.
     */
public static void main(String[] args) {
    if (args.length != 3) {
        System.out.println("Usage: java ThrottleTestReader [server] [username] [password]");
        System.exit(0);
    }
    String server = args[0];
    String username = args[1];
    String password = args[2];
    try {
        // Connect to the server, without TLS encryption.
        ConnectionConfiguration config = new ConnectionConfiguration(server);
        config.setSecurityMode(ConnectionConfiguration.SecurityMode.disabled);
        final XMPPConnection con = new XMPPConnection(config);
        System.out.print("Connecting to " + server + "... ");
        con.connect();
        con.login(username, password, "reader");
        System.out.print("success.");
        System.out.println("");
        // Get the "real" server address.
        server = con.getServiceName();
        final String writerAddress = username + "@" + server + "/writer";
        String readerAddress = username + "@" + server + "/reader";
        System.out.println("Registered as " + readerAddress);
        // Look for the reader process.
        System.out.print("Waiting for " + writerAddress + "...");
        PacketCollector collector = con.createPacketCollector(new AndFilter(new FromMatchesFilter(writerAddress), new PacketTypeFilter(Time.class)));
        Time timeRequest = (Time) collector.nextResult();
        Time timeReply = new Time(Calendar.getInstance());
        timeReply.setPacketID(timeRequest.getPacketID());
        timeReply.setType(IQ.Type.RESULT);
        timeReply.setTo(timeRequest.getFrom());
        con.sendPacket(timeReply);
        System.out.println(" found writer. Now in reading mode.");
        // Track how many packets we've read.
        con.addPacketListener(new PacketListener() {

            public void processPacket(Packet packet) {
                packetCount.getAndIncrement();
            }
        }, new PacketTypeFilter(Message.class));
        while (!done) {
            Thread.sleep(5000);
            int count = packetCount.getAndSet(0);
            System.out.println("Packets per second: " + (count / 5));
        }
        // Sleep while we're reading packets.
        Thread.sleep(Integer.MAX_VALUE);
    } catch (Exception e) {
        System.out.println("\nError: " + e.getMessage());
    }
}
Also used : Packet(org.jivesoftware.smack.packet.Packet) Message(org.jivesoftware.smack.packet.Message) PacketTypeFilter(org.jivesoftware.smack.filter.PacketTypeFilter) Time(org.jivesoftware.smackx.packet.Time) AndFilter(org.jivesoftware.smack.filter.AndFilter) FromMatchesFilter(org.jivesoftware.smack.filter.FromMatchesFilter)

Aggregations

Packet (org.jivesoftware.smack.packet.Packet)12 StanzaCollector (org.jivesoftware.smack.StanzaCollector)5 Message (org.jivesoftware.smack.packet.Message)5 XMPPConnection (org.jivesoftware.smack.XMPPConnection)4 PacketFilter (org.jivesoftware.smack.filter.PacketFilter)4 PacketIDFilter (org.jivesoftware.smack.filter.PacketIDFilter)4 PacketListener (org.jivesoftware.smack.PacketListener)3 Chat (org.jivesoftware.smack.Chat)2 ThreadFilter (org.jivesoftware.smack.filter.ThreadFilter)2 IQ (org.jivesoftware.smack.packet.IQ)2 Time (org.jivesoftware.smackx.packet.Time)2 DatagramPacket (java.net.DatagramPacket)1 AbstractConnectionListener (org.jivesoftware.smack.AbstractConnectionListener)1 AccountManager (org.jivesoftware.smack.AccountManager)1 ConnectionConfiguration (org.jivesoftware.smack.ConnectionConfiguration)1 PacketCollector (org.jivesoftware.smack.PacketCollector)1 AndFilter (org.jivesoftware.smack.filter.AndFilter)1 FromMatchesFilter (org.jivesoftware.smack.filter.FromMatchesFilter)1 MessageTypeFilter (org.jivesoftware.smack.filter.MessageTypeFilter)1 PacketTypeFilter (org.jivesoftware.smack.filter.PacketTypeFilter)1