Commit 9fb7b4e2 authored by Roman Haefeli's avatar Roman Haefeli
Browse files

implement peer swapping with arrow keys

parent c90448b8
#N canvas 24 147 1022 479 10;
#X obj 529 71 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#N canvas 247 142 450 300 get.peer.data 1;
#X obj 21 38 sel 1;
#N canvas 247 142 448 324 get.peer.data 0;
#X obj 21 58 f;
#X obj 53 59 r \$0.peer;
#X obj 21 90 text search \$1.clients 0;
......@@ -12,27 +11,20 @@
#X obj 54 131 text get \$1.clients;
#X obj 54 151 unpack f s f s;
#X obj 108 196 s \$0.peer.master;
#X obj 81 217 s \$0.peer.name;
#X obj 21 18 inlet;
#X obj 135 173 s \$0.peer.ip;
#X connect 0 0 1 0;
#X connect 1 0 3 0;
#X connect 2 0 1 1;
#X connect 0 0 2 0;
#X connect 1 0 0 1;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 3 1 6 0;
#X connect 4 0 5 0;
#X connect 4 1 7 0;
#X connect 5 0 6 0;
#X connect 7 0 8 0;
#X connect 8 1 10 0;
#X connect 8 2 9 0;
#X connect 8 3 12 0;
#X connect 11 0 0 0;
#X connect 6 0 7 0;
#X connect 7 2 8 0;
#X connect 7 3 9 0;
#X restore 16 104 pd get.peer.data;
#N canvas 277 523 937 517 gui.code 0;
#X obj 11 74 s \$0.client.label;
#X msg 11 46 label \$1;
#N canvas 277 523 948 427 gui.code 0;
#X obj 744 19 r \$0.reset;
#X obj 811 18 r \$0.link;
#X obj 811 18 r \$0.peer.ready;
#X obj 811 38 sel 0;
#X obj 744 60 s \$0.display.reset;
#X obj 196 249 s \$0.glitch.label;
......@@ -127,7 +119,7 @@
#X obj 603 618 t b b;
#X obj 672 620 s \$0.initiate.stun;
#X obj 603 647 s \$0.initiate.server;
#X obj 630 435 r \$0.link;
#X obj 630 435 r \$0.peer.ready;
#X obj 603 435 f;
#X obj 603 457 sel 1;
#X obj 176 235 t a a;
......@@ -209,7 +201,7 @@
#X connect 63 1 7 1;
#X connect 64 0 31 0;
#X connect 64 1 31 1;
#X restore 40 338 pd tx.button;
#X restore 12 104 pd tx.button;
#X obj 805 138 metro 500;
#X obj 805 159 == 0;
#X obj 805 180 t a a;
......@@ -261,13 +253,13 @@
#X connect 17 0 15 0;
#X connect 17 1 18 0;
#X connect 18 0 14 1;
#X restore 40 364 pd rx.button;
#X restore 12 130 pd rx.button;
#N canvas 347 761 450 300 delay.nb 0;
#X obj 45 170 s \$0.delay.nb.r;
#X msg 45 144 color -1 \$1 -1;
#X msg 45 72 -1;
#X msg 81 76 0;
#X obj 45 17 r \$0.link;
#X obj 45 17 r \$0.peer.ready;
#X obj 45 38 sel 0 1;
#X obj 81 97 t a a;
#X obj 228 74 s \$0.delay;
......@@ -281,7 +273,10 @@
#X connect 6 0 1 0;
#X connect 6 1 0 0;
#X connect 8 0 7 0;
#X restore 43 394 pd delay.nb;
#X restore 15 160 pd delay.nb;
#N canvas 0 106 431 345 peer.name 0;
#X obj 11 74 s \$0.client.label;
#X msg 11 46 label \$1;
#X obj 11 22 r \$0.peer.name;
#X obj 12 105 r \$0.peer.ready;
#X obj 12 128 sel 0 1;
......@@ -290,60 +285,123 @@
#X msg 12 153 1;
#X msg 51 155 0;
#X connect 1 0 0 0;
#X connect 2 0 5 0;
#X connect 2 0 1 0;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 4 0 7 0;
#X connect 4 1 8 0;
#X connect 6 0 5 0;
#X connect 7 0 6 0;
#X connect 8 0 6 0;
#X restore 17 18 pd peer.name;
#N canvas 428 518 477 324 arrow.up.down 0;
#X obj 12 16 r \$0.arrow.up;
#X obj 12 39 sel 0;
#X obj 54 40 t a;
#X obj 250 289 s \$0.arrow.up.r;
#X msg 250 249 color -1 -1 \$1;
#X msg 250 221 12;
#X msg 281 220 1;
#X obj 223 32 r \$0.peer.name;
#X obj 223 55 select empty;
#X msg 223 78 0;
#X msg 292 78 1;
#X obj 330 31 r \$0.udp.link.status;
#X obj 330 57 == 0;
#X obj 223 147 &&;
#X obj 330 91 t b a;
#X obj 223 103 t a;
#X obj 250 195 sel 0 1;
#X obj 12 63 f \$2;
#X obj 12 86 - 1;
#X obj 100 238 s \$0.swap.request;
#X obj 100 40 sel 0;
#X obj 142 41 t a;
#X obj 100 64 f \$2;
#X obj 100 17 r \$0.arrow.down;
#X obj 100 87 + 1;
#X obj 352 289 s \$0.arrow.down.r;
#X obj 223 170 t a a;
#X obj 100 148 spigot;
#X connect 0 0 1 0;
#X connect 1 0 17 0;
#X connect 1 1 2 0;
#X connect 2 0 1 1;
#X connect 4 0 3 0;
#X connect 4 0 25 0;
#X connect 5 0 4 0;
#X connect 6 0 4 0;
#X connect 7 0 8 0;
#X connect 8 0 9 0;
#X connect 9 0 6 0;
#X connect 9 0 7 0;
#X connect 8 1 10 0;
#X connect 9 0 15 0;
#X connect 9 0 36 0;
#X connect 10 0 15 0;
#X connect 11 0 12 0;
#X connect 12 0 14 0;
#X connect 13 0 26 0;
#X connect 14 0 13 0;
#X connect 14 1 13 1;
#X connect 15 0 13 0;
#X connect 16 0 5 0;
#X connect 16 1 6 0;
#X connect 17 0 18 0;
#X connect 18 0 27 0;
#X connect 20 0 22 0;
#X connect 20 1 21 0;
#X connect 21 0 20 1;
#X connect 22 0 24 0;
#X connect 23 0 20 0;
#X connect 24 0 27 0;
#X connect 26 0 27 1;
#X connect 26 1 16 0;
#X connect 27 0 19 0;
#X restore 16 46 pd arrow.up.down;
#X connect 0 0 3 0;
#X connect 1 0 2 0;
#X connect 2 0 3 0;
#X connect 6 0 7 0;
#X connect 7 0 4 0;
#X connect 7 0 5 0;
#X connect 7 0 13 0;
#X connect 7 0 34 0;
#X connect 8 0 9 0;
#X connect 9 0 10 0;
#X connect 10 0 11 0;
#X connect 11 0 12 0;
#X connect 12 0 13 0;
#X connect 13 0 14 0;
#X connect 16 0 12 0;
#X connect 16 0 18 0;
#X connect 16 0 21 0;
#X connect 16 0 33 0;
#X connect 17 0 23 0;
#X connect 18 0 19 0;
#X connect 19 0 24 0;
#X connect 20 0 25 0;
#X connect 21 0 22 0;
#X connect 22 0 26 0;
#X connect 23 0 18 0;
#X connect 25 0 21 0;
#X connect 27 0 28 0;
#X connect 14 0 10 0;
#X connect 14 0 16 0;
#X connect 14 0 19 0;
#X connect 14 0 31 0;
#X connect 15 0 21 0;
#X connect 16 0 17 0;
#X connect 17 0 22 0;
#X connect 18 0 23 0;
#X connect 19 0 20 0;
#X connect 20 0 24 0;
#X connect 21 0 16 0;
#X connect 23 0 19 0;
#X connect 25 0 26 0;
#X connect 26 0 27 0;
#X connect 28 0 29 0;
#X connect 29 0 30 0;
#X connect 30 0 31 0;
#X connect 31 0 32 0;
#X connect 32 0 33 0;
#X connect 33 0 34 0;
#X connect 34 0 35 0;
#X connect 38 0 39 0;
#X connect 39 0 40 0;
#X connect 40 0 42 0;
#X connect 40 1 39 1;
#X connect 41 0 38 0;
#X connect 36 0 37 0;
#X connect 37 0 38 0;
#X connect 38 0 40 0;
#X connect 38 1 37 1;
#X connect 39 0 36 0;
#X connect 41 0 42 0;
#X connect 42 0 14 0;
#X connect 43 0 44 0;
#X connect 44 0 16 0;
#X connect 45 0 46 0;
#X connect 46 0 47 0;
#X connect 50 0 1 0;
#X connect 51 0 52 0;
#X connect 52 0 55 0;
#X connect 52 1 56 0;
#X connect 54 0 53 0;
#X connect 55 0 54 0;
#X connect 56 0 54 0;
#X connect 44 0 45 0;
#X restore 16 184 pd gui.code;
#X obj 529 110 s \$0.reset;
#X obj 540 89 r \$1.reset;
#X obj 20 20 cnv 32 953 32 empty empty empty 8 16 0 20 -262144 -262144
0;
#X obj 55 20 cnv 32 295 32 empty \$0.client.label empty 8 16 0 20 -1
-262144 0;
#X obj 55 20 cnv 32 295 32 empty \$0.client.label Michael 8 16 0 20
-1 -262144 0;
#X obj 550 20 cnv 32 70 32 empty \$0.glitch.label empty 8 16 0 20 -1
-262144 0;
#X obj 623 20 cnv 32 70 32 empty \$0.ooo.label empty 8 16 0 20 -1 -262144
......@@ -365,7 +423,7 @@
#X obj 25 177 list prepend;
#X obj 25 575 s \$0.to.jacktrip;
#X obj 315 257 s \$0.to.jacktrip;
#X obj 315 131 r \$0.link;
#X obj 315 131 r \$0.peer.ready;
#X obj 315 153 sel 0;
#X msg 315 238 stop;
#X obj 533 129 r \$0.from.jacktrip;
......@@ -580,7 +638,7 @@
#X obj 16 113 del 0;
#X obj 424 203 b;
#X obj 449 224 r \$0.udp.link.status;
#X obj 451 272 r \$0.link;
#X obj 451 272 r \$0.peer.ready;
#X obj 424 224 f;
#X obj 424 247 sel 0 4;
#X obj 424 272 f;
......@@ -590,7 +648,7 @@
#X msg 424 316 6;
#X obj 357 369 r \$0.tx.switch.s;
#X obj 382 392 r \$0.udp.link.status;
#X obj 384 440 r \$0.link;
#X obj 384 440 r \$0.peer.ready;
#X obj 357 392 f;
#X obj 357 440 f;
#X obj 357 462 sel 1;
......@@ -615,7 +673,7 @@
#X obj 112 534 r \$0.udp.link.status;
#X obj 87 534 f;
#X obj 87 557 sel 5;
#X obj 114 578 r \$0.link;
#X obj 114 578 r \$0.peer.ready;
#X obj 87 578 f;
#X obj 87 601 sel 1;
#X obj 87 775 s \$0.udp.link.status;
......@@ -761,13 +819,13 @@
#X connect 10 0 3 0;
#X connect 11 0 9 0;
#X restore 238 536 pd random.seed;
#X obj 36 403 r \$0.link;
#X obj 36 403 r \$0.peer.ready;
#X obj 9 403 f;
#X obj 9 425 sel 1;
#X msg 111 425 1;
#X obj 111 444 s \$0.udp.link.status;
#X obj 396 148 r \$0.udp.link.status;
#X obj 398 196 r \$0.link;
#X obj 398 196 r \$0.peer.ready;
#X obj 371 148 f;
#X obj 371 171 sel 0 4;
#X obj 371 196 f;
......@@ -776,14 +834,14 @@
#X msg 371 240 2;
#X obj 295 323 r \$0.tx.switch.s;
#X obj 320 346 r \$0.udp.link.status;
#X obj 322 394 r \$0.link;
#X obj 322 394 r \$0.peer.ready;
#X obj 295 346 f;
#X obj 295 394 f;
#X obj 295 416 sel 1;
#X obj 295 369 sel 2;
#X obj 10 132 t b a;
#X obj 35 183 r \$0.udp.link.status;
#X obj 37 231 r \$0.link;
#X obj 37 231 r \$0.peer.ready;
#X obj 10 183 f;
#X obj 10 231 f;
#X obj 10 253 sel 1;
......@@ -879,7 +937,7 @@
#X connect 68 0 69 0;
#X restore 16 124 pd negotiate.port;
#X obj 404 25 nbx 4 20 0 9999 0 0 \$0.delay.nb.s \$0.delay.nb.r empty
0 -8 0 20 -1 -1 -1 0 256;
0 -8 0 20 -1 -262144 -1 0 256;
#X obj 475 20 cnv 10 10 32 empty empty empty 20 12 0 14 -262144 -66577
0;
#X obj 477 20 cnv 32 70 32 empty \$0.dropped.label empty 8 16 0 20
......@@ -1004,7 +1062,7 @@
#X obj 516 353 r~ \$2.channel.5;
#X obj 533 373 r~ \$2.channel.6;
#X obj 550 393 r~ \$2.channel.7;
#N canvas 353 200 790 303 peer.assignment 0;
#N canvas 353 200 1015 659 peer.assignment 0;
#X obj 146 47 r \$1.intercom;
#X obj 146 74 route refresh_peers;
#X obj 146 97 sel \$2;
......@@ -1013,7 +1071,7 @@
#X obj 146 235 s \$1.intercom;
#X msg 146 211 refresh_peers \$1;
#X obj 8 50 loadbang;
#X msg 7 73 symbol empty;
#X msg 8 73 symbol empty;
#X text 142 15 === refresh peers ===;
#X text 320 15 === persist my assignment ===;
#X text 7 15 === init peer ===;
......@@ -1076,7 +1134,40 @@
#X connect 5 0 7 0;
#X connect 6 0 7 0;
#X connect 8 0 6 0;
#X restore 183 176 pd peer.readyness;
#X restore 183 180 pd peer.readyness;
#X obj 600 45 r \$0.swap.request;
#X obj 600 95 pack f s \$2;
#X obj 631 67 r \$0.peer.name;
#X msg 600 118 peer_swap_request \$1 \$2 \$3;
#X text 770 117 dst peername src;
#X obj 600 141 s \$1.intercom;
#X text 593 16 === swap peer link ===;
#X text 725 45 ----- REQUEST ---------;
#X obj 601 174 r \$1.intercom;
#X obj 601 197 route peer_swap_request;
#X obj 601 257 route \$2;
#X obj 669 221 r \$0.udp.link.status;
#X obj 669 244 == 0;
#X obj 601 220 spigot;
#X msg 670 372 peer_swap_response \$1 \$2;
#X msg 670 326 \$2;
#X obj 670 349 list append;
#X obj 733 326 r \$0.peer.name;
#X obj 670 395 s \$1.intercom;
#X text 715 174 ----- HANDLE REQUEST ---------;
#X text 713 305 ----- RESPONSE ---------;
#X text 822 372 dst peername;
#X obj 601 303 t b a a, f 12;
#X obj 635 441 s \$0.peer.name;
#X text 715 487 ----- HANDLE RESPONSE ---------;
#X msg 635 418 symbol \$1;
#X obj 601 280 list;
#X obj 601 490 r \$1.intercom;
#X obj 601 513 route peer_swap_response;
#X obj 601 536 route \$2;
#X obj 601 559 symbol;
#X obj 601 582 t b a;
#X obj 628 606 s \$0.peer.name;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 2 0 22 0;
......@@ -1095,11 +1186,36 @@
#X connect 22 0 3 0;
#X connect 22 1 23 0;
#X connect 22 2 18 0;
#X connect 24 0 25 0;
#X connect 25 0 27 0;
#X connect 26 0 25 1;
#X connect 27 0 29 0;
#X connect 32 0 33 0;
#X connect 33 0 37 0;
#X connect 34 0 50 0;
#X connect 35 0 36 0;
#X connect 36 0 37 1;
#X connect 37 0 34 0;
#X connect 38 0 42 0;
#X connect 39 0 40 0;
#X connect 40 0 38 0;
#X connect 41 0 40 1;
#X connect 46 0 23 0;
#X connect 46 1 49 0;
#X connect 46 2 39 0;
#X connect 49 0 47 0;
#X connect 50 0 46 0;
#X connect 51 0 52 0;
#X connect 52 0 53 0;
#X connect 53 0 54 0;
#X connect 54 0 55 0;
#X connect 55 0 23 0;
#X connect 55 1 56 0;
#X restore 18 77 pd peer.assignment;
#X obj 350 22 vsl 16 11 0 127 0 0 \$0.arrow.up \$0.arrow.up.r ▲ 5
4 0 14 -1 -1 -191407 0 1;
4 0 14 -1 -1 -166441 0 1;
#X obj 350 39 vsl 16 10 0 127 0 0 \$0.arrow.down \$0.arrow.down.r ▼
5 5 0 14 -1 -1 -191407 0 1;
5 5 0 14 -1 -1 -166441 0 1;
#X connect 0 0 3 0;
#X connect 4 0 3 0;
#X connect 9 0 43 0;
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment