Advertisement
Guest User

Untitled

a guest
Aug 20th, 2017
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.19 KB | None | 0 0
  1. const net = require('net');
  2. const http = require('http');
  3. const express = require('express');
  4. const ajIp = process.env.AJIP || '52.42.109.183';
  5. const ajPort = process.env.AJPORT || 443;
  6. const listenPort = process.env.LISTENPORT || 443;
  7.  
  8. console.log("AJ IP is " + ajIp);
  9. console.log("AJ port is " + ajPort);
  10.  
  11. var ajConnection;
  12. var flashConnection;
  13. var server;
  14. var webServer;
  15. var app;
  16. var io;
  17.  
  18. app = express();
  19.  
  20. app.get('/', function(req, res){
  21. res.sendFile(__dirname + '/index.html')
  22. });
  23. //app.use(express.static('C:\\Users\\tyree\\Desktop\\AnimalJamWIP'));
  24. app.set('port', process.env.PORT || 8000);
  25. app.set('host', process.env.HOST || '127.0.0.1');
  26.  
  27. webServer = http.createServer(app).listen(app.get('port'), app.get('host'), function() {
  28. console.log(`Web server listening on http://${app.get('host')}:${app.get('port')}`);
  29. });
  30.  
  31. io = require('socket.io')(webServer);
  32.  
  33. server = net.createServer(function(c) { //'connection' listener
  34. flashConnection = c;
  35. flashConnection.on('data', flashMessageReceived);
  36.  
  37. // connect to aj when flash connects to node
  38. ajConnection = net.connect(ajPort, ajIp, setupAj);
  39. ajConnection.on('data', ajMessageReceived);
  40. });
  41.  
  42. io.listen(webServer);
  43.  
  44. server.listen(listenPort, function () {
  45. console.log("proxy server on");
  46. });
  47.  
  48. function setupAj () {
  49. console.log('aj connected');
  50. }
  51.  
  52. // console.log(io);
  53. io.on("connection", socketioConnected);
  54.  
  55. function socketioConnected(socketioConnection) {
  56. console.log('Socket.io Connection with the client established');
  57.  
  58. var message_to_client = {
  59. data: "Connection with the server established"
  60. }
  61. socketioConnection.send(message_to_client);
  62. socketioConnection.on("message", socketioMessageRecieved);
  63. }
  64.  
  65. function socketioMessageRecieved(data) {
  66. data = JSON.parse(data);
  67.  
  68. /*Printing the data */
  69. console.log(data);
  70.  
  71. var ack_to_client = {
  72. data: "Server Received the message"
  73. };
  74.  
  75. io.send(ack_to_client);
  76.  
  77. // send message to Flash
  78. if (flashConnection.writable) {
  79. flashConnection.write(transform(data.message + '\0', true));
  80. }
  81.  
  82. if (ajConnection.writable) {
  83. ajConnection.write(transform(data.messagee + '\0', true));
  84. }
  85.  
  86. }
  87.  
  88. function flashMessageReceived (flashMessage) {
  89. console.log("Flash message: " + flashMessage);
  90. flashMessage = transform(flashMessage, false);
  91. console.log("Flash message after transform: " + flashMessage);
  92.  
  93. io.send({data: "From flash: " + flashMessage});
  94. ajConnection.write(flashMessage);
  95. }
  96.  
  97. function ajMessageReceived (ajMessage) {
  98. console.log("AJ message: " + ajMessage);
  99. ajMessage = transform(ajMessage, true);
  100. console.log("AJ message after transform: " + ajMessage);
  101.  
  102. io.send({data: "From AJ: " + ajMessage});
  103. if (flashConnection.writable) {
  104. flashConnection.write(transform(ajMessage, true));
  105. }
  106. }
  107.  
  108. function transform(input, fromAj) {
  109. output = input.toString();
  110. output = output.replace(/"accountType":1/, '"accountType":2');
  111. output = output.replace('%58%', '%224%').replace('%5580347%', '%1733427561%').replace('%136%', '%231%').replace('%1343566129%', '%1764343913%').replace('%165%', '%169%').replace('%-162056960%', '%-1820330437%').replace('%706%', '%851%').replace('%352357632%', '%0%').replace('%153%', '%231%').replace('%-2044067840%', '%1764343913%').replace('%1558%', '%21%').replace('%459762025%', '%-2128378821%').replace('%1446%', '%136%').replace('%1442840576%', '%1427452209%').replace('%1442%', '%136%').replace('%1458666027%', '%991697948%').replace('%161%', '%1146%').replace('%-732610560%', '%1764343913%').replace('%161%', '%167%').replace('%-1620770816%', '%1764343913%').replace('%161%', '%65%').replace('%539697152%', '%1431386939%').replace('%161%', '%285%').replace('%2040610816%', '%16711935%').replace('%161%', '%146%').replace('%-1008058368%', '%1416193897%').replace('%161%', '%276%').replace('%1751728128%', '%1734868736%').replace('%165%', '%50%').replace('%-217765120%', '%1744791551%').replace('%26%-1%', '%28%-1%').replace('%58%', '%224%').replace('%5580347%', '%0%').replace('1343566129', '738734185').replace('1343566129', '738734185').replace('1343566129', '738734185').replace('%58%', '%224%').replace('%5580347%', '%0%').replace('%58%', '%224%').replace('%5580347%', '%1733427561%').replace('%58%', '%224%')
  112. .replace('%5580347%', '%0%').replace('%58%', '%224%').replace('%5580347%', '%0%').replace('%58%', '%224%').replace('%5580347%', '%0%')
  113. .replace('1343566129', '738734185').replace('1343566129', '738734185').replace('1343566129', '738734185').replace('%-162056960%', '%1764343913%').replace('%165%', '%231%').replace('%-162056960%', '%1764343913%').replace('%165%', '%231%').replace('%-162056960%', '%1764343913%')
  114. //.replace('%139%', '%21%').replace('-2089143029', '-2128378821').replace('%161%', '%1146%').replace('-732610560', '1713020415').replace('%161%', '%1548%').replace('-732610560', '1715131332').replace('1767057663', '0').replace('806688049', '0')
  115. //.replace('1730570601', '0').replace('-2002969751', '0').replace('2020212992', '0').replace('644092417', '0').replace('1750417664', '0').replace('-711529626', '0').replace('1414878057', '0').replace('1432961365', '0').replace('1398030336', '0').replace('-266927872', '0').replace('%165%', '%1146%')
  116. //.replace('%738%', '%243%').replace('%738%', '%243%').replace('%738%', '%243%').replace('%738%', '%243%').replace('%738%', '%243%').replace('%738%', '%243%').replace('%738%', '%243%').replace('%738%', '%243%').replace('%738%', '%243%')
  117. //.replace('%738%', '%243%').replace('%738%', '%243%').replace('%738%', '%243%').replace('%738%', '%243%').replace('%738%', '%243%').replace('%738%', '%243%').replace('%738%', '%243%').replace('%738%', '%243%').replace('%369230378%', '%0%').replace('%153%', '%1145%').replace('%-2044067840%', '%0%')
  118. //.replace('%369230378%', '%17246980%').replace('%369230378%', '%17246980%').replace('%369230378%', '%1409229572%').replace('%369230378%', '%1409229572%').replace('%369230378%', '%4046192388%').replace('%369230378%', '%4046192388%').replace('%369230378%', '%493103108%').replace('%369230378%', '%493103108%')
  119. //.replace('%369230378%', '%2566870276%').replace('%369230378%', '%2566870276%').replace('%369230378%', '%855598340%').replace('%369230378%', '%855598340%').replace('%369230378%', '%2348753668%').replace('%369230378%', '%2348753668%');
  120. //output = output.replace(/"isModerator":false/, '"isModerator":true');
  121. //output = output.replace(/"isGuide":false/, '"isGuide":true');
  122. // output = output.replace(/"diamondsCount":0/, '"diamondsCount":350');
  123. //output = output.replace(/"accountTypeChanged":false/, '"accountTypeChanged":true');
  124. //output = output.replace(/"jamaaDate":2453/, '"jamaaDate":1');
  125. //output = output.replace(/"numDaysLeftOnSubscription":0/, '"numDaysLeftOnSubscription":9999999999999999');
  126. output = output.replace(/%player_den.playerden_free%/, '%player_den.room_main%');
  127.  
  128.  
  129.  
  130.  
  131.  
  132. if (fromAj) {
  133. output = output.replace(/%only do this FROM aj%/, '%blah%');
  134. } else {
  135. output = output.replace(/%only do this from flash%/, '%blah%');
  136. }
  137.  
  138. return output;
  139. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement