{"id":589,"date":"2009-09-29T12:55:18","date_gmt":"2009-09-29T17:55:18","guid":{"rendered":"http:\/\/www.tigoe.net\/pcomp\/code\/?p=589"},"modified":"2010-01-23T03:16:57","modified_gmt":"2010-01-23T08:16:57","slug":"chat-server-in-processing","status":"publish","type":"post","link":"https:\/\/www.tigoe.com\/pcomp\/code\/Processing\/589\/","title":{"rendered":"Chat Server in Processing"},"content":{"rendered":"<p>Here&#8217;s a basic chat server written in Processing.\u00a0 It&#8217;s a bit more complex than the basic <a href=\"https:\/\/tigoe.com\/pcomp\/code\/category\/Processing\/74\">test server<\/a>.\u00a0 This server keeps track of all the clients who log into it in an ArrayList.\u00a0 Using an ArrayList is useful when you need to do more complex things with the clients, as in my <a href=\"http:\/\/www.makingthingstalk.com\/chapter5\/35\/\">pong server<\/a> from <a href=\"http:\/\/makingthingstalk.com\"><em>Making Things Talk<\/em><\/a>. This is the most minimal server I could come up with that keeps a list of its clients.<\/p>\n<p><!--more--><\/p>\n<pre class=\"brush:processing; light:true\">\r\n[include file=\"..\/..\/code\/Processing\/chat_server\/chat_server.pde\" clean=\"true\"]<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Here&#8217;s a basic chat server written in Processing.\u00a0 It&#8217;s a bit more complex than the basic test server.\u00a0 This server keeps track of all the clients who log into it in an ArrayList.\u00a0 Using an ArrayList is useful when you need to do more complex things with the clients, as in my pong server from &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/www.tigoe.com\/pcomp\/code\/Processing\/589\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Chat Server in Processing&#8221;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7],"tags":[77,75,76],"class_list":["post-589","post","type-post","status-publish","format-standard","hentry","category-Processing","tag-chat-server","tag-networks","tag-tcp"],"_links":{"self":[{"href":"https:\/\/www.tigoe.com\/pcomp\/code\/wp-json\/wp\/v2\/posts\/589","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.tigoe.com\/pcomp\/code\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tigoe.com\/pcomp\/code\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tigoe.com\/pcomp\/code\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tigoe.com\/pcomp\/code\/wp-json\/wp\/v2\/comments?post=589"}],"version-history":[{"count":5,"href":"https:\/\/www.tigoe.com\/pcomp\/code\/wp-json\/wp\/v2\/posts\/589\/revisions"}],"predecessor-version":[{"id":837,"href":"https:\/\/www.tigoe.com\/pcomp\/code\/wp-json\/wp\/v2\/posts\/589\/revisions\/837"}],"wp:attachment":[{"href":"https:\/\/www.tigoe.com\/pcomp\/code\/wp-json\/wp\/v2\/media?parent=589"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tigoe.com\/pcomp\/code\/wp-json\/wp\/v2\/categories?post=589"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tigoe.com\/pcomp\/code\/wp-json\/wp\/v2\/tags?post=589"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}