VBS一键配置VOIP脚本代码
代码比较长,对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> </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>
这篇文章就介绍到这了,希望大家以后多多支持猪先飞。
相关文章
- 今天在写一个vbs的时候,发现中文乱码,后来写好代码正常运行的代码压缩一下给了同事,发现报无效字符,经过验证后发现原来是编码的问题导致,这里就为大家分享一下...2020-06-30
- 今天在脚本之家看了几篇关于vbs FileSystemObject的一些资料,发现不够详细与完整这里刚好发现了一篇更好的文章特整理一下,需要的朋友可以参考下...2020-06-30
- 这篇文章主要介绍了vbs 读写注册表之系统启动项添加值,需要的朋友可以参考下...2020-06-30
- 这篇文章主要介绍了iis7或iis7.5中无法找到脚本文件adsutil.vbs的解决方法,需要的朋友可以参考下...2016-01-27
- 这篇文章主要介绍了使用VBS浏览本地文件的3种方式,获取完整路径,需要的朋友可以参考下...2020-06-30
- 这篇文章主要介绍了简单用VBS调用企业微信机器人发定时消息的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-12-08
- C#中利用ScriptControl动态执行JS和VBS脚本的实现方法,需要的朋友可以参考下...2020-06-25
- 现在看到很多朋友都不明白VBS,但我也没有时间全部写完,所以一天写一些,边写边和大家交流,也希望有朋友能接着写或指出我的错误。...2020-06-30
- 这篇文章主要介绍了vbs小程序图标更改方法的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-30
- 在VBS中,我们有时需要判断一个COM类是否存在,以便执行不同的操作,需要的朋友可以参考下...2020-06-30
- 有时候我们需要获取当前vbs脚本所在的文件夹,或者运行当前脚本文件夹中的文件那么就需要参考下面的代码了...2020-06-30
- 这篇文章主要介绍了拖拽文件显示文件路径的vbs代码,需要的朋友可以参考下...2020-06-30
抖音vbs表白代码大全 抖音vbscript表白代码使用方法
抖音vbs表白代码大全分享,最近很多小伙伴都在抖音上看到了一个vbs表白代码这个玩法,感觉非常的有趣。不过不少玩家还不知道怎么弄的,下面就来一起看下制作方法吧...2020-06-30- 这篇文章主要介绍了15分钟学会vbscript中的正则表达式,需要的朋友可以参考下...2020-06-30
- 这篇文章主要介绍了如何用VBS脚本收集远程计算机或本地计算机安装的软件,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-02-23
- 因为测试中需要读取一批URL数据进行浏览,为了方便使用txt保存配置url,另外脚本之家特为大家补充了比较好的配置读取脚本,需要的朋友可以参考一下...2020-06-30
- 这篇文章主要介绍了vbs ping实现的两种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-30
- VBS一键配置VOIP脚本代码,其中包括VBS操作JS网页中的按钮事件--直接执行确认按钮中的脚本代码,需要的朋友可以参考下...2020-06-30
- 在网上找了很多IIS日志分析工具,功能实在太有限,有的仅能分析百度、谷歌等搜索引擎爬虫的来访次数,远远达不到我们的用户的需求...2020-12-08
- 这篇文章主要介绍了VBS定时执行idea程序的Testng文件的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-30