Skip to content
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
Cannot retrieve contributors at this time

XMPP Sampler

XMPP Samlper uses XMPP Connection to obtain connection context, then it performs one of available XMPP actions. Action is selected in the UI from the list of available actions. To use the plugin properly, you need to have at least basic knowledge of XMPP protocol and its client-server interaction.


  • Connect - every XMPP session must start with connecting to server
  • Log In - log into service with username/password/resource
  • Roster Actions - allows getting/adding/deleting items from roster
  • Send Presence - send available/away status
  • Send Message - send messages to individual and group recipients
  • Send Raw XML - send raw XML packet to server
  • Collect Incoming Packets - very important action, collects all asynchronous incoming packets from connection input queue
  • Disconnect - finish XMPP session with this action
  • Get Bookmarked Conferences (XEP-0048)
  • Join Multi-User Chat (XEP-0045)
  • Send File (XEP-0096)
  • Service Discovery (XEP-0030)

Resource Consumption Notice

This plugin uses Smack API as underlying library. This library uses approach when every client can create two more threads for its functioning (sending and receiving). Users should keep that in mind and monitor factual count of the threads for JMeter process.


Yeah, just like that. You can implement your own action and put JAR with it under lib/ext, so XMPP sampler will detect it and display in the list of available actions in XMPP Sampler.

You'll need to inherit from class com.blazemeter.jmeter.xmpp.actions.AbstractXMPPAction and implement all required methods. There are plenty of examples in existing actions' source code.