Lua Requires Chilkat v11.7.0+
;S:;P:;; and offer to join the network. T is WPA (also used for WPA2 and WPA3), WEP, or nopass for an open network, and H:true can be added for a hidden network. In the name and the password, the characters backslash, semicolon, comma, colon and double quote must each be preceded by a backslash.
Lua
Create a Wi-Fi QR Code
See more QR Code Examples
Demonstrates a QR code that joins a phone to a Wi-Fi network when scanned. A QR code only holds text. Phones recognize text of the form WIFI:T:Chilkat Lua Downloads
local chilkat = require("chilkat")
-- This example requires the Chilkat API to have been previously unlocked.
-- See Global Unlock Sample for sample code.
local json = chilkat.JsonObject.new()
json:update_string("payload.text", "WIFI:T:WPA;S:Chilkat Guest;P:correct-horse-battery-staple;;")
-- Level Q, so that the code still scans when it is printed small or gets worn.
json:update_string("encoding.qr.errorCorrection", "Q")
json:update_int("render.moduleSize", 8)
-- Say which network it is under the code.
json:update_bool("render.text.enabled", true)
json:update_string("render.text.value", "Wi-Fi: Chilkat Guest")
json:update_int("render.text.scale", 2)
json:update_string("output.path", "qa_output/qr_wifi.png")
json:update_bool("output.overwrite", true)
json:update_string("output.return", "none")
local fmt = chilkat.Formats.new()
local jsonOut = chilkat.JsonObject.new()
local success = fmt:qr_code("generate", json, jsonOut)
if not success then
print(fmt.last_error_text)
return
end
print("file: " .. jsonOut:string_of("outputs[0].path"))
print("QR version: " .. jsonOut:int_of("symbols[0].selectedEncoding.version"))
print("image: " .. jsonOut:int_of("outputs[0].width") .. " x " .. jsonOut:int_of("outputs[0].height") .. " pixels")
-- The image written to qa_output/qr_wifi.png:
--
-- Sample output:
-- file: qa_output/qr_wifi.png
-- QR version: 5
-- image: 360 x 374 pixels