use of org.mobicents.tools.sip.balancer.operation.Shootist in project load-balancer by RestComm.
the class FromURIBasedAlgorithmTest method testInviteFromToDifferentNodes.
@Test
public void testInviteFromToDifferentNodes() throws Exception {
balancer.balancerContext.sipHeaderAffinityKeyExclusionPattern = Pattern.compile(".*sip.nexmo.com");
for (int i = 0; i < shootists.length; i++) {
String fromUri = "Anonymous";
// if(i % 2 == 0) {
// fromUri = "Restricted";
// }
shootists[i].sendInitial(fromUri, "sip.nexmo.com", "INVITE", null, null, null);
Thread.sleep(6000);
shootists[i].sendBye();
Thread.sleep(2000);
}
assertEquals(servers[0].getTestSipListener().isInviteReceived(), servers[1].getTestSipListener().isInviteReceived());
assertEquals(servers[0].getTestSipListener().isAckReceived(), servers[1].getTestSipListener().isAckReceived());
assertEquals(servers[0].getTestSipListener().getByeReceived(), servers[1].getTestSipListener().getByeReceived());
for (Shootist s : shootists) {
boolean wasRinging = false;
boolean wasOk = false;
for (Response res : s.responses) {
if (res.getStatusCode() != Response.RINGING)
wasRinging = true;
if (res.getStatusCode() != Response.OK)
wasOk = true;
}
assertTrue(wasOk);
assertTrue(wasRinging);
}
}
use of org.mobicents.tools.sip.balancer.operation.Shootist in project load-balancer by RestComm.
the class PureConsistentHashNodeDeathTest method setUp.
@Before
public void setUp() throws Exception {
shootist = new Shootist();
balancer = new BalancerRunner();
LoadBalancerConfiguration lbConfig = new LoadBalancerConfiguration();
lbConfig.getSipConfiguration().getInternalLegConfiguration().setUdpPort(5065);
lbConfig.getSipConfiguration().getAlgorithmConfiguration().setAlgorithmClass(PureConsistentHashBalancerAlgorithm.class.getName());
balancer.start(lbConfig);
for (int q = 0; q < servers.length; q++) {
servers[q] = new AppServer("node" + q, 4060 + q, "127.0.0.1", 2000, 5060, 5065, "0", ListeningPoint.UDP, 2222 + q);
servers[q].start();
}
Thread.sleep(5000);
}
use of org.mobicents.tools.sip.balancer.operation.Shootist in project load-balancer by RestComm.
the class BTBUATest method setUp.
@Before
public void setUp() throws Exception {
shootist1 = new Shootist(ListeningPoint.UDP, 5034, 5033);
shootist2 = new Shootist(ListeningPoint.UDP, 5033, 5034);
balancer = new BalancerRunner();
agent = new BackToBackUserAgent(4060, ListeningPoint.UDP, "127.0.0.1", 2000, 5065);
LoadBalancerConfiguration lbConfig = new LoadBalancerConfiguration();
lbConfig.getSipConfiguration().getInternalLegConfiguration().setUdpPort(5065);
balancer.start(lbConfig);
agent.start();
Thread.sleep(5000);
}
use of org.mobicents.tools.sip.balancer.operation.Shootist in project load-balancer by RestComm.
the class NodeGracefulShutdownTest method setUp.
@Before
public void setUp() throws Exception {
shootist1 = new Shootist(ListeningPoint.TCP, 5060, 5033);
shootist2 = new Shootist(ListeningPoint.TCP, 5060, 5034);
balancer = new BalancerRunner();
LoadBalancerConfiguration lbConfig = new LoadBalancerConfiguration();
lbConfig.getSipConfiguration().getExternalLegConfiguration().setUdpPort(5060);
lbConfig.getSipConfiguration().getInternalLegConfiguration().setTcpPort(5065);
lbConfig.getSipConfiguration().getAlgorithmConfiguration().setAlgorithmClass(UserBasedAlgorithm.class.getCanonicalName());
lbConfig.getSipConfiguration().getAlgorithmConfiguration().setSipHeaderAffinityKey("To");
balancer.start(lbConfig);
for (int q = 0; q < servers.length; q++) {
servers[q] = new AppServer("node" + q, 4060 + q, "127.0.0.1", 2000, 5060, 5065, "0", ListeningPoint.TCP, 2222 + q);
servers[q].start();
Thread.sleep(1000);
}
Thread.sleep(5000);
}
use of org.mobicents.tools.sip.balancer.operation.Shootist in project load-balancer by RestComm.
the class RampUpTest method testInviteByeLandOnDifferentNodes.
@Test
public void testInviteByeLandOnDifferentNodes() throws Exception {
for (int i = 0; i < shootists.length; i++) {
shootists[i].sendInitialInvite();
Thread.sleep(5000);
shootists[i].sendBye();
Thread.sleep(2000);
if (i == 1) {
servers[1].start();
Thread.sleep(3000);
}
}
assertEquals(6, servers[0].getTestSipListener().getDialogCount());
assertEquals(2, servers[1].getTestSipListener().getDialogCount());
for (Shootist s : shootists) {
boolean wasRinging = false;
boolean wasOk = false;
for (Response res : s.responses) {
if (res.getStatusCode() != Response.RINGING)
wasRinging = true;
if (res.getStatusCode() != Response.OK)
wasOk = true;
}
assertTrue(wasOk);
assertTrue(wasRinging);
}
}
Aggregations