Javascript Rmanager commands

From Yate Documentation
(Difference between revisions)
Jump to: navigation, search
Line 45: Line 45:
  
 
[[Category:Javascript]] [[Category:Rmanager]]
 
[[Category:Javascript]] [[Category:Rmanager]]
 +
 +
==See message handlers==
 +
You can use even use '''eval''' to see installed handlers for a script.
 +
 +
 +
    javascript eval=roaming Engine.print_t(Message.handlers())
 +
    name              priority handler        trackName    filterName filterValue
 +
    ----------------- -------- -------------- ------------- ---------- ------------
 +
    call.update      90      onChanUpdate  javascript:90
 +
    sip.options      90      onSipOptions  javascript:90
 +
    sip.info          90      onSipInfo      javascript:90
 +
    module.update    90      onModuleUpdate javascript:90 module    ybts
 +
    user.register    80      onRegister    roaming:80
 +
    user.unregister  80      onUnregister  roaming:80
 +
    call.route        80      onRoute        roaming:80
 +
    auth              80      onAuth        roaming:80    callto    smsc_yatebts
 +
    msg.execute      80      onMoSMS        roaming:80    module    ybts
 +
    chan.disconnected 40      onDisconnected roaming:40    module    ybts
 +
    chan.hangup      80      onHangup      roaming:80    module    ybts
 +
    call.execute      80      onExecute      roaming:80    module    ybts
 +
    call.progress    50      addPhyInfo    roaming:50    module    ybts
 +
    call.ringing      50      addPhyInfo    roaming:50
 +
    call.answered    50      addPhyInfo    roaming:50    module    roaming
 +
    chan.dtmf        50      addPhyInfo    roaming:50
 +
    engine.command    120      onCommand      roaming:120
 +
    engine.help      150      onHelp        roaming:150
 +
    engine.debug      150      onDebug        roaming:150
 +
    engine.init      110      onReload      roaming:110

Revision as of 11:16, 7 August 2014

You can interact with Javascript scripts from rmanager.

To connect to Yate's rmanager interface

telnet 127.0.0.1 5038

Contents

See running scripts

javascript info

Ex output:

javascript info
nib = ./share/scripts/nib.js
sip/74: ReRoute

nib.js is a global script and sip/74 is a sip channel that is assisted by the configured routing script

Reload scripts

You can use this to reload a script after you have modified it.

javascript reload script_name

Evaluate expresion

Ask Javascript interpretor to evaluate expresion:

javascript eval Engine.debug("test")

Ask Javascript interpretor to evaluate expresion in the context of a specific script. In this case you will be able to access global variables from that script.

javascript eval=script_name Engine.debug("test"+var_name)

Ask Javascript interpretor to evaluate expresion in the context of a specific routing script instance. In this case you will be able to access global variables from that script instance.

javascript eval=chan_id Engine.debug("test"+var_name)

Ex:

javascript eval=sip/74 Engine.debug("test"+var_name)

You can use the eval functionality to test javascript expressions and in some cases it's very useful when debugging.

Inspecting variables

Inspect variable in running script:

javascript eval=script_name Engine.print_r(var_name)

View Object or Array in JSON format:

javascript eval=script_name JSON.stringify(var_name,null,2)

See message handlers

You can use even use eval to see installed handlers for a script.


   javascript eval=roaming Engine.print_t(Message.handlers())
   name              priority handler        trackName     filterName filterValue
   ----------------- -------- -------------- ------------- ---------- ------------
   call.update       90       onChanUpdate   javascript:90
   sip.options       90       onSipOptions   javascript:90
   sip.info          90       onSipInfo      javascript:90
   module.update     90       onModuleUpdate javascript:90 module     ybts
   user.register     80       onRegister     roaming:80
   user.unregister   80       onUnregister   roaming:80
   call.route        80       onRoute        roaming:80
   auth              80       onAuth         roaming:80    callto     smsc_yatebts
   msg.execute       80       onMoSMS        roaming:80    module     ybts
   chan.disconnected 40       onDisconnected roaming:40    module     ybts
   chan.hangup       80       onHangup       roaming:80    module     ybts
   call.execute      80       onExecute      roaming:80    module     ybts
   call.progress     50       addPhyInfo     roaming:50    module     ybts
   call.ringing      50       addPhyInfo     roaming:50
   call.answered     50       addPhyInfo     roaming:50    module     roaming
   chan.dtmf         50       addPhyInfo     roaming:50
   engine.command    120      onCommand      roaming:120
   engine.help       150      onHelp         roaming:150
   engine.debug      150      onDebug        roaming:150
   engine.init       110      onReload       roaming:110
Personal tools
Namespaces

Variants
Actions
Preface
Configuration
Administrators
Developers