Procházet zdrojové kódy

Remove special 'timeout' state, not defined in ARP

This one has always been controversial since message delivery has
always been reliable, even for Android (albeit the slightly misleading
comment I added and have now removed).
Lennart Grahl před 6 roky
rodič
revize
5e7e32fd83

+ 2 - 2
public/i18n/cs.json

@@ -205,8 +205,8 @@
         "SENT": "Zpráva byla doručena na Threema server",
         "DELIVERED": "Zpráva byla doručena do zařízení příjemce",
         "READ": "Zpráva byla přečtena příjemcem",
-        "FAILED": "Zpráva nemohla být odeslána",
-        "TIMEOUT": "Zpráva nemohla být přenesena do vašeho zařízení."},
+        "FAILED": "Zpráva nemohla být odeslána"
+    },
     "messageTypes": {
         "AUDIO_MESSAGE": "Zvuková zpráva",
         "FILE_MESSAGE": "Souborová zpráva",

+ 1 - 2
public/i18n/de.json

@@ -206,8 +206,7 @@
         "SENT": "Die Nachricht wurde erfolgreich an den Server übermittelt",
         "DELIVERED": "Die Nachricht ist beim Gerät des Empfängers angekommen",
         "READ": "Die Nachricht wurde vom Empfänger gelesen",
-        "FAILED": "Die Nachricht konnte nicht gesendet werden",
-        "TIMEOUT": "Die Nachricht konnte nicht auf Ihr Gerät übertragen werden."
+        "FAILED": "Die Nachricht konnte nicht gesendet werden"
     },
     "messageTypes": {
         "AUDIO_MESSAGE": "Sprachnachricht",

+ 0 - 1
public/i18n/en.json

@@ -207,7 +207,6 @@
         "DELIVERED": "The message was delivered to the recipient's device",
         "READ": "The message was read by the recipient",
         "FAILED": "The message could not be sent",
-        "TIMEOUT": "The message could not be transferred to your device.",
         "UNKNOWN": ""
     },
     "messageTypes": {

+ 2 - 2
public/i18n/es.json

@@ -205,8 +205,8 @@
         "SENT": "El mensaje se ha enviado al servidor de Threema",
         "DELIVERED": "El mensaje se ha enviado al dispositivo del destinatario",
         "READ": "El mensaje ha sido leído por el destinatario",
-        "FAILED": "No se pudo enviar el mensaje",
-        "TIMEOUT": "No se pudo transferir el mensaje a tu dispositivo."},
+        "FAILED": "No se pudo enviar el mensaje"
+    },
     "messageTypes": {
         "AUDIO_MESSAGE": "Mensaje de audio",
         "FILE_MESSAGE": "Archivo",

+ 2 - 2
public/i18n/fr.json

@@ -205,8 +205,8 @@
         "SENT": "Le message a été transmis au serveur Threema",
         "DELIVERED": "Le message a été transmis sur l'appareil du destinataire",
         "READ": "Le message a été lu par le destinataire",
-        "FAILED": "Le message n'a pas pu être envoyé",
-        "TIMEOUT": "Le message ne peut être transféré sur votre appareil."},
+        "FAILED": "Le message n'a pas pu être envoyé"
+    },
     "messageTypes": {
         "AUDIO_MESSAGE": "Message audio",
         "FILE_MESSAGE": "Fichier",

+ 2 - 2
public/i18n/nl.json

@@ -205,8 +205,8 @@
         "SENT": "Het bericht is afgeleverd op de Threema server",
         "DELIVERED": "Het bericht is afgeleverd op het apparaat van de ontvanger",
         "READ": "Het bericht is gelezen door de ontvanger",
-        "FAILED": "Het bericht kon niet worden verstuurd",
-        "TIMEOUT": "Het bericht kon niet worden afgeleverd naar je apparaat"},
+        "FAILED": "Het bericht kon niet worden verstuurd"
+    },
     "messageTypes": {
         "AUDIO_MESSAGE": "Audiobericht",
         "FILE_MESSAGE": "Bericht met bestand",

+ 2 - 2
public/i18n/pt.json

@@ -205,8 +205,8 @@
         "SENT": "A mensagem foi entregue ao servidor do Threema",
         "DELIVERED": "A mensagem foi entregue no dispositivo do destinatário",
         "READ": "A mensagem foi lida pelo destinatário",
-        "FAILED": "A mensagem não pode ser enviada",
-        "TIMEOUT": "Não foi possível transferir a mensagem para o seu dispositivo"},
+        "FAILED": "A mensagem não pode ser enviada"
+    },
     "messageTypes": {
         "AUDIO_MESSAGE": "Mensagem de som",
         "FILE_MESSAGE": "Mensagem com anexo",

+ 1 - 1
public/i18n/sk.json

@@ -206,7 +206,7 @@
         "DELIVERED": "Správa bola doručená na zariadenie príjemcu",
         "READ": "Správa bola prečítaná príjemcom",
         "FAILED": "Správa nemohla byť poslaná",
-        "TIMEOUT": "Správa nemôže byť prenesená do Vašeho zariadenia."},
+    },
     "messageTypes": {
         "AUDIO_MESSAGE": "Zvuková správa",
         "FILE_MESSAGE": "Súborová správa",

+ 2 - 2
public/i18n/uk.json

@@ -205,8 +205,8 @@
         "SENT": "Це повідомлення було доставлене на сервер Threema",
         "DELIVERED": "Це повідомлення було доставлене на пристрій адресата",
         "READ": "Це повідомлення було прочитане адресатом",
-        "FAILED": "Це повідомлення не може бути надіслане",
-        "TIMEOUT": "Не вдалося передати повідомлення на ваш пристрій."},
+        "FAILED": "Це повідомлення не може бути надіслане"
+    },
     "messageTypes": {
         "AUDIO_MESSAGE": "Аудіоповідомлення",
         "FILE_MESSAGE": "Файлове повідомлення",

+ 2 - 2
public/i18n/zh.json

@@ -205,8 +205,8 @@
         "SENT": "消息已经被发送到服务器",
         "DELIVERED": "消息已经送达对方的设备",
         "READ": "消息已读",
-        "FAILED": "消息无法发送",
-        "TIMEOUT": "消息无法发送到您的设备"},
+        "FAILED": "消息无法发送"
+    },
     "messageTypes": {
         "AUDIO_MESSAGE": "音频消息",
         "FILE_MESSAGE": "文件消息",

+ 0 - 4
src/filters.ts

@@ -238,8 +238,6 @@ angular.module('3ema.filters', [])
                 return 'thumb_up';
             case 'user-dec':
                 return 'thumb_down';
-            case 'timeout':
-                return 'sync_problem';
             default:
                 return '';
         }
@@ -282,8 +280,6 @@ angular.module('3ema.filters', [])
                 return 'messageStates.USER_ACK';
             case 'user-dec':
                 return 'messageStates.USER_DEC';
-            case 'timeout':
-                return 'messageStates.TIMEOUT';
             default:
                 return 'messageStates.UNKNOWN';
         }

+ 0 - 13
src/services/message.ts

@@ -228,19 +228,6 @@ export class MessageService {
             default:
                 throw new Error(`Cannot create temporary message for type: ${type}`);
         }
-
-        // Add delay for timeout checking
-        // TODO: This should be removed once Android has reliable message delivery.
-        this.timeoutService.register(() => {
-            // Set the state to timeout if it is still pending.
-            // Note: If sending the message worked, by now the message object
-            // will have been replaced by a new one and the state change would
-            // have no effect anyways...
-            if (message.state === 'pending') {
-                message.state = 'timeout';
-            }
-        }, this.timeoutDelaySeconds * 1000, true, 'messageTimeout');
-
         return message;
     }
 }

+ 2 - 2
src/threema.d.ts

@@ -59,8 +59,8 @@ declare namespace threema {
 
     type MessageType = 'text' | 'image' | 'video' | 'audio' | 'location' | 'contact' |
                        'status' | 'ballot' | 'file' | 'voipStatus' | 'unknown';
-    type MessageState = 'delivered' | 'read' | 'send-failed' | 'sent' | 'user-ack' |
-                        'user-dec' | 'pending' | 'timeout' | 'sending';
+    type MessageState = 'pending' | 'sending' | 'send-failed' | 'sent' | 'delivered' |
+                        'read' | 'user-ack' | 'user-dec';
 
     const enum InitializationStep {
         ClientInfo = 'client info',