How to access a database from Yate's Javascript module
From Yate Documentation
(Difference between revisions)
(→Example with call interaction) |
(→Example with call interaction) |
||
Line 49: | Line 49: | ||
m.query = "SELECT test from test"; | m.query = "SELECT test from test"; | ||
− | // Run the Query | + | // '''Run the Query''' |
if (m.dispatch()) | if (m.dispatch()) | ||
{ | { | ||
Line 57: | Line 57: | ||
Engine.output("result[0,0] = " + m.getResult(0,0)); | Engine.output("result[0,0] = " + m.getResult(0,0)); | ||
− | // assuming m.getResult(0,0) returns "tone/busy" or "sip/sip:345@10.11.12.13" | + | // '''assuming m.getResult(0,0) returns "tone/busy" or "sip/sip:345@10.11.12.13"''' |
Channel.callJust(m.getResult(0,0)); | Channel.callJust(m.getResult(0,0)); | ||
} | } |
Revision as of 12:24, 19 March 2013
Using the example below you will learn how to:
- retrieve information from database
Contents |
Configure script in Javascript module
To configure a script for Javascript routing it must be listed in the javascript.conf file:
[general] routing=example.js
Configure database account
DB Examples
Example uses Javascript to retrieve information from DB
// Get DB Object var m = new Message("database"); // Specify connection to use m.account = "yateadmin"; // Define Query m.query = "SELECT * FROM lines WHERE location IS NOT NULL ORDER BY line LIMIT 5"; // Run the Query if (m.dispatch()) { if (m.rows > 0) { Engine.output("Got " + m.rows + " records of " + m.columns + " fields"); Engine.output("result[0,0] = " + m.getResult(0,0)); var res = m.getColumn("location"); for (var i = 0; i < res.length; i++) { Engine.output("location[" + i + "] = " + res[i]); } } } else { Engine.output("Query failed"); }
Example with call interaction
// Get DB Object, Account, Query var m = new Message("database"); m.account = "yateadmin"; m.query = "SELECT test from test"; // Run the Query if (m.dispatch()) { Engine.output("Query Ok"); if (m.rows > 0) { Engine.output("result[0,0] = " + m.getResult(0,0)); // assuming m.getResult(0,0) returns "tone/busy" or "sip/sip:345@10.11.12.13" Channel.callJust(m.getResult(0,0)); } }
See also