%
url = "http://service2.winic.org:8003/Service.asmx" 'webservice 地址
'==============================
'通过 ADODB.Stream 流化后 用 xml 转化base64 编码 哈哈
function Goodfile(filepath)
Dim xmlDoc
Dim xmlNode
Set xmlDoc = Server.CreateObject("MSXML2.DOMDocument")
xmlDoc.insertBefore xmlDoc.createProcessingInstruction("xml", "version=""1.0"" encoding=""utf-8"""), xmlDoc.childNodes(0)
xmlDoc.appendChild xmlDoc.createElement("bin")
Set xmlNode = xmlDoc.documentElement
Dim objFile
Set objFile = Server.CreateObject("ADODB.Stream")
objFile.Type = 1
objFile.Open
objFile.LoadFromFile filepath
xmlNode.dataType = "bin.base64"
xmlNode.nodeTypedValue = objFile.Read(-1)
objFile.Close
Set objFile = Nothing
Response.ContentType = "text/html"
Goodfile=xmlNode.Text
' Response.ContentType = "text/xml"
'xmlDoc.Save Response
Set xmlDoc = Nothing
end function
'=======================================
'==============================发送短信函数
function SendVoice(uid,pwd,vto,vtxt,vmode,vfbtye,svrno,str_time,end_time)
SoapRequest=""& _
""& _
""& _
""& _
""&uid&""& _
""&pwd&""& _
""&vto&""& _
""&vtxt&""& _
""&vmode&""& _
""&vfbtye&""& _
""&svrno&""& _
""&str_time&""& _
""&end_time&""& _
""& _
""& _
""
Set xmlhttp = server.CreateObject("Msxml2.XMLHTTP")
xmlhttp.Open "POST",url,false
xmlhttp.setRequestHeader "Content-Type", "text/xml;charset=utf-8"
xmlhttp.setRequestHeader "HOST","service2.winic.org"
xmlhttp.setRequestHeader "Content-Length",LEN(SoapRequest)
xmlhttp.setRequestHeader "SOAPAction", "http://tempuri.org/SendVoice" '一定要与WEBSERVICE的命名空间相同,否则服务会拒绝
xmlhttp.Send(SoapRequest)
''样就利用XMLHTTP成功发送了与SOAP示例所符的SOAP请求.'检测一下是否返回200=成功:
If xmlhttp.Status = 200 Then
Set xmlDOC = server.CreateObject("MSXML.DOMDocument")
xmlDOC.load(xmlhttp.responseXML)
SendVoice=xmlDOC.documentElement.selectNodes("//SendVoiceResult")(0).text '显示节点为GetUserInfoResult的数据(返回字符串)
Set xmlDOC = nothing
Else
SendVoice=xmlhttp.Status&" "
SendVoice=xmlhttp.StatusText
End if
Set xmlhttp = Nothing
end function
'================================取数组中的一个
function split_str(str,sint)
on error resume next
dim tempstr
tempstr=split(str,"/") '/号分割
split_str=tempstr(sint)
end function
'==============================
dim vfbtye
uid="your_id" '你申请的用户名
pwd="your_pwd" '你申请的密码
vto=request("telNo") '电话号码
vtxt=request("tre_Note_Content") '语音内容
vmode=request("rbt_Sound_mode") '传送方式
svrno=request("txt_Sound_phone") '服务号码 最多五个 用逗号(",")隔分
str_time=""
end_time=""
txtPhone=trim(request.Form("telNo")) '群发号码用逗号(",")分隔
txtPhone=replace(txtPhone,chr(10),",")
txtPhone=replace(txtPhone,chr(13),"")
txtPhone=replace(txtPhone," ","")
txtPhone=replace(txtPhone,",",",")
IF vmode = "3" THEN
'注意: 取绝对路径哦。如果在服务器上要先文件上传到服务器 再取文件绝对路径 如"d:xx.doc"
vfbtye=Goodfile(request.Form("file_Sound"))
END IF
msg =SendVoice(uid,pwd,txtPhone,vtxt,vmode,vfbtye,svrno,str_time,end_time )
if len(msg)>5 then
errmsg="恭喜!发送成功:编号是:"&msg
else
errmsg="发送失败:错误码是:"&msg
end if
response.Write ""
%>