How to use isMobileDevice, getMobileDevice and getMarkupFromUrl
All ASP code generously donated by Alex Matthews -
www.daredigital.com
- <%@Language=VBScript%>
- <%
-
- ' Get headers - have to have http_ and non-http_ headers passed in to the service
- req = replace(request.servervariables("ALL_RAW"),vbcrlf,"|")
- req = req & "HTTP_HOST:"&request.servervariables("HTTP_HOST")&"|"
- req = req & "HTTP_USER_AGENT:"&request.servervariables("HTTP_USER_AGENT")&"|"
- req = req & "HTTP_ACCEPT_CHARSET:"&request.servervariables("HTTP_ACCEPT_CHARSET")&"|"
- req = req & "HTTP_ACCEPT_LANGUAGE:"&request.servervariables("HTTP_ACCEPT_LANGUAGE")&"|"
- req = req & "HTTP_ACCEPT_ENCODING:"&request.servervariables("HTTP_ACCEPT_ENCODING")&"|"
- req = req & "HTTP_REFERER:"&request.servervariables("HTTP_REFERER")&"|"
- req = req & "HTTP_CACHE_CONTROL:"&request.servervariables("HTTP_CACHE_CONTROL")&"|"
- req = req & "HTTP_CONNECTION:"&request.servervariables("HTTP_CONNECTION")&"|"
- req = req & "HTTP_ACCEPT:"&request.servervariables("HTTP_ACCEPT")
-
- ' Set dev key
- devKey = "YOUR-DEV-KEY-HERE"
-
- ' Set isDeviceMobile url
- devmoburl = "http://webservices.wapple.net/isMobileDevice.php?headers="&req&"&devKey="&devKey
-
- ' Call isDeviceMobile
- set oXMLHTTP = CreateObject("Msxml2.ServerXMLHTTP")
- oXMLHTTP.Open "POST", devmoburl, false
- oXMLHTTP.Send
- statty = oXMLHTTP.status
- resp = oXMLHTTP.responseText
- set oXMLHTTP = nothing
-
- ' Set isDeviceMobile
- isDeviceMobile = cint(resp)
-
- ' Call getMobileDevice
- getmoburl = "http://webservices.wapple.net/getMobileDevice.php?headers="&req&"&devKey="&devKey
- set oXMLHTTP = CreateObject("Msxml2.ServerXMLHTTP")
- oXMLHTTP.Open "POST", getmoburl, false
- oXMLHTTP.Send
- statty = oXMLHTTP.status
- mobdev = oXMLHTTP.responseText
- set oXMLHTTP = nothing
-
- ' Load mobile device XML
- Set objXMLDoc = CreateObject("Microsoft.XMLDOM")
- objXMLDoc.async = False
- if objXMLDoc.loadXML(mobdev) then
- Set Root = objXMLDoc.documentElement
- set manufacturer = root.selectSingleNode("./manufacturer")
- manny = manufacturer.text&""
- set model = root.selectSingleNode("./model")
- modey = model.text&""
- else
- manny = "There was an error"
- modey = "There was an error"
- end if
- set objXMLDoc = nothing
- set root = nothing
- set model = nothing
- set manufacturer = nothing
-
- ' XML url
- waplurl = "http://wapl.info/files/examples/asp/home.xml"
-
- ' Get the XML
- set filesys = CreateObject("Scripting.FileSystemObject")
- set readfile = filesys.OpenTextFile(server.mappath("home.xml"), 1, false)
- wapl = readfile.ReadAll
- readfile.close
- set readfile = nothing
- set filesys = nothing
-
- ' Do replacements (turn this into a function one day)
- wapl = replace(wapl,"$$$isDeviceMobile$$$", isDeviceMobile)
- wapl = replace(wapl,"$$$manufacturer$$$", manny)
- wapl = replace(wapl,"$$$model$$$", modey)
-
- ' Set wapl url
- wapltransformurl = "http://webservices.wapple.net/getMarkupFromWapl.php?headers="&req&"&devKey="&devKey&"&wapl="&server.urlencode(wapl)
-
- ' Get the transformed WAPL
- set oXMLHTTP = CreateObject("Msxml2.ServerXMLHTTP")
- oXMLHTTP.Open "POST", wapltransformurl, false
- oXMLHTTP.Send
- statty = oXMLHTTP.status
- resp = oXMLHTTP.responseText
- set oXMLHTTP = nothing
-
- ' Load the WAPL XML
- Set objXMLDoc = CreateObject("Microsoft.XMLDOM")
- objXMLDoc.async = False
- if objXMLDoc.loadXML(resp) then
- Set Root = objXMLDoc.documentElement
- set markup = root.selectSingleNode("./markup")
- marky = markup.text
- else
- marky = "There was an error"
- end if
- set objXMLDoc = nothing
- set root = nothing
- set markup = nothing
-
- ' Write out the markup
- response.write(marky)
- %>