Skip to content

Commit

Permalink
Eingehende Anrufe anzeigen
Browse files Browse the repository at this point in the history
Zeigt eingehenden Anruf an:
- Icon blinkt blau
- Im Popup wird es wie beim Anrufen angezeigt, allerdings mit einem blauem Telefon
  • Loading branch information
Janokisu committed Oct 11, 2022
1 parent 0bd257f commit 6f252ea
Show file tree
Hide file tree
Showing 8 changed files with 113 additions and 22 deletions.
30 changes: 27 additions & 3 deletions _locales/de/messages.json
Original file line number Diff line number Diff line change
Expand Up @@ -197,7 +197,7 @@
},

"test_CallMon": {
"message": "Teste CallMon",
"message": "Teste CallMonitor",
"description": ""
},

Expand Down Expand Up @@ -360,7 +360,7 @@
}
},

"pop_callingNumberText_Number": {
"pop_callingNumberText_Number_out": {
"message": "Nummer $number$ wird angerufen",
"description": "",
"placeholders": {
Expand All @@ -370,7 +370,7 @@
}
},

"pop_callingNumberText_Name": {
"pop_callingNumberText_Name_out": {
"message": "'$name$' ($number$) wird angerufen",
"description": "",
"placeholders": {
Expand All @@ -383,6 +383,30 @@
}
},

"pop_callingNumberText_Number_in": {
"message": "Nummer $number$ ruft dich an",
"description": "",
"placeholders": {
"number" : {
"content" : "$1"
}
}
},

"pop_callingNumberText_Name_in": {
"message": "'$name$' ($number$) ruft dich an",
"description": "",
"placeholders": {
"number" : {
"content" : "$1"
},
"name" : {
"content" : "$2"
}
}
},


"pop_connectingNumberText_Number": {
"message": "Verbindung zur Nummer $number$ wird aufgebaut",
"description": "",
Expand Down
29 changes: 26 additions & 3 deletions _locales/en/messages.json
Original file line number Diff line number Diff line change
Expand Up @@ -197,7 +197,7 @@
},

"test_CallMon": {
"message": "Testing CallMon",
"message": "Testing CallMonitor",
"description": ""
},

Expand Down Expand Up @@ -360,7 +360,7 @@
}
},

"pop_callingNumberText_Number": {
"pop_callingNumberText_Number_out": {
"message": "Calling number $number$",
"description": "",
"placeholders": {
Expand All @@ -370,7 +370,7 @@
}
},

"pop_callingNumberText_Name": {
"pop_callingNumberText_Name_out": {
"message": "Calling '$name$' ($number$)",
"description": "",
"placeholders": {
Expand All @@ -383,6 +383,29 @@
}
},

"pop_callingNumberText_Number_in": {
"message": "Number $number$ is calling",
"description": "",
"placeholders": {
"number" : {
"content" : "$1"
}
}
},

"pop_callingNumberText_Name_in": {
"message": "'$name$' ($number$) is calling",
"description": "",
"placeholders": {
"number" : {
"content" : "$1"
},
"name" : {
"content" : "$2"
}
}
},

"pop_connectingNumberText_Number": {
"message": "Establishing connection to number $number$",
"description": "",
Expand Down
17 changes: 12 additions & 5 deletions background.js
Original file line number Diff line number Diff line change
Expand Up @@ -403,6 +403,8 @@ function work(info){
//note(wer + " ruft" + extra + " an");
note( browser.i18n.getMessage("ring_text", [wer, extra]) );
ruf(true);
Listener_Dial = [2, info[4]];
blink_connecting("on", 2);
}
break;

Expand Down Expand Up @@ -627,7 +629,7 @@ function callNumber(number, sendResponse){
}).then(function(){
console.info("Calling number: " + number);
Listener_Dial = [0, number];
blink_connecting("on");
blink_connecting("on", 1);

if(GL_PythonListen.isRunning() == false){
//console.log("set Time connectingStopped");
Expand Down Expand Up @@ -733,10 +735,14 @@ function blink_missed(x){

let blink_connecting_toggle = 0;
let blink_connecting_interval = 0;
function blink_connecting(x){

function blink_connecting(x, out_in){
//out_in 1=du rufst an; 2=du wirst angerufen

if(blink_connecting_toggle){
browser.browserAction.setBadgeBackgroundColor({color: "#00CC00"});
if(out_in == 1) browser.browserAction.setBadgeBackgroundColor({color: "#00CC00"});
else if(out_in == 2) browser.browserAction.setBadgeBackgroundColor({color: "#0000CC"});
console.info("out_in", out_in)

browser.browserAction.setBadgeText({text: "📞"});
blink_connecting_toggle = 0;
}
Expand All @@ -748,9 +754,10 @@ function blink_connecting(x){

if(x != ""){
if(x == "on"){

clearInterval(blink_connecting_interval);
blink_connecting_interval = setInterval(() => {
blink_connecting();
blink_connecting("", out_in);
}, 1000);
}
else if(x == "off"){
Expand Down
4 changes: 2 additions & 2 deletions help/help.html
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ <h1 id="fritzbox">FritzBox</h1>
<ul type="disc">
<li>To view the call log, the following is needed:
<ul type="circle">
<li>A user account is needed, which has access to the call list (see <a href="https://en.avm.de/service/knowledge-base/dok/FRITZ-Box-7590-AX/1522_Accessing-FRITZ-Box-from-the-home-network-with-user-accounts/" target="_blank" rel="noreferrer noopener">here</a>)
<li>In order for the addon to be able to interact with the FritzBox, TR-064 must be activated (see <a href="https://avm.de/service/wissensdatenbank/dok/FRITZ-Box-7590/3266_MyFRITZ-App-fur-Android-einrichten/" target="_blank" rel="noreferrer noopener">here</a> at "FRITZ!Box für Zugriff von Anwendungen einrichten")
<li>A user account is needed, which has access to the call list (see <a href="https://en.avm.de/service/knowledge-base/dok/FRITZ-Box-7590/1522_Accessing-FRITZ-Box-from-the-home-network-with-user-accounts/" target="_blank" rel="noreferrer noopener">here</a>)
<li>In order for the addon to be able to interact with the FritzBox, TR-064 must be activated (see <a href="https://en.avm.de/service/knowledge-base/dok/FRITZ-Box-7590/3266_Setting-up-MyFRITZ-App-for-Android/" target="_blank" rel="noreferrer noopener">here</a> at "Configuring the FRITZ!Box to allow access for applications")
</ul>
<br>
<li>For the CallMonitor, the port 1012 must be enabled on the FritzBox. This can be done by dialing #96*5* by phone. With the number #96*4* you can block it again.
Expand Down
2 changes: 1 addition & 1 deletion help/help_de.html
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ <h1 id="fritzbox">FritzBox</h1>
<ul type="disc">
<li>Zum Anzeigen der Anrufliste wird folgendes benötigt:
<ul type="circle">
<li>Es wird ein Benutzerkonto benötigt, welches auf die Anrufliste Zugriff hat (s. <a href="https://avm.de/service/fritzbox/fritzbox-7270/wissensdatenbank/publication/show/1522_Im-Heimnetz-uber-Benutzerkonten-auf-FRITZ-Box-zugreifen" target="_blank" rel="noreferrer noopener">hier</a>)
<li>Es wird ein Benutzerkonto benötigt, welches auf die Anrufliste Zugriff hat (s. <a href="https://avm.de/service/wissensdatenbank/dok/FRITZ-Box-7590/1522_Im-Heimnetz-uber-Benutzerkonten-auf-FRITZ-Box-zugreifen/" target="_blank" rel="noreferrer noopener">hier</a>)
<li>Damit das Addon mit der FritzBox interagieren kann, muss TR-064 aktiviert sein (s. <a href="https://avm.de/service/wissensdatenbank/dok/FRITZ-Box-7590/3266_MyFRITZ-App-fur-Android-einrichten/" target="_blank" rel="noreferrer noopener">hier</a> unter den Punkt "FRITZ!Box für Zugriff von Anwendungen einrichten")
</ul>
<br>
Expand Down
2 changes: 1 addition & 1 deletion popup.html
Original file line number Diff line number Diff line change
Expand Up @@ -211,7 +211,7 @@
<div id="Anruf" class="d_table" style="display:none;">
<div class="d_cell">
<span id="callingNumberText"></span><br>
<span style="color:green"></span> <span id="wait" style="display:inline-block; width:50px; text-align:left;"></span> <button id="hangup"><font color="red"></font></button><br>
<span id="callSymbol" style="color:green"></span> <span id="wait" style="display:inline-block; width:50px; text-align:left;"></span> <button id="hangup"><font color="red"></font></button><br>
<span id="aufbauTimout" style="display:none; color:red" data-i18n="pop_connectTimeout"></span><br>
</div>
</div>
Expand Down
34 changes: 29 additions & 5 deletions popup.js
Original file line number Diff line number Diff line change
Expand Up @@ -214,6 +214,8 @@ function connecting(obj){
return 0;
}

document.getElementById("callSymbol").style.color = "green";
document.getElementById("hangup").style.display = "inline-block";

let name = callingName.innerText;
let number = callingNumber.innerText;
Expand Down Expand Up @@ -247,18 +249,39 @@ function connecting(obj){

let calling_inter;
function calling(obj){
//obj: 1=du rufst an; 2=du wirst angerufen

//Es wird gerade jemand angerufen
change_Window(1);
change_sonder(1);

let name = callingName.innerText;
let number = callingNumber.innerText;


if(obj == 1){
document.getElementById("callSymbol").style.color = "green";
}
else if(obj == 2){
document.getElementById("callSymbol").style.color = "blue";
document.getElementById("hangup").style.display = "none";
}


if(callingName.innerText == ""){
document.getElementById("callingNumberText").innerText = browser.i18n.getMessage("pop_callingNumberText_Number", [number]);
if(obj == 1){
document.getElementById("callingNumberText").innerText = browser.i18n.getMessage("pop_callingNumberText_Number_out", [number]);
}
else if(obj == 2){
document.getElementById("callingNumberText").innerText = browser.i18n.getMessage("pop_callingNumberText_Number_in", [number]);
}
}
else{
document.getElementById("callingNumberText").innerText = browser.i18n.getMessage("pop_callingNumberText_Name", [number, name]);
if(obj == 1){
document.getElementById("callingNumberText").innerText = browser.i18n.getMessage("pop_callingNumberText_Name_out", [number, name]);
}
else if(obj == 2){
document.getElementById("callingNumberText").innerText = browser.i18n.getMessage("pop_callingNumberText_Name_in", [number, name]);
}
}


Expand Down Expand Up @@ -356,8 +379,9 @@ function checkCalling(obj){
callingName.innerText = obj["Listener_Dial"][2];
callingNumber.innerText = obj["Listener_Dial"][1];

if(obj["Listener_Dial"][0] == 1) calling();
else connecting();
if(obj["Listener_Dial"][0] == 0) connecting();
else if(obj["Listener_Dial"][0] == 1) calling(1);
else if(obj["Listener_Dial"][0] == 2) calling(2);
}
}

Expand Down
17 changes: 15 additions & 2 deletions tools.js
Original file line number Diff line number Diff line change
Expand Up @@ -181,9 +181,10 @@ class PythonListen{
#port = null;
#state = 0;
#running = false;
#thisTimeout = 0;

#PyVer = 0;
#CallMonVer = 0
#PyVer = "?.?";
#CallMonVer = "?.?";


isRunning(){
Expand Down Expand Up @@ -245,6 +246,17 @@ class PythonListen{
start(){
if(this.connect() == true){
if(this.send("version") == true){

const self = this; //Bezug herstellen
this.#thisTimeout = setTimeout(() => {
//es dauert aufällig lange. evtl noch ne alte Version
self.errorEvent({
"state": 0,
"code": 0,
"message": "\n" + browser.i18n.getMessage("CallMon_alt", [CallMon_Version, self.getCallMonVer()])
});
}, 5*1000);

return true;
}
else{
Expand Down Expand Up @@ -300,6 +312,7 @@ class PythonListen{
break;

case "state":
clearTimeout(self.#thisTimeout);
if(info[1]) self.#state = Number(info[1]);
self.statechange(self.#state);
break;
Expand Down

0 comments on commit 6f252ea

Please sign in to comment.