Guest User

Untitled

a guest
Sep 11th, 2018
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.22 KB | None | 0 0
  1. Error in using with rabbitMQ DIRECT exchange via kaazing javascript library
  2. function amqpTest(){
  3. load();
  4. var $ = function(s) { return document.getElementById(s); };
  5. var console = $("console");
  6.  
  7. var log = function(message){
  8. var pre = document.createElement("pre");
  9. pre.style.wordWrap = "break-word";
  10. pre.innerHTML = message;
  11. console.insertBefore(pre, console.firstChild);
  12. while(console.childNodes.length > 500){
  13. console.removeChild(console.lastChild);
  14. }
  15. }
  16.  
  17. var url = "ws://localhost:8000/amqp";
  18. var username = "guest";
  19. var password = "guest";
  20. var connect = $("connect");
  21. var disconnect= $("disconnect");
  22.  
  23. var consumeExchange = "demo_direct_exchange";
  24. var consumeMessageText = "call";
  25. var alias = "player";
  26.  
  27. var myQueueName = "clientqueue";
  28. var myConsumerTag = "clientkey";
  29. var routingKey = "broadcastkey";
  30. var exchangeName = consumeExchange;
  31. var send = $("send");
  32.  
  33. connect.onclick = function(){
  34. log("Connecting: "+ url + " " + username);
  35. myQueueName = "client" + Math.floor(Math.random() * 1000000);
  36. myConsumerTag = "client" + Math.floor(Math.random() * 1000000);
  37.  
  38. var version = "0-9-0";
  39. amqp = new AmqpClient();
  40. amqp.addEventListener("close", function(){
  41. log("Disconnected");
  42. });
  43.  
  44. amqp.connect(url, '/', {username:username, password:password}, version, openHandler);
  45. }
  46.  
  47. var openHandler = function(){
  48. log("CONNECTED");
  49. log("Open Publish Channel...");
  50. publishChannel = amqp.openChannel(publishChannelOpenHandler);
  51. log("Open Consume Channel...");
  52. consumeChannel = amqp.openChannel(consumeChannelOpenHandler);
  53. };
  54.  
  55. var publishChannelOpenHandler = function(channel) {
  56. log("Opened Publish Channel");
  57. publishChannel.declareExchange(exchangeName, "direct", false, false, false);
  58. publishChannel.addEventListener("declareexchange", function(){log("Exchange Declared : "+exchangeName)});
  59. publishChannel.addEventListener("close", function() { log("Channel Closed : Publish Channel" )});
  60.  
  61. };
  62.  
  63. var consumeChannelOpenHandler = function(channel) {
  64. log("Opened Consumed Channel");
  65. consumeChannel.addEventListener("declarequeue", function(){ log("Queue Declared : " +myQueueName); });
  66. consumeChannel.addEventListener("bindqueue", function() { log("QUEUE BOUND: " + exchangeName + " " + myQueueName)});
  67. consumeChannel.addEventListener("subscribe", function() { log("CONSUME: " + myQueueName)});
  68. consumeChannel.addEventListener("close", function() {log("CHANNEL CLOSED: consume channel");});
  69. consumeChannel.addEventListener("message", messageHandler);
  70.  
  71. consumeChannel.declareQueue(myQueueName, false, false, false, false, false)
  72. .bindQueue(myQueueName, exchangeName, routingKey, false)
  73. .consumeBasic(myQueueName, myConsumerTag, false, true, true, false);
  74. }
  75.  
  76. var messageHandler = function(m){
  77. alert("A");
  78. var body = m.body.getString(Charset.UTF8);
  79.  
  80.  
  81. if (body == "start_auction"){
  82. ss();
  83. }
  84. if (body == "new_bidder"){
  85. alert("New Bidder");
  86. }
  87.  
  88. //log(body);
  89. };
  90.  
  91. disconnect.onclick = function() {
  92. log("DISCONNECT");
  93. amqp.disconnect();
  94. };
  95.  
  96. send.onclick = function(){
  97. log ("SENDING MESSAGE ....");
  98. var body = new ByteBuffer();
  99. body.putString("new_bidder", Charset.UTF8);
  100. body.flip();
  101. var headers = {};
  102. publishChannel.publishBasic(body, headers, consumeExchange, routingKey, false, false);
  103.  
  104. };
  105.  
  106. $("clear").onclick = function() { while (console.childNodes.length > 0)
  107. {
  108. console.removeChild(console.lastChild);
  109. }
  110. };
  111.  
  112. }
Add Comment
Please, Sign In to add comment