VBS一键配置VOIP脚本代码

 更新时间:2019年09月28日 13:22:42   转载 投稿:mdxy-dxy  
VBS一键配置VOIP脚本代码,其中包括VBS操作JS网页中的按钮事件--直接执行确认按钮中的脚本代码,需要的朋友可以参考下

代码比较长,对vbs感兴趣的朋友可以参考一下

Dim?ws,fso,IE
Set?IE?=?WScript.createobject("InternetExplorer.Application")
Set?ws?=?WScript.CreateObject?("WSCript.shell")
Set?fso=CreateObject("scripting.filesystemobject")

Const?reboot="/content.cgi?form=M_SAV"

IE.menubar=0?'显示IE对象菜单栏
IE.AddressBar=1?'显示IE对象地址栏
IE.ToolBar=0?'显示IE对象工具栏
IE.StatusBar=1?'不显示IE对象状态栏
IE.FullScreen=0?'全屏化IE对象
IE.Height=768
IE.Width=1024
IE.Resizable=1?'设置IE对象大小是否可以被改动
IE.visible=1?'设置是否可见?

'IE.Navigate?"192.168.46.3"


'==============读Config配置文件=========
????
filepath=createobject("Scripting.FileSystemObject").GetFile(Wscript.ScriptFullName).ParentFolder.Path
file_config=filepath&"\config.ini"
Set?file=fso.OpenTextFile(file_config,1)
????
'===========取第一行数据:号码==============
OneLine=file.ReadLine
OneLineStr=Split(OneLine,"=")
OneLineCount=UBound(split(OneLine,"="))
'MsgBox?OneLineStr(1)???????????????????

????
'===============取第二行数据:密码===========
TwoLine=file.ReadLine
TwoLineStr=Split(TwoLine,"=")
TwoLineCount=UBound(split(TwoLine,"="))
'MsgBox?TwoLineStr(1)
????
'===============取第三行数据:VOIP服务地址============
ThreeLine=file.ReadLine
ThreeLineStr=Split(ThreeLine,"=")
ThreeLineCount=UBound(split(ThreeLine,"="))
'MsgBox?ThreeLineStr(1)
????
'===============取第四行数据:对讲设备地址============
FourLine=file.ReadLine
FourLineStr=Split(FourLine,"=")
FourLineCount=UBound(split(FourLine,"="))
'MsgBox?FourLineStr(1)
????
'===============取第五行数据:浏览器安装目录============
FiveLine=file.ReadLine
FiveLineStr=Split(FiveLine,"=")
FiveLineCount=UBound(split(FiveLine,"="))
'MsgBox?FiveLineStr(1)
????
'MainWeb()

Main()
'==================================================

Function?Main()

????IE.Navigate?FourLineStr(1)
????????
????Do?
????????WScript.Sleep?500
????????
????Loop?Until?IE.ReadyState=4
????
????
????Login()
????SipSetting()
????InputParm()
????VOIP()
????RebootSys()

End?Function?
'======================================================
'登录系统
Function?Login()

????WScript.Sleep?1000
????ws.SendKeys?"^a"
????WScript.Sleep?200
????ws.SendKeys?"admin"
????ws.SendKeys?"{TAB}"
????ws.SendKeys?"^a"
????WScript.Sleep?200
????ws.SendKeys?"admin"
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{ENTER}"

End?Function?
'================================================
'进入sipsetting菜单
Function?SipSetting()

????If?IE.ReadyState=4?Then?
????
????????WScript.Sleep?1000
????????ws.SendKeys?"{TAB?5}"
????????WScript.Sleep?500
????????ws.SendKeys?"{ENTER}"
????????WScript.Sleep?500
????????ws.SendKeys?"{TAB}"
????????WScript.Sleep?500
????????ws.SendKeys?"{ENTER}"
????????WScript.Sleep?2000
????Else?
????
?????MsgBox?"进入配置界面失败!"
?????
????End?If?

End?Function?
'=============================================
'切换输入界面
Function?InputParm()

????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200????
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????
????
????ws.SendKeys?"{DOWN}"??'选择开启状态
????WScript.Sleep?300

End?Function?
'=========================================
'配置参数
Function?VOIP()

????ws.SendKeys?"{TAB}"
????ws.SendKeys?"^a"
????WScript.Sleep?200
????ws.SendKeys?OneLineStr(1)??'display?name
????
????ws.SendKeys?"{TAB}"
????ws.SendKeys?"^a"
????WScript.Sleep?200
????ws.SendKeys?OneLineStr(1)???'user?number
????
????ws.SendKeys?"{TAB}"
????ws.SendKeys?"^a"
????WScript.Sleep?200
????ws.SendKeys?OneLineStr(1)???'auth?id
????
????ws.SendKeys?"{TAB}"????
????WScript.Sleep?200
????ws.SendKeys?"^a"
????WScript.Sleep?200????????????
????ws.SendKeys?TwoLineStr(1)???'password
????
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"^a"
????WScript.Sleep?200
????ws.SendKeys?ThreeLineStr(1)???'proxy?ip
????
????ws.SendKeys?"{TAB}"????????'domain
????WScript.Sleep?200
????ws.SendKeys?"^a"
????WScript.Sleep?200
????ws.SendKeys?ThreeLineStr(1)
????
????'=============保存===========
????ws.SendKeys?"{TAB?48}"
????WScript.Sleep?500
????ws.SendKeys?"{TAB}"
????WScript.Sleep?500
????ws.SendKeys?"{ENTER}"
????WScript.Sleep?1500
????
End?Function?

'========================================================
'修改参数后重启
Function?RebootSys()

????WScript.Sleep?500
????ws.SendKeys?"{F4}"
????WScript.Sleep?500
????ws.SendKeys?"^a"
????WScript.Sleep?200
????ws.SendKeys?FourLineStr(1)&reboot?
????
????WScript.Sleep?500????
????
'???Set?test=IE.document.getElementsByTagName?("Button")
????ws.SendKeys?"{ENTER}"
????
????WScript.Sleep?2000
????
????Set?ALL?=?Ie.Document.getElementsByTagName("input")??'检测网页元素是否标签为input,且值等于Reboot

????For?Each?i?In?ALL

????If?i.value="Reboot"?Then

???????'i.Click??'点击reboot按钮
???????
????????WScript.Sleep?1000
???????
????????Ie.Document.parentwindow.execScript("top.location='content.cgi?_method_=reboot'")??'直接执行reboot确认操作

????????Exit?For

?????
????End?If

????Next
????
????WScript.Sleep?3000????
????
????MsgBox?"配置已完成,设备正在重启,请耐心等待...",,"提示"

????If?ws.AppActivate("来自网页的消息")?Then?
????
????
????????ws.SendKeys?"{ENTER}"
????????WScript.Sleep?2000
????????
????????MsgBox?"配置已完成,设备正在重启,请耐心等待...",,"提示"
????????
????Else?
????????'MsgBox?"配置未成功,请重新检查配置!",,"提示"
????????
????End?If?

End?Function?


'====================================================================

Function?MainWeb()

????'=============启动地址=====================
'方式一:自定义浏览器启动,需配置路径
'???Function?login()
????????
'???????ws.run?FiveLineStr(1)
'???????WScript.Sleep?3000
'???????ws.SendKeys?"{F4}"
'???????WScript.Sleep?200
'???????ws.SendKeys?"^a"
'???????WScript.Sleep?500
'???????ws.SendKeys?FourLineStr(1)
'???????WScript.Sleep?500
'???????ws.SendKeys?"{ENTER}"
????????????????
'???End?Function????

'方式二:用系统默认浏览器启动?
????ws.Run?FourLineStr(1)

????'===============登录设备=====================
????WScript.Sleep?5000
????ws.SendKeys?"^a"
????WScript.Sleep?200
????ws.SendKeys?"admin"
????ws.SendKeys?"{TAB}"
????ws.SendKeys?"^a"
????WScript.Sleep?200
????ws.SendKeys?"admin"
????ws.SendKeys?"{ENTER}"
????
????'============进入sip?setting菜单=============
????WScript.Sleep?2000
????ws.SendKeys?"{TAB?5}"
????WScript.Sleep?500
????ws.SendKeys?"{ENTER}"
????WScript.Sleep?500
????ws.SendKeys?"{TAB}"
????WScript.Sleep?500
????ws.SendKeys?"{ENTER}"
????WScript.Sleep?2000
????
????
????'==============进入编辑状态=======================
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200????
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????
????
????
????ws.SendKeys?"{DOWN}"??'选择开启状态
????WScript.Sleep?300

????
????'==============配置VOIP================
????ws.SendKeys?"{TAB}"
????ws.SendKeys?"^a"
????WScript.Sleep?200
????ws.SendKeys?OneLineStr(1)??'display?name
????
????ws.SendKeys?"{TAB}"
????ws.SendKeys?"^a"
????WScript.Sleep?200
????ws.SendKeys?OneLineStr(1)???'user?number
????
????ws.SendKeys?"{TAB}"
????ws.SendKeys?"^a"
????WScript.Sleep?200
????ws.SendKeys?OneLineStr(1)???'auth?id
????
????ws.SendKeys?"{TAB}"????
????WScript.Sleep?200
????ws.SendKeys?"^a"
????WScript.Sleep?200????????????
????ws.SendKeys?TwoLineStr(1)???'password
????
????ws.SendKeys?"{TAB}"
????WScript.Sleep?200
????ws.SendKeys?"^a"
????WScript.Sleep?200
????ws.SendKeys?ThreeLineStr(1)???'proxy?ip
????
????ws.SendKeys?"{TAB}"????????'domain
????WScript.Sleep?200
????ws.SendKeys?"^a"
????WScript.Sleep?200
????ws.SendKeys?ThreeLineStr(1)
????
????'=============保存===========
????ws.SendKeys?"{TAB?48}"
????WScript.Sleep?500
????ws.SendKeys?"{TAB}"
????WScript.Sleep?500
????ws.SendKeys?"{ENTER}"
????WScript.Sleep?1500
????'===============重启==========
????
????ws.SendKeys?"{TAB?18}"
????WScript.Sleep?1000
????ws.SendKeys?"{ENTER}"
????WScript.Sleep?1000
????ws.SendKeys?"{TAB?2}"
????WScript.Sleep?500
????ws.SendKeys?"{ENTER}"
????WScript.Sleep?1000
????
????If?ws.AppActivate("来自网页的消息")?Then?
????
????????ws.SendKeys?"{ENTER}"
????????WScript.Sleep?1000
????????
????????MsgBox?"配置已完成,设备正在重启,请耐心等待...",,"提示"
????????
????Else?
????????MsgBox?"配置未成功,请重新检查配置!",,"提示"
????????
????End?If?

End?Function?

Set?ws=Nothing?
Set?IE=Nothing?
Set?fso=Nothing?

网页部分JS代码:

<div id="content" width="650">
<form name="M_SAV" method="GET" enctype="multipart/form-data" onReset="" action="content.cgi">
<input type=HIDDEN name="_method_" value="apply">
<input type=HIDDEN name="form" value="M_SAV">
<input type=HIDDEN name="commit" value="0">
<table id="cFORM" width="650" border="0" cellspacing="0" cellpadding="0" >
<tr><td>&nbsp</td></tr>
</table><table width="500"><td align="center">
<input type=BUTTON onclick="javascript:if ( confirm('Reboot') ) top.location='content.cgi?_method_=reboot';" target="_top" value="Reboot"></a>
</td></table></form>

这篇文章就介绍到这了,希望大家以后多多支持得牛网。

相关文章

最新评论