zoukankan      html  css  js  c++  java
  • VBS一键配置VOIP脚本(其中包括VBS操作JS网页中的按钮事件--直接执行确认按钮中的脚本代码)

    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.Sleep500
            
        LoopUntil IE.ReadyState=4
        
        
        Login()
        SipSetting()
        InputParm()
        VOIP()
        RebootSys()

    EndFunction
    '======================================================
    '登录系统
    Function Login()

        WScript.Sleep1000
        ws.SendKeys"^a"
        WScript.Sleep200
        ws.SendKeys"admin"
        ws.SendKeys"{TAB}"
        ws.SendKeys"^a"
        WScript.Sleep200
        ws.SendKeys"admin"
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{ENTER}"

    EndFunction
    '================================================
    '进入sipsetting菜单
    Function SipSetting()

        If IE.ReadyState=4Then
        
            WScript.Sleep1000
            ws.SendKeys"{TAB 5}"
            WScript.Sleep500
            ws.SendKeys"{ENTER}"
            WScript.Sleep500
            ws.SendKeys"{TAB}"
            WScript.Sleep500
            ws.SendKeys"{ENTER}"
            WScript.Sleep2000
        Else
        
         MsgBox"进入配置界面失败!"
         
        EndIf

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

        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{TAB}"
        WScript.Sleep200    
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        
        
        ws.SendKeys"{DOWN}"  '选择开启状态
        WScript.Sleep300

    EndFunction
    '=========================================
    '配置参数
    Function VOIP()

        ws.SendKeys"{TAB}"
        ws.SendKeys"^a"
        WScript.Sleep200
        ws.SendKeys OneLineStr(1)  'display name
        
        ws.SendKeys"{TAB}"
        ws.SendKeys"^a"
        WScript.Sleep200
        ws.SendKeys OneLineStr(1)   'user number
        
        ws.SendKeys"{TAB}"
        ws.SendKeys"^a"
        WScript.Sleep200
        ws.SendKeys OneLineStr(1)   'auth id
        
        ws.SendKeys"{TAB}"    
        WScript.Sleep200
        ws.SendKeys"^a"
        WScript.Sleep200            
        ws.SendKeys TwoLineStr(1)   'password
        
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"^a"
        WScript.Sleep200
        ws.SendKeys ThreeLineStr(1)   'proxy ip
        
        ws.SendKeys"{TAB}"        'domain
        WScript.Sleep200
        ws.SendKeys"^a"
        WScript.Sleep200
        ws.SendKeys ThreeLineStr(1)
        
        '=============保存===========
        ws.SendKeys"{TAB 48}"
        WScript.Sleep500
        ws.SendKeys"{TAB}"
        WScript.Sleep500
        ws.SendKeys"{ENTER}"
        WScript.Sleep1500
        
    EndFunction

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

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

        ForEach iIn ALL

        If i.value="Reboot"Then

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

            ExitFor

         
        EndIf

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

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

    EndFunction


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

    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.Sleep5000
        ws.SendKeys"^a"
        WScript.Sleep200
        ws.SendKeys"admin"
        ws.SendKeys"{TAB}"
        ws.SendKeys"^a"
        WScript.Sleep200
        ws.SendKeys"admin"
        ws.SendKeys"{ENTER}"
        
        '============进入sip setting菜单=============
        WScript.Sleep2000
        ws.SendKeys"{TAB 5}"
        WScript.Sleep500
        ws.SendKeys"{ENTER}"
        WScript.Sleep500
        ws.SendKeys"{TAB}"
        WScript.Sleep500
        ws.SendKeys"{ENTER}"
        WScript.Sleep2000
        
        
        '==============进入编辑状态=======================
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{TAB}"
        WScript.Sleep200    
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        ws.SendKeys"{TAB}"
        WScript.Sleep200
        
        
        
        ws.SendKeys"{DOWN}"  '选择开启状态
        WScript.Sleep300

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

    EndFunction



    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>

  • 相关阅读:
    第五课补充01——持久化
    第六课补充01——主从复制原理,哨兵机制
    第五课作业——持久化
    矢量图网站
    WPF中获取控件之间的相对位置
    如何使用Prism框架的EventAggregator在模块间进行通信
    WPF中XAML中使用String.Format格式化字符串示例
    Win32 API中的user32.dll中的ShowWindow方法参数整理
    C# XML序列化帮助类代码
    建议2:使用默认转型方法
  • 原文地址:https://www.cnblogs.com/jinjiangongzuoshi/p/3914295.html
Copyright © 2011-2022 走看看