QR Code & mobile devices & the desktop
John Craig
john at splash21.com
Tue Feb 7 09:07:04 EST 2012
Hi, Nicolas. I had thought the exact same thing - there's no need for
additional hardware if you already have a capable phone / tablet.
I put a simple demo together - just paste the following code into a card
and add a button that calls 'serverReset' and a field called 'Data' to
show incoming data. I've used port 10310 for the connections and my
local ip address is 192.168.0.100 - just replace with your own details.
On your scanner app, after scanning a code, you can just;
put URL("http://192.168.0.100:10310/?" & urlEncode("QR code data
12345...")) into tResponse
You can also just use a browser to test quickly. Don't you just love
all this modern mobile technology?! :D
John.
on serverReset
# reset and listen on a custom port
resetAll
set the socketTimeoutInterval to 30
accept connections on port 10310 with message "socketConnect"
put the millisecs
end serverReset
on socketConnect pSocket
# just read the first line of the request
read from socket pSocket until CRLF with message "socketReceive"
end socketConnect
on socketReceive pSocket, pData
# word 2 is the requested URL
put word 2 of pData into tURL
set itemDel to "?"
if the num of items in tURL > 1 then
# data received
put urlDecode(item 2 of tURL) into tData
put the long date && the long time & LF & \
"Received: " & tData & LF \
into fld "Data"
# process data, store in database, etc...
# ..........
# ..........
# mirror the data back to signal success - you could send an md5
hash, etc. instead
put tData into tResponse
else
# no data received, response will be an error message
put "Error: No data!" into tResponse
end if
# send the response and disconnect
socketRespond pSocket, tResponse
socketDisconnect pSocket
end socketReceive
on socketRespond pSocket, pData
# send an HTTP response
put "HTTP/1.1 200 OK" & CRLF into tHeaders
put "Content-Type: " & tType & CRLF after tHeaders
put "Cache-Control: no-cache" & CRLF after tHeaders
put "Connection: Close" & CRLF after tHeaders
put "Date: " & the internet date & CRLF after tHeaders
put "Content-Length: " & length(pData) & CRLF after tHeaders
put CRLF after tHeaders
write tHeaders & pData to socket pSocket
end socketRespond
on socketDisconnect pSocket
close socket pSocket
end socketDisconnect
on socketError pSocket
socketDisconnect pSocket
end socketError
on socketTimeout pSocket
socketDisconnect pSocket
end socketTimeout
on socketClosed pSocket
socketDisconnect pSocket
end socketClosed
On 07/02/2012 10:56, Nicolas Cueto wrote:
> Hello All,
>
> Given the relatively high price of USB 2D code readers, those recent
> and tempting announcements about QR Code libraries aimed for LC users
> have got me wondering.
>
> What LC components (add-ons?) and LC commands ought I consider for
> somehow relaying (internet? WIFI?) to a desktop computer some QR Code
> scanned by a mobile device (iPhone or Android tablet)?
>
> A general idea about the steps involved would be great. And much appreaciated.
>
> Cheers.
>
> --
> Nicolas Cueto
>
> _______________________________________________
> use-livecode mailing list
> use-livecode at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
>
More information about the use-livecode
mailing list