Experimenting with sockets in LC .. Windows 7 Pro, LC v8.1.9. I have tsnet working fine in another project but tsnet appears to be primarily for "sending" stuff (sorry for the technical jargon). Of course, tsnet can read after it sends a request. However, sockets let me simply open and READ messages, which is what I need in this particular setting.
I am using a very simple stack with one card and one button on that card with my code at the end of this message. The "strange" URL ("Kitchen.local:80") is the assigned ID for an ESP8266 WiFi module. This script works fine if the module is "on-line" and responding .. returns the following from the code running on the ESP8266, as expected: Data read from socket Kitchen.local:80 HTTP/1.0 200 OK Content-Type: Kitchen.local/getinterrupt ... NO interrupts ... |2018 8 18|10 49 14|Saturday Content-Length: 0 Connection: close going to sleep ps.. I am "mis-using" some of the HTML fields for different "content" than normal.. but this is OK and works according to my needs.. not the issue here. If I substitute "www.google.com:80" as the socket ID, the "socketTimeout" messages gets generated. That's fine. I'm certain Google does not generate an output with "sleep" in it. However, if I substitute "www.googleXXX.com:80" as the socket ID (or distort *my* ESP8266 ID to a non-existent one), I would have expected some sort of error message... trapped by the "socketError" handler ... but I get nothing. I can't seem to get the "socketError" message (or "socketClosed" message for that matter) to trigger at all. What I'm REALLY looking for is a "timeout" message, ideally... but a "no connect" or "no such socket" would be fine too. But "crickets"... I know that the "socketTimeout" only gets generated after a successful socket open. Any help would be greatly appreciated! local thisSocket, timeoutCount on mouseUp put empty put "Kitchen.local:80" into thisSocket //put "www.google.com:80" into thisSocket put 5 into timeoutCount set the socketTimeoutInterval to 2000 open socket to thisSocket read from socket thisSocket until "sleep" with message "socketFinishedReading" end mouseUp on socketFinishedReading pSocketID pDataIn put "Data read from socket" && pSocketID & return & pDataIn close socket thisSocket end socketFinishedReading on socketTimeout theID put empty wait 100 milliseconds with messages put "The connnection: " & theID & " is not responding." subtract 1 from timeoutCount if timeoutCount < 1 then close Socket theID end if end socketTimeout on socketError theID, theError answer error "There is a problem with connection: " & theID & "Error: " & theError close socket theID end socketError on socketClosed theID answer warning "connection: " & theID & " has been closed" end socketClosed Douglas Ruisaard Trilogy Software _______________________________________________ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode