Import initial din SVN ROAAUTO/Trunk @HEAD
This commit is contained in:
93
comun_plugins/plugin_sms_playsms.prg
Normal file
93
comun_plugins/plugin_sms_playsms.prg
Normal file
@@ -0,0 +1,93 @@
|
||||
Local loDate
|
||||
Local lcReport
|
||||
loDate = Createobject("empty")
|
||||
AddProperty(loDate, "to", "0723197939")
|
||||
AddProperty(loDate, "message", "test " + Ttoc(Datetime()))
|
||||
AddProperty(loDate, "footer", "@MMM")
|
||||
lcReport = sendsms(loDate)
|
||||
Messagebox(m.lcReport)
|
||||
XMLTOCURSOR()
|
||||
**************************************
|
||||
* plugin_sms_playsms
|
||||
* Apeleaza api playsms Trimite catre playsms
|
||||
* http://192.168.75.101/html/playsms
|
||||
*/index.php?app=ws&u=admin&h=eabd6195724d56d08a5a2ca0573451b6&op=pv&to=0723197939&msg=test+only
|
||||
**************************************
|
||||
Procedure sendsms
|
||||
Lparameters toDate
|
||||
|
||||
* toDate: .to, .message, .footer
|
||||
|
||||
#Define HTTPSTATUS_OK 200
|
||||
#Define HTTPSTATUS_CREATED 201
|
||||
#Define HTTPSTATUS_ACCEPTED 202
|
||||
#Define HTTPSTATUS_MULTISTATUS 207
|
||||
#Define HTTPSTATUS_BADREQUEST 400
|
||||
#Define HTTPSTATUS_UNAUTHORIZED 401
|
||||
#Define HTTPSTATUS_FORBIDDEN 403
|
||||
#Define HTTPSTATUS_NOTFOUND 404
|
||||
#Define HTTPSTATUS_INTERNALSERVERERROR 500
|
||||
|
||||
Local loHTTP As "Microsoft.XMLHTTP"
|
||||
Local lcBaseURL, lcFooter, lcMessage, lcPluginPath, lcResponse, lcTo, lcToken, lcURL, lcUser
|
||||
Local lcUtilsPath, lcwwhttp, lnStatus
|
||||
lcPluginPath = Addbs(Justpath(Sys(16, 0)))
|
||||
lcUtilsPath = m.lcPluginPath + 'utils\'
|
||||
*!* Set Path To (m.lcUtilsPath) Additive
|
||||
*!* lcwwhttp = m.lcUtilsPath + 'wwhttp.prg'
|
||||
*!* Do (m.lcwwhttp)
|
||||
|
||||
|
||||
lcBaseURL = [http://192.168.75.101/html/playsms]
|
||||
lcUser = [admin]
|
||||
lcToken = [eabd6195724d56d08a5a2ca0573451b6]
|
||||
|
||||
lcTo = toDate.To
|
||||
lcMessage = urlencode(toDate.Message)
|
||||
lcFooter = urlencode(toDate.Footer)
|
||||
|
||||
lcURL = m.lcBaseURL + [/index.php?app=ws&u=] + m.lcUser + [&h=] + m.lcToken + [&op=pv&to=] + m.lcTo + [&msg=] + m.lcMessage + [&format=xml] + Iif(!Empty(m.lcFooter), [&footer=] + m.lcFooter, [])
|
||||
|
||||
loHTTP = Createobject("Microsoft.XMLHTTP")
|
||||
loHTTP.Open("GET", m.lcURL, .F.)
|
||||
loHTTP.Send()
|
||||
|
||||
lnStatus = loHTTP.Status
|
||||
If m.lnStatus = HTTPSTATUS_OK
|
||||
lcResponse = loHTTP.responseText
|
||||
Return lcResponse
|
||||
Endif
|
||||
Endproc && sendsms
|
||||
|
||||
Function urlencode
|
||||
*
|
||||
* from http://www.tek-tips.com/gviewthread.cfm/lev2/4/lev3/27/pid/184/qid/597112
|
||||
* also http://fox.wikis.com/wc.dll?Wiki~VFPPortListener~VFP
|
||||
* I'm confused by this code.
|
||||
* I believe it doesn't translate spaces correctly
|
||||
*
|
||||
* a proper definition is in: http://www.ietf.org/rfc/rfc2396.txt
|
||||
* starting about half way down page 5
|
||||
* unreserved characters include all alphas, all digits and the following unreserved marks
|
||||
* mark = "-" | "_" | "." | "!" | "~" | "*" | "'" | "(" | ")"
|
||||
*
|
||||
Lparameter pcinstr
|
||||
* ' encode Percent signs
|
||||
* ' Double Quotes
|
||||
* ' CarriageReturn / LineFeeds
|
||||
Local lcout, lni
|
||||
lcout = ''
|
||||
For lni = 1 To Len(pcinstr)
|
||||
lcch = Substr(pcinstr, lni, 1)
|
||||
Do Case
|
||||
Case Isalpha(lcch) Or Isdigit(lcch) Or Inlist(lcch, "-", "_", ".", "!", "~", "*", "'", "(", ")")
|
||||
* do nothing
|
||||
Case lcch = " "
|
||||
lcch = "+"
|
||||
Otherwise
|
||||
lcch = '%' + Right( Transform(Asc(lcch), '@0'), 2 )
|
||||
Endcase
|
||||
lcout = lcout + lcch
|
||||
Endfor
|
||||
Return lcout
|
||||
Endfunc && UrlEncode
|
||||
Reference in New Issue
Block a user