Merge https://github.com/siacs/Conversations into development
This commit is contained in:
commit
8d27d0c44a
|
@ -14,7 +14,7 @@
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:padding="8dp"
|
android:padding="8dp"
|
||||||
android:text="Contact Details" />
|
android:text="@string/action_contact_details" />
|
||||||
<RelativeLayout
|
<RelativeLayout
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="88dp"
|
android:layout_height="88dp"
|
||||||
|
@ -42,7 +42,6 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:paddingLeft="8dp"
|
android:paddingLeft="8dp"
|
||||||
android:singleLine="true"
|
android:singleLine="true"
|
||||||
android:text="something@jabber.example.com"
|
|
||||||
android:textColor="#5b5b5b"
|
android:textColor="#5b5b5b"
|
||||||
android:textSize="18sp" />
|
android:textSize="18sp" />
|
||||||
|
|
||||||
|
@ -51,7 +50,6 @@
|
||||||
android:layout_width="fill_parent"
|
android:layout_width="fill_parent"
|
||||||
android:layout_height="fill_parent"
|
android:layout_height="fill_parent"
|
||||||
android:paddingLeft="16dp"
|
android:paddingLeft="16dp"
|
||||||
android:text="online"
|
|
||||||
android:textSize="24sp"
|
android:textSize="24sp"
|
||||||
android:textStyle="bold" />
|
android:textStyle="bold" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
@ -64,13 +62,12 @@
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:padding="8dp"
|
android:padding="8dp"
|
||||||
android:text="Your account" />
|
android:text="@string/your_account" />
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/details_account"
|
android:id="@+id/details_account"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:paddingLeft="8dp"
|
android:paddingLeft="8dp"
|
||||||
android:text="julia@jabber.example.com"
|
|
||||||
android:textSize="18sp"
|
android:textSize="18sp"
|
||||||
android:textColor="#5b5b5b" />
|
android:textColor="#5b5b5b" />
|
||||||
<TextView
|
<TextView
|
||||||
|
@ -78,13 +75,13 @@
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:padding="8dp"
|
android:padding="8dp"
|
||||||
android:text="Subscription" />
|
android:text="@string/subscriptions" />
|
||||||
|
|
||||||
<CheckBox
|
<CheckBox
|
||||||
android:id="@+id/details_send_presence"
|
android:id="@+id/details_send_presence"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="Send presence updates"
|
android:text="@string/send_presence_updates"
|
||||||
android:textSize="18sp"
|
android:textSize="18sp"
|
||||||
android:textColor="#5b5b5b" />
|
android:textColor="#5b5b5b" />
|
||||||
|
|
||||||
|
@ -92,7 +89,7 @@
|
||||||
android:id="@+id/details_receive_presence"
|
android:id="@+id/details_receive_presence"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="Receive presence updates"
|
android:text="@string/receive_presence_updates"
|
||||||
android:textSize="18sp"
|
android:textSize="18sp"
|
||||||
android:textColor="#5b5b5b" />
|
android:textColor="#5b5b5b" />
|
||||||
|
|
||||||
|
@ -112,7 +109,7 @@
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:padding="8dp"
|
android:padding="8dp"
|
||||||
android:text="Keys" />
|
android:text="@string/keys" />
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:id="@+id/details_contact_keys"
|
android:id="@+id/details_contact_keys"
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<resources>
|
||||||
|
<array name="resources">
|
||||||
|
<item>Mòbil</item>
|
||||||
|
<item>Telèfon</item>
|
||||||
|
<item>Tauleta</item>
|
||||||
|
<item>Conversations</item>
|
||||||
|
<item>Android</item>
|
||||||
|
</array>
|
||||||
|
<string-array name="filesizes">
|
||||||
|
<item>mai</item>
|
||||||
|
<item>256 KB</item>
|
||||||
|
<item>512 KB</item>
|
||||||
|
<item>1 MB</item>
|
||||||
|
</string-array>
|
||||||
|
<string-array name="filesizes_values">
|
||||||
|
<item>0</item>
|
||||||
|
<item>262144</item>
|
||||||
|
<item>524288</item>
|
||||||
|
<item>1048576</item>
|
||||||
|
</string-array>
|
||||||
|
</resources>
|
|
@ -0,0 +1,119 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<resources>
|
||||||
|
|
||||||
|
<string name="app_name">Conversations</string>
|
||||||
|
<string name="action_settings">Preferències</string>
|
||||||
|
<string name="action_add">Nova conversa</string>
|
||||||
|
<string name="action_accounts">Gestionar comptes</string>
|
||||||
|
<string name="action_end_conversation">Finalitzar conversa</string>
|
||||||
|
<string name="action_contact_details">Detalls del contacte</string>
|
||||||
|
<string name="action_muc_details">Detalls de la conferència</string>
|
||||||
|
<string name="action_secure">Conversa segura</string>
|
||||||
|
<string name="action_add_account">Afegir compte</string>
|
||||||
|
<string name="title_activity_contacts">Contactes</string>
|
||||||
|
<string name="just_now">ara</string>
|
||||||
|
<string name="sending">enviant…</string>
|
||||||
|
<string name="announce_pgp">Renovar anunci PGP</string>
|
||||||
|
<string name="encrypted_message">Desxifrant missatge. Espera si us plau…</string>
|
||||||
|
<string name="conference_details">Detalls de la conferència</string>
|
||||||
|
<string name="nick_in_use">El sobrenom ja està en ús</string>
|
||||||
|
<string name="moderator">Moderador</string>
|
||||||
|
<string name="participant">Participant</string>
|
||||||
|
<string name="visitor">Visitant</string>
|
||||||
|
<string name="enter_new_name">Introdueix un nou nom:</string>
|
||||||
|
<string name="remove_contact_text">Vols eliminar a %s de la teva llista?. La conversa associada a aquest compte no s\'eliminarà.</string>
|
||||||
|
<string name="untrusted_cert_hint">El servidor %s presenta un certificat no confiable, possiblemente auto signat.</string>
|
||||||
|
<string name="account_info">Informació del servidor</string>
|
||||||
|
<string name="register_account">Registrar nou compte al servidor</string>
|
||||||
|
<string name="share_with">Compartir amb</string>
|
||||||
|
<string name="ask_again"><u>Prem per preguntar un altre cop</u></string>
|
||||||
|
<string name="show_otr_key">Emprempta dactilar OTR</string>
|
||||||
|
<string name="no_otr_fingerprint">No s\'ha generat una emprempta dactilar OTR. Simplement continua i comença una conversa xifrada.</string>
|
||||||
|
<string name="start_conversation">Començar conversa</string>
|
||||||
|
<string name="invite_contacts">Convidar contactes</string>
|
||||||
|
<string name="invite_contacts_to_existing">Convidar a conferència existent</string>
|
||||||
|
<string name="new_conference">Crear nova conferència</string>
|
||||||
|
<string name="cancel">Cancel·lar</string>
|
||||||
|
<string name="create_invite">Crear \u0026 Convidar</string>
|
||||||
|
<string name="new_conference_explained">Vols crear una nova conferència amb una adreça generada aleatòriament i convidar als contactes seleccionats a ella?</string>
|
||||||
|
<string name="no_open_mucs">No hi ha conferències existents</string>
|
||||||
|
<string name="invitation_sent">Invitació enviada</string>
|
||||||
|
<string name="account_offline">Compte desconnectat</string>
|
||||||
|
<string name="cant_invite_while_offline">Has d\'estar connectat per convidar contactes a la conferència</string>
|
||||||
|
<string name="crash_report_title">Conversations s\'ha aturat.</string>
|
||||||
|
<string name="crash_report_message">Enviant bolcats de piles ajudes al desenvolupament de Conversations\n<b>Avís:</b> Això usarà el teu compte XMPP per enviar el bolcat de pila al desenvolupador.</string>
|
||||||
|
<string name="send_now">Enviar ara</string>
|
||||||
|
<string name="send_never">No preguntar de nou</string>
|
||||||
|
<string name="problem_connecting_to_account">No s\'ha pogut connectar al compte</string>
|
||||||
|
<string name="problem_connecting_to_accounts">No s\'ha pogut connectar a múltiples comptes</string>
|
||||||
|
<string name="touch_to_fix">Prem aqui per gestionar els teus comptes</string>
|
||||||
|
<string name="attach_file">Enviar arxiu</string>
|
||||||
|
<string name="not_in_roster">El contacte no està a la teva llista. Vols afegir-lo?</string>
|
||||||
|
<string name="add_contact">Afefgir contacte</string>
|
||||||
|
<string name="send_failed">Error a l\'enviar</string>
|
||||||
|
<string name="send_rejected">rebutjat</string>
|
||||||
|
<string name="receiving_image">Rebent arxiu d\'imatge. Espera si us plau…</string>
|
||||||
|
<string name="preparing_image">Preparant imatge per enviar</string>
|
||||||
|
<string name="action_clear_history">Netejar historial</string>
|
||||||
|
<string name="clear_conversation_history">Netejar historial de conversa</string>
|
||||||
|
<string name="clear_histor_msg">Vols esborrar tots els missatges d\'aquesta conversa?\n\n<b>Avís:</b> Això no afectarà els missatges desats en altres dispositius o servidors.</string>
|
||||||
|
<string name="delete_messages">Esborrar missatges</string>
|
||||||
|
<string name="also_end_conversation">Finalitzar aquesta conversa més tard</string>
|
||||||
|
<string name="choose_presence">Selecciona recurs del contacte</string>
|
||||||
|
<string name="send_message_to_conference">Enviar missatge a conferència</string>
|
||||||
|
<string name="send_plain_text_message">Enviar missatge de text</string>
|
||||||
|
<string name="send_otr_message">Enviar missatge xifrat amb OTR</string>
|
||||||
|
<string name="send_pgp_message">Enviar missatge xifrat amb openPGP</string>
|
||||||
|
<string name="your_nick_has_been_changed">El teu sobrenom s\'ha modificat</string>
|
||||||
|
<string name="download_image">Descarregar imatge</string>
|
||||||
|
<string name="error_loading_image">Error carregant imatge (Fitxer no trobat)</string>
|
||||||
|
<string name="image_offered_for_download"><i>Fitxer d\'imatge ofert per a descàrrega</i></string>
|
||||||
|
<string name="not_connected">No connectat</string>
|
||||||
|
<string name="you_are_offline">Has d\'estar connectat per enviar %s però el teu compte associat a aquesta conversa està desconnectat.</string>
|
||||||
|
<string name="you_are_offline_blank">No pots executar aquesta acció estant desconnectat.</string>
|
||||||
|
<string name="files">fitxers</string>
|
||||||
|
<string name="otr_messages">Missatges xifrats amb OTR</string>
|
||||||
|
<string name="manage_account">Gestionar compte</string>
|
||||||
|
<string name="contact_offline">El teu contacte està desconnectat</string>
|
||||||
|
<string name="contact_offline_otr">Malauradament no és possible enviar missatges xifrats amb OTR a un contacte desconnectat.\nVols enviar el missatge en text pla?</string>
|
||||||
|
<string name="contact_offline_file">Malauradament no és possible enviar fitxers a un contacte desconnectat.</string>
|
||||||
|
<string name="send_unencrypted">Enviar sense xifrar</string>
|
||||||
|
<string name="decryption_failed">Ha fallat el desxiframent. Potser no tinguis la clau privada apropiada.</string>
|
||||||
|
<string name="openkeychain_required">OpenKeychain</string>
|
||||||
|
<string name="openkeychain_required_long">Conversations utilitza una aplicació de tercers anomenada <b>OpenKeychain</b> per xifrar i desxifrar missatges i gestionar les teves claus públiques..\n\nOpenKeychain està publicat sota llicència GPLv3 i disponible a la F-Droid i Google Play.\n\n<small>(Si us plau, reinicieu Conversations després.)</small></string>
|
||||||
|
<string name="restart">Reiniciar</string>
|
||||||
|
<string name="install">Instal·lar</string>
|
||||||
|
<string name="offering">oferint…</string>
|
||||||
|
<string name="no_pgp_key">Clau openPGP no trobada</string>
|
||||||
|
<string name="contact_has_no_pgp_key">Conversations no ha pogut xifrar els teus missatges perquè el teu contacte no està anunciant la seva clau pública.\n\n<small>Si us plau, demana al teu contacte que configuri openPGP.</small></string>
|
||||||
|
<string name="encrypted_message_received"><i>Missatge xifrat rebut. Prem per desxifrar i veure-ho.</i></string>
|
||||||
|
<string name="encrypted_image_received"><i>Imatge xifrada rebuda. Prem per desxifrar i veure-la.</i></string>
|
||||||
|
<string name="image_file"><i>Imatge rebuda. Prem per veure</i></string>
|
||||||
|
<string name="otr_file_transfer">Xifratge amb OTR no disponible</string>
|
||||||
|
<string name="otr_file_transfer_msg">Malauradament el xifratge amb OTR no està disponible per transferència de fitxers. Pots seleccionar xifratge amb openPGP o no usar xifratge.</string>
|
||||||
|
<string name="use_pgp_encryption">Usa xifratge amb openPGP</string>
|
||||||
|
<string name="pref_xmpp_resource">Recursos XMPP</string>
|
||||||
|
<string name="pref_xmpp_resource_summary">El nom que identifica aquest client amb</string>
|
||||||
|
<string name="pref_accept_files">Acceptar fitxers</string>
|
||||||
|
<string name="pref_accept_files_summary">Accepta fitxers automàticament amb una mida menor a…</string>
|
||||||
|
<string name="pref_notification_settings">Ajustos de notificacions</string>
|
||||||
|
<string name="pref_notifications">Notificacions</string>
|
||||||
|
<string name="pref_notifications_summary">Notifica quan arriba un nou missatge</string>
|
||||||
|
<string name="pref_vibrate">Vibra</string>
|
||||||
|
<string name="pref_vibrate_summary">Vibra quan arriba un nou missatge</string>
|
||||||
|
<string name="pref_sound">So</string>
|
||||||
|
<string name="pref_sound_summary">Reprodueix el to de trucada amb la notificació</string>
|
||||||
|
<string name="pref_conference_notifications">Notificacions de conferència</string>
|
||||||
|
<string name="pref_conference_notifications_summary">Sempre notifica quan arriba un nou missatge de conferència en comptes de només quan està destacat</string>
|
||||||
|
<string name="pref_notification_grace_period">Notificació del període d\'espera</string>
|
||||||
|
<string name="pref_notification_grace_period_summary">Desactiva les notificacions durant un breu termini després de rebre una còpia de missatges carbon</string>
|
||||||
|
<string name="pref_ui_options">Opcions de UI</string>
|
||||||
|
<string name="pref_use_phone_self_picture">Utilitza l\'avatar de l\'usuari del mòbil</string>
|
||||||
|
<string name="pref_use_phone_sefl_picture_summary">Podries no diferenciar quin compte estàs usant a la conversa</string>
|
||||||
|
<string name="pref_conference_name">Nom de la conferència</string>
|
||||||
|
<string name="pref_conference_name_summary">Utilitza l\'assumpte de la sala per identificar Conferències</string>
|
||||||
|
<string name="pref_advanced_options">Opcions avançades</string>
|
||||||
|
<string name="pref_never_send_crash">Mai enviïs informes d\'errors</string>
|
||||||
|
<string name="pref_never_send_crash_summary">Enviant traces d\'execució ajudes al futur desenvolupament del Conversations.</string>
|
||||||
|
|
||||||
|
</resources>
|
|
@ -53,23 +53,23 @@
|
||||||
<string name="send_failed">Zustellung nicht erfolgreich</string>
|
<string name="send_failed">Zustellung nicht erfolgreich</string>
|
||||||
<string name="send_rejected">abgelehnt</string>
|
<string name="send_rejected">abgelehnt</string>
|
||||||
<string name="receiving_image">Empfange Bild. Bitte warten…</string>
|
<string name="receiving_image">Empfange Bild. Bitte warten…</string>
|
||||||
<string name="preparing_image">Bereite Bild für die Übertragung vor. Bitte warten…</string>
|
<string name="preparing_image">Bereite Bild für die Übertragung vor</string>
|
||||||
<string name="action_clear_history">Unterhaltungsverlauf löschen</string>
|
<string name="action_clear_history">Verlauf löschen</string>
|
||||||
<string name="clear_conversation_history">Unterhaltungsverlauf löschen</string>
|
<string name="clear_conversation_history">Unterhaltungsverlauf löschen</string>
|
||||||
<string name="clear_histor_msg">Möchtest du alle Nachrichten in dieser Unterhaltung löschen?\n\n<b>Achtung:</b> Das beeinflust nicht Nachrichten die eventuell auf anderen Geräten gespeichert wurden.</string>
|
<string name="clear_histor_msg">Möchtest du alle Nachrichten in dieser Unterhaltung löschen?\n\n<b>Achtung:</b> Das beeinflust nicht Nachrichten die eventuell auf anderen Geräten gespeichert wurden.</string>
|
||||||
<string name="delete_messages">Nachrichten löschen</string>
|
<string name="delete_messages">Nachrichten löschen</string>
|
||||||
<string name="also_end_conversation">Diese Unterhaltung danach beenden</string>
|
<string name="also_end_conversation">Diese Unterhaltung danach beenden</string>
|
||||||
<string name="choose_presence">Choose presence to contact</string>
|
<string name="choose_presence">Choose presence to contact</string>
|
||||||
<string name="send_message_to_conference">Nachricht an Konferenz schicken</string>
|
<string name="send_message_to_conference">Nachricht an Konferenz schicken</string>
|
||||||
<string name="send_plain_text_message">Unverschlüsselte Nachricht schicken</string>
|
<string name="send_plain_text_message">Unverschlüsselt schreiben</string>
|
||||||
<string name="send_otr_message">Nachricht OTR-verschlüsselt verschicken</string>
|
<string name="send_otr_message">OTR-verschlüsselt schreiben</string>
|
||||||
<string name="send_pgp_message">Nachricht openPGP-verschlüsselt verschicken</string>
|
<string name="send_pgp_message">openPGP-verschlüsselt schreiben</string>
|
||||||
<string name="your_nick_has_been_changed">Dein Nickname wurde geändert</string>
|
<string name="your_nick_has_been_changed">Dein Nickname wurde geändert</string>
|
||||||
<string name="download_image">Bild herunter laden</string>
|
<string name="download_image">Bild herunter laden</string>
|
||||||
<string name="error_loading_image">Fehler beim laden des Bildes. (Datei wurde nicht gefunden)</string>
|
<string name="error_loading_image">Fehler beim laden des Bildes. (Datei wurde nicht gefunden)</string>
|
||||||
<string name="image_offered_for_download"><i>Bild Datei zum Download angeboten</i></string>
|
<string name="image_offered_for_download"><i>Bild Datei zum Download angeboten</i></string>
|
||||||
<string name="not_connected">Nicht verbunden</string>
|
<string name="not_connected">Nicht verbunden</string>
|
||||||
<string name="you_are_offline">Du musst online sein um % zu verschicken. Dein Account der mit dieser Unterhaltung verbunden ist aber gerade offline.</string>
|
<string name="you_are_offline">Du musst online sein um %s zu verschicken. Dein Account der mit dieser Unterhaltung verbunden ist aber gerade offline.</string>
|
||||||
<string name="you_are_offline_blank">Du kannst diese Aktion nicht ausführen so lange du offline bist.</string>
|
<string name="you_are_offline_blank">Du kannst diese Aktion nicht ausführen so lange du offline bist.</string>
|
||||||
<string name="files">Dateien</string>
|
<string name="files">Dateien</string>
|
||||||
<string name="otr_messages">OTR-verschlüsselte Nachrichten</string>
|
<string name="otr_messages">OTR-verschlüsselte Nachrichten</string>
|
||||||
|
@ -80,7 +80,52 @@
|
||||||
<string name="send_unencrypted">Unverschlüsselt verschicken</string>
|
<string name="send_unencrypted">Unverschlüsselt verschicken</string>
|
||||||
<string name="decryption_failed">Entschlüsselung fehlgeschlagen. Vielleicht hast du nicht den richtigen Private Key.</string>
|
<string name="decryption_failed">Entschlüsselung fehlgeschlagen. Vielleicht hast du nicht den richtigen Private Key.</string>
|
||||||
<string name="openkeychain_required">OpenKeychain</string>
|
<string name="openkeychain_required">OpenKeychain</string>
|
||||||
<string name="openkeychain_required_long">Conversations benutzt eine Third-party-app names <b>OpenKeychain</b> um Nachrichten zu ver- und entschlüsseln und um deine Schlüssel zu verwalten.\n\nOpenKeychain ist GPLv3 lizensiert und bei F-Droid oder Google Play zu bekommen.\n\n<small>(Bitte starte Conversations danach neu)</small></string>
|
<string name="openkeychain_required_long">Conversations benutzt eine Third-party-app names <b>OpenKeychain</b> um Nachrichten zu ver- und entschlüsseln und um deine Schlüssel zu verwalten.\n\nOpenKeychain ist GPLv3 lizenziert und bei F-Droid oder Google Play zu bekommen.\n\n<small>(Bitte starte Conversations danach neu)</small></string>
|
||||||
<string name="restart">Neustarten</string>
|
<string name="restart">Neustarten</string>
|
||||||
<string name="install">Installieren</string>
|
<string name="install">Installieren</string>
|
||||||
|
<string name="offering">angeboten…</string>
|
||||||
|
<string name="no_pgp_key">Kein openPGP Schlüssel gefunden</string>
|
||||||
|
<string name="contact_has_no_pgp_key">Conversations ist nicht in der Lage deine Nachrichten zu verschlüsseln weil dein Kontakt sein oder ihren Schlüssel nicht preis gibt.\n\n<small>Bitte sag deinem Kontakt er oder sie möge bitte openPGP einrichten.</small></string>
|
||||||
|
<string name="encrypted_message_received"><i>Verschlüsselte Nachricht erhalten. Drücke hier um sie anzuzeigen und zu entschlüsseln.</i></string>
|
||||||
|
<string name="encrypted_image_received"><i>Verschlüsseltes Bild erhalten. Drücke hier um es anzuzeigen und zu entschlüsseln.</i></string>
|
||||||
|
<string name="image_file"><i>Bild erhalten. Drücke hier um es anzuzeigen.</i></string>
|
||||||
|
<string name="otr_file_transfer">OTR-Verschlüsselung nicht verfügbar</string>
|
||||||
|
<string name="otr_file_transfer_msg">Es ist nicht möglich Datein mitels OTR zu verschlüsseln. Du kannst entweder openPGP wählen oder die Datei nicht verschlüsseln.</string>
|
||||||
|
<string name="use_pgp_encryption">openPGP verwenden</string>
|
||||||
|
<string name="pref_xmpp_resource">XMPP resource</string>
|
||||||
|
<string name="pref_xmpp_resource_summary">Der Name mit dem sich der Client selber identifiziert</string>
|
||||||
|
<string name="pref_accept_files">Dateiannahme</string>
|
||||||
|
<string name="pref_accept_files_summary">Datein die kleiner sind als … automatisch annehmen</string>
|
||||||
|
<string name="pref_notification_settings">Benachrichtigungseinstellung</string>
|
||||||
|
<string name="pref_notifications">Benachrichtigungen</string>
|
||||||
|
<string name="pref_notifications_summary">Benachrichtige mich wenn eine neu Nachricht ankommt</string>
|
||||||
|
<string name="pref_vibrate">Vibrieren</string>
|
||||||
|
<string name="pref_vibrate_summary">Vibriere wenn eine neue Nachricht ankommt</string>
|
||||||
|
<string name="pref_sound">Klingelton</string>
|
||||||
|
<string name="pref_sound_summary">Spiel Klingelton wenn eine Nachricht ankommt</string>
|
||||||
|
<string name="pref_conference_notifications">Konferenz Benachrichtigungen</string>
|
||||||
|
<string name="pref_conference_notifications_summary">Benachrichtige mich bei jeder Konferenznachricht und nicht nur wenn ich angesprochen werde.</string>
|
||||||
|
<string name="pref_notification_grace_period">Gnadenfrist</string>
|
||||||
|
<string name="pref_notification_grace_period_summary">Deaktiviere Benachrichtigungen für eine kurze Zeit nach erhalt einer Nachricht die von einem anderen Client von Dir kommt.</string>
|
||||||
|
<string name="pref_ui_options">Aussehen</string>
|
||||||
|
<string name="pref_use_phone_self_picture">Benutze Dein Kontaktbild</string>
|
||||||
|
<string name="pref_use_phone_sefl_picture_summary">Wenn du mehrere Accounts hast bist du eventuell nicht mehr in der Lage diese auseinander zu halten.</string>
|
||||||
|
<string name="pref_conference_name">Konferenznamen</string>
|
||||||
|
<string name="pref_conference_name_summary">Benutze das Thema der Konferenz als Name in der Überschicht</string>
|
||||||
|
<string name="pref_advanced_options">Erweiterte Optionen</string>
|
||||||
|
<string name="pref_never_send_crash">Sende niemals Absturzberichte</string>
|
||||||
|
<string name="pref_never_send_crash_summary">Wenn du Absturzberichte einschickst hilfst du Conversations stetig zu verbessern.</string>
|
||||||
|
<string name="openpgp_error">Fehler mit OpenKeychain</string>
|
||||||
|
<string name="error_decrypting_file">Fehler beim entschlüsseln der Datei</string>
|
||||||
|
<string name="error_copying_image_file">Fehler beim Kopieren des Bildes</string>
|
||||||
|
<string name="accept">Annehmen</string>
|
||||||
|
<string name="error">Ein unbekannter Fehler ist aufgetreten</string>
|
||||||
|
<string name="pref_grant_presence_updates">Online Status</string>
|
||||||
|
<string name="pref_grant_presence_updates_summary">Erlaube Kontakten die von Dir erstellt wurden deinen Status zu sehen und frage um Erlaubnis ihren zu sehen.</string>
|
||||||
|
<string name="subscriptions">Abonnements</string>
|
||||||
|
<string name="your_account">Dein Account</string>
|
||||||
|
<string name="keys">Schlüssel</string>
|
||||||
|
<string name="send_presence_updates">Sende Online Status</string>
|
||||||
|
<string name="receive_presence_updates">Empfange Online Status</string>
|
||||||
|
<string name="preemptively_grant">Preemptively grant subscription request</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -92,4 +92,32 @@
|
||||||
<string name="otr_file_transfer">Encriptación con OTR no disponible</string>
|
<string name="otr_file_transfer">Encriptación con OTR no disponible</string>
|
||||||
<string name="otr_file_transfer_msg">Desafortunadamente la encriptación con OTR no está disponible para transferencia de archivos. Puedes selecionar encriptación con openPGP o no usar encriptación.</string>
|
<string name="otr_file_transfer_msg">Desafortunadamente la encriptación con OTR no está disponible para transferencia de archivos. Puedes selecionar encriptación con openPGP o no usar encriptación.</string>
|
||||||
<string name="use_pgp_encryption">Usa encriptación con openPGP</string>
|
<string name="use_pgp_encryption">Usa encriptación con openPGP</string>
|
||||||
|
<string name="pref_xmpp_resource">Recurso</string>
|
||||||
|
<string name="pref_xmpp_resource_summary">El nombre que identifica el cliente que estás utilizando</string>
|
||||||
|
<string name="pref_accept_files">Aceptar archivos</string>
|
||||||
|
<string name="pref_accept_files_summary">Automáticamente aceptar archivos menores que…</string>
|
||||||
|
<string name="pref_notification_settings">Ajustes de notificación</string>
|
||||||
|
<string name="pref_notifications">Notificaciones</string>
|
||||||
|
<string name="pref_notifications_summary">Notifica cuando llega un nuevo mensaje</string>
|
||||||
|
<string name="pref_vibrate">Vibrar</string>
|
||||||
|
<string name="pref_vibrate_summary">Vibra cuando llega un nuevo mensaje</string>
|
||||||
|
<string name="pref_sound">Sonido</string>
|
||||||
|
<string name="pref_sound_summary">Reproduce tono con la notificación</string>
|
||||||
|
<string name="pref_conference_notifications">Notificaciones de conferencia</string>
|
||||||
|
<string name="pref_conference_notifications_summary">Siempre notifica cuando llega un mensaje de conferencia y no solo cuando llega un mensaje destacado</string>
|
||||||
|
<string name="pref_notification_grace_period">Notificaciones Carbons</string>
|
||||||
|
<string name="pref_notification_grace_period_summary">Deshabilita las notificaciones durante un corto periodo de tiempo después de recibir la copia del mensaje carbon</string>
|
||||||
|
<string name="pref_ui_options">Opciones de interfaz</string>
|
||||||
|
<string name="pref_use_phone_self_picture">Usar foto de contacto del teléfono</string>
|
||||||
|
<string name="pref_use_phone_sefl_picture_summary">Podrías no ser capaz de distinguir que cuenta está utlizando en una conversación</string>
|
||||||
|
<string name="pref_conference_name">Nombre de la conferencia</string>
|
||||||
|
<string name="pref_conference_name_summary">Usa el nombre de la sala para identificar Conferencias</string>
|
||||||
|
<string name="pref_advanced_options">Opciones avanzadas</string>
|
||||||
|
<string name="pref_never_send_crash">Nunca enviar informe de fallos</string>
|
||||||
|
<string name="pref_never_send_crash_summary">Enviando volcados de pilas ayudas al desarrollo de Conversations</string>
|
||||||
|
<string name="openpgp_error">OpenKeychain reportó un error</string>
|
||||||
|
<string name="error_decrypting_file">I/O Error desencriptando fichero</string>
|
||||||
|
<string name="error_copying_image_file">Error copiando archivo de imagen.</string>
|
||||||
|
<string name="accept">Aceptar</string>
|
||||||
|
<string name="error">Ha ocurrido un error</string>
|
||||||
</resources>
|
</resources>
|
|
@ -0,0 +1,22 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<resources>
|
||||||
|
<array name="resources">
|
||||||
|
<item>Mobile</item>
|
||||||
|
<item>Téléphone</item>
|
||||||
|
<item>Tablette</item>
|
||||||
|
<item>Conversations</item>
|
||||||
|
<item>Android</item>
|
||||||
|
</array>
|
||||||
|
<string-array name="filesizes">
|
||||||
|
<item>jamais</item>
|
||||||
|
<item>256 KB</item>
|
||||||
|
<item>512 KB</item>
|
||||||
|
<item>1 MB</item>
|
||||||
|
</string-array>
|
||||||
|
<string-array name="filesizes_values">
|
||||||
|
<item>0</item>
|
||||||
|
<item>262144</item>
|
||||||
|
<item>524288</item>
|
||||||
|
<item>1048576</item>
|
||||||
|
</string-array>
|
||||||
|
</resources>
|
|
@ -0,0 +1,86 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<resources>
|
||||||
|
|
||||||
|
<string name="app_name">Conversations</string>
|
||||||
|
<string name="action_settings">Paramètres</string>
|
||||||
|
<string name="action_add">Nouvelle conversation</string>
|
||||||
|
<string name="action_accounts">Gérer les comptes</string>
|
||||||
|
<string name="action_end_conversation">Terminer cette conversation</string>
|
||||||
|
<string name="action_contact_details">Détails du contact</string>
|
||||||
|
<string name="action_muc_details">Détails de la conférence</string>
|
||||||
|
<string name="action_secure">Conversation sécurisée</string>
|
||||||
|
<string name="action_add_account">Ajouter un compte</string>
|
||||||
|
<string name="title_activity_contacts">Contacts</string>
|
||||||
|
<string name="just_now">À l\'instant</string>
|
||||||
|
<string name="sending">envoi…</string>
|
||||||
|
<string name="announce_pgp">Renouveller les annonces PGP</string>
|
||||||
|
<string name="encrypted_message">Déchiffrement du message. Patientez…</string>
|
||||||
|
<string name="conference_details">Détails de la conférence</string>
|
||||||
|
<string name="nick_in_use">Cet identifiant est déjà utilisé.</string>
|
||||||
|
<string name="moderator">Modérateur</string>
|
||||||
|
<string name="participant">Participant</string>
|
||||||
|
<string name="visitor">Visiteur</string>
|
||||||
|
<string name="enter_new_name">Entrer un nouveau nom:</string>
|
||||||
|
<string name="remove_contact_text">Voulez-vous supprimer %s de votre liste? Les conversations associées à ce compte ne seront pas supprimées.</string>
|
||||||
|
<string name="untrusted_cert_hint">Le serveur %s utilise un certificat non certifié et peut-être auto-signé.</string>
|
||||||
|
<string name="account_info">Informations du serveur</string>
|
||||||
|
<string name="register_account">Créer un nouveau compte sur le serveur</string>
|
||||||
|
<string name="share_with">Partager avec</string>
|
||||||
|
<string name="ask_again"><u>Appuyez pour demander à nouveau</u></string>
|
||||||
|
<string name="show_otr_key">Empreinte OTR</string>
|
||||||
|
<string name="no_otr_fingerprint">Empreinte OTR non générée. Essayez de démarrer une conversation sécurisée.</string>
|
||||||
|
<string name="start_conversation">Démarrer une conversation</string>
|
||||||
|
<string name="invite_contacts">Inviter des contacts</string>
|
||||||
|
<string name="invite_contacts_to_existing">Inviter à une conférence</string>
|
||||||
|
<string name="new_conference">Créer une nouvelle conférence</string>
|
||||||
|
<string name="cancel">Annuler</string>
|
||||||
|
<string name="create_invite">Créer \u0026 invitation</string>
|
||||||
|
<string name="new_conference_explained">Voulez-vous créer une nouvelle conférence avec une adresse générée aléatoirement et inviter les contacts sélectionnés à la rejoindre?</string>
|
||||||
|
<string name="no_open_mucs">Conférences non existantes</string>
|
||||||
|
<string name="invitation_sent">Invitation envoyée</string>
|
||||||
|
<string name="account_offline">Compte hors-ligne</string>
|
||||||
|
<string name="cant_invite_while_offline">Vous devez être en ligne pour inviter des participants à une conférence.</string>
|
||||||
|
<string name="crash_report_title">Conversations s\'est arreté</string>
|
||||||
|
<string name="crash_report_message">En envoyant des logs vous aidez au développement de Conversations\n\n<b>Attention:</b> Votre compte XMPP sera utilisé pour envoyer les logs aux développeurs.</string>
|
||||||
|
<string name="send_now">Envoyer</string>
|
||||||
|
<string name="send_never">Ne plus me demander</string>
|
||||||
|
<string name="problem_connecting_to_account">Impossible de se connecter au compte</string>
|
||||||
|
<string name="problem_connecting_to_accounts">Impossible de se connecter aux comptes</string>
|
||||||
|
<string name="touch_to_fix">Appuyez pour gérer vos comptes</string>
|
||||||
|
<string name="attach_file">Lier un fichier</string>
|
||||||
|
<string name="not_in_roster">Le contact n\'est pas dans votre carnet d\'adresses. Voulez-vous l\'y ajouter?</string>
|
||||||
|
<string name="add_contact">Ajouter un contact</string>
|
||||||
|
<string name="send_failed">Echec de l\'envoi</string>
|
||||||
|
<string name="send_rejected">Rejeté</string>
|
||||||
|
<string name="receiving_image">Réception d\'une image. Patientez…</string>
|
||||||
|
<string name="preparing_image">Préparation de la transmission de l\'image. Patientez…</string>
|
||||||
|
<string name="action_clear_history">Vider l\'historique</string>
|
||||||
|
<string name="clear_conversation_history">Vider l\'historique de la conversation</string>
|
||||||
|
<string name="clear_histor_msg">Voulez-vous supprimer tous les messages de cette conversation?\n\n<b>Attention:</b> Les messages seront supprimés uniquement sur ce périphérique.</string>
|
||||||
|
<string name="delete_messages">Supprimer les messages</string>
|
||||||
|
<string name="also_end_conversation">Terminer plus tard cette conversation</string>
|
||||||
|
<string name="choose_presence">Choisir le status de présence</string>
|
||||||
|
<string name="send_message_to_conference">Envoyer un message à la conférence</string>
|
||||||
|
<string name="send_plain_text_message">Envoyer un message</string>
|
||||||
|
<string name="send_otr_message">Envoyer un message sécurisé par OTR</string>
|
||||||
|
<string name="send_pgp_message">Envoyer un message sécurisé par openPGP</string>
|
||||||
|
<string name="your_nick_has_been_changed">Votre identifiant a été changé</string>
|
||||||
|
<string name="download_image">Télecharger l\'image</string>
|
||||||
|
<string name="error_loading_image">Impossible de télécharger l\'image (Fichier non trouvé)</string>
|
||||||
|
<string name="image_offered_for_download"><i>Image proposée au téléchargement.</i></string>
|
||||||
|
<string name="not_connected">Non connecté</string>
|
||||||
|
<string name="you_are_offline">Vous devez être en ligne pour envoyer %s mais votre compte utilisé dans cette conversation est hors-ligne.</string>
|
||||||
|
<string name="you_are_offline_blank">Vous devez être en ligne pour réaliser cette action.</string>
|
||||||
|
<string name="files">Fichiers</string>
|
||||||
|
<string name="otr_messages">Message chiffrés par OTR</string>
|
||||||
|
<string name="manage_account">Gérer les comptes</string>
|
||||||
|
<string name="contact_offline">Votre correspondant est hors-ligne.</string>
|
||||||
|
<string name="contact_offline_otr">Envoyer un message chiffré via OTR à un correspondant hors-ligne n\'est malheureusement pas possible.\nVoulez-vous envoyer ce message sans chiffrement?</string>
|
||||||
|
<string name="contact_offline_file">Envoyer un fichier à un correspondant hors-ligne n\'est malheureusement pas possible.</string>
|
||||||
|
<string name="send_unencrypted">Envoyer en clair</string>
|
||||||
|
<string name="decryption_failed">Echec du déchiffrement. Merci de vérifier la clef privée utilisée.</string>
|
||||||
|
<string name="openkeychain_required">OpenKeychain</string>
|
||||||
|
<string name="openkeychain_required_long">Conversations requiert une application tierce nommée <b>OpenKeychain</b> pour chiffrer et déchiffrer les messages.\n\nOpenKeychain est sous licence GPLv3 et est disponible sur F-Droid et Google Play.\n\n<small>(Merci de redémarrer Conversations apres l\'installation du logiciel)</small></string>
|
||||||
|
<string name="restart">Redémarrer</string>
|
||||||
|
<string name="install">Installer</string>
|
||||||
|
</resources>
|
|
@ -0,0 +1,19 @@
|
||||||
|
<resources xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
|
|
||||||
|
<style name="sectionHeader" parent="android:Widget.Holo.Light.TextView">
|
||||||
|
<item name="android:drawableBottom">@drawable/section_header</item>
|
||||||
|
<item name="android:drawablePadding">4dp</item>
|
||||||
|
<item name="android:layout_marginTop">8dp</item>
|
||||||
|
<item name="android:textSize">14sp</item>
|
||||||
|
<item name="android:textAllCaps">true</item>
|
||||||
|
<item name="android:textColor">#5b5b5b</item>
|
||||||
|
<item name="android:textStyle">bold</item>
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<style name="Divider">
|
||||||
|
<item name="android:layout_width">match_parent</item>
|
||||||
|
<item name="android:layout_height">1.5dp</item>
|
||||||
|
<item name="android:background">#b7b7b7</item>
|
||||||
|
</style>
|
||||||
|
|
||||||
|
</resources>
|
|
@ -120,4 +120,12 @@
|
||||||
<string name="error_copying_image_file">Error copying image file.</string>
|
<string name="error_copying_image_file">Error copying image file.</string>
|
||||||
<string name="accept">Accept</string>
|
<string name="accept">Accept</string>
|
||||||
<string name="error">An error has occurred</string>
|
<string name="error">An error has occurred</string>
|
||||||
|
<string name="pref_grant_presence_updates">Grant presence updates</string>
|
||||||
|
<string name="pref_grant_presence_updates_summary">Preemptively grant and ask for presence subscription for contacts you created</string>
|
||||||
|
<string name="subscriptions">Subscriptions</string>
|
||||||
|
<string name="your_account">Your account</string>
|
||||||
|
<string name="keys">Keys</string>
|
||||||
|
<string name="send_presence_updates">Send presence updates</string>
|
||||||
|
<string name="receive_presence_updates">Receive presence updates</string>
|
||||||
|
<string name="ask_for_presence_updates">Ask for presence updates</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -4,8 +4,8 @@
|
||||||
android:title="General">
|
android:title="General">
|
||||||
<CheckBoxPreference
|
<CheckBoxPreference
|
||||||
android:key="grant_new_contacts"
|
android:key="grant_new_contacts"
|
||||||
android:title="Grant presence updates"
|
android:title="@string/pref_grant_presence_updates"
|
||||||
android:summary="Preemptively grant and ask for presence subscription for contacts you created"
|
android:summary="@string/pref_grant_presence_updates_summary"
|
||||||
android:defaultValue="true"
|
android:defaultValue="true"
|
||||||
/>
|
/>
|
||||||
<ListPreference
|
<ListPreference
|
||||||
|
|
|
@ -173,7 +173,7 @@ public class ContactDetailsActivity extends XmppActivity {
|
||||||
if (contact.getSubscriptionOption(Contact.Subscription.FROM)) {
|
if (contact.getSubscriptionOption(Contact.Subscription.FROM)) {
|
||||||
send.setChecked(true);
|
send.setChecked(true);
|
||||||
} else {
|
} else {
|
||||||
send.setText("Preemptively grant subscription request");
|
send.setText(R.string.preemptively_grant);
|
||||||
if (contact
|
if (contact
|
||||||
.getSubscriptionOption(Contact.Subscription.PREEMPTIVE_GRANT)) {
|
.getSubscriptionOption(Contact.Subscription.PREEMPTIVE_GRANT)) {
|
||||||
send.setChecked(true);
|
send.setChecked(true);
|
||||||
|
@ -184,7 +184,7 @@ public class ContactDetailsActivity extends XmppActivity {
|
||||||
if (contact.getSubscriptionOption(Contact.Subscription.TO)) {
|
if (contact.getSubscriptionOption(Contact.Subscription.TO)) {
|
||||||
receive.setChecked(true);
|
receive.setChecked(true);
|
||||||
} else {
|
} else {
|
||||||
receive.setText("Ask for presence updates");
|
receive.setText(R.string.ask_for_presence_updates);
|
||||||
askAgain.setVisibility(View.VISIBLE);
|
askAgain.setVisibility(View.VISIBLE);
|
||||||
askAgain.setOnClickListener(new OnClickListener() {
|
askAgain.setOnClickListener(new OnClickListener() {
|
||||||
|
|
||||||
|
|
|
@ -23,8 +23,12 @@ public class TagWriter {
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
AbstractStanza output = writeQueue.take();
|
AbstractStanza output = writeQueue.take();
|
||||||
outputStream.write(output.toString());
|
if (outputStream==null) {
|
||||||
outputStream.flush();
|
shouldStop = true;
|
||||||
|
} else {
|
||||||
|
outputStream.write(output.toString());
|
||||||
|
outputStream.flush();
|
||||||
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
shouldStop = true;
|
shouldStop = true;
|
||||||
} catch (InterruptedException e) {
|
} catch (InterruptedException e) {
|
||||||
|
|
|
@ -135,7 +135,7 @@ public class JingleConnection {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void deliverPacket(JinglePacket packet) {
|
public void deliverPacket(JinglePacket packet) {
|
||||||
|
boolean returnResult = true;
|
||||||
if (packet.isAction("session-terminate")) {
|
if (packet.isAction("session-terminate")) {
|
||||||
Reason reason = packet.getReason();
|
Reason reason = packet.getReason();
|
||||||
if (reason!=null) {
|
if (reason!=null) {
|
||||||
|
@ -143,26 +143,37 @@ public class JingleConnection {
|
||||||
this.receiveCancel();
|
this.receiveCancel();
|
||||||
} else if (reason.hasChild("success")) {
|
} else if (reason.hasChild("success")) {
|
||||||
this.receiveSuccess();
|
this.receiveSuccess();
|
||||||
|
} else {
|
||||||
|
this.receiveCancel();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
Log.d("xmppService","remote terminated for no reason");
|
|
||||||
this.receiveCancel();
|
this.receiveCancel();
|
||||||
}
|
}
|
||||||
} else if (packet.isAction("session-accept")) {
|
} else if (packet.isAction("session-accept")) {
|
||||||
receiveAccept(packet);
|
returnResult = receiveAccept(packet);
|
||||||
} else if (packet.isAction("transport-info")) {
|
} else if (packet.isAction("transport-info")) {
|
||||||
receiveTransportInfo(packet);
|
returnResult = receiveTransportInfo(packet);
|
||||||
} else if (packet.isAction("transport-replace")) {
|
} else if (packet.isAction("transport-replace")) {
|
||||||
if (packet.getJingleContent().hasIbbTransport()) {
|
if (packet.getJingleContent().hasIbbTransport()) {
|
||||||
this.receiveFallbackToIbb(packet);
|
returnResult = this.receiveFallbackToIbb(packet);
|
||||||
} else {
|
} else {
|
||||||
|
returnResult = false;
|
||||||
Log.d("xmppService","trying to fallback to something unknown"+packet.toString());
|
Log.d("xmppService","trying to fallback to something unknown"+packet.toString());
|
||||||
}
|
}
|
||||||
} else if (packet.isAction("transport-accept")) {
|
} else if (packet.isAction("transport-accept")) {
|
||||||
this.receiveTransportAccept(packet);
|
returnResult = this.receiveTransportAccept(packet);
|
||||||
} else {
|
} else {
|
||||||
Log.d("xmppService","packet arrived in connection. action was "+packet.getAction());
|
Log.d("xmppService","packet arrived in connection. action was "+packet.getAction());
|
||||||
|
returnResult = false;
|
||||||
}
|
}
|
||||||
|
IqPacket response;
|
||||||
|
if (returnResult) {
|
||||||
|
response = packet.generateRespone(IqPacket.TYPE_RESULT);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
response = packet.generateRespone(IqPacket.TYPE_ERROR);
|
||||||
|
}
|
||||||
|
account.getXmppConnection().sendIqPacket(response, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void init(Message message) {
|
public void init(Message message) {
|
||||||
|
@ -356,17 +367,16 @@ public class JingleConnection {
|
||||||
account.getXmppConnection().sendIqPacket(packet,responseListener);
|
account.getXmppConnection().sendIqPacket(packet,responseListener);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void receiveAccept(JinglePacket packet) {
|
private boolean receiveAccept(JinglePacket packet) {
|
||||||
Content content = packet.getJingleContent();
|
Content content = packet.getJingleContent();
|
||||||
mergeCandidates(JingleCandidate.parse(content.socks5transport().getChildren()));
|
mergeCandidates(JingleCandidate.parse(content.socks5transport().getChildren()));
|
||||||
this.status = STATUS_ACCEPTED;
|
this.status = STATUS_ACCEPTED;
|
||||||
mXmppConnectionService.markMessage(message, Message.STATUS_UNSEND);
|
mXmppConnectionService.markMessage(message, Message.STATUS_UNSEND);
|
||||||
this.connectNextCandidate();
|
this.connectNextCandidate();
|
||||||
IqPacket response = packet.generateRespone(IqPacket.TYPE_RESULT);
|
return true;
|
||||||
account.getXmppConnection().sendIqPacket(response, null);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void receiveTransportInfo(JinglePacket packet) {
|
private boolean receiveTransportInfo(JinglePacket packet) {
|
||||||
Content content = packet.getJingleContent();
|
Content content = packet.getJingleContent();
|
||||||
if (content.hasSocks5Transport()) {
|
if (content.hasSocks5Transport()) {
|
||||||
if (content.socks5transport().hasChild("activated")) {
|
if (content.socks5transport().hasChild("activated")) {
|
||||||
|
@ -383,14 +393,17 @@ public class JingleConnection {
|
||||||
this.sendCancel();
|
this.sendCancel();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (content.socks5transport().hasChild("activated")) {
|
return true;
|
||||||
|
} else if (content.socks5transport().hasChild("proxy-error")) {
|
||||||
onProxyActivated.failed();
|
onProxyActivated.failed();
|
||||||
|
return true;
|
||||||
} else if (content.socks5transport().hasChild("candidate-error")) {
|
} else if (content.socks5transport().hasChild("candidate-error")) {
|
||||||
Log.d("xmppService","received candidate error");
|
Log.d("xmppService","received candidate error");
|
||||||
this.receivedCandidate = true;
|
this.receivedCandidate = true;
|
||||||
if ((status == STATUS_ACCEPTED)&&(this.sentCandidate)) {
|
if ((status == STATUS_ACCEPTED)&&(this.sentCandidate)) {
|
||||||
this.connect();
|
this.connect();
|
||||||
}
|
}
|
||||||
|
return true;
|
||||||
} else if (content.socks5transport().hasChild("candidate-used")){
|
} else if (content.socks5transport().hasChild("candidate-used")){
|
||||||
String cid = content.socks5transport().findChild("candidate-used").getAttribute("cid");
|
String cid = content.socks5transport().findChild("candidate-used").getAttribute("cid");
|
||||||
if (cid!=null) {
|
if (cid!=null) {
|
||||||
|
@ -403,16 +416,16 @@ public class JingleConnection {
|
||||||
} else {
|
} else {
|
||||||
Log.d("xmppService","ignoring because file is already in transmission or we havent sent our candidate yet");
|
Log.d("xmppService","ignoring because file is already in transmission or we havent sent our candidate yet");
|
||||||
}
|
}
|
||||||
|
return true;
|
||||||
} else {
|
} else {
|
||||||
Log.d("xmppService","couldn't read used candidate");
|
return false;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
Log.d("xmppService","empty transport");
|
return false;
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
IqPacket response = packet.generateRespone(IqPacket.TYPE_RESULT);
|
|
||||||
account.getXmppConnection().sendIqPacket(response, null);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void connect() {
|
private void connect() {
|
||||||
|
@ -502,6 +515,7 @@ public class JingleConnection {
|
||||||
this.disconnect();
|
this.disconnect();
|
||||||
this.status = STATUS_FINISHED;
|
this.status = STATUS_FINISHED;
|
||||||
this.mXmppConnectionService.markMessage(this.message, Message.STATUS_RECIEVED);
|
this.mXmppConnectionService.markMessage(this.message, Message.STATUS_RECIEVED);
|
||||||
|
this.mJingleConnectionManager.finishConnection(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void sendFallbackToIbb() {
|
private void sendFallbackToIbb() {
|
||||||
|
@ -514,7 +528,7 @@ public class JingleConnection {
|
||||||
this.sendJinglePacket(packet);
|
this.sendJinglePacket(packet);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void receiveFallbackToIbb(JinglePacket packet) {
|
private boolean receiveFallbackToIbb(JinglePacket packet) {
|
||||||
String receivedBlockSize = packet.getJingleContent().ibbTransport().getAttribute("block-size");
|
String receivedBlockSize = packet.getJingleContent().ibbTransport().getAttribute("block-size");
|
||||||
if (receivedBlockSize!=null) {
|
if (receivedBlockSize!=null) {
|
||||||
int bs = Integer.parseInt(receivedBlockSize);
|
int bs = Integer.parseInt(receivedBlockSize);
|
||||||
|
@ -531,9 +545,10 @@ public class JingleConnection {
|
||||||
content.ibbTransport().setAttribute("block-size", ""+this.ibbBlockSize);
|
content.ibbTransport().setAttribute("block-size", ""+this.ibbBlockSize);
|
||||||
answer.setContent(content);
|
answer.setContent(content);
|
||||||
this.sendJinglePacket(answer);
|
this.sendJinglePacket(answer);
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void receiveTransportAccept(JinglePacket packet) {
|
private boolean receiveTransportAccept(JinglePacket packet) {
|
||||||
if (packet.getJingleContent().hasIbbTransport()) {
|
if (packet.getJingleContent().hasIbbTransport()) {
|
||||||
String receivedBlockSize = packet.getJingleContent().ibbTransport().getAttribute("block-size");
|
String receivedBlockSize = packet.getJingleContent().ibbTransport().getAttribute("block-size");
|
||||||
if (receivedBlockSize!=null) {
|
if (receivedBlockSize!=null) {
|
||||||
|
@ -555,8 +570,9 @@ public class JingleConnection {
|
||||||
JingleConnection.this.transport.send(file, onFileTransmitted);
|
JingleConnection.this.transport.send(file, onFileTransmitted);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
return true;
|
||||||
} else {
|
} else {
|
||||||
Log.d("xmppService","invalid transport accept");
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -564,12 +580,14 @@ public class JingleConnection {
|
||||||
this.status = STATUS_FINISHED;
|
this.status = STATUS_FINISHED;
|
||||||
this.mXmppConnectionService.markMessage(this.message, Message.STATUS_SEND);
|
this.mXmppConnectionService.markMessage(this.message, Message.STATUS_SEND);
|
||||||
this.disconnect();
|
this.disconnect();
|
||||||
|
this.mJingleConnectionManager.finishConnection(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void receiveCancel() {
|
private void receiveCancel() {
|
||||||
this.disconnect();
|
this.disconnect();
|
||||||
this.status = STATUS_CANCELED;
|
this.status = STATUS_CANCELED;
|
||||||
this.mXmppConnectionService.markMessage(this.message, Message.STATUS_SEND_REJECTED);
|
this.mXmppConnectionService.markMessage(this.message, Message.STATUS_SEND_REJECTED);
|
||||||
|
this.mJingleConnectionManager.finishConnection(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void sendCancel() {
|
private void sendCancel() {
|
||||||
|
|
|
@ -51,16 +51,20 @@ public class JingleConnectionManager {
|
||||||
public JingleConnection createNewConnection(Message message) {
|
public JingleConnection createNewConnection(Message message) {
|
||||||
JingleConnection connection = new JingleConnection(this);
|
JingleConnection connection = new JingleConnection(this);
|
||||||
connection.init(message);
|
connection.init(message);
|
||||||
connections.add(connection);
|
this.connections.add(connection);
|
||||||
return connection;
|
return connection;
|
||||||
}
|
}
|
||||||
|
|
||||||
public JingleConnection createNewConnection(JinglePacket packet) {
|
public JingleConnection createNewConnection(JinglePacket packet) {
|
||||||
JingleConnection connection = new JingleConnection(this);
|
JingleConnection connection = new JingleConnection(this);
|
||||||
connections.add(connection);
|
this.connections.add(connection);
|
||||||
return connection;
|
return connection;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void finishConnection(JingleConnection connection) {
|
||||||
|
this.connections.remove(connection);
|
||||||
|
}
|
||||||
|
|
||||||
public XmppConnectionService getXmppConnectionService() {
|
public XmppConnectionService getXmppConnectionService() {
|
||||||
return this.xmppConnectionService;
|
return this.xmppConnectionService;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue