#N canvas 3 45 909 548 12; #X floatatom 118 299 5 0 0 0 - - -; #X floatatom 142 329 5 0 0 0 - - -; #X floatatom 166 379 3 0 0 0 - - -; #X floatatom 193 379 3 0 0 0 - - -; #X floatatom 220 379 3 0 0 0 - - -; #X floatatom 247 379 3 0 0 0 - - -; #X text 129 378 from; #X text 34 299 connections; #X msg 209 110 broadcast 1 2 3; #X text 326 108 send to all clients; #X text 72 329 on socket; #X text 202 265 argument is port number; #X text 92 490 ***WARNING*** Attempting to print long messages can hang pd!; #X obj 95 430 spigot; #X obj 134 410 tgl 15 0 empty empty enable_print 17 7 0 10 -24198 -258699 -45076 0 1; #X obj 95 266 tcpserver 9997; #X text 21 6 [tcpserver] waits for clients to connect to its port. ; #X text 94 473 Received messages are output as stream of bytes; #X obj 95 453 print tcpserver:received; #X msg 234 135 11 216 43; #X obj 324 428 spigot; #X obj 363 408 tgl 15 0 empty empty enable_print 17 7 0 10 -24198 -258699 -45076 0 1; #X obj 324 454 print tcpserver:status; #N canvas 3 45 450 300 per.socket 0; #X obj 93 254 outlet; #X msg 93 154 disconnectsocket \$1; #X floatatom 111 108 5 0 0 0 - - -; #X obj 93 131 f; #X obj 93 112 bng 15 250 50 0 empty empty empty 17 7 0 10 -258699 -241291 -1; #X msg 123 184 send 504 1 2 3; #X text 233 183 send to client on socket 504; #X text 242 153 disconnect by socket number; #X connect 1 0 0 0; #X connect 2 0 3 1; #X connect 3 0 1 0; #X connect 4 0 3 0; #X connect 5 0 0 0; #X restore 88 91 pd per.socket; #N canvas 3 45 492 322 per.client 0; #X obj 20 224 outlet; #X msg 20 81 disconnectclient \$1; #X floatatom 38 32 5 0 0 0 - - -; #X obj 20 57 f; #X obj 20 38 bng 15 250 50 0 empty empty empty 17 7 0 10 -258699 -241291 -1; #X msg 75 136 client; #X msg 50 111 client 1; #X text 118 110 get state of client 1; #X text 127 136 get state of all clients (list on right outlet); #X text 162 81 disconnect by client number; #X msg 100 161 client 1 1 2 3 4; #X text 228 160 send (binary) 1 2 3 4 to client 1; #X connect 1 0 0 0; #X connect 2 0 3 1; #X connect 3 0 1 0; #X connect 4 0 3 0; #X connect 5 0 0 0; #X connect 6 0 0 0; #X connect 10 0 0 0; #X restore 38 66 pd per.client; #X msg 245 227 disconnect; #X text 325 225 disconnect all clients; #N canvas 313 127 698 341 default.targets 1; #X obj 106 268 outlet; #X msg 106 82 target 1; #X msg 157 240 64 64 64 10; #X text 173 83 per default \, send only to client #1; #X text 244 241 send to the default target; #X msg 63 43 target; #X msg 116 112 target -2; #X text 187 113 per default \, send to all clients but #2; #X msg 133 156 targetsocket 7; #X text 245 154 per default \, send only to client on socket 7; #X msg 143 186 targetsocket -504; #X text 272 186 per default \, send to all clients but the one on socket 504; #X text 120 41 per default \, send to all connected clients (aka 'broadcast') ; #X connect 1 0 0 0; #X connect 2 0 0 0; #X connect 5 0 0 0; #X connect 6 0 0 0; #X connect 8 0 0 0; #X connect 10 0 0 0; #X restore 247 174 pd default.targets; #X text 308 139 without specified method 'broadcast' is assumed (see default.targets); #N canvas 3 45 768 526 getting.info 0; #X floatatom 99 162 5 0 0 0 - - -; #X text 139 163 to_client; #X floatatom 390 165 3 0 0 0 - - -; #X symbolatom 422 140 15 0 0 0 - - -; #X floatatom 359 189 5 0 0 0 - - -; #X floatatom 454 115 7 0 0 0 - - -; #X floatatom 180 117 5 0 0 0 - - -; #X text 223 118 on_socket; #X floatatom 139 141 5 0 0 0 - - -; #X obj 99 62 route sent; #X obj 359 61 route client; #X text 533 141 ip; #X text 505 115 port; #X text 416 165 socket; #X text 400 191 client; #X text 184 140 sent_bytes; #X floatatom 99 342 5 0 0 0 - - -; #X floatatom 180 297 5 0 0 0 - - -; #X floatatom 139 321 5 0 0 0 - - -; #X obj 99 242 route bufsize; #X floatatom 93 501 3 0 0 0 - - -; #X floatatom 147 501 3 0 0 0 - - -; #X floatatom 120 501 3 0 0 0 - - -; #X obj 93 421 route address; #X obj 99 271 unpack f f f; #X obj 359 87 unpack f f s f; #X obj 99 91 unpack f f f; #X obj 93 450 unpack f f f f f; #X floatatom 174 501 3 0 0 0 - - -; #X floatatom 202 475 6 0 0 0 - - -; #X text 200 501 ip; #X text 248 475 port; #X text 139 342 socket; #X text 178 322 insize (bytes); #X text 218 298 outsize (bytes); #X text 361 261 info about current inqueue/outqueue; #X obj 99 216 r \$0.tcpserver.o5; #X obj 93 395 r \$0.tcpserver.o5; #X obj 99 36 r \$0.tcpserver.o5; #X obj 359 35 r \$0.tcpserver.o5; #X text 354 435 NOTE: outlets #3 and #4 are for compatibility with mrpeach's net obects. You can get all information via outlet #5 as well; #X connect 9 0 26 0; #X connect 10 0 25 0; #X connect 19 0 24 0; #X connect 23 0 27 0; #X connect 24 0 16 0; #X connect 24 1 18 0; #X connect 24 2 17 0; #X connect 25 0 4 0; #X connect 25 1 2 0; #X connect 25 2 3 0; #X connect 25 3 5 0; #X connect 26 0 0 0; #X connect 26 1 8 0; #X connect 26 2 6 0; #X connect 27 0 20 0; #X connect 27 1 22 0; #X connect 27 2 21 0; #X connect 27 3 28 0; #X connect 27 4 29 0; #X connect 36 0 19 0; #X connect 37 0 23 0; #X connect 38 0 9 0; #X connect 39 0 10 0; #X restore 589 375 pd getting.info; #X text 602 456 copyright (c) 2009 Martin Peach; #X text 602 473 copyright (c) 2010 Roman Haefeli; #X text 602 490 copyright (c) 2010 IOhannes m zmoelnig; #X obj 190 293 s \$0.tcpserver.o5; #X obj 324 383 r \$0.tcpserver.o5; #X text 644 232 check also:; #X obj 647 254 tcpreceive; #X obj 647 279 tcpclient; #X obj 166 356 unpack f f f f f; #X floatatom 275 379 6 0 0 0 - - -; #X connect 8 0 15 0; #X connect 13 0 18 0; #X connect 14 0 13 1; #X connect 15 0 13 0; #X connect 15 1 0 0; #X connect 15 2 1 0; #X connect 15 3 38 0; #X connect 15 4 33 0; #X connect 19 0 15 0; #X connect 20 0 22 0; #X connect 21 0 20 1; #X connect 23 0 15 0; #X connect 24 0 15 0; #X connect 25 0 15 0; #X connect 27 0 15 0; #X connect 34 0 20 0; #X connect 38 0 2 0; #X connect 38 1 3 0; #X connect 38 2 4 0; #X connect 38 3 5 0; #X connect 38 4 39 0;