try to take over the world!
// ==UserScript==
// @name yealink-caller
// @namespace https://greasyfork.org/de/scripts/24688-yealink-caller/
// @version 0.2
// @description try to take over the world!
// @author Bernhard Kaszt
// @match *://*/*
// @grant unsafeWindow
// @grant GM_xmlhttpRequest
// @grant GM_log
// @connect *
// ==/UserScript==
(function()
{
'use strict';
function getNumber()
{
var number = null;
var window = unsafeWindow;
var document = window.document;
if (window.getSelection) {
number = window.getSelection().toString();
} else if (document.getSelection) {
number = document.getSelection().toString();
} else {
number = document.selection.createRange().text;
}
if (!number || number.trim().length <= 2) {
number = window.prompt("Bitte enter a phone number:");
}
if (!number || number.trim().length <= 2) {
return null;
}
number = number.toString().replace(/\(0\)/g, '');
number = number.toString().replace(/\+/g, '00');
number = number.replace(/\D/g,'');
return number;
}
unsafeWindow.yealink_call = function(caller, ipAddress, password)
{
var number = getNumber();
if (number) {
var url = "http://admin:" + password + "@" + ipAddress + "/servlet?number=" + number + "&outgoing_uri=" + caller;
GM_log("Calling number \"" + number + "\" @ " + ipAddress);
GM_xmlhttpRequest({ method: "GET", url: url });
}
};
})();