From b10a39c17000d6287090ac938d4c1abe9e5cdd2b Mon Sep 17 00:00:00 2001 From: Gautier Pelloux-Prayer Date: Tue, 15 Mar 2016 14:09:33 +0100 Subject: [PATCH 01/53] i18n: update translations --- po/ar.po | 336 +++++++++++------------ po/cs.po | 332 ++++++++++++----------- po/de.po | 342 +++++++++++------------ po/es.po | 332 ++++++++++++----------- po/fi.po | 336 +++++++++++------------ po/fr.po | 334 +++++++++++------------ po/he.po | 332 ++++++++++++----------- po/hu.po | 332 ++++++++++++----------- po/it.po | 332 ++++++++++++----------- po/ja.po | 332 ++++++++++++----------- po/lt.po | 356 ++++++++++++------------ po/nb_NO.po | 332 ++++++++++++----------- po/nl.po | 332 ++++++++++++----------- po/pl.po | 338 +++++++++++------------ po/pt_BR.po | 338 +++++++++++------------ po/ru.po | 336 +++++++++++------------ po/sr.po | 332 ++++++++++++----------- po/sv.po | 763 ++++++++++++++++++++++++++-------------------------- po/tr.po | 398 +++++++++++++-------------- po/zh_CN.po | 338 +++++++++++------------ po/zh_TW.po | 332 ++++++++++++----------- 21 files changed, 3810 insertions(+), 3725 deletions(-) diff --git a/po/ar.po b/po/ar.po index 01b9b3b3c..285a75008 100644 --- a/po/ar.po +++ b/po/ar.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:56+0000\n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" "Last-Translator: Belledonne Communications \n" "Language-Team: Arabic (http://www.transifex.com/belledonne-communications/linphone-gtk/language/ar/)\n" "MIME-Version: 1.0\n" @@ -34,7 +34,7 @@ msgstr "أرسل رسالة إلى %s" msgid "Add %s to your contact list" msgstr "إضافة %s إلى قائمة جهات اتصالك" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "المكالمات السابقة" @@ -114,7 +114,7 @@ msgstr "يجري الإرسال...‏" msgid "Message not sent" msgstr "لم تُرسَل الرسالة" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "نسخ" @@ -160,7 +160,7 @@ msgstr "ابدأ مرشد الصوت" msgid "Run self test and exit 0 if succeed" msgstr "شغِّل الاختبار الذاتي ثم اخرِجْ 0 إذا نجح" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" @@ -168,80 +168,80 @@ msgid "" "If you answer no, this person will be temporarily blacklisted." msgstr "يود %s إضافتك إلى جهات اتصاله.\nهل تريد إضافته إلى جهات اتصالك والسماح له برؤية حالة حضورك ؟\nإن كان الجواب بالرفض، سوف يجري حظر هذا الشخص مؤقتا." -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" msgstr "ادخل كلمة السر لـ %s\n في نطاق %s:" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "خطأ في المكالمة" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "إنتهت المكالمة" -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "مكالمة واردة" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "أجِبْ" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "ارفضْ" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "المكالمة متوقفة" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "بواسطة %s" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" msgstr "يود %s تشغيل الفيديو. هل تقبل ذلك ؟" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "وصلة إلى الموقع وِبْ" -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "لِنْفُونْ" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" msgstr "الهاتف المرئي عبر الإنترنت" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" msgstr "%s (افتراضي)" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" msgstr "التحويل إلى %s" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." msgstr "لا وجود للوحة الصوت على هذا الحاسوب.\nلن تتمكن من تلقي أو إجراء أي مكالمة." -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "هاتف SIP المرئي الحر" -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "أهلا\n" @@ -255,31 +255,31 @@ msgstr "أضف إلى دفتر العناوين" msgid "Search in %s directory" msgstr "ابحث في دليل %s" -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "جهة اتصال sip غير صالحة !" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "إضافة جهة الاتصال جديدة" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "حرر جهة الاتصال '%s'" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "احذف جهة الاتصال '%s'" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "احذف تاريخ دردشات '%s'" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" msgstr "اضف جهة اتصال انطلاقا من الدليل %s" @@ -308,7 +308,7 @@ msgstr "الإعدادات" msgid "Enabled" msgstr "مفعَّل" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "غير مفعَّل" @@ -753,7 +753,7 @@ msgstr "لنُشغِّل لِنْفُونْ الآن" msgid "Audio Assistant" msgstr "مرشد الصوت" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "مرشد الصوت" @@ -967,15 +967,15 @@ msgstr "تقييم جودة المكالمة" msgid "LDAP Settings" msgstr "إعدادات LDAP" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" msgstr "عنوان الخادم :" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" msgstr "طريقة التحقق من الهوية :" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "اسم المستخدم :" @@ -1141,58 +1141,66 @@ msgid "Show keypad" msgstr "إظهار لوحة الأرقام" #: ../gtk/main.ui.h:8 +msgid "Import contacts from vCards" +msgstr "" + +#: ../gtk/main.ui.h:9 +msgid "Export contacts as vCards" +msgstr "" + +#: ../gtk/main.ui.h:10 msgid "_Help" msgstr "ال_مساعدة" -#: ../gtk/main.ui.h:9 +#: ../gtk/main.ui.h:11 msgid "Show debug window" msgstr "أظهِر نافذة التنقيح" -#: ../gtk/main.ui.h:10 +#: ../gtk/main.ui.h:12 msgid "_Homepage" msgstr "موق_ع الوِبْ" -#: ../gtk/main.ui.h:11 +#: ../gtk/main.ui.h:13 msgid "Check _Updates" msgstr "تحقق من التح_ديثات" -#: ../gtk/main.ui.h:12 +#: ../gtk/main.ui.h:14 msgid "Account assistant" msgstr "مرشد الحساب" -#: ../gtk/main.ui.h:14 +#: ../gtk/main.ui.h:16 msgid "SIP address or phone number:" msgstr "عنوان SIP أو رقم الهاتف :" -#: ../gtk/main.ui.h:15 +#: ../gtk/main.ui.h:17 msgid "Initiate a new call" msgstr "ابدأ مكالمة جديدة" -#: ../gtk/main.ui.h:16 +#: ../gtk/main.ui.h:18 msgid "Contacts" msgstr "جهات الاتصال" -#: ../gtk/main.ui.h:17 +#: ../gtk/main.ui.h:19 msgid "Search" msgstr "بحث" -#: ../gtk/main.ui.h:18 +#: ../gtk/main.ui.h:20 msgid "Add contacts from directory" msgstr "إضافة جهات الاتصال من الدليل" -#: ../gtk/main.ui.h:19 +#: ../gtk/main.ui.h:21 msgid "Add contact" msgstr "إضافة جهة الاتصال" -#: ../gtk/main.ui.h:20 +#: ../gtk/main.ui.h:22 msgid "Clear call history" msgstr "محو تاريخ المكالمات" -#: ../gtk/main.ui.h:22 +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "هويتي الحالية :" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" msgstr "الإجابة التلقائية مُفعَّلة" @@ -1249,320 +1257,316 @@ msgid "SIP (TLS)" msgstr "SIP (TLS)" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "افتراضي" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "صبيب الإطارات مرتفع" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "مخصص" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "الإعدادات" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" msgstr "هذه الفقرة تحدد عنوانك SIP إن كنت لا تستخدم حساب SIP" -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" msgstr "اسمك المعروض (مثلا : زيد عمرو) :" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "اسم المستخدم :" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" msgstr "عنوانك SIP :" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" msgstr "الهوية الافتراضية" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" msgstr "المرشد" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "إضافة" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "حرر" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "أزل" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" msgstr "حسابات الوكيل" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" msgstr "احذف جميع كلمات السر" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "الأمان" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" msgstr "الإجابة تلقائيا فور تلقي المكالمة" -#: ../gtk/parameters.ui.h:31 +#: ../gtk/parameters.ui.h:28 msgid "Delay before answering (ms)" msgstr "التأخير قبل الإجابة (ميلي ث,)" -#: ../gtk/parameters.ui.h:32 +#: ../gtk/parameters.ui.h:29 msgid "Auto-answer" msgstr "الإجابة تلقائيا" -#: ../gtk/parameters.ui.h:33 +#: ../gtk/parameters.ui.h:30 msgid "Manage SIP Accounts" msgstr "إدارة حسابات SIP" -#: ../gtk/parameters.ui.h:34 +#: ../gtk/parameters.ui.h:31 msgid "Ring sound:" msgstr "صوت الجرس :" -#: ../gtk/parameters.ui.h:35 +#: ../gtk/parameters.ui.h:32 msgid "ALSA special device (optional):" msgstr "عتاد ALSA الخصوصي (اختياري) :" -#: ../gtk/parameters.ui.h:36 +#: ../gtk/parameters.ui.h:33 msgid "Capture device:" msgstr "جهاز الالتقاط :" -#: ../gtk/parameters.ui.h:37 +#: ../gtk/parameters.ui.h:34 msgid "Ring device:" msgstr "جهاز الرنين :" -#: ../gtk/parameters.ui.h:38 +#: ../gtk/parameters.ui.h:35 msgid "Playback device:" msgstr "جهاز السمع :" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" msgstr "فعِّل إزالة الصدى" -#: ../gtk/parameters.ui.h:40 +#: ../gtk/parameters.ui.h:37 msgid "Audio" msgstr "الصوت" -#: ../gtk/parameters.ui.h:41 +#: ../gtk/parameters.ui.h:38 msgid "Video input device:" msgstr "جهاز إدخال الفيديو :" -#: ../gtk/parameters.ui.h:42 +#: ../gtk/parameters.ui.h:39 msgid "Preferred video resolution:" msgstr "المقدار المُراد لدقة الفيديو :" -#: ../gtk/parameters.ui.h:43 +#: ../gtk/parameters.ui.h:40 msgid "Video output method:" msgstr "طريقة إخراج الفيديو :" -#: ../gtk/parameters.ui.h:44 +#: ../gtk/parameters.ui.h:41 msgid "Show camera preview" msgstr "اظهر معاينة الكاميرا" -#: ../gtk/parameters.ui.h:45 +#: ../gtk/parameters.ui.h:42 msgid "Video preset:" msgstr "الفيديو المُسبَق :" -#: ../gtk/parameters.ui.h:46 +#: ../gtk/parameters.ui.h:43 msgid "Preferred video framerate:" msgstr "المقدار المُراد لمعدل إطارات الفيديو :" -#: ../gtk/parameters.ui.h:47 +#: ../gtk/parameters.ui.h:44 msgid "0 stands for \"unlimited\"" msgstr "حدِّد 0 لعدم وضع أي حد" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "الفيديو" -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" msgstr "حد سرعة الرفع بالكيلوبِتْ/الثانية :" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" msgstr "حد سرعة التنزيل بالكيلوبِتْ/الثانية :" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" msgstr "فعِّل التحكم المتكيف مع الصبيب" -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." msgstr "التحكم المتكيف مع الصبيب هو تقنية لملائمة جودة الصوت والصورة بناءً على سعة قناة الاتصال المتاحة خلال المكالمة." -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "إدارة سعة القناة" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" msgstr "إعدادات الوسائط المتعددة" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" msgstr "حدِّد Maximum Transmission Unit :" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" msgstr "أرسِل الأرقام الهاتفية على هيئة SIP INFO" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "السماح باستخدام IPv6" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "النقل" -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "منفذ SIP/UDP" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" msgstr "عشوائي" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "منفذ SIP/TCP" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" msgstr "صوت RTP/UDP :" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "ثابت" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" msgstr "فيديو RTP/UDP :" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "النفق" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" msgstr "حقول DSCP" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" msgstr "بروتوكول الشبكة والمنافذ" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" msgstr "الاتصال مباشر بالإنترنت" -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" msgstr "وراء جدار ناري (حدِّد عنوان IP البوابة)" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "وراء جدار ناري (استخدم STUN)" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" msgstr "وراء جدار ناري (استخدم ICE)" -#: ../gtk/parameters.ui.h:73 +#: ../gtk/parameters.ui.h:70 msgid "Behind NAT / Firewall (use uPnP)" msgstr "وراء جدار ناري (استخدم uPnP)" -#: ../gtk/parameters.ui.h:74 +#: ../gtk/parameters.ui.h:71 msgid "Public IP address:" msgstr "عنوان IP العمومي :" -#: ../gtk/parameters.ui.h:75 +#: ../gtk/parameters.ui.h:72 msgid "Stun server:" msgstr "خادم STUN :" -#: ../gtk/parameters.ui.h:76 +#: ../gtk/parameters.ui.h:73 msgid "NAT and Firewall" msgstr "إعدادات حول الجدار الناري" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "نوع وسيط التعمية" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" -msgstr "" +msgstr "‫استخدم Lime لرسائل المحادثات الصادرة‬" -#: ../gtk/parameters.ui.h:79 +#: ../gtk/parameters.ui.h:76 msgid "Media encryption is mandatory" msgstr "وسيط التعمية إجباري" -#: ../gtk/parameters.ui.h:80 -msgid "Encryption" +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" msgstr "" -#: ../gtk/parameters.ui.h:81 +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" +msgstr "" + +#: ../gtk/parameters.ui.h:79 +msgid "Encryption" +msgstr "التعمية" + +#: ../gtk/parameters.ui.h:80 msgid "Network settings" msgstr "إعدادات الشبكة" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" msgstr "فعِّل" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "إلغاء التفعيل" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" msgstr "مرمازات الصوت" -#: ../gtk/parameters.ui.h:85 +#: ../gtk/parameters.ui.h:84 msgid "Video codecs" msgstr "مرمازات الفيديو" -#: ../gtk/parameters.ui.h:86 +#: ../gtk/parameters.ui.h:85 msgid "Codecs" msgstr "المراميز" -#: ../gtk/parameters.ui.h:87 +#: ../gtk/parameters.ui.h:86 msgid "Language" msgstr "اللغة" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "أظهر الإعدادات المتقدمة" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "المستوى" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" msgstr "واجهة المستخدم" -#: ../gtk/parameters.ui.h:94 +#: ../gtk/parameters.ui.h:93 msgid "LDAP Account setup" msgstr "تهيئة LDAP" -#: ../gtk/parameters.ui.h:95 +#: ../gtk/parameters.ui.h:94 msgid "LDAP" msgstr "LDAP" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "أغلق" @@ -1800,52 +1804,52 @@ msgstr "تهيئة وكيل http (اختياري)" msgid "Please wait" msgstr "يُرجى الانتظار" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "جاهز" -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" msgstr "تجري التهيئة" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" msgstr "يتصل ب" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" msgstr "لم يتمكن من الاتصال" -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" msgstr "آسف، وصل عدد المكالمات الآنية إلى حده الأقصى" -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "يتصل بك" -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." msgstr "ويطلب ردا تلقائيا." -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." msgstr "يجري تعديل إعدادات المكالمة..." -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "متصل." -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "أُلغيت المكالمة" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" msgstr "لم يتمكن من توقيف المكالمة مؤقتا" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." msgstr "وضع المكالمة قيد الانتظار..." @@ -1853,59 +1857,59 @@ msgstr "وضع المكالمة قيد الانتظار..." msgid "Stun lookup in progress..." msgstr "يجري بحث STUN..." -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." msgstr "يجري جلب مرشَّحي ICE المحلين..." -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "على الخط" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "مشغول" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "سأعود" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "غائب" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" msgstr "على الهاتف" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" msgstr "أمام مائدة الطعام" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "لا تزعجني" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "ذهبتُ" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" msgstr "أستخدم خدمة أخرى للتراسل الفوري" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" msgstr "غير متصل" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "قيد الانتظار" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "في عطلة" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "حالة مجهولة" @@ -1929,12 +1933,12 @@ msgstr "يجري البحث عن وجهة رقم الهاتف..." msgid "Could not resolve this number." msgstr "لم يتمكن من إيجاد هذا الرقم." -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "تعذر الولوج بالهوية %s" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." msgstr "‫يجري إنعاش في %s...‬" @@ -2043,16 +2047,16 @@ msgstr "خدمة غير متاحة، تجري الإعادة" msgid "Authentication token is %s" msgstr "شارة التحقق من الهوية هي %s" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." msgstr "‫لم تُعدَّل معاملات المكالمات : %s.‬" -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." msgstr "عُدِّلت معاملات المكالمات بنجاج." -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." diff --git a/po/cs.po b/po/cs.po index 6287c69a5..419c95c64 100644 --- a/po/cs.po +++ b/po/cs.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:56+0000\n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" "Last-Translator: Belledonne Communications \n" "Language-Team: Czech (http://www.transifex.com/belledonne-communications/linphone-gtk/language/cs/)\n" "MIME-Version: 1.0\n" @@ -34,7 +34,7 @@ msgstr "Poslat text komu: %s" msgid "Add %s to your contact list" msgstr "" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "Nedávné hovory" @@ -108,7 +108,7 @@ msgstr "" msgid "Message not sent" msgstr "" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "" @@ -154,7 +154,7 @@ msgstr "" msgid "Run self test and exit 0 if succeed" msgstr "" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" @@ -162,80 +162,80 @@ msgid "" "If you answer no, this person will be temporarily blacklisted." msgstr "" -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" msgstr "" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "Chyba hovoru" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "Hovor ukončen" -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "Příchozí hovor" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "Odpovědět" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "Odmítnout" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "Hovor odložen" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "kým: %s" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" msgstr "%s navrhuje začít videohovor. Přijímáte?" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "Odkaz na webovou stránku" -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "Linphone" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" msgstr "" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" msgstr "%s (Výchozí)" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" msgstr "Byly jsme přepojeni na %s" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." msgstr "Na tomto počítači nebyla objevena žádná zvuková karta.\nNebudete moci vytáčet a přijímat a zvukové hovory." -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "Volný SIP videofon" -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "" @@ -249,31 +249,31 @@ msgstr "Přidat do adresáře" msgid "Search in %s directory" msgstr "Hledat v adresáři %s" -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "Neplatný sipový kontakt!" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "Upravit kontakt „%s“" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "Odstranit kontakt „%s“" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "Odstranit historii diskuze u kontaktu „%s“" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" msgstr "Přidat nový kontakt z adresáře %s" @@ -302,7 +302,7 @@ msgstr "Parametry" msgid "Enabled" msgstr "Povoleno" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "Zakázáno" @@ -744,7 +744,7 @@ msgstr "" msgid "Audio Assistant" msgstr "" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "" @@ -958,15 +958,15 @@ msgstr "Hodnocení kvality hovoru" msgid "LDAP Settings" msgstr "" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" msgstr "" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" msgstr "" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "Uživatelské jméno:" @@ -1132,58 +1132,66 @@ msgid "Show keypad" msgstr "" #: ../gtk/main.ui.h:8 +msgid "Import contacts from vCards" +msgstr "" + +#: ../gtk/main.ui.h:9 +msgid "Export contacts as vCards" +msgstr "" + +#: ../gtk/main.ui.h:10 msgid "_Help" msgstr "Nápo_věda" -#: ../gtk/main.ui.h:9 +#: ../gtk/main.ui.h:11 msgid "Show debug window" msgstr "Zobrazit ladicí okno" -#: ../gtk/main.ui.h:10 +#: ../gtk/main.ui.h:12 msgid "_Homepage" msgstr "_Domovská stránka" -#: ../gtk/main.ui.h:11 +#: ../gtk/main.ui.h:13 msgid "Check _Updates" msgstr "Vyhledat akt_ualizace" -#: ../gtk/main.ui.h:12 +#: ../gtk/main.ui.h:14 msgid "Account assistant" msgstr "Průvodce účtem" -#: ../gtk/main.ui.h:14 +#: ../gtk/main.ui.h:16 msgid "SIP address or phone number:" msgstr "SIP adresa nebo telefonní číslo:" -#: ../gtk/main.ui.h:15 +#: ../gtk/main.ui.h:17 msgid "Initiate a new call" msgstr "Zahájit nový hovor" -#: ../gtk/main.ui.h:16 +#: ../gtk/main.ui.h:18 msgid "Contacts" msgstr "Kontakty" -#: ../gtk/main.ui.h:17 +#: ../gtk/main.ui.h:19 msgid "Search" msgstr "Hledat" -#: ../gtk/main.ui.h:18 +#: ../gtk/main.ui.h:20 msgid "Add contacts from directory" msgstr "Přidat kontakty z adresáře" -#: ../gtk/main.ui.h:19 +#: ../gtk/main.ui.h:21 msgid "Add contact" msgstr "Přidat kontakt" -#: ../gtk/main.ui.h:20 +#: ../gtk/main.ui.h:22 msgid "Clear call history" msgstr "" -#: ../gtk/main.ui.h:22 +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "Moje současná totožnost:" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" msgstr "" @@ -1240,320 +1248,316 @@ msgid "SIP (TLS)" msgstr "SIP (TLS)" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "Nastavení" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" msgstr "Tento oddíl určuje vaši SIP adresu, když se nepoužívá žádný účet" -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" msgstr "Vaše zobrazované jméno (např. Jan Novák):" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "Vaše uživatelské jméno:" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" msgstr "Vaše výsledná SIP adresa:" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" msgstr "Implicitní totožnost" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" msgstr "Průvodce" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "Přidat" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "Upravit" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "Odstranit" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" msgstr "Proxy účty" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" msgstr "Vymazat všechna hesla" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "Soukromí" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" msgstr "" -#: ../gtk/parameters.ui.h:31 +#: ../gtk/parameters.ui.h:28 msgid "Delay before answering (ms)" msgstr "" -#: ../gtk/parameters.ui.h:32 +#: ../gtk/parameters.ui.h:29 msgid "Auto-answer" msgstr "" -#: ../gtk/parameters.ui.h:33 +#: ../gtk/parameters.ui.h:30 msgid "Manage SIP Accounts" msgstr "Nastavení SIP účtů" -#: ../gtk/parameters.ui.h:34 +#: ../gtk/parameters.ui.h:31 msgid "Ring sound:" msgstr "Vyzvánění:" -#: ../gtk/parameters.ui.h:35 +#: ../gtk/parameters.ui.h:32 msgid "ALSA special device (optional):" msgstr "Zvláštní ALSA zařízení (volitelné):" -#: ../gtk/parameters.ui.h:36 +#: ../gtk/parameters.ui.h:33 msgid "Capture device:" msgstr "Zařízení pro nahrávání:" -#: ../gtk/parameters.ui.h:37 +#: ../gtk/parameters.ui.h:34 msgid "Ring device:" msgstr "Zařízení pro vyzvánění:" -#: ../gtk/parameters.ui.h:38 +#: ../gtk/parameters.ui.h:35 msgid "Playback device:" msgstr "Zařízení pro přehrávání:" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" msgstr "Zapnout potlačení ozvěny" -#: ../gtk/parameters.ui.h:40 +#: ../gtk/parameters.ui.h:37 msgid "Audio" msgstr "Zvuk" -#: ../gtk/parameters.ui.h:41 +#: ../gtk/parameters.ui.h:38 msgid "Video input device:" msgstr "Vstupní zařízení obrazu:" -#: ../gtk/parameters.ui.h:42 +#: ../gtk/parameters.ui.h:39 msgid "Preferred video resolution:" msgstr "" -#: ../gtk/parameters.ui.h:43 +#: ../gtk/parameters.ui.h:40 msgid "Video output method:" msgstr "" -#: ../gtk/parameters.ui.h:44 +#: ../gtk/parameters.ui.h:41 msgid "Show camera preview" msgstr "" -#: ../gtk/parameters.ui.h:45 +#: ../gtk/parameters.ui.h:42 msgid "Video preset:" msgstr "" -#: ../gtk/parameters.ui.h:46 +#: ../gtk/parameters.ui.h:43 msgid "Preferred video framerate:" msgstr "" -#: ../gtk/parameters.ui.h:47 +#: ../gtk/parameters.ui.h:44 msgid "0 stands for \"unlimited\"" msgstr "0 znamená „neomezeno“" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "Obraz" -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" msgstr "Omezení odchozí rychlosti (kb/s):" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" msgstr "Omezení příchozí rychlosti (kb/s):" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" msgstr "Zapnout přizpůsobující se řízení rychlosti" -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." msgstr "Přizpůsobující se řízení rychlosti je technika dynamického odhadu dostupného pásma během hovoru." -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "Využití šířky pásma" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" msgstr "Nastavení multimédií" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" msgstr "Nastavit MTU (největší přenositelná zpráva):" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" msgstr "Odesílat tóny DTMF jako SIP INFO zprávy" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "Přenos" -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" msgstr "" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" msgstr "Zvukový RTP/UDP:" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "Stálý" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" msgstr "Obrazový RTP/UDP:" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "Tunel" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" msgstr "Položky DSCP" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" msgstr "Síťové protokoly a porty" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" msgstr "Přímé připojení do Internetu" -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" msgstr "" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "Za NAT/firewallem (adresu určí STUN)" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" msgstr "Za NAT/firewallem (adresu určí ICE)" -#: ../gtk/parameters.ui.h:73 +#: ../gtk/parameters.ui.h:70 msgid "Behind NAT / Firewall (use uPnP)" msgstr "Za NAT/firewallem (adresu určí UPnP)" -#: ../gtk/parameters.ui.h:74 +#: ../gtk/parameters.ui.h:71 msgid "Public IP address:" msgstr "Veřejná IP adresa:" -#: ../gtk/parameters.ui.h:75 +#: ../gtk/parameters.ui.h:72 msgid "Stun server:" msgstr "STUN server:" -#: ../gtk/parameters.ui.h:76 +#: ../gtk/parameters.ui.h:73 msgid "NAT and Firewall" msgstr "NAT a firewall" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "Druh šifrování médií" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" msgstr "" -#: ../gtk/parameters.ui.h:79 +#: ../gtk/parameters.ui.h:76 msgid "Media encryption is mandatory" msgstr "Šifrování médií je povinné" -#: ../gtk/parameters.ui.h:80 +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" +msgstr "" + +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" +msgstr "" + +#: ../gtk/parameters.ui.h:79 msgid "Encryption" msgstr "" -#: ../gtk/parameters.ui.h:81 +#: ../gtk/parameters.ui.h:80 msgid "Network settings" msgstr "Nastavení sítě" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" msgstr "Povolit" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "Zakázat" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" msgstr "" -#: ../gtk/parameters.ui.h:85 +#: ../gtk/parameters.ui.h:84 msgid "Video codecs" msgstr "" -#: ../gtk/parameters.ui.h:86 +#: ../gtk/parameters.ui.h:85 msgid "Codecs" msgstr "Kodeky" -#: ../gtk/parameters.ui.h:87 +#: ../gtk/parameters.ui.h:86 msgid "Language" msgstr "Jazyk" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "Zobrazit podrobnější nastavení" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "Úroveň" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" msgstr "Uživatelské rozhraní" -#: ../gtk/parameters.ui.h:94 +#: ../gtk/parameters.ui.h:93 msgid "LDAP Account setup" msgstr "" -#: ../gtk/parameters.ui.h:95 +#: ../gtk/parameters.ui.h:94 msgid "LDAP" msgstr "" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "Hotovo" @@ -1791,52 +1795,52 @@ msgstr "Nastavit HTTP proxy (volitelné)" msgid "Please wait" msgstr "Prosím, čekejte" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "Připraven." -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" msgstr "" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" msgstr "Navazuje se spojení" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" msgstr "Nelze volat" -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" msgstr "Je nám líto, ale byl dosažen maximální počet současných hovorů." -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "vás volá" -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." msgstr " a požaduje automatickou zvednutí." -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." msgstr "Upravují se parametry hovoru…" -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "Připojeno." -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "Hovor přerušen" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" msgstr "Hovor nebylo možné odložit" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." msgstr "Současný hovor se odkládá…" @@ -1844,59 +1848,59 @@ msgstr "Současný hovor se odkládá…" msgid "Stun lookup in progress..." msgstr "Hledá se adresa pomocí STUN…" -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." msgstr "Shromažďují se místní kandidáti ICE…" -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "Připojen" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "Zaneprázdněn" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "Za chvíli se vrátím" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "Pryč" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" msgstr "U telefonu" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" msgstr "Na obědě" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "Nerušit" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "Přestěhoval jsem se" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" msgstr "Používám jinou službu přenosu zpráv" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" msgstr "Odpojen" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "Čekám" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "" @@ -1920,12 +1924,12 @@ msgstr "Vyhledává se umístění čísla…" msgid "Could not resolve this number." msgstr "Toto číslo nelze vyhledat." -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "Nelze se přihlásit jako %s" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." msgstr "" @@ -2034,16 +2038,16 @@ msgstr "" msgid "Authentication token is %s" msgstr "Klíč k ověření totožnosti je %s" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." msgstr "" -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." msgstr "" -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." diff --git a/po/de.po b/po/de.po index de13de3ed..96438bb8e 100644 --- a/po/de.po +++ b/po/de.po @@ -5,15 +5,15 @@ # Translators: # andreas, 2014 # andreas, 2014 -# Ettore Atalan , 2015 +# Ettore Atalan , 2015-2016 # Gerhard Stengel , 2011-2012 # Simon Morlat , 2001 msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:56+0000\n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" "Last-Translator: Belledonne Communications \n" "Language-Team: German (http://www.transifex.com/belledonne-communications/linphone-gtk/language/de/)\n" "MIME-Version: 1.0\n" @@ -37,7 +37,7 @@ msgstr "Text zu „%s“ schicken" msgid "Add %s to your contact list" msgstr "%s zu Ihrer Kontaktliste hinzufügen" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "Letzte Gespräche" @@ -109,7 +109,7 @@ msgstr "Sendevorgang..." msgid "Message not sent" msgstr "Nachricht nicht gesendet" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "Kopieren" @@ -155,7 +155,7 @@ msgstr "Starte den Audio-Assistent" msgid "Run self test and exit 0 if succeed" msgstr "Selbsttest ausführen und mit 0 beenden, wenn erfolgreich" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" @@ -163,80 +163,80 @@ msgid "" "If you answer no, this person will be temporarily blacklisted." msgstr "" -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" msgstr "Bitte geben Sie Ihr Passwort für den Benutzernamen %s\n für Bereich %s ein:" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "Anruf fehlgeschlagen" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "Anruf beendet" -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "Eingehender Anruf" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "Annehmen" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "Abweisen" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "Anruf wird gehalten" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "von %s" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" msgstr "%s schlägt vor, eine Videoübertragung zu starten. Nehmen Sie an?" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "Website-Verknüpfung" -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "Linphone" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" msgstr "Ein Internet-Video-Telefon" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" msgstr "%s (Vorgabe)" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" msgstr "Vermittlung nach %s" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." msgstr "Auf diesem Rechner können keine Soundkarten gefunden werden.\nSie können keine Audio-Anrufe tätigen oder entgegennehmen." -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "Ein freies SIP-Video-Telefon" -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "Hallo\n" @@ -250,31 +250,31 @@ msgstr "Zum Adressbuch hinzufügen" msgid "Search in %s directory" msgstr "Im %s-Verzeichnis suchen" -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "Ungültiger SIP-Kontakt!" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "Neuen Kontakt hinzufügen" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "Kontakt „%s“ bearbeiten" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "Kontakt „%s“ löschen" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "Lösche Gesprächshistorie von '%s'" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" msgstr "Einen neuen Kontakt aus dem %s-Verzeichnis hinzufügen" @@ -303,7 +303,7 @@ msgstr "Parameter" msgid "Enabled" msgstr "Freigegeben" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "Gesperrt" @@ -452,11 +452,11 @@ msgstr[1] "%i Kontakte gefunden" #: ../gtk/setupwizard.c:219 msgid "Username is already in use!" -msgstr "" +msgstr "Benutzername wird bereits verwendet!" #: ../gtk/setupwizard.c:223 msgid "Failed to check username availability. Please try again later." -msgstr "" +msgstr "Fehler beim Überprüfen der Benutzernamenverfügbarkeit. Bitte versuchen Sie es später erneut." #: ../gtk/incall_view.c:67 ../gtk/incall_view.c:87 #, c-format @@ -744,7 +744,7 @@ msgstr "Linphone jetzt starten" msgid "Audio Assistant" msgstr "Audio-Assistant" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "Audio-Assistant" @@ -958,15 +958,15 @@ msgstr "Bewertung der Verbindungsqualität" msgid "LDAP Settings" msgstr "LDAP-Einstellungen" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" msgstr "Server-Adresse" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" msgstr "Authentifizierungsmethode" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "Benutzername:" @@ -1132,58 +1132,66 @@ msgid "Show keypad" msgstr "Tastatur anzeigen" #: ../gtk/main.ui.h:8 +msgid "Import contacts from vCards" +msgstr "" + +#: ../gtk/main.ui.h:9 +msgid "Export contacts as vCards" +msgstr "" + +#: ../gtk/main.ui.h:10 msgid "_Help" msgstr "_Hilfe" -#: ../gtk/main.ui.h:9 +#: ../gtk/main.ui.h:11 msgid "Show debug window" msgstr "Debug-Fenster anzeigen" -#: ../gtk/main.ui.h:10 +#: ../gtk/main.ui.h:12 msgid "_Homepage" msgstr "_Homepage" -#: ../gtk/main.ui.h:11 +#: ../gtk/main.ui.h:13 msgid "Check _Updates" msgstr "Auf _Aktualisierungen überprüfen" -#: ../gtk/main.ui.h:12 +#: ../gtk/main.ui.h:14 msgid "Account assistant" msgstr "Konto-Einrichtungsassistent" -#: ../gtk/main.ui.h:14 +#: ../gtk/main.ui.h:16 msgid "SIP address or phone number:" msgstr "SIP-Adresse oder Telefonnummer:" -#: ../gtk/main.ui.h:15 +#: ../gtk/main.ui.h:17 msgid "Initiate a new call" msgstr "Einen neuen Anruf beginnen" -#: ../gtk/main.ui.h:16 +#: ../gtk/main.ui.h:18 msgid "Contacts" msgstr "Kontakte" -#: ../gtk/main.ui.h:17 +#: ../gtk/main.ui.h:19 msgid "Search" msgstr "Suchen" -#: ../gtk/main.ui.h:18 +#: ../gtk/main.ui.h:20 msgid "Add contacts from directory" msgstr "Kontakte aus einem Verzeichnis hinzufügen" -#: ../gtk/main.ui.h:19 +#: ../gtk/main.ui.h:21 msgid "Add contact" msgstr "Kontakt hinzufügen" -#: ../gtk/main.ui.h:20 +#: ../gtk/main.ui.h:22 msgid "Clear call history" msgstr "Anrufchronik löschen" -#: ../gtk/main.ui.h:22 +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "Aktuelle Identität:" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" msgstr "Automatische Antwort ist aktiviert" @@ -1240,320 +1248,316 @@ msgid "SIP (TLS)" msgstr "SIP (TLS)" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "Vorgabe" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "hohe-BpS" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "Benutzerdefiniert" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "Einstellungen" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" msgstr "In diesem Bereich legen Sie Ihre SIP-Adresse fest, wenn Sie kein SIP-Konto verwenden." -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" msgstr "Ihr angezeigter Name (z. B. Heinz Müller):" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "Ihr Benutzername:" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" msgstr "Sich ergebende SIP-Adresse:" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" msgstr "Standard-Identität" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" msgstr "Assistent" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "Hinzufügen" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "Bearbeiten" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "Entfernen" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" msgstr "Proxy-Konten" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" msgstr "Alle Passwörter löschen" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "Privatsphäre" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" msgstr "Automatisch antworten, wenn ein Anruf eingeht" -#: ../gtk/parameters.ui.h:31 +#: ../gtk/parameters.ui.h:28 msgid "Delay before answering (ms)" msgstr "Verzögerung vor der Beantwortung (ms)" -#: ../gtk/parameters.ui.h:32 +#: ../gtk/parameters.ui.h:29 msgid "Auto-answer" msgstr "Automatische Antwort" -#: ../gtk/parameters.ui.h:33 +#: ../gtk/parameters.ui.h:30 msgid "Manage SIP Accounts" msgstr "SIP-Konten verwalten" -#: ../gtk/parameters.ui.h:34 +#: ../gtk/parameters.ui.h:31 msgid "Ring sound:" msgstr "Klingelton:" -#: ../gtk/parameters.ui.h:35 +#: ../gtk/parameters.ui.h:32 msgid "ALSA special device (optional):" msgstr "Spezielles ALSA-Gerät (optional):" -#: ../gtk/parameters.ui.h:36 +#: ../gtk/parameters.ui.h:33 msgid "Capture device:" msgstr "Aufnahmegerät:" -#: ../gtk/parameters.ui.h:37 +#: ../gtk/parameters.ui.h:34 msgid "Ring device:" msgstr "Gerät für Klingelton:" -#: ../gtk/parameters.ui.h:38 +#: ../gtk/parameters.ui.h:35 msgid "Playback device:" msgstr "Wiedergabegerät:" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" msgstr "Echounterdrückung ein" -#: ../gtk/parameters.ui.h:40 +#: ../gtk/parameters.ui.h:37 msgid "Audio" msgstr "Audio" -#: ../gtk/parameters.ui.h:41 +#: ../gtk/parameters.ui.h:38 msgid "Video input device:" msgstr "Video-Aufnahmegerät:" -#: ../gtk/parameters.ui.h:42 +#: ../gtk/parameters.ui.h:39 msgid "Preferred video resolution:" msgstr "Bevorzugte Videoauflösung:" -#: ../gtk/parameters.ui.h:43 +#: ../gtk/parameters.ui.h:40 msgid "Video output method:" msgstr "Methode zur Videoausgabe" -#: ../gtk/parameters.ui.h:44 +#: ../gtk/parameters.ui.h:41 msgid "Show camera preview" msgstr "Kameravorschau anzeigen" -#: ../gtk/parameters.ui.h:45 +#: ../gtk/parameters.ui.h:42 msgid "Video preset:" msgstr "Videovoreinstellung:" -#: ../gtk/parameters.ui.h:46 +#: ../gtk/parameters.ui.h:43 msgid "Preferred video framerate:" msgstr "Bevorzugte Videobildfrequenz:" -#: ../gtk/parameters.ui.h:47 +#: ../gtk/parameters.ui.h:44 msgid "0 stands for \"unlimited\"" msgstr "0 bedeutet „unbegrenzt“" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "Video" -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" msgstr "Upload-Bandbreite (kbit/sec):" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" msgstr "Download-Bandbreite (kbit/sec):" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" msgstr "Adaptive Ratenregelung ein" -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." msgstr "Adaptive Ratenregelung ist eine Technik zur dynamischen Abschätzung der zur Verfügung stehenden Bandbreite während eines Anrufs." -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "Bandbreiten-Einstellungen" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" msgstr "Multimedia-Einstellungen" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" msgstr "Maximum Transmission Unit setzen:" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" msgstr "DTMFs als SIP-Info senden" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "IPv6 erlauben" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "Übertragung" -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "SIP/UDP Port" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" msgstr "Zufällig" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "SIP/TCP Port" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" msgstr "Audio RTP/UDP:" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "Fest" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" msgstr "Video RTP/UDP:" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "Tunnel" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" msgstr "DSCP-Felder" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" msgstr "Netzwerkprotokoll und Ports" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" msgstr "Direkte Verbindung ins Internet" -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" msgstr "Hinter NAT / Firewall (Gateway IP angeben)" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "Hinter NAT / Firewall (STUN verwenden)" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" msgstr "Hinter NAT / Firewall (ICE verwenden)" -#: ../gtk/parameters.ui.h:73 +#: ../gtk/parameters.ui.h:70 msgid "Behind NAT / Firewall (use uPnP)" msgstr "Hinter NAT / Firewall (uPnP verwenden)" -#: ../gtk/parameters.ui.h:74 +#: ../gtk/parameters.ui.h:71 msgid "Public IP address:" msgstr "Öffentliche IP-Adresse:" -#: ../gtk/parameters.ui.h:75 +#: ../gtk/parameters.ui.h:72 msgid "Stun server:" msgstr "STUN-Server:" -#: ../gtk/parameters.ui.h:76 +#: ../gtk/parameters.ui.h:73 msgid "NAT and Firewall" msgstr "NAT und Firewall" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "Verschlüsselungstyp der Medien" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" -msgstr "" +msgstr "Lime für ausgehende Chatnachrichten verwenden" -#: ../gtk/parameters.ui.h:79 +#: ../gtk/parameters.ui.h:76 msgid "Media encryption is mandatory" msgstr "Medienverschlüsselung erzwingen" -#: ../gtk/parameters.ui.h:80 -msgid "Encryption" +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" msgstr "" -#: ../gtk/parameters.ui.h:81 +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" +msgstr "" + +#: ../gtk/parameters.ui.h:79 +msgid "Encryption" +msgstr "Verschlüsselung" + +#: ../gtk/parameters.ui.h:80 msgid "Network settings" msgstr "Netzwerkeinstellungen" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" msgstr "Freigeben" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "Sperren" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" msgstr "Audiocodecs" -#: ../gtk/parameters.ui.h:85 +#: ../gtk/parameters.ui.h:84 msgid "Video codecs" msgstr "Videocodecs" -#: ../gtk/parameters.ui.h:86 +#: ../gtk/parameters.ui.h:85 msgid "Codecs" msgstr "Codecs" -#: ../gtk/parameters.ui.h:87 +#: ../gtk/parameters.ui.h:86 msgid "Language" msgstr "Sprache" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "Fortgeschrittene Einstellungen anzeigen" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "Detaillierung" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" msgstr "Benutzeroberfläche" -#: ../gtk/parameters.ui.h:94 +#: ../gtk/parameters.ui.h:93 msgid "LDAP Account setup" msgstr "LDAP-Kontoeinrichtung" -#: ../gtk/parameters.ui.h:95 +#: ../gtk/parameters.ui.h:94 msgid "LDAP" msgstr "LDAP" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "Fertig" @@ -1791,52 +1795,52 @@ msgstr "Configure http proxy (optional)" msgid "Please wait" msgstr "Bitte warten" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "Bereit" -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" msgstr "Einstellen" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" msgstr "Verbindungsaufbau" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" msgstr "Anruf kann nicht getätigt werden." -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" msgstr "Die maximale Anzahl der gleichzeitigen Anrufe ist erreicht." -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "ruft Sie an" -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." msgstr " und fragt nach automatischer Antwort." -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." msgstr "Die Anrufparameter werden verändert..." -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "Verbunden." -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "Anruf abgebrochen" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" msgstr "Anruf kann nicht gehalten werden" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." msgstr "Aktueller Anruf wird gehalten..." @@ -1844,59 +1848,59 @@ msgstr "Aktueller Anruf wird gehalten..." msgid "Stun lookup in progress..." msgstr "STUN-Ermittlung läuft..." -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." msgstr "Lokale Kandidaten für ICE werden zusammengestellt..." -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "Angemeldet" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "Besetzt" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "Bald wieder da" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "Abwesend" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" msgstr "Im Gespräch" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" msgstr "Beim Essen" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "Nicht stören" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "Umgezogen" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" msgstr "Ein anderer Nachrichtendienst wird benutzt" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" msgstr "Abgemeldet" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "Ausstehend" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "Urlaub" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "Unbekannter Status" @@ -1920,12 +1924,12 @@ msgstr "Telefonnummernziel wird gesucht..." msgid "Could not resolve this number." msgstr "Diese Nummer kann nicht aufgelöst werden." -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "Anmeldung als %s fehlgeschlagen" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." msgstr "Wird auf %s aktualisiert..." @@ -2034,16 +2038,16 @@ msgstr "Service nicht verfügbar, versuche erneut" msgid "Authentication token is %s" msgstr "Authentifizierungs-Token ist %s" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." msgstr "Anrufparameter konnten nicht geändert werden: %s." -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." msgstr "Anrufparameter wurden erfolgreich geändert." -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." diff --git a/po/es.po b/po/es.po index 3b8d02f86..26748ffea 100644 --- a/po/es.po +++ b/po/es.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:56+0000\n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" "Last-Translator: Belledonne Communications \n" "Language-Team: Spanish (http://www.transifex.com/belledonne-communications/linphone-gtk/language/es/)\n" "MIME-Version: 1.0\n" @@ -33,7 +33,7 @@ msgstr "Enviar mensaje a %s" msgid "Add %s to your contact list" msgstr "Añadir %s a la lista de contactos" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "Llamadas recientes" @@ -105,7 +105,7 @@ msgstr "Enviando..." msgid "Message not sent" msgstr "Mensaje no enviado" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "Copiar" @@ -151,7 +151,7 @@ msgstr "Iniciar el asistente de audio" msgid "Run self test and exit 0 if succeed" msgstr "" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" @@ -159,80 +159,80 @@ msgid "" "If you answer no, this person will be temporarily blacklisted." msgstr "%s quiere añadirle a su lista de contactos.\nQuieres añadirle a tu lista de contactos y permitirle que vea su estado de presencia?\nSi contesta no, esta persona será bloqueada temporalmente." -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" msgstr "Por favor, introduzca la contraseña para el usuario %s\n en el dominio %s:" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "Error en llamada" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "Llamada terminada" -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "Llamada entrante" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "Contestar" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "Rechazar" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "Llamada en pausa" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "por %s" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" msgstr "%s solicita iniciar vídeo. ¿Acepta?" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "Enlace a la Web" -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "Linphone" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" msgstr "" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" msgstr "%s (Opción predeterminada)" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" msgstr "Somos transferidos a %s" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." msgstr "No se ha encontrado una tarjeta de sonido en este equipo.\nNo será posible realizar o recibir llamadas de audio." -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "Un video-teléfono SIP gratuito" -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "Hola\n" @@ -246,31 +246,31 @@ msgstr "Añadir a la agenda" msgid "Search in %s directory" msgstr "Buscar en el directorio %s" -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "¡Contacto SIP no válido!" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "Añadir un contacto nuevo" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "Editar contacto '%s'" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "Eliminar contacto '%s'" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "Eliminar histórico de '%s'" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" msgstr "Añadir nuevo contacto desde el directorio %s" @@ -299,7 +299,7 @@ msgstr "Parámetros" msgid "Enabled" msgstr "Activado" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "Desactivado" @@ -740,7 +740,7 @@ msgstr "Iniciar Linphone ahora" msgid "Audio Assistant" msgstr "Asistente de sonido" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "Asistente de sonido" @@ -954,15 +954,15 @@ msgstr "Calidad de la llamada" msgid "LDAP Settings" msgstr "Configuración LDAP" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" msgstr "Dirección del Servidor:" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" msgstr "Método de autenticación:" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "Nombre de usuario:" @@ -1128,58 +1128,66 @@ msgid "Show keypad" msgstr "Mostrar marcador" #: ../gtk/main.ui.h:8 +msgid "Import contacts from vCards" +msgstr "" + +#: ../gtk/main.ui.h:9 +msgid "Export contacts as vCards" +msgstr "" + +#: ../gtk/main.ui.h:10 msgid "_Help" msgstr "_Ayuda" -#: ../gtk/main.ui.h:9 +#: ../gtk/main.ui.h:11 msgid "Show debug window" msgstr "Mostrar ventana de depuración" -#: ../gtk/main.ui.h:10 +#: ../gtk/main.ui.h:12 msgid "_Homepage" msgstr "_Pagina_de_Inicio" -#: ../gtk/main.ui.h:11 +#: ../gtk/main.ui.h:13 msgid "Check _Updates" msgstr "Buscar_Actualizaciones" -#: ../gtk/main.ui.h:12 +#: ../gtk/main.ui.h:14 msgid "Account assistant" msgstr "Asistente de configuración de cuenta" -#: ../gtk/main.ui.h:14 +#: ../gtk/main.ui.h:16 msgid "SIP address or phone number:" msgstr "Dirección SIP o número de teléfono" -#: ../gtk/main.ui.h:15 +#: ../gtk/main.ui.h:17 msgid "Initiate a new call" msgstr "Iniciar nueva llamada" -#: ../gtk/main.ui.h:16 +#: ../gtk/main.ui.h:18 msgid "Contacts" msgstr "Contactos" -#: ../gtk/main.ui.h:17 +#: ../gtk/main.ui.h:19 msgid "Search" msgstr "Buscar" -#: ../gtk/main.ui.h:18 +#: ../gtk/main.ui.h:20 msgid "Add contacts from directory" msgstr "Añadir contactos desde un directorio" -#: ../gtk/main.ui.h:19 +#: ../gtk/main.ui.h:21 msgid "Add contact" msgstr "Añadir contacto" -#: ../gtk/main.ui.h:20 +#: ../gtk/main.ui.h:22 msgid "Clear call history" msgstr "Borrar registro de llamadas" -#: ../gtk/main.ui.h:22 +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "Mi identidad actual:" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" msgstr "Autoanswer está activado" @@ -1236,320 +1244,316 @@ msgid "SIP (TLS)" msgstr "SIP (TLS)" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "por defecto" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "Configuración" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" msgstr "Esta sección define su dirección SIP cuando no utiliza una cuenta SIP" -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" msgstr "Su nombre a mostrar (x ej: Pepito Pérez):" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "Su nombre de usuario:" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" msgstr "Su dirección SIP resultante:" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" msgstr "Identidad predeterminada" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" msgstr "Asistente" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "Añadir" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "Editar" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "Eliminar" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" msgstr "Cuentas Proxy" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" msgstr "Borrar todas las contraseñas" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "Privacidad" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" msgstr "si está activo, responder a llamadas entrantes automáticamente" -#: ../gtk/parameters.ui.h:31 +#: ../gtk/parameters.ui.h:28 msgid "Delay before answering (ms)" msgstr "Retraso antes de contestar (ms)" -#: ../gtk/parameters.ui.h:32 +#: ../gtk/parameters.ui.h:29 msgid "Auto-answer" msgstr "Auto-answer" -#: ../gtk/parameters.ui.h:33 +#: ../gtk/parameters.ui.h:30 msgid "Manage SIP Accounts" msgstr "Gestionar cuentas SIP" -#: ../gtk/parameters.ui.h:34 +#: ../gtk/parameters.ui.h:31 msgid "Ring sound:" msgstr "Tono de llamada:" -#: ../gtk/parameters.ui.h:35 +#: ../gtk/parameters.ui.h:32 msgid "ALSA special device (optional):" msgstr "Dispositivo especial ALSA (opcional):" -#: ../gtk/parameters.ui.h:36 +#: ../gtk/parameters.ui.h:33 msgid "Capture device:" msgstr "Dispositivo de captura:" -#: ../gtk/parameters.ui.h:37 +#: ../gtk/parameters.ui.h:34 msgid "Ring device:" msgstr "Dispositivo de Ring:" -#: ../gtk/parameters.ui.h:38 +#: ../gtk/parameters.ui.h:35 msgid "Playback device:" msgstr "Dispositivo de reproducción:" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" msgstr "Activar cancelación de eco" -#: ../gtk/parameters.ui.h:40 +#: ../gtk/parameters.ui.h:37 msgid "Audio" msgstr "Audio" -#: ../gtk/parameters.ui.h:41 +#: ../gtk/parameters.ui.h:38 msgid "Video input device:" msgstr "Dispositivo de entrada de vídeo:" -#: ../gtk/parameters.ui.h:42 +#: ../gtk/parameters.ui.h:39 msgid "Preferred video resolution:" msgstr "Resolución de vídeo preferida:" -#: ../gtk/parameters.ui.h:43 +#: ../gtk/parameters.ui.h:40 msgid "Video output method:" msgstr "Dispositivo de salida de vídeo:" -#: ../gtk/parameters.ui.h:44 +#: ../gtk/parameters.ui.h:41 msgid "Show camera preview" msgstr "Mostrar vista previa de la cámara" -#: ../gtk/parameters.ui.h:45 +#: ../gtk/parameters.ui.h:42 msgid "Video preset:" msgstr "" -#: ../gtk/parameters.ui.h:46 +#: ../gtk/parameters.ui.h:43 msgid "Preferred video framerate:" msgstr "Framerate de vídeo preferido:" -#: ../gtk/parameters.ui.h:47 +#: ../gtk/parameters.ui.h:44 msgid "0 stands for \"unlimited\"" msgstr "0 significa \"ilimitado\"" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "Vídeo " -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" msgstr "Velocidad límite de subida en Kbit/seg" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" msgstr "Velocidad límite de descarga en Kbit/seg:" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" msgstr "Activar control de frecuencia adaptativo" -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." msgstr "Control de frecuencia adaptativo es una técnica que estima dinámicamente el ancho de banda disponible durante la llamada." -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "Control de ancho de banda" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" msgstr "Configuración multimedia" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" msgstr "Fijar Unidad de Transmisión Máxima:" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" msgstr "Enviar DTMFs como información SIP" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "Soportar IPv6" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "Transporte " -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "Puerto SIP/UDP" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" msgstr "Aleatorio" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "Puerto SIP/TCP" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" msgstr "Audio RTP/UDP:" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "Fijo" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" msgstr "Vídeo RTP/UDP" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "Tunel" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" msgstr "Campos DSCP" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" msgstr "Protocolo de red y puertos" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" msgstr "Conexión directa a Internet" -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" msgstr "Tras un NAT/Firewall (especificar la IP de la puerta de enlace)" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "Tras un NAT/Firewall (utilizar STUN para resolver)" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" msgstr "Tras un NAT/Firewall (utilizar ICE)" -#: ../gtk/parameters.ui.h:73 +#: ../gtk/parameters.ui.h:70 msgid "Behind NAT / Firewall (use uPnP)" msgstr "Tras un NAT/Firewall (utilizar uPnP)" -#: ../gtk/parameters.ui.h:74 +#: ../gtk/parameters.ui.h:71 msgid "Public IP address:" msgstr "Dirección IP pública:" -#: ../gtk/parameters.ui.h:75 +#: ../gtk/parameters.ui.h:72 msgid "Stun server:" msgstr "Servidor STUN" -#: ../gtk/parameters.ui.h:76 +#: ../gtk/parameters.ui.h:73 msgid "NAT and Firewall" msgstr "NAT y Firewall" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "Tipo de cifrado de medios" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" msgstr "" -#: ../gtk/parameters.ui.h:79 +#: ../gtk/parameters.ui.h:76 msgid "Media encryption is mandatory" msgstr "Es obligatorio el cifrado de medios" -#: ../gtk/parameters.ui.h:80 +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" +msgstr "" + +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" +msgstr "" + +#: ../gtk/parameters.ui.h:79 msgid "Encryption" msgstr "" -#: ../gtk/parameters.ui.h:81 +#: ../gtk/parameters.ui.h:80 msgid "Network settings" msgstr "Configuración de red" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" msgstr "Activar" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "Desactivar" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" msgstr "Códecs de audio" -#: ../gtk/parameters.ui.h:85 +#: ../gtk/parameters.ui.h:84 msgid "Video codecs" msgstr "Códecs de vídeo" -#: ../gtk/parameters.ui.h:86 +#: ../gtk/parameters.ui.h:85 msgid "Codecs" msgstr "Códecs" -#: ../gtk/parameters.ui.h:87 +#: ../gtk/parameters.ui.h:86 msgid "Language" msgstr "Idioma" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "Mostrar opciones avanzadas" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "Nivel" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" msgstr "Interfaz de Usuario" -#: ../gtk/parameters.ui.h:94 +#: ../gtk/parameters.ui.h:93 msgid "LDAP Account setup" msgstr "Configuración de cuenta LDAP" -#: ../gtk/parameters.ui.h:95 +#: ../gtk/parameters.ui.h:94 msgid "LDAP" msgstr "LDAP" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "Hecho" @@ -1787,52 +1791,52 @@ msgstr "Configurara el proxy http (opcional)" msgid "Please wait" msgstr "Espere por favor" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "Preparado" -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" msgstr "Configurando" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" msgstr "Contactando" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" msgstr "No se pudo llamar" -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" msgstr "Disculpe, se ha alcanzado el máximo número de llamadas simultáneas" -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "le está llamando" -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." msgstr "y ha solicitado auto respuesta." -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." msgstr "Modificando parámetros de llamada…" -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "Conectado." -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "Llamada abortada" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" msgstr "No se pudo pausar la llamada" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." msgstr "Pausando la llamada actual..." @@ -1840,59 +1844,59 @@ msgstr "Pausando la llamada actual..." msgid "Stun lookup in progress..." msgstr "Búsqueda STUN en proceso…" -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." msgstr "Recolección de candidatos ICE locales en progreso..." -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "Conectado" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "Ocupado" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "Vuelvo enseguida" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "Ausente" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" msgstr "Al teléfono" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" msgstr "A comer" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "No molestar" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "Fuera" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" msgstr "Utilizando otro servicio de mensajería" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" msgstr "Desconectado" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "Pendiente" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "Estado desconocido" @@ -1916,12 +1920,12 @@ msgstr "Buscando el número de teléfono del destinatario…" msgid "Could not resolve this number." msgstr "No se ha podido resolver este número." -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "No se pudo iniciar sesión como %s" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." msgstr "Cargando desde %s" @@ -2030,16 +2034,16 @@ msgstr "Servicio no disponible, reintentando" msgid "Authentication token is %s" msgstr "El tóken de autenticación es%s" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." msgstr "Parámetros de llamada no pudieron ser modificados: %s." -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." msgstr "Parámetros de llamada modificados correctamente." -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." diff --git a/po/fi.po b/po/fi.po index e0537338b..d1c7cc1f7 100644 --- a/po/fi.po +++ b/po/fi.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:56+0000\n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" "Last-Translator: Belledonne Communications \n" "Language-Team: Finnish (http://www.transifex.com/belledonne-communications/linphone-gtk/language/fi/)\n" "MIME-Version: 1.0\n" @@ -33,7 +33,7 @@ msgstr "Lähetä tekstiviesti %s:lle" msgid "Add %s to your contact list" msgstr "Lisää %s yhtestietoihin" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "Viimeiset puhelut" @@ -105,7 +105,7 @@ msgstr "Lähetetään..." msgid "Message not sent" msgstr "Viesti ei lähetetty" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "Kopio" @@ -151,7 +151,7 @@ msgstr "Käytä ääni avustajaa" msgid "Run self test and exit 0 if succeed" msgstr "Käytä omaa testiä ja poistu 0 jo valmis" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" @@ -159,80 +159,80 @@ msgid "" "If you answer no, this person will be temporarily blacklisted." msgstr "%s haluaa lisätä sinut yhteystitohinsa.\nHaluatko hänen näkevän sinun läsnäolosi?\nJos ei, niin hänet lisätään hetkeksi mustalle listalle." -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" msgstr "Anna salasana käyttäjänimelle %s\nmaasta %s:" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "Virhe puhelussa" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "Puhelu päättyi" -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "Tuleva puhelu" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "Vastaa" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "Hylkää" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "Puhelu laitettu tauolle" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "%s toimesta" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" msgstr "%s pyytää video kuvaa. Sallitaanko?" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "Internet linkki" -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "Linphone" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" msgstr "Internet video puhelu" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" msgstr "%s (Vakio)" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" msgstr "Olemme siirtyneet %s" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." msgstr "Tähässä tietokeneessa ei ole havaittavissa ääni korttia.\nEt voi lähettää tai vastaanottaa äänellisiä puheluita." -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "Ilmainen SIP video puhelin." -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "Hei\n" @@ -246,31 +246,31 @@ msgstr "Lisää osoitekirjaan" msgid "Search in %s directory" msgstr "Etsi %s hakemistosta" -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "Kelvoton sip yhtyestieto !" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "Lisää uusi yhteystieto" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "Muokkaa yhteystietoa '%s'" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "Poista yhteysto '%s'" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "Poista '%s'n keskustelu historia" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" msgstr "Lisää uusi yhteystieto %s hakemistoon" @@ -299,7 +299,7 @@ msgstr "Raja-arvot" msgid "Enabled" msgstr "Sallittu" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "Kielletty" @@ -740,7 +740,7 @@ msgstr "Käynnitetäänpä Linphone nyt" msgid "Audio Assistant" msgstr "Ääni avustaja" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "Ääni avustaja" @@ -954,15 +954,15 @@ msgstr "Puhelun laadun luokitus" msgid "LDAP Settings" msgstr "LDAP 'Käyttäjän tunnistus' asetukset" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" msgstr "Palvelimen osoite:" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" msgstr "Todennus menetelmä:" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "Käyttäjätunnus:" @@ -1128,58 +1128,66 @@ msgid "Show keypad" msgstr "Näytä näppäimistö" #: ../gtk/main.ui.h:8 +msgid "Import contacts from vCards" +msgstr "" + +#: ../gtk/main.ui.h:9 +msgid "Export contacts as vCards" +msgstr "" + +#: ../gtk/main.ui.h:10 msgid "_Help" msgstr "_Apua" -#: ../gtk/main.ui.h:9 +#: ../gtk/main.ui.h:11 msgid "Show debug window" msgstr "Näytä virheen korjaus ikkuna" -#: ../gtk/main.ui.h:10 +#: ../gtk/main.ui.h:12 msgid "_Homepage" msgstr "_Kotisivu" -#: ../gtk/main.ui.h:11 +#: ../gtk/main.ui.h:13 msgid "Check _Updates" msgstr "Tarkista _Päivitykset" -#: ../gtk/main.ui.h:12 +#: ../gtk/main.ui.h:14 msgid "Account assistant" msgstr "Käyttäjätili avustaja" -#: ../gtk/main.ui.h:14 +#: ../gtk/main.ui.h:16 msgid "SIP address or phone number:" msgstr "SIP osoite tai puhelin numero" -#: ../gtk/main.ui.h:15 +#: ../gtk/main.ui.h:17 msgid "Initiate a new call" msgstr "Aloita uusi puhelu" -#: ../gtk/main.ui.h:16 +#: ../gtk/main.ui.h:18 msgid "Contacts" msgstr "Yhteystiedot" -#: ../gtk/main.ui.h:17 +#: ../gtk/main.ui.h:19 msgid "Search" msgstr "Hae" -#: ../gtk/main.ui.h:18 +#: ../gtk/main.ui.h:20 msgid "Add contacts from directory" msgstr "Lisää yhteystiedot hakemistosta" -#: ../gtk/main.ui.h:19 +#: ../gtk/main.ui.h:21 msgid "Add contact" msgstr "Lisää yhteystieto" -#: ../gtk/main.ui.h:20 +#: ../gtk/main.ui.h:22 msgid "Clear call history" msgstr "Tyhjennä puhelu historia" -#: ../gtk/main.ui.h:22 +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "Minun nykyinen henkilllisyys" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" msgstr "Automaattinen vastaaminen käytössä" @@ -1236,320 +1244,316 @@ msgid "SIP (TLS)" msgstr "SIP (TLS 'siirto SSL varmentimilla')" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "vakio" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "korkea fps kuvaa per sekuntti" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "custom" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "Asetukset" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" msgstr "Tämä osio märittää sinun SIP osoitteen kun et käytä SIP tiliä" -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" msgstr "Sinun näyttö nimi (esim: Matti Meikäläinen):" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "Sinun käyttäjänimi:" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" msgstr "Tuloksena sinun SIP osoitteesi on:" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" msgstr "Vakio henkilöllisyys" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" msgstr "Velho - automaattisäätö" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "Lisää" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "Muokkaa" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "Poista" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" msgstr "Välityspalvelin tilit" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" msgstr "Poista kaikki salasanat" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "Yksityisyys" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" msgstr "Automaattinen vastaus kun puhelu on saapunut" -#: ../gtk/parameters.ui.h:31 +#: ../gtk/parameters.ui.h:28 msgid "Delay before answering (ms)" msgstr "Odota ennen vastaamista (ms)" -#: ../gtk/parameters.ui.h:32 +#: ../gtk/parameters.ui.h:29 msgid "Auto-answer" msgstr "Automaattinen vastaaja" -#: ../gtk/parameters.ui.h:33 +#: ../gtk/parameters.ui.h:30 msgid "Manage SIP Accounts" msgstr "Hallitse SIP tilejä" -#: ../gtk/parameters.ui.h:34 +#: ../gtk/parameters.ui.h:31 msgid "Ring sound:" msgstr "Soittoääni:" -#: ../gtk/parameters.ui.h:35 +#: ../gtk/parameters.ui.h:32 msgid "ALSA special device (optional):" msgstr "ALSA-'ääne parannus' erikoilaite (valinnainen):" -#: ../gtk/parameters.ui.h:36 +#: ../gtk/parameters.ui.h:33 msgid "Capture device:" msgstr "Tallennus laite:" -#: ../gtk/parameters.ui.h:37 +#: ../gtk/parameters.ui.h:34 msgid "Ring device:" msgstr "Soittoäänen laite:" -#: ../gtk/parameters.ui.h:38 +#: ../gtk/parameters.ui.h:35 msgid "Playback device:" msgstr "Äänentoistolaite:" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" msgstr "Käytä kaiun poistoa" -#: ../gtk/parameters.ui.h:40 +#: ../gtk/parameters.ui.h:37 msgid "Audio" msgstr "Ääni" -#: ../gtk/parameters.ui.h:41 +#: ../gtk/parameters.ui.h:38 msgid "Video input device:" msgstr "Videokuvan lähde:" -#: ../gtk/parameters.ui.h:42 +#: ../gtk/parameters.ui.h:39 msgid "Preferred video resolution:" msgstr "Toivottu videon tarkkuus:" -#: ../gtk/parameters.ui.h:43 +#: ../gtk/parameters.ui.h:40 msgid "Video output method:" msgstr "Videon ulostulo:" -#: ../gtk/parameters.ui.h:44 +#: ../gtk/parameters.ui.h:41 msgid "Show camera preview" msgstr "Näytä kameran esikatselu" -#: ../gtk/parameters.ui.h:45 +#: ../gtk/parameters.ui.h:42 msgid "Video preset:" msgstr "Video esiasetus:" -#: ../gtk/parameters.ui.h:46 +#: ../gtk/parameters.ui.h:43 msgid "Preferred video framerate:" msgstr "Toivottu videon kuvataajuus:" -#: ../gtk/parameters.ui.h:47 +#: ../gtk/parameters.ui.h:44 msgid "0 stands for \"unlimited\"" msgstr "0 tarkoittaa \"rajoittamaton\"" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "Video" -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" msgstr "Lähetys nopeus raja Kbit/sec:" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" msgstr "Lataus raja Kbit/sec:" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" msgstr "Käytä mukautuvaa tason säätöä" -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." msgstr "Mukautuva tason säätö arvailee käytettävissä olevan kastaleveyden puheun aikana." -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "Kastaleveyden hallinta" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" msgstr "Multimedia asetukset" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" msgstr "Aseta suurin siirto yksikkö:" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" msgstr "Lähetä DTMF:t SIP infona" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "Salli IPv6" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "Siirto" -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "SIP/UDP portti" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" msgstr "Satunnainen" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "SIP/TCP portti" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" msgstr "Ääni RTP/UDP:" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "Korjattu" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" msgstr "Video RTP/UDP:" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "Tunneli" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" msgstr "DSCP kentät" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" msgstr "Veskko protokolla ja portti" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" msgstr "Suora yhteys internettiin " -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" msgstr "NAT / Palomuurin takaa (määritä yhdyskäytävä IP)" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "NAT-osoitteenmuunnoksen / Palomuurin takaa (käytä STUN:nia)" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" msgstr "NAT-osoitteenmuunnoksen / Palomuurin takaa (käytä ICE:tä)" -#: ../gtk/parameters.ui.h:73 +#: ../gtk/parameters.ui.h:70 msgid "Behind NAT / Firewall (use uPnP)" msgstr "NAT-osoitteenmuunnoksen / Palomuurin takaa (käytä uPnP:tä)" -#: ../gtk/parameters.ui.h:74 +#: ../gtk/parameters.ui.h:71 msgid "Public IP address:" msgstr "Julkinen IP osoite:" -#: ../gtk/parameters.ui.h:75 +#: ../gtk/parameters.ui.h:72 msgid "Stun server:" msgstr "Stun-palvelin eli 'osoitteenmuunoksen takaisin haku'-palvelin:" -#: ../gtk/parameters.ui.h:76 +#: ../gtk/parameters.ui.h:73 msgid "NAT and Firewall" msgstr "NAT-osoitteenmuunos ja Palomuuri" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "Median salaus tyyppi" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" -msgstr "" +msgstr "Käytä Lime:ä lähteviin viesteihin " -#: ../gtk/parameters.ui.h:79 +#: ../gtk/parameters.ui.h:76 msgid "Media encryption is mandatory" msgstr "Median salaus on pakollinen" -#: ../gtk/parameters.ui.h:80 -msgid "Encryption" +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" msgstr "" -#: ../gtk/parameters.ui.h:81 +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" +msgstr "" + +#: ../gtk/parameters.ui.h:79 +msgid "Encryption" +msgstr "Salaus" + +#: ../gtk/parameters.ui.h:80 msgid "Network settings" msgstr "Verkko asetukset:" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" msgstr "Käytössä" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "Poissa käytöstä" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" msgstr "Ääni codecs" -#: ../gtk/parameters.ui.h:85 +#: ../gtk/parameters.ui.h:84 msgid "Video codecs" msgstr "Video codecs" -#: ../gtk/parameters.ui.h:86 +#: ../gtk/parameters.ui.h:85 msgid "Codecs" msgstr "Codecs" -#: ../gtk/parameters.ui.h:87 +#: ../gtk/parameters.ui.h:86 msgid "Language" msgstr "Kieli" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "Näytä edistyneet asetukset" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "Taso" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" msgstr "Käyttöliittymä" -#: ../gtk/parameters.ui.h:94 +#: ../gtk/parameters.ui.h:93 msgid "LDAP Account setup" msgstr "LDAP Tili asetukset" -#: ../gtk/parameters.ui.h:95 +#: ../gtk/parameters.ui.h:94 msgid "LDAP" msgstr "LDAP" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "Tehty" @@ -1787,52 +1791,52 @@ msgstr "Muokkaa http välityspalinta (valinnainen)" msgid "Please wait" msgstr "Odota" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "Valmis" -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" msgstr "Säädetään" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" msgstr "Yhdistetään" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" msgstr "Ei voinut soittaa" -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" msgstr "Olen pahoillani, suurin yhtäaikaisten puheluiden määrä on saavutettu" -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "on ottamassa yhteyttä sinuun" -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." msgstr "ja pyytää automaattista vastausta." -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." msgstr "Maukataan soiton raja-arvoja..." -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "Yhdistetty" -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "Puhelu keskeytetty" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" msgstr "Ei voinut laittaa puhelua tauolle" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." msgstr "Laitetaan tauolle nykyinen puhelu..." @@ -1840,59 +1844,59 @@ msgstr "Laitetaan tauolle nykyinen puhelu..." msgid "Stun lookup in progress..." msgstr "Stun-'osoite haun' lukkiutuminen käynnissä..." -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." msgstr "ICE paikallisia ehdokkaita kerätään..." -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "Verkossa" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "Kiireinen" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "Palaan pian" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "Poissa" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" msgstr "Puhuu puhelua" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" msgstr "Syömässä" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "Älä häiritse" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "Siirtynyt" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" msgstr "Käyttää toista yhteys ohjelmaa" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" msgstr "Verkossa" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "Odottaa" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "Lomalla" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "Tuntematon tila" @@ -1916,12 +1920,12 @@ msgstr "Etsitään puhelinnumeron kohdetta..." msgid "Could not resolve this number." msgstr "Ei voi käsittää tätä numeroa." -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "%s ei pystynyt kirjautumaan" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." msgstr "%s on huilaamassa..." @@ -2030,16 +2034,16 @@ msgstr "Palvelin saavuttamattomissa, uudelleen yritetään" msgid "Authentication token is %s" msgstr "Todennus merkki on %s" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." msgstr "Soiton raja-arvoja ei voitu muokata: %s." -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." msgstr "Soiton raja-arvot ovat onnistuneesti muokattu." -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." diff --git a/po/fr.po b/po/fr.po index 2dad3f966..f3fad188e 100644 --- a/po/fr.po +++ b/po/fr.po @@ -12,9 +12,9 @@ msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:57+0000\n" -"Last-Translator: Gautier Pelloux-Prayer \n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" +"Last-Translator: Belledonne Communications \n" "Language-Team: French (http://www.transifex.com/belledonne-communications/linphone-gtk/language/fr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -37,7 +37,7 @@ msgstr "Chatter avec %s" msgid "Add %s to your contact list" msgstr "Ajouter %s à la liste de contacts" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "Appels récents" @@ -109,7 +109,7 @@ msgstr "Envoi en cours..." msgid "Message not sent" msgstr "Message non envoyé" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "Copier" @@ -155,7 +155,7 @@ msgstr "Démarre l'assistant audio" msgid "Run self test and exit 0 if succeed" msgstr "Exécuter le test local et retourner 0 en cas de succès" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" @@ -163,80 +163,80 @@ msgid "" "If you answer no, this person will be temporarily blacklisted." msgstr "%s souhaite vous ajouter à sa liste de contact.\nSouhaitez vous l'ajouter à votre liste également et l'autoriser à voir votre information de présence ?\nSi vous répondez non, cette personne sera mise temporairement sur liste noire." -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" msgstr "Entrez le mot de passe pour %s\n sur le domaine %s:" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "Erreur lors de l'appel" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "Appel terminé." -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "Appel entrant" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "Répondre" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "Refuser" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "Appel en pause" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "b>par %s" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" msgstr "%s propose de démarrer la vidéo. Acceptez-vous ?" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "Lien site web" -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "Linphone" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" msgstr "Appels vidéo via internet" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" msgstr "%s (par défaut)" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" msgstr "Transfert vers %s" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." msgstr "Aucune carte son n'a été détectée sur cet ordinateur.\nVous ne pourrez pas effectuer d'appels audio." -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "Un visiophone libre" -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "Bonjour\n" @@ -250,31 +250,31 @@ msgstr "Ajouter au carnet d'adresse" msgid "Search in %s directory" msgstr "Rechercher dans l'annuaire de %s" -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "Contact sip invalide !" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "Ajouter un nouveau contact" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "Editer le contact '%s'" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "Supprimer le contact '%s'" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "Supprimer l'historique de chat de '%s'" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" msgstr "Ajouter un contact depuis l'annuaire %s" @@ -303,7 +303,7 @@ msgstr "Paramètres" msgid "Enabled" msgstr "Activé" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "Désactivé" @@ -744,7 +744,7 @@ msgstr "Démarrons Linphone maintenant" msgid "Audio Assistant" msgstr "Assistant audio" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "Assistant audio" @@ -958,15 +958,15 @@ msgstr "Qualité de l'appel" msgid "LDAP Settings" msgstr "Paramètres LDAP" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" msgstr "Adresse du serveur:" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" msgstr "Méthode d'authentification:" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "Nom d'utilisateur:" @@ -1132,58 +1132,66 @@ msgid "Show keypad" msgstr "Afficher le pavé numérique" #: ../gtk/main.ui.h:8 +msgid "Import contacts from vCards" +msgstr "" + +#: ../gtk/main.ui.h:9 +msgid "Export contacts as vCards" +msgstr "" + +#: ../gtk/main.ui.h:10 msgid "_Help" msgstr "_Aide" -#: ../gtk/main.ui.h:9 +#: ../gtk/main.ui.h:11 msgid "Show debug window" msgstr "Fenêtre de débogage" -#: ../gtk/main.ui.h:10 +#: ../gtk/main.ui.h:12 msgid "_Homepage" msgstr "_Site web" -#: ../gtk/main.ui.h:11 +#: ../gtk/main.ui.h:13 msgid "Check _Updates" msgstr "_Mises à jour" -#: ../gtk/main.ui.h:12 +#: ../gtk/main.ui.h:14 msgid "Account assistant" msgstr "Assistant de compte" -#: ../gtk/main.ui.h:14 +#: ../gtk/main.ui.h:16 msgid "SIP address or phone number:" msgstr "Adresse SIP ou numéro" -#: ../gtk/main.ui.h:15 +#: ../gtk/main.ui.h:17 msgid "Initiate a new call" msgstr "Démarrer un nouvel appel" -#: ../gtk/main.ui.h:16 +#: ../gtk/main.ui.h:18 msgid "Contacts" msgstr "Contacts" -#: ../gtk/main.ui.h:17 +#: ../gtk/main.ui.h:19 msgid "Search" msgstr "Rechercher" -#: ../gtk/main.ui.h:18 +#: ../gtk/main.ui.h:20 msgid "Add contacts from directory" msgstr "Ajouter un contact depuis l'annuaire" -#: ../gtk/main.ui.h:19 +#: ../gtk/main.ui.h:21 msgid "Add contact" msgstr "Ajouter un contact." -#: ../gtk/main.ui.h:20 +#: ../gtk/main.ui.h:22 msgid "Clear call history" msgstr "Effacer l'historique d'appel" -#: ../gtk/main.ui.h:22 +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "Mon identité SIP :" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" msgstr "Décrochage automatique activé" @@ -1240,320 +1248,316 @@ msgid "SIP (TLS)" msgstr "SIP (TLS)" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "Par défaut" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "Fréquence d'images élevée" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "Personnalisé" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "Réglages" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" msgstr "Cette rubrique permet de définir son adresse SIP lorsqu'on ne possède pas de compte SIP" -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" msgstr "Votre nom d'affichage (ex: John Doe)" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "Votre nom d'utilisateur:" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" msgstr "Votre adresse SIP:" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" msgstr "Identité par défaut" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" msgstr "Assistant" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "Ajouter" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "Editer" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "Enlever" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" msgstr "Comptes SIP via des proxy" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" msgstr "Effacer tous les mots de passe" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "Sécurité" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" msgstr "Répondre automatiquement aux appels entrants" -#: ../gtk/parameters.ui.h:31 +#: ../gtk/parameters.ui.h:28 msgid "Delay before answering (ms)" msgstr "Temps d'attente avant réponse (ms)" -#: ../gtk/parameters.ui.h:32 +#: ../gtk/parameters.ui.h:29 msgid "Auto-answer" msgstr "Décrochage automatique" -#: ../gtk/parameters.ui.h:33 +#: ../gtk/parameters.ui.h:30 msgid "Manage SIP Accounts" msgstr "Gérer mes comptes SIP" -#: ../gtk/parameters.ui.h:34 +#: ../gtk/parameters.ui.h:31 msgid "Ring sound:" msgstr "Sonnerie:" -#: ../gtk/parameters.ui.h:35 +#: ../gtk/parameters.ui.h:32 msgid "ALSA special device (optional):" msgstr "Appareil ALSA spécifique (optionnel) :" -#: ../gtk/parameters.ui.h:36 +#: ../gtk/parameters.ui.h:33 msgid "Capture device:" msgstr "Périphérique de capture:" -#: ../gtk/parameters.ui.h:37 +#: ../gtk/parameters.ui.h:34 msgid "Ring device:" msgstr "Périphérique de sonnerie:" -#: ../gtk/parameters.ui.h:38 +#: ../gtk/parameters.ui.h:35 msgid "Playback device:" msgstr "Périphérique d'écoute:" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" msgstr "Activer l'annulation d'écho" -#: ../gtk/parameters.ui.h:40 +#: ../gtk/parameters.ui.h:37 msgid "Audio" msgstr "Son" -#: ../gtk/parameters.ui.h:41 +#: ../gtk/parameters.ui.h:38 msgid "Video input device:" msgstr "Périphérique d'entrée vidéo" -#: ../gtk/parameters.ui.h:42 +#: ../gtk/parameters.ui.h:39 msgid "Preferred video resolution:" msgstr "Résolution vidéo préférée :" -#: ../gtk/parameters.ui.h:43 +#: ../gtk/parameters.ui.h:40 msgid "Video output method:" msgstr "Type de rendu video:" -#: ../gtk/parameters.ui.h:44 +#: ../gtk/parameters.ui.h:41 msgid "Show camera preview" msgstr "Afficher la vidéo" -#: ../gtk/parameters.ui.h:45 +#: ../gtk/parameters.ui.h:42 msgid "Video preset:" msgstr "Profile vidéo:" -#: ../gtk/parameters.ui.h:46 +#: ../gtk/parameters.ui.h:43 msgid "Preferred video framerate:" msgstr "Fréquence d'images préférée" -#: ../gtk/parameters.ui.h:47 +#: ../gtk/parameters.ui.h:44 msgid "0 stands for \"unlimited\"" msgstr "Indiquez 0 pour ne pas mettre de limite" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "Video" -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" msgstr "Limite de débit montant en kbits/sec:" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" msgstr "Limite de débit descendant en kbits/sec:" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" msgstr "Activer le control de débit adaptatif." -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." msgstr "Le control de débit adaptatif est une technique pour adapter la qualité de l'audio et de la video en fonction de la bande passante disponible, durant l'appel." -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "Gestion de la bande passante" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" msgstr "Paramètres multimedia" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" msgstr "Spécifier la Maximum Transmission Unit" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" msgstr "Envoyer les digits en tant que SIP INFO" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "Utiliser IPv6" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "Transport" -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "Port SIP / UDP" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" msgstr "Aléatoire" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "Port SIP / TCP" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" msgstr "Audio RTP / UDP :" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "Fixe" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" msgstr "Vidéo RTP / UDP :" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "Tunnel" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" msgstr "Champs DSCP" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" msgstr "Protocoles réseaux et ports" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" msgstr "Connexion directe à l'Internet" -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" msgstr "Derrière un pare-feu (spécifier la passerelle ci dessous)" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "Derrière un pare-feu (utiliser STUN)" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" msgstr "Derrière un pare-feu (utiliser ICE)" -#: ../gtk/parameters.ui.h:73 +#: ../gtk/parameters.ui.h:70 msgid "Behind NAT / Firewall (use uPnP)" msgstr "Derrière un pare-feu (utiliser uPnP)" -#: ../gtk/parameters.ui.h:74 +#: ../gtk/parameters.ui.h:71 msgid "Public IP address:" msgstr "Adresse IP publique:" -#: ../gtk/parameters.ui.h:75 +#: ../gtk/parameters.ui.h:72 msgid "Stun server:" msgstr "Serveur STUN:" -#: ../gtk/parameters.ui.h:76 +#: ../gtk/parameters.ui.h:73 msgid "NAT and Firewall" msgstr "Paramètres liés au pare-feu" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "Type d'encryption media" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" msgstr "Utiliser Lime pour les messages de discussions sortants" -#: ../gtk/parameters.ui.h:79 +#: ../gtk/parameters.ui.h:76 msgid "Media encryption is mandatory" msgstr "Le chiffrement media est obligatoire" -#: ../gtk/parameters.ui.h:80 +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" +msgstr "" + +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" +msgstr "" + +#: ../gtk/parameters.ui.h:79 msgid "Encryption" msgstr "Chiffrement" -#: ../gtk/parameters.ui.h:81 +#: ../gtk/parameters.ui.h:80 msgid "Network settings" msgstr "Paramètres réseau" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" msgstr "Activer" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "Désactiver" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" msgstr "Codecs audio" -#: ../gtk/parameters.ui.h:85 +#: ../gtk/parameters.ui.h:84 msgid "Video codecs" msgstr "Codecs vidéo" -#: ../gtk/parameters.ui.h:86 +#: ../gtk/parameters.ui.h:85 msgid "Codecs" msgstr "Codecs" -#: ../gtk/parameters.ui.h:87 +#: ../gtk/parameters.ui.h:86 msgid "Language" msgstr "Langue" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "Montrer les réglages avancés" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "Niveau" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" msgstr "Interface utilisateur" -#: ../gtk/parameters.ui.h:94 +#: ../gtk/parameters.ui.h:93 msgid "LDAP Account setup" msgstr "Configuration LDAP" -#: ../gtk/parameters.ui.h:95 +#: ../gtk/parameters.ui.h:94 msgid "LDAP" msgstr "LDAP" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "Fermer" @@ -1791,52 +1795,52 @@ msgstr "Configuration d'un proxy http (optionel)" msgid "Please wait" msgstr "En attente" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "Prêt." -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" msgstr "Configuration en cours" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" msgstr "Appel de" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" msgstr "Echec de l'appel" -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" msgstr "Désolé, le nombre maximum d'appels simultanés est atteint." -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "vous appelle" -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." msgstr "et sollicite un décrochage automatique." -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." msgstr "Modifications des paramètres d'appels..." -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "En ligne." -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "Appel abandonné" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" msgstr "La mise en attente a échoué" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." msgstr "Mise en attente de l'appel..." @@ -1844,59 +1848,59 @@ msgstr "Mise en attente de l'appel..." msgid "Stun lookup in progress..." msgstr "Découverte STUN en cours" -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." msgstr "Collection des candidats locaux ICE en cours..." -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "Disponible" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "Occupé" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "De retour" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "Absent" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" msgstr "Au téléphone" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" msgstr "A table" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "Ne pas déranger" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "Parti" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" msgstr "Utilisation d'un autre service de messagerie" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" msgstr "Non connecté" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "En attente" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "En congé" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "Status inconnu" @@ -1920,12 +1924,12 @@ msgstr "Recherche de la destination du numéro de téléphone..." msgid "Could not resolve this number." msgstr "La destination n'a pu être trouvée." -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "Echec de la connexion en tant que %s" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." msgstr "Rafraichissement de %s..." @@ -2034,16 +2038,16 @@ msgstr "Service indisponible, nouvelle tentative" msgid "Authentication token is %s" msgstr "Le jeton d'authentification est %s" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." msgstr "Les paramètres d'appel n'ont pas pu être modifiés : %s." -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." msgstr "Les paramètres d'appel ont été modifiés avec succès." -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." diff --git a/po/he.po b/po/he.po index 54dfadc3c..81550b63a 100644 --- a/po/he.po +++ b/po/he.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:56+0000\n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" "Last-Translator: Belledonne Communications \n" "Language-Team: Hebrew (http://www.transifex.com/belledonne-communications/linphone-gtk/language/he/)\n" "MIME-Version: 1.0\n" @@ -37,7 +37,7 @@ msgstr "שלח טקסט אל %s" msgid "Add %s to your contact list" msgstr "הוסף את %s לרשימת הקשר שלך" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "שיחות אחרונות" @@ -109,7 +109,7 @@ msgstr "כעת שולח..." msgid "Message not sent" msgstr "הודעה לא נשלחה" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "העתק" @@ -155,7 +155,7 @@ msgstr "" msgid "Run self test and exit 0 if succeed" msgstr "" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" @@ -163,80 +163,80 @@ msgid "" "If you answer no, this person will be temporarily blacklisted." msgstr "" -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" msgstr "אנא הזן סיסמה עבור משתמש %s\nבמתחם %s:" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "שגיאת קריאה" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "שיחה הסתיימה" -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "קריאה נכנסת" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "לענות" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "לדחות" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "שיחה הושהתה" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "על ידי %s" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" msgstr "‏%s רוצה להתחיל וידאו. האם אתה מסכים ?" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "קישור אתר רשת" -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "Linphone" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" msgstr "וידאופון אינטרנטי" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" msgstr "‫%s (ברירת מחדל)" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" msgstr "אנחנו מועברים אל %s" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." msgstr "לא אותרו כרטיסי קול במחשב זה.\nלא תהיה ביכולתך לשלוח או לקבל שיחות אודיו." -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "וידאופון SIP חופשי" -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "שלום\n" @@ -250,31 +250,31 @@ msgstr "הוסף אל ספר כתובות" msgid "Search in %s directory" msgstr "חיפוש במדור %s" -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "כתובת sip לא תקפה !" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "הוסף איש קשר חדש" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "ערוך איש קשר '%s'" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "מחק איש קשר '%s'" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "מחק היסטוריית שיחה של '%s'" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" msgstr "הוסף איש קשר חדש מן מדור %s" @@ -303,7 +303,7 @@ msgstr "פרמטרים" msgid "Enabled" msgstr "מופעל" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "לא מופעל" @@ -744,7 +744,7 @@ msgstr "הבא נתחיל את Linphone עכשיו" msgid "Audio Assistant" msgstr "" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "" @@ -958,15 +958,15 @@ msgstr "אומדן איכות שיחה" msgid "LDAP Settings" msgstr "הגדרות LDAP" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" msgstr "כתובת שרת:" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" msgstr "" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "שם משתמש:" @@ -1132,58 +1132,66 @@ msgid "Show keypad" msgstr "הצג לוח חיוג" #: ../gtk/main.ui.h:8 +msgid "Import contacts from vCards" +msgstr "" + +#: ../gtk/main.ui.h:9 +msgid "Export contacts as vCards" +msgstr "" + +#: ../gtk/main.ui.h:10 msgid "_Help" msgstr "_עזרה" -#: ../gtk/main.ui.h:9 +#: ../gtk/main.ui.h:11 msgid "Show debug window" msgstr "הצג חלון ניפוי שגיאות" -#: ../gtk/main.ui.h:10 +#: ../gtk/main.ui.h:12 msgid "_Homepage" msgstr "_עמוד הבית" -#: ../gtk/main.ui.h:11 +#: ../gtk/main.ui.h:13 msgid "Check _Updates" msgstr "בדיקת _עדכונים" -#: ../gtk/main.ui.h:12 +#: ../gtk/main.ui.h:14 msgid "Account assistant" msgstr "אשף חשבון" -#: ../gtk/main.ui.h:14 +#: ../gtk/main.ui.h:16 msgid "SIP address or phone number:" msgstr "כתובת SIP או מספר טלפון" -#: ../gtk/main.ui.h:15 +#: ../gtk/main.ui.h:17 msgid "Initiate a new call" msgstr "התחל שיחה חדשה" -#: ../gtk/main.ui.h:16 +#: ../gtk/main.ui.h:18 msgid "Contacts" msgstr "אנשי קשר" -#: ../gtk/main.ui.h:17 +#: ../gtk/main.ui.h:19 msgid "Search" msgstr "חיפוש" -#: ../gtk/main.ui.h:18 +#: ../gtk/main.ui.h:20 msgid "Add contacts from directory" msgstr "הוסף אנשי קשר מן מדור" -#: ../gtk/main.ui.h:19 +#: ../gtk/main.ui.h:21 msgid "Add contact" msgstr "הוסף איש קשר" -#: ../gtk/main.ui.h:20 +#: ../gtk/main.ui.h:22 msgid "Clear call history" msgstr "טהר היסטוריית שיחות" -#: ../gtk/main.ui.h:22 +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "זהותי הנוכחית:" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" msgstr "מענה אוטומטי הינו מאופשר" @@ -1240,320 +1248,316 @@ msgid "SIP (TLS)" msgstr "‏SIP ‏(TLS)" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "הגדרות" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" msgstr "חלק זה מגדיר את כתובת ה־SIP כאשר אינך עושה שימוש בחשבון SIP" -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" msgstr "שם התצוגה שלך (למשל: יורם יהודה):" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "שם המשתמש שלך:" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" msgstr "כתובת SIP נובעת:" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" msgstr "זהות משתמטת" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" msgstr "אשף" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "הוסף" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "ערוך" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "הסר" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" msgstr "חשבונות Proxy" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" msgstr "מחק סיסמאות" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "פרטיות" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" msgstr "" -#: ../gtk/parameters.ui.h:31 +#: ../gtk/parameters.ui.h:28 msgid "Delay before answering (ms)" msgstr "" -#: ../gtk/parameters.ui.h:32 +#: ../gtk/parameters.ui.h:29 msgid "Auto-answer" msgstr "מענה-אוטומטי" -#: ../gtk/parameters.ui.h:33 +#: ../gtk/parameters.ui.h:30 msgid "Manage SIP Accounts" msgstr "ניהול חשבונות ‫SIP" -#: ../gtk/parameters.ui.h:34 +#: ../gtk/parameters.ui.h:31 msgid "Ring sound:" msgstr "צליל צלצול:" -#: ../gtk/parameters.ui.h:35 +#: ../gtk/parameters.ui.h:32 msgid "ALSA special device (optional):" msgstr "התקן ALSA מיוחד (רשות):" -#: ../gtk/parameters.ui.h:36 +#: ../gtk/parameters.ui.h:33 msgid "Capture device:" msgstr "התקן לכידה:" -#: ../gtk/parameters.ui.h:37 +#: ../gtk/parameters.ui.h:34 msgid "Ring device:" msgstr "התקן צלצול:" -#: ../gtk/parameters.ui.h:38 +#: ../gtk/parameters.ui.h:35 msgid "Playback device:" msgstr "התקן פס קול:" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" msgstr "אפשר ביטול הד" -#: ../gtk/parameters.ui.h:40 +#: ../gtk/parameters.ui.h:37 msgid "Audio" msgstr "אודיו" -#: ../gtk/parameters.ui.h:41 +#: ../gtk/parameters.ui.h:38 msgid "Video input device:" msgstr "התקן קלט וידאו:" -#: ../gtk/parameters.ui.h:42 +#: ../gtk/parameters.ui.h:39 msgid "Preferred video resolution:" msgstr "" -#: ../gtk/parameters.ui.h:43 +#: ../gtk/parameters.ui.h:40 msgid "Video output method:" msgstr "" -#: ../gtk/parameters.ui.h:44 +#: ../gtk/parameters.ui.h:41 msgid "Show camera preview" msgstr "" -#: ../gtk/parameters.ui.h:45 +#: ../gtk/parameters.ui.h:42 msgid "Video preset:" msgstr "" -#: ../gtk/parameters.ui.h:46 +#: ../gtk/parameters.ui.h:43 msgid "Preferred video framerate:" msgstr "" -#: ../gtk/parameters.ui.h:47 +#: ../gtk/parameters.ui.h:44 msgid "0 stands for \"unlimited\"" msgstr "0 מסמל \"בלי הגבלה\"" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "וידאו" -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" msgstr "מגבלת מהירות העלאה בקי״ב/שנ׳:" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" msgstr "מגבלת מהירות הורדה בקי״ב/שנ׳:" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" msgstr "אפשר בקרת קצב מסתגלת" -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." msgstr "בקרת קצב מסתגלת הינה טכניקה להשערה דינמית של רוחב הפס הזמין במהלך שיחה." -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "בקרת רוחב פס" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" msgstr "הגדרות מולטימדיה" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" msgstr "הגדר יחידת תמסורת מרבית:" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" msgstr "שלח טזמ״תים (DTMFs) כמידע SIP" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "התר IPv6" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "טרנספורט" -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "פורט SIP/UDP" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" msgstr "אקראי" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "פורט SIP/TCP" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" msgstr "אודיו RTP/UDP:" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "מקובע" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" msgstr "וידאו RTP/UDP:" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "מינהור" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" msgstr "שדות DSCP" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" msgstr "פרוטוקולי רשת תקשורת ופורטים" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" msgstr "חיבור ישיר אל האינטרנט" -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" msgstr "" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "מאחורי NAT / חומת אש (בעזרת STUN לפתירה)" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" msgstr "מאחורי NAT / חומת אש (בעזרת ICE)" -#: ../gtk/parameters.ui.h:73 +#: ../gtk/parameters.ui.h:70 msgid "Behind NAT / Firewall (use uPnP)" msgstr "מאחורי NAT / חומת אש (בעזרת uPnP)" -#: ../gtk/parameters.ui.h:74 +#: ../gtk/parameters.ui.h:71 msgid "Public IP address:" msgstr "כתובת IP פומבית:" -#: ../gtk/parameters.ui.h:75 +#: ../gtk/parameters.ui.h:72 msgid "Stun server:" msgstr "שרת STUN:" -#: ../gtk/parameters.ui.h:76 +#: ../gtk/parameters.ui.h:73 msgid "NAT and Firewall" msgstr "‫NAT וחומת אש" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "סוג הצפנת מדיה" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" msgstr "" -#: ../gtk/parameters.ui.h:79 +#: ../gtk/parameters.ui.h:76 msgid "Media encryption is mandatory" msgstr "הצפנת מדיה הינה מנדטורית" -#: ../gtk/parameters.ui.h:80 +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" +msgstr "" + +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" +msgstr "" + +#: ../gtk/parameters.ui.h:79 msgid "Encryption" msgstr "" -#: ../gtk/parameters.ui.h:81 +#: ../gtk/parameters.ui.h:80 msgid "Network settings" msgstr "הגדרות רשת תקשורת" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" msgstr "אפשר" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "נטרל" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" msgstr "" -#: ../gtk/parameters.ui.h:85 +#: ../gtk/parameters.ui.h:84 msgid "Video codecs" msgstr "" -#: ../gtk/parameters.ui.h:86 +#: ../gtk/parameters.ui.h:85 msgid "Codecs" msgstr "קודקים" -#: ../gtk/parameters.ui.h:87 +#: ../gtk/parameters.ui.h:86 msgid "Language" msgstr "שפה" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "הצג הגדרות מתקדמות" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "רמה" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" msgstr "ממשק משתמש" -#: ../gtk/parameters.ui.h:94 +#: ../gtk/parameters.ui.h:93 msgid "LDAP Account setup" msgstr "הבניית חשבון LDAP" -#: ../gtk/parameters.ui.h:95 +#: ../gtk/parameters.ui.h:94 msgid "LDAP" msgstr "" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "סיום" @@ -1791,52 +1795,52 @@ msgstr "הגדר http proxy (רשות)" msgid "Please wait" msgstr "נא להמתין" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "מוכן" -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" msgstr "תצורה" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" msgstr "מתקשר כעת" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" msgstr "לא ניתן להתקשר" -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" msgstr "הגענו אל המספר המרבי של שיחות מקבילות, עמך הסליחה" -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "מתקשר/ת אליך" -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." msgstr " ומבקש/ת מענה אוטומטי." -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." msgstr "מתאים כעת פרמטרים של שיחה..." -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "מקושר." -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "קריאה בוטלה" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" msgstr "לא ניתן להשהות את השיחה" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." msgstr "משהה כעת שיחה נוכחית..." @@ -1844,59 +1848,59 @@ msgstr "משהה כעת שיחה נוכחית..." msgid "Stun lookup in progress..." msgstr "בדיקת STUN מצויה כעת בעיצומה..." -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." msgstr "צבירת מועמדים מקומיים של ICE מצויה כעת בעיצומה..." -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "מקוון" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "עסוק" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "כבר אשוב" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "נעדר" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" msgstr "בטלפון" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" msgstr "בארוחת צהריים" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "נא לא להפריע" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "עברתי דירה" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" msgstr "אני עושה כעת שימוש בשירות מסרים אחר" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" msgstr "לא מקוון" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "בהמתנה" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "חופשה" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "מצב לא ידוע" @@ -1920,12 +1924,12 @@ msgstr "מחפש כעת עבור יעד מספר טלפון..." msgid "Could not resolve this number." msgstr "לא ניתן לפתור את מספר זה." -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "לא ניתן להתחבר בזהות %s" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." msgstr "" @@ -2034,16 +2038,16 @@ msgstr "" msgid "Authentication token is %s" msgstr "אות האימות הינה %s" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." msgstr "" -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." msgstr "" -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." diff --git a/po/hu.po b/po/hu.po index 061309dd3..68a1fb459 100644 --- a/po/hu.po +++ b/po/hu.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:56+0000\n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" "Last-Translator: Belledonne Communications \n" "Language-Team: Hungarian (http://www.transifex.com/belledonne-communications/linphone-gtk/language/hu/)\n" "MIME-Version: 1.0\n" @@ -33,7 +33,7 @@ msgstr "Szöveg küldése a következőnek: %s" msgid "Add %s to your contact list" msgstr "" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "Legutóbbi hívások" @@ -105,7 +105,7 @@ msgstr "" msgid "Message not sent" msgstr "" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "" @@ -151,7 +151,7 @@ msgstr "" msgid "Run self test and exit 0 if succeed" msgstr "" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" @@ -159,80 +159,80 @@ msgid "" "If you answer no, this person will be temporarily blacklisted." msgstr "" -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" msgstr "" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "Hiba a hívás közben" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "Hívás vége" -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "Beérkező hívás" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "Hívás fogadása" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "Elutasítás" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "Hívás várakoztatva" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "a következő által: %s" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" msgstr "%s szerené elidítani a videót. Elfogadja?" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "Internetes oldal" -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "Linphone" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" msgstr "" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" msgstr "%s (Alapértelmezett)" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" msgstr "Át vagyunk irányítva ide: %s" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." msgstr "Hangkártya nincs érzékelve ezen a számítógépen.\nNem fog tudni hang hívásokat küldeni vagy fogadni." -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "Egy ingyenes SIP video-telefon" -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "" @@ -246,31 +246,31 @@ msgstr "Hozzáadás címjegyzékhez" msgid "Search in %s directory" msgstr "Keresés ebben a könyvtárban: %s" -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "Érvénytelen sip partner !" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "Kapcsolatinformációk szerkesztése: '%s'" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "'%s' partner törlése" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" msgstr "Új partner hozzáadása ebből a könyvtárból: %s" @@ -299,7 +299,7 @@ msgstr "Paraméterek" msgid "Enabled" msgstr "Engedélyezve" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "Tiltva" @@ -740,7 +740,7 @@ msgstr "" msgid "Audio Assistant" msgstr "" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "" @@ -954,15 +954,15 @@ msgstr "Hívásminőség" msgid "LDAP Settings" msgstr "" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" msgstr "" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" msgstr "" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "Felhasználónév:" @@ -1128,58 +1128,66 @@ msgid "Show keypad" msgstr "" #: ../gtk/main.ui.h:8 +msgid "Import contacts from vCards" +msgstr "" + +#: ../gtk/main.ui.h:9 +msgid "Export contacts as vCards" +msgstr "" + +#: ../gtk/main.ui.h:10 msgid "_Help" msgstr "_Segítség" -#: ../gtk/main.ui.h:9 +#: ../gtk/main.ui.h:11 msgid "Show debug window" msgstr "Hibakeresési ablak mutatása" -#: ../gtk/main.ui.h:10 +#: ../gtk/main.ui.h:12 msgid "_Homepage" msgstr "_Honlap" -#: ../gtk/main.ui.h:11 +#: ../gtk/main.ui.h:13 msgid "Check _Updates" msgstr "Frissítések keresése" -#: ../gtk/main.ui.h:12 +#: ../gtk/main.ui.h:14 msgid "Account assistant" msgstr "Fiók varázsló" -#: ../gtk/main.ui.h:14 +#: ../gtk/main.ui.h:16 msgid "SIP address or phone number:" msgstr "Adja meg a SIP címet vagy a telefonszámot:" -#: ../gtk/main.ui.h:15 +#: ../gtk/main.ui.h:17 msgid "Initiate a new call" msgstr "Új hívás kezdeményezése" -#: ../gtk/main.ui.h:16 +#: ../gtk/main.ui.h:18 msgid "Contacts" msgstr "Partnerek" -#: ../gtk/main.ui.h:17 +#: ../gtk/main.ui.h:19 msgid "Search" msgstr "Keresés" -#: ../gtk/main.ui.h:18 +#: ../gtk/main.ui.h:20 msgid "Add contacts from directory" msgstr "Partnerek hozzáadása könyvtárból" -#: ../gtk/main.ui.h:19 +#: ../gtk/main.ui.h:21 msgid "Add contact" msgstr "Partner hozzáadása" -#: ../gtk/main.ui.h:20 +#: ../gtk/main.ui.h:22 msgid "Clear call history" msgstr "" -#: ../gtk/main.ui.h:22 +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "Jelenlegi identitásom:" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" msgstr "" @@ -1236,320 +1244,316 @@ msgid "SIP (TLS)" msgstr "SIP (TLS)" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "Beállítások" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" msgstr "Ez a rész határozza meg az Ön SIP címét, amikor nem használ SIP fiókot" -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" msgstr "Az Ön megjelenített neve (pl. Kis József):" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "Az Ön felhasználóneve:" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" msgstr "Az Ön így keletkezett SIP címe:" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" msgstr "Alapértelmezett identitás" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" msgstr "Varázsló" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "Hozzáadás" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "Szerkesztés" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "Eltávolítás" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" msgstr "Proxy fiókok" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" msgstr "Minden kulcsszó törlése" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "Titoktartás" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" msgstr "" -#: ../gtk/parameters.ui.h:31 +#: ../gtk/parameters.ui.h:28 msgid "Delay before answering (ms)" msgstr "" -#: ../gtk/parameters.ui.h:32 +#: ../gtk/parameters.ui.h:29 msgid "Auto-answer" msgstr "" -#: ../gtk/parameters.ui.h:33 +#: ../gtk/parameters.ui.h:30 msgid "Manage SIP Accounts" msgstr "SIP fiókok beállítása" -#: ../gtk/parameters.ui.h:34 +#: ../gtk/parameters.ui.h:31 msgid "Ring sound:" msgstr "Csengőhang:" -#: ../gtk/parameters.ui.h:35 +#: ../gtk/parameters.ui.h:32 msgid "ALSA special device (optional):" msgstr "Különleges ALSA eszköz (nem kötelező):" -#: ../gtk/parameters.ui.h:36 +#: ../gtk/parameters.ui.h:33 msgid "Capture device:" msgstr "Felvevő hang eszköz:" -#: ../gtk/parameters.ui.h:37 +#: ../gtk/parameters.ui.h:34 msgid "Ring device:" msgstr "Csengőhang eszköz:" -#: ../gtk/parameters.ui.h:38 +#: ../gtk/parameters.ui.h:35 msgid "Playback device:" msgstr "Lejátszó hang eszköz:" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" msgstr "Visszhang-elnyomás engedélyezése" -#: ../gtk/parameters.ui.h:40 +#: ../gtk/parameters.ui.h:37 msgid "Audio" msgstr "Audió" -#: ../gtk/parameters.ui.h:41 +#: ../gtk/parameters.ui.h:38 msgid "Video input device:" msgstr "Videó bemeneti eszköz:" -#: ../gtk/parameters.ui.h:42 +#: ../gtk/parameters.ui.h:39 msgid "Preferred video resolution:" msgstr "" -#: ../gtk/parameters.ui.h:43 +#: ../gtk/parameters.ui.h:40 msgid "Video output method:" msgstr "" -#: ../gtk/parameters.ui.h:44 +#: ../gtk/parameters.ui.h:41 msgid "Show camera preview" msgstr "" -#: ../gtk/parameters.ui.h:45 +#: ../gtk/parameters.ui.h:42 msgid "Video preset:" msgstr "" -#: ../gtk/parameters.ui.h:46 +#: ../gtk/parameters.ui.h:43 msgid "Preferred video framerate:" msgstr "" -#: ../gtk/parameters.ui.h:47 +#: ../gtk/parameters.ui.h:44 msgid "0 stands for \"unlimited\"" msgstr "A 0 jelentése \"végtelen\"" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "Videó" -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" msgstr "Feltöltési sebesség korlát (kbit/mp):" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" msgstr "Letöltési sebesség korlát (kbit/mp):" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" msgstr "Alkalmazkodó mérték-szabályozás engedélyezése" -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." msgstr "Az alkalmazkodó mérték-szabályozás egy módszer, mely erőteljesen próbálja megállapítani a rendelkezésre álló sávszélességet hívás alatt." -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "Sávszélesség szabályozása" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" msgstr "Multimédia beállítások" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" msgstr "Maximum Továbbítási Egység beállítása:" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" msgstr "DTMF küldése SIP infóként" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "Átvitel" -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" msgstr "" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" msgstr "Audió RTP/UDP:" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "Javítva" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" msgstr "Videó RTP/UDP:" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "Alagút" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" msgstr "DSCP mezők" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" msgstr "Hálózati protokoll és port" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" msgstr "Közvetlen Internet kapcsolat" -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" msgstr "" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "NAT / tűzfal mögött (STUN használata a feloldáshoz)" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" msgstr "NAT / tűzfal mögött (ICE használata)" -#: ../gtk/parameters.ui.h:73 +#: ../gtk/parameters.ui.h:70 msgid "Behind NAT / Firewall (use uPnP)" msgstr "NAT / tűzfal mögött (uPnP használata)" -#: ../gtk/parameters.ui.h:74 +#: ../gtk/parameters.ui.h:71 msgid "Public IP address:" msgstr "Publikus IP cím:" -#: ../gtk/parameters.ui.h:75 +#: ../gtk/parameters.ui.h:72 msgid "Stun server:" msgstr "STUN kiszolgáló:" -#: ../gtk/parameters.ui.h:76 +#: ../gtk/parameters.ui.h:73 msgid "NAT and Firewall" msgstr "NAT és tűzfal" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "Média titkosítás típusa" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" msgstr "" -#: ../gtk/parameters.ui.h:79 +#: ../gtk/parameters.ui.h:76 msgid "Media encryption is mandatory" msgstr "Média titkosítás kötelező" -#: ../gtk/parameters.ui.h:80 +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" +msgstr "" + +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" +msgstr "" + +#: ../gtk/parameters.ui.h:79 msgid "Encryption" msgstr "" -#: ../gtk/parameters.ui.h:81 +#: ../gtk/parameters.ui.h:80 msgid "Network settings" msgstr "Hálózati beállítások" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" msgstr "Engedélyezés" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "Tiltás" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" msgstr "" -#: ../gtk/parameters.ui.h:85 +#: ../gtk/parameters.ui.h:84 msgid "Video codecs" msgstr "" -#: ../gtk/parameters.ui.h:86 +#: ../gtk/parameters.ui.h:85 msgid "Codecs" msgstr "Kódekek" -#: ../gtk/parameters.ui.h:87 +#: ../gtk/parameters.ui.h:86 msgid "Language" msgstr "Nyelv" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "Haladó beállítások megjelenítése" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "Szint" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" msgstr "Felhasználói környezet" -#: ../gtk/parameters.ui.h:94 +#: ../gtk/parameters.ui.h:93 msgid "LDAP Account setup" msgstr "" -#: ../gtk/parameters.ui.h:95 +#: ../gtk/parameters.ui.h:94 msgid "LDAP" msgstr "" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "Kész" @@ -1787,52 +1791,52 @@ msgstr "http proxy beállítása (nem kötelező)" msgid "Please wait" msgstr "Kérem várjon" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "Kész" -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" msgstr "" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" msgstr "Kapcsolódás" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" msgstr "Nem sikerült hívni" -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" msgstr "Elnézést, elértük a egyidejű hívások maximális számát" -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "kapcsolatba lépett veled." -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." msgstr "és automatikus választ kért." -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." msgstr "A hívási jellemzők módosítása..." -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "Kapcsolódva." -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "Hívás megszakítva" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" msgstr "Nem sikerült várakoztatni a hívást" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." msgstr "Jelenlegi hívás várakoztatásának aktiválása..." @@ -1840,59 +1844,59 @@ msgstr "Jelenlegi hívás várakoztatásának aktiválása..." msgid "Stun lookup in progress..." msgstr "Stun keresés folyamatban..." -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." msgstr "ICE helyi jelentkezők begyűjtése folyamatban..." -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "Elérhető" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "Foglalt" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "Mindjárt visszajön" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "Nem elérhető" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" msgstr "Vonalban" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" msgstr "Ebédelni ment" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "Ne zavarj" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "Elment" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" msgstr "Másik üzenő szolgáltatás használata" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" msgstr "Nem elérhető" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "Függőben" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "" @@ -1916,12 +1920,12 @@ msgstr "Telefonszám-cél keresése..." msgid "Could not resolve this number." msgstr "Nem sikkerült értelmezni a számot." -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "Nem sikerült belépni ezzel: %s" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." msgstr "" @@ -2030,16 +2034,16 @@ msgstr "" msgid "Authentication token is %s" msgstr "Hitelesítési jel: %s" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." msgstr "" -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." msgstr "" -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." diff --git a/po/it.po b/po/it.po index dbc7ba69c..b16050ce1 100644 --- a/po/it.po +++ b/po/it.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:56+0000\n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" "Last-Translator: Belledonne Communications \n" "Language-Team: Italian (http://www.transifex.com/belledonne-communications/linphone-gtk/language/it/)\n" "MIME-Version: 1.0\n" @@ -34,7 +34,7 @@ msgstr "Invia messaggio a %s" msgid "Add %s to your contact list" msgstr "Aggiungi %s alla tua lista dei contatti" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "Chiamate recenti" @@ -106,7 +106,7 @@ msgstr "Invio in corso..." msgid "Message not sent" msgstr "Messaggio non inviato" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "Copia" @@ -152,7 +152,7 @@ msgstr "Avvia l'assistente audio" msgid "Run self test and exit 0 if succeed" msgstr "Esegui il self test e esci con 0 in caso di successo" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" @@ -160,80 +160,80 @@ msgid "" "If you answer no, this person will be temporarily blacklisted." msgstr "%s vorrebbe aggiungerti alla sua lista dei contatti.\nVuoi aggiungerlo/a ai tuoi contatti e pemettergli di conoscere la tua presenza?\nSe rispondi NO questa persona verrà temporaneamente bloccata." -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" msgstr "Digitare la password per l'utente %s\nnel dominio %s:" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "Errore durante la chiamata" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "Chiamata terminata" -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "Chiamata in arrivo" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "Risposta" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "Rifiuta" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "Chiamata in pausa" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "da %s" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" msgstr "%s chiede di avviare il video. Accetti ?" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "Collegamento al sito web" -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "Linphone" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" msgstr "Un videotelefono su internet" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" msgstr "%s (Default)" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" msgstr "Siamo trasferiti verso %s" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." msgstr "Non è stata trovata nessuna scheda audio.\nNon sarà possibile effettuare o ricevere chiamate in voce." -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "Un videotelefono SIP free" -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "Salve\n" @@ -247,31 +247,31 @@ msgstr "Aggiungi alla rubrica" msgid "Search in %s directory" msgstr "Cerca contatti nella directory %s" -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "Contatto SIP non valido" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "Aggiungi un nuovo contatto" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "Modifica contatto %s" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "Elimina il contatto %s" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "Cancella la cronologia della chat con '%s'" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" msgstr "Aggiungi nuovo contatto dalla directory %s" @@ -300,7 +300,7 @@ msgstr "Parametri" msgid "Enabled" msgstr "Attivato" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "Disattivato" @@ -741,7 +741,7 @@ msgstr "Ora è possibile usare Linphone" msgid "Audio Assistant" msgstr "Assistente Audio" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "Assistente Audio" @@ -955,15 +955,15 @@ msgstr "Giudizio della qualità della chiamata" msgid "LDAP Settings" msgstr "Configurazione LDAP" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" msgstr "Indirizzo del server:" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" msgstr "Metodo di autenticazione" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "Nome utente:" @@ -1129,58 +1129,66 @@ msgid "Show keypad" msgstr "Mostra il tastierino" #: ../gtk/main.ui.h:8 +msgid "Import contacts from vCards" +msgstr "" + +#: ../gtk/main.ui.h:9 +msgid "Export contacts as vCards" +msgstr "" + +#: ../gtk/main.ui.h:10 msgid "_Help" msgstr "_Aiuto" -#: ../gtk/main.ui.h:9 +#: ../gtk/main.ui.h:11 msgid "Show debug window" msgstr "Mostra la finestra di debug" -#: ../gtk/main.ui.h:10 +#: ../gtk/main.ui.h:12 msgid "_Homepage" msgstr "_Homepage" -#: ../gtk/main.ui.h:11 +#: ../gtk/main.ui.h:13 msgid "Check _Updates" msgstr "Check _Updates" -#: ../gtk/main.ui.h:12 +#: ../gtk/main.ui.h:14 msgid "Account assistant" msgstr "Assistente per l'account" -#: ../gtk/main.ui.h:14 +#: ../gtk/main.ui.h:16 msgid "SIP address or phone number:" msgstr "Indirizzo sip o numero." -#: ../gtk/main.ui.h:15 +#: ../gtk/main.ui.h:17 msgid "Initiate a new call" msgstr "Inizia una nuova chiamata" -#: ../gtk/main.ui.h:16 +#: ../gtk/main.ui.h:18 msgid "Contacts" msgstr "Contatti" -#: ../gtk/main.ui.h:17 +#: ../gtk/main.ui.h:19 msgid "Search" msgstr "Ricerca" -#: ../gtk/main.ui.h:18 +#: ../gtk/main.ui.h:20 msgid "Add contacts from directory" msgstr "Aggiungi contatti dalla directory" -#: ../gtk/main.ui.h:19 +#: ../gtk/main.ui.h:21 msgid "Add contact" msgstr "Aggiungi un contatto" -#: ../gtk/main.ui.h:20 +#: ../gtk/main.ui.h:22 msgid "Clear call history" msgstr "Cancella la cronologia della chiamate" -#: ../gtk/main.ui.h:22 +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "Identità corrente" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" msgstr "Risponditore automatico attivato" @@ -1237,320 +1245,316 @@ msgid "SIP (TLS)" msgstr "SIP (TLS)" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "default" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "high-fps" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "custom" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "Preferenze" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" msgstr "questa sezione definisce il tuo indirizzo SIP se non hai account attivi" -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" msgstr "Nome visualizzato (es: Mario Rossi):" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "Nome utente:" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" msgstr "Il tuo indirizzo sip:" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" msgstr "Identità di default" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" msgstr "Wizard" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "Aggiungi" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "Edita" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "Rimuovi" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" msgstr "Account proxy" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" msgstr "Cancella tutte le password" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "Privacy" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" msgstr "Rispondi automaticamente alla chiamata in arrivo" -#: ../gtk/parameters.ui.h:31 +#: ../gtk/parameters.ui.h:28 msgid "Delay before answering (ms)" msgstr "Ritardo prima della risposta (ms)" -#: ../gtk/parameters.ui.h:32 +#: ../gtk/parameters.ui.h:29 msgid "Auto-answer" msgstr "Risposta automatica" -#: ../gtk/parameters.ui.h:33 +#: ../gtk/parameters.ui.h:30 msgid "Manage SIP Accounts" msgstr "Gestici SIP Account" -#: ../gtk/parameters.ui.h:34 +#: ../gtk/parameters.ui.h:31 msgid "Ring sound:" msgstr "Suoneria:" -#: ../gtk/parameters.ui.h:35 +#: ../gtk/parameters.ui.h:32 msgid "ALSA special device (optional):" msgstr "Dispositivo ALSA (optional):" -#: ../gtk/parameters.ui.h:36 +#: ../gtk/parameters.ui.h:33 msgid "Capture device:" msgstr "Dispositivo microfono:" -#: ../gtk/parameters.ui.h:37 +#: ../gtk/parameters.ui.h:34 msgid "Ring device:" msgstr "Dispositivo squillo:" -#: ../gtk/parameters.ui.h:38 +#: ../gtk/parameters.ui.h:35 msgid "Playback device:" msgstr "Dispositivo uscita audio:" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" msgstr "Attiva cancellazione eco" -#: ../gtk/parameters.ui.h:40 +#: ../gtk/parameters.ui.h:37 msgid "Audio" msgstr "Audio" -#: ../gtk/parameters.ui.h:41 +#: ../gtk/parameters.ui.h:38 msgid "Video input device:" msgstr "Dispositivo Video:" -#: ../gtk/parameters.ui.h:42 +#: ../gtk/parameters.ui.h:39 msgid "Preferred video resolution:" msgstr "Risoluzione video preferita:" -#: ../gtk/parameters.ui.h:43 +#: ../gtk/parameters.ui.h:40 msgid "Video output method:" msgstr "Modalità video in uscita:" -#: ../gtk/parameters.ui.h:44 +#: ../gtk/parameters.ui.h:41 msgid "Show camera preview" msgstr "Mostra il preview della videocamera" -#: ../gtk/parameters.ui.h:45 +#: ../gtk/parameters.ui.h:42 msgid "Video preset:" msgstr "Preconfigurazione del video:" -#: ../gtk/parameters.ui.h:46 +#: ../gtk/parameters.ui.h:43 msgid "Preferred video framerate:" msgstr "Frame rate video preferito:" -#: ../gtk/parameters.ui.h:47 +#: ../gtk/parameters.ui.h:44 msgid "0 stands for \"unlimited\"" msgstr "0 sta per illimitato" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "Video" -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" msgstr "Velocità massima in upload Kbit/sec:" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" msgstr "Velocita massima in Dowload Kbit/sec" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" msgstr "Abilita il controllo adattivo del rate" -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." msgstr "Il controllo adattivo del rate è una tecnica per la stima dinamica della banda disponibile durante una chiamata" -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "Gestione banda" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" msgstr "Impostazioni multimediali" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" msgstr "Imposta Maximum Transmission Unit:" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" msgstr "Invia DTMF come SIP info" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "Permetti IPv6" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "Transporto" -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "Porta SIP/UDP" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" msgstr "Casuale" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "Porta SIP/TCP" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" msgstr "Audio RTP/UDP:" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "Fissa" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" msgstr "Video RTP/UDP:" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "Tunnel" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" msgstr "Campi DSCP" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" msgstr "Protocollo di rete e porte" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" msgstr "Connessione diretta a internet" -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" msgstr "Dietro ad un NAT / Firewall (specificare IP del gateway)" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "Dietro NAT / Firewall (utilizza STUN)" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" msgstr "Dietro ad un NAT / Firewall (usa ICE)" -#: ../gtk/parameters.ui.h:73 +#: ../gtk/parameters.ui.h:70 msgid "Behind NAT / Firewall (use uPnP)" msgstr "Dietro ad un NAT / Fiewall (usa uPnP)" -#: ../gtk/parameters.ui.h:74 +#: ../gtk/parameters.ui.h:71 msgid "Public IP address:" msgstr "Indirizzo IP pubblico:" -#: ../gtk/parameters.ui.h:75 +#: ../gtk/parameters.ui.h:72 msgid "Stun server:" msgstr "Server STUN:" -#: ../gtk/parameters.ui.h:76 +#: ../gtk/parameters.ui.h:73 msgid "NAT and Firewall" msgstr "NAT and Firewall" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "Tipo di cifratura" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" msgstr "" -#: ../gtk/parameters.ui.h:79 +#: ../gtk/parameters.ui.h:76 msgid "Media encryption is mandatory" msgstr "La cifratura è obbligatoria" -#: ../gtk/parameters.ui.h:80 +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" +msgstr "" + +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" +msgstr "" + +#: ../gtk/parameters.ui.h:79 msgid "Encryption" msgstr "" -#: ../gtk/parameters.ui.h:81 +#: ../gtk/parameters.ui.h:80 msgid "Network settings" msgstr "Impostazioni di rete" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" msgstr "Attivato" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "Disattivato" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" msgstr "Codificatori audio" -#: ../gtk/parameters.ui.h:85 +#: ../gtk/parameters.ui.h:84 msgid "Video codecs" msgstr "Codificatori video" -#: ../gtk/parameters.ui.h:86 +#: ../gtk/parameters.ui.h:85 msgid "Codecs" msgstr "Codec" -#: ../gtk/parameters.ui.h:87 +#: ../gtk/parameters.ui.h:86 msgid "Language" msgstr "Linguaggio" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "Mostra la configurazione avanzata" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "Livello" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" msgstr "Interfaccia utente" -#: ../gtk/parameters.ui.h:94 +#: ../gtk/parameters.ui.h:93 msgid "LDAP Account setup" msgstr "Configurazione dell' account LDAP" -#: ../gtk/parameters.ui.h:95 +#: ../gtk/parameters.ui.h:94 msgid "LDAP" msgstr "LDAP" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "Fatto" @@ -1788,52 +1792,52 @@ msgstr "Configurazione del proxy http (opzionale)" msgid "Please wait" msgstr "Prego attendere" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "Pronto" -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" msgstr "Configurando" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" msgstr "In connessione" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" msgstr "Impossibile chiamare" -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" msgstr "Spiacenti, è stato raggiunto il massimo numero di chiamate simultanee" -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "ti sta contattando" -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." msgstr "e ha richiesto la risposta automatica" -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." msgstr "Modificando i parametri di chiamata..." -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "Connessione" -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "Chiamata annullata" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" msgstr "Impossibile sospendere la chiamata" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." msgstr "Sospensione della chiamata in corso..." @@ -1841,59 +1845,59 @@ msgstr "Sospensione della chiamata in corso..." msgid "Stun lookup in progress..." msgstr "Ricerca Stun in progresso ..." -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." msgstr "Raccolta dei candidati ICE locali in corso..." -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "In linea" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "Occupato" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "Torno subito" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "Assente" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" msgstr "Al telefono" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" msgstr "Fuori per pranzo" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "Non disturbare" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "Trasferito" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" msgstr "Utilizza una altro servizio di messaggistica" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" msgstr "Offline" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "Pendente" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "Assente" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "Stato sconosciuto" @@ -1917,12 +1921,12 @@ msgstr "Ricerca numero destinazione..." msgid "Could not resolve this number." msgstr "Impossibile risolvere il numero." -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "impossibile login come %s" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." msgstr "Aggiornamento da %s..." @@ -2031,16 +2035,16 @@ msgstr "Servizio non disponibile, nuovo tentativo in corso" msgid "Authentication token is %s" msgstr "Il codice di autenticazione è %s" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." msgstr "I parametri della chiamata sono stati modificati con successo: %s." -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." msgstr "I parametri della chiamata sono stati modificati con successo." -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." diff --git a/po/ja.po b/po/ja.po index 33ee161ad..32ec86489 100644 --- a/po/ja.po +++ b/po/ja.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:56+0000\n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" "Last-Translator: Belledonne Communications \n" "Language-Team: Japanese (http://www.transifex.com/belledonne-communications/linphone-gtk/language/ja/)\n" "MIME-Version: 1.0\n" @@ -34,7 +34,7 @@ msgstr "%s に文章を送信" msgid "Add %s to your contact list" msgstr "%sを連絡先に追加" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "通話時間" @@ -104,7 +104,7 @@ msgstr "" msgid "Message not sent" msgstr "" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "コピー" @@ -150,7 +150,7 @@ msgstr "オーディオアシスタントを実行" msgid "Run self test and exit 0 if succeed" msgstr "セルフテストは0で終了したら成功です" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" @@ -158,80 +158,80 @@ msgid "" "If you answer no, this person will be temporarily blacklisted." msgstr "相手が自分の連絡先に%sを追加したいそうです。\nあなたが自分の連絡先に相手を追加したらできるようになり相手のステータスも表示されるようになります。\n拒否した場合その相手は一時的にブラックリストに登録されます。" -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" msgstr "パスワードを入力してください %s\nrealm %s:" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "呼出エラー" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "呼出終了" -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "着信" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "応答" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "拒否" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "呼び出しの一時停止" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "%s" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" msgstr "%sがテレビ電話をしたいそうですが受け入れますか?" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "ウェブサイトリンク" -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "Linphone" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" msgstr "テレビ電話" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" msgstr "%s (デフォルト)" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" msgstr "%s に転送しました" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." msgstr "サウンドカードが検出されていません。\n音声通話の送受信はできません。" -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "無料 SIP ビデオ-電話" -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "こんにちは\n" @@ -245,31 +245,31 @@ msgstr "電話帳に追加する" msgid "Search in %s directory" msgstr "%s のディレクトリ内を検索" -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "無効なSIP接続です!" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "新しい連絡先を追加する" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "'%s' の連絡先を編集" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "'%s' の連絡先を削除" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "'%s' のチャット履歴を削除" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" msgstr "フォルダ %s から連絡先を追加する" @@ -298,7 +298,7 @@ msgstr "パラメーター" msgid "Enabled" msgstr "使用する" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "使用しない" @@ -738,7 +738,7 @@ msgstr "Linphoneをはじめる" msgid "Audio Assistant" msgstr "音声アシスタント" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "音声アシスタント" @@ -952,15 +952,15 @@ msgstr "" msgid "LDAP Settings" msgstr "LDAP設定" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" msgstr "サーバーアドレス:" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" msgstr "" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "ユーザー名:" @@ -1126,58 +1126,66 @@ msgid "Show keypad" msgstr "キーパッドを表示する" #: ../gtk/main.ui.h:8 +msgid "Import contacts from vCards" +msgstr "" + +#: ../gtk/main.ui.h:9 +msgid "Export contacts as vCards" +msgstr "" + +#: ../gtk/main.ui.h:10 msgid "_Help" msgstr "_ヘルプ" -#: ../gtk/main.ui.h:9 +#: ../gtk/main.ui.h:11 msgid "Show debug window" msgstr "デバッグウインドウを見る" -#: ../gtk/main.ui.h:10 +#: ../gtk/main.ui.h:12 msgid "_Homepage" msgstr "_ホームページ" -#: ../gtk/main.ui.h:11 +#: ../gtk/main.ui.h:13 msgid "Check _Updates" msgstr "チェック _アップデート" -#: ../gtk/main.ui.h:12 +#: ../gtk/main.ui.h:14 msgid "Account assistant" msgstr "アカウントのアシスタント" -#: ../gtk/main.ui.h:14 +#: ../gtk/main.ui.h:16 msgid "SIP address or phone number:" msgstr "SIPアドレスもしくは電話番号:" -#: ../gtk/main.ui.h:15 +#: ../gtk/main.ui.h:17 msgid "Initiate a new call" msgstr "" -#: ../gtk/main.ui.h:16 +#: ../gtk/main.ui.h:18 msgid "Contacts" msgstr "連絡相手" -#: ../gtk/main.ui.h:17 +#: ../gtk/main.ui.h:19 msgid "Search" msgstr "検索" -#: ../gtk/main.ui.h:18 +#: ../gtk/main.ui.h:20 msgid "Add contacts from directory" msgstr "" -#: ../gtk/main.ui.h:19 +#: ../gtk/main.ui.h:21 msgid "Add contact" msgstr "連絡相手に追加する" -#: ../gtk/main.ui.h:20 +#: ../gtk/main.ui.h:22 msgid "Clear call history" msgstr "通話履歴を削除する" -#: ../gtk/main.ui.h:22 +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" msgstr "" @@ -1234,320 +1242,316 @@ msgid "SIP (TLS)" msgstr "SIP (TLS)" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "カスタム" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "設定" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" msgstr "" -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" msgstr "あなたの表示名 (例: John Doe):" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "あなたのユーザー名:" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" msgstr "" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" msgstr "" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" msgstr "ウィザード" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "追加する" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "編集する" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "削除する" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" msgstr "プロキシアカウント" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" msgstr "すべてのパスワードを消去する" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "プライバシー" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" msgstr "" -#: ../gtk/parameters.ui.h:31 +#: ../gtk/parameters.ui.h:28 msgid "Delay before answering (ms)" msgstr "" -#: ../gtk/parameters.ui.h:32 +#: ../gtk/parameters.ui.h:29 msgid "Auto-answer" msgstr "" -#: ../gtk/parameters.ui.h:33 +#: ../gtk/parameters.ui.h:30 msgid "Manage SIP Accounts" msgstr "" -#: ../gtk/parameters.ui.h:34 +#: ../gtk/parameters.ui.h:31 msgid "Ring sound:" msgstr "鳴動音:" -#: ../gtk/parameters.ui.h:35 +#: ../gtk/parameters.ui.h:32 msgid "ALSA special device (optional):" msgstr "" -#: ../gtk/parameters.ui.h:36 +#: ../gtk/parameters.ui.h:33 msgid "Capture device:" msgstr "" -#: ../gtk/parameters.ui.h:37 +#: ../gtk/parameters.ui.h:34 msgid "Ring device:" msgstr "" -#: ../gtk/parameters.ui.h:38 +#: ../gtk/parameters.ui.h:35 msgid "Playback device:" msgstr "" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" msgstr "エコーキャンセラーを有効にする" -#: ../gtk/parameters.ui.h:40 +#: ../gtk/parameters.ui.h:37 msgid "Audio" msgstr "オーディオ" -#: ../gtk/parameters.ui.h:41 +#: ../gtk/parameters.ui.h:38 msgid "Video input device:" msgstr "" -#: ../gtk/parameters.ui.h:42 +#: ../gtk/parameters.ui.h:39 msgid "Preferred video resolution:" msgstr "" -#: ../gtk/parameters.ui.h:43 +#: ../gtk/parameters.ui.h:40 msgid "Video output method:" msgstr "" -#: ../gtk/parameters.ui.h:44 +#: ../gtk/parameters.ui.h:41 msgid "Show camera preview" msgstr "" -#: ../gtk/parameters.ui.h:45 +#: ../gtk/parameters.ui.h:42 msgid "Video preset:" msgstr "" -#: ../gtk/parameters.ui.h:46 +#: ../gtk/parameters.ui.h:43 msgid "Preferred video framerate:" msgstr "" -#: ../gtk/parameters.ui.h:47 +#: ../gtk/parameters.ui.h:44 msgid "0 stands for \"unlimited\"" msgstr "0で制限なしになります" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "ビデオ" -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" msgstr "アップロード速度制限 Kbit/sec:" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" msgstr "ダウンロード速度制限 Kbit/sec:" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" msgstr "" -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." msgstr "" -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "帯域幅制御" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" msgstr "マルチメディア設定" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" msgstr "" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" msgstr "DTMFをSIP情報で送信する" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "IPv6を有効にする" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "転送" -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "SIP/UDP ポート" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" msgstr "ランダム" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "SIP/TCP ポート" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" msgstr "オーディオ RTP/UDP:" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" msgstr "ビデオ RTP/UDP:" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "トンネル" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" msgstr "DSCP値" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" msgstr "ネットワークのプロトコルとポート" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" msgstr "" -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" msgstr "" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" msgstr "NAT / ファイヤーウォール (ICEを使う)" -#: ../gtk/parameters.ui.h:73 +#: ../gtk/parameters.ui.h:70 msgid "Behind NAT / Firewall (use uPnP)" msgstr "NAT / ファイヤーウォール (uPnPを使う)" -#: ../gtk/parameters.ui.h:74 +#: ../gtk/parameters.ui.h:71 msgid "Public IP address:" msgstr "パブリック IP アドレス:" -#: ../gtk/parameters.ui.h:75 +#: ../gtk/parameters.ui.h:72 msgid "Stun server:" msgstr "Stunサーバー:" -#: ../gtk/parameters.ui.h:76 +#: ../gtk/parameters.ui.h:73 msgid "NAT and Firewall" msgstr "NAT と ファイヤーウォール" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "メディアの暗号化の種類" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" msgstr "" -#: ../gtk/parameters.ui.h:79 +#: ../gtk/parameters.ui.h:76 msgid "Media encryption is mandatory" msgstr "" -#: ../gtk/parameters.ui.h:80 +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" +msgstr "" + +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" +msgstr "" + +#: ../gtk/parameters.ui.h:79 msgid "Encryption" msgstr "" -#: ../gtk/parameters.ui.h:81 +#: ../gtk/parameters.ui.h:80 msgid "Network settings" msgstr "ネットワーク設定" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" msgstr "使用する" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "使用しない" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" msgstr "音声コーデック" -#: ../gtk/parameters.ui.h:85 +#: ../gtk/parameters.ui.h:84 msgid "Video codecs" msgstr "動画コーデック" -#: ../gtk/parameters.ui.h:86 +#: ../gtk/parameters.ui.h:85 msgid "Codecs" msgstr "コーデック" -#: ../gtk/parameters.ui.h:87 +#: ../gtk/parameters.ui.h:86 msgid "Language" msgstr "言語" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "拡張設定を表示する" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "レベル" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" msgstr "ユーザーインターフェイス" -#: ../gtk/parameters.ui.h:94 +#: ../gtk/parameters.ui.h:93 msgid "LDAP Account setup" msgstr "" -#: ../gtk/parameters.ui.h:95 +#: ../gtk/parameters.ui.h:94 msgid "LDAP" msgstr "LDAP" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "完了" @@ -1785,52 +1789,52 @@ msgstr "" msgid "Please wait" msgstr "お待ちください" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "準備" -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" msgstr "" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" msgstr "" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" msgstr "" -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" msgstr "" -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "" -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." msgstr "と自動応答を尋ねる" -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." msgstr "コールパラメーターの変更..." -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "接続しました。" -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "呼び出しを打ち切る" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" msgstr "呼び出しを一時停止できませんでした" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." msgstr "現在の通話を一時停止..." @@ -1838,59 +1842,59 @@ msgstr "現在の通話を一時停止..." msgid "Stun lookup in progress..." msgstr "Stunによるルックアップの進行中…" -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." msgstr "" -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "オンライン" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "ビジー" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "離席中" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" msgstr "" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" msgstr "" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "手が離せません" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "移動中" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" msgstr "" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" msgstr "オフライン" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "保留" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "休暇中" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "不明なステータス" @@ -1914,12 +1918,12 @@ msgstr "" msgid "Could not resolve this number." msgstr "" -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." msgstr "" @@ -2028,16 +2032,16 @@ msgstr "" msgid "Authentication token is %s" msgstr "" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." msgstr "" -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." msgstr "" -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." diff --git a/po/lt.po b/po/lt.po index 101210e87..8ef4c333d 100644 --- a/po/lt.po +++ b/po/lt.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:56+0000\n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" "Last-Translator: Belledonne Communications \n" "Language-Team: Lithuanian (http://www.transifex.com/belledonne-communications/linphone-gtk/language/lt/)\n" "MIME-Version: 1.0\n" @@ -33,7 +33,7 @@ msgstr "Siųsti tekstą į %s" msgid "Add %s to your contact list" msgstr "Pridėti %s į jūsų kontaktų sąrašą" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "Paskiausi skambučiai" @@ -107,7 +107,7 @@ msgstr "Siunčiama..." msgid "Message not sent" msgstr "Pranešimas neišsiųstas" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "Kopijuoti" @@ -153,7 +153,7 @@ msgstr "Vykdyti garso pagelbiklį" msgid "Run self test and exit 0 if succeed" msgstr "Vykdyti savikontrolę ir išeiti 0, jei pavyks" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" @@ -161,80 +161,80 @@ msgid "" "If you answer no, this person will be temporarily blacklisted." msgstr "%s norėtų jus pridėti į savo kontaktų sąrašą.\nAr jūs norėtumėte taip pat pridėti jį/ją į savo kontaktų sąrašą ir leisti jam/jai matyti jūsų prisijungimo būseną?\nJeigu atsakysite ne, šis asmuo bus laikinai pridėtas į juodąjį sąrašą." -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" msgstr "" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "Skambučio klaida" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "Skambutis užbaigtas" -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "Įeinantis skambutis" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "Atsiliepti" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "Atmesti" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "Skambutis pristabdytas" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "naudotojo %s" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" msgstr "%s pasiūlė pradėti vaizdą. Jūs sutinkate ?" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "Svetainės nuoroda" -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "Linphone" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" msgstr "Internetinis vaizdo telefonas" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" -msgstr "" +msgstr "%s (Numatytoji)" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" msgstr "" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." msgstr "Šiame kompiuteryje nebuvo aptikta jokių garso plokščių.\nJūs negalėsite siųsti ir priimti garso skambučių." -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "Nemokamas SIP vaizdo telefonas" -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "Sveiki\n" @@ -248,34 +248,34 @@ msgstr "Pridėti į adresų knygą" msgid "Search in %s directory" msgstr "" -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "Netaisyklingas sip kontaktas !" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "Pridėti naują kontaktą" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "Redaguoti kontaktą \"%s\"" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "Ištrinti kontaktą \"%s\"" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "Ištrinti \"%s\" pokalbių istoriją" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" -msgstr "" +msgstr "Pridėti naują kontaktą iš %s katalogo" #: ../gtk/propertybox.c:592 ../gtk/contact.ui.h:1 msgid "Name" @@ -301,7 +301,7 @@ msgstr "Parametrai" msgid "Enabled" msgstr "Įjungta" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "Išjungta" @@ -451,11 +451,11 @@ msgstr[2] "Rasta %i kontaktų" #: ../gtk/setupwizard.c:219 msgid "Username is already in use!" -msgstr "" +msgstr "Naudotojo vardas jau yra naudojamas!" #: ../gtk/setupwizard.c:223 msgid "Failed to check username availability. Please try again later." -msgstr "" +msgstr "Nepavyko patikrinti naudotojo vardo prieinamumą. Prašome vėliau bandyti dar kartą." #: ../gtk/incall_view.c:67 ../gtk/incall_view.c:87 #, c-format @@ -743,7 +743,7 @@ msgstr "Dabar, paleiskime Linphone" msgid "Audio Assistant" msgstr "Garso Pagelbiklis" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "Garso pagelbiklis" @@ -957,15 +957,15 @@ msgstr "Skambučio kokybės įvertinimas" msgid "LDAP Settings" msgstr "LDAP nustatymai" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" msgstr "Serverio adresas:" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" -msgstr "" +msgstr "Tapatybės nustatymo metodas:" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "Naudotojo vardas:" @@ -1131,58 +1131,66 @@ msgid "Show keypad" msgstr "Rodyti pagalbinę klaviatūrą" #: ../gtk/main.ui.h:8 +msgid "Import contacts from vCards" +msgstr "" + +#: ../gtk/main.ui.h:9 +msgid "Export contacts as vCards" +msgstr "" + +#: ../gtk/main.ui.h:10 msgid "_Help" msgstr "P_agalba" -#: ../gtk/main.ui.h:9 +#: ../gtk/main.ui.h:11 msgid "Show debug window" msgstr "Rodyti derinimo langą" -#: ../gtk/main.ui.h:10 +#: ../gtk/main.ui.h:12 msgid "_Homepage" msgstr "_Internetinė svetainė" -#: ../gtk/main.ui.h:11 +#: ../gtk/main.ui.h:13 msgid "Check _Updates" msgstr "Tikrinti ar yra at_naujinimų" -#: ../gtk/main.ui.h:12 +#: ../gtk/main.ui.h:14 msgid "Account assistant" msgstr "Paskyros pagelbiklis" -#: ../gtk/main.ui.h:14 +#: ../gtk/main.ui.h:16 msgid "SIP address or phone number:" msgstr "SIP adresas arba telefono numeris:" -#: ../gtk/main.ui.h:15 +#: ../gtk/main.ui.h:17 msgid "Initiate a new call" msgstr "Inicijuoti naują skambutį" -#: ../gtk/main.ui.h:16 +#: ../gtk/main.ui.h:18 msgid "Contacts" msgstr "Kontaktai" -#: ../gtk/main.ui.h:17 +#: ../gtk/main.ui.h:19 msgid "Search" msgstr "" -#: ../gtk/main.ui.h:18 +#: ../gtk/main.ui.h:20 msgid "Add contacts from directory" msgstr "" -#: ../gtk/main.ui.h:19 +#: ../gtk/main.ui.h:21 msgid "Add contact" msgstr "Pridėti kontaktą" -#: ../gtk/main.ui.h:20 +#: ../gtk/main.ui.h:22 msgid "Clear call history" msgstr "Išvalyti skambučių istoriją" -#: ../gtk/main.ui.h:22 +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "Mano esama tapatybė:" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" msgstr "Automatinis atsiliepimas yra įjungtas" @@ -1239,320 +1247,316 @@ msgid "SIP (TLS)" msgstr "SIP (TLS)" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "numatytoji" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "daug kadr./s" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "tinkinta" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "Nustatymai" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" msgstr "Ši sekcija apibrėžia jūsų SIP adresą tais atvejais, kai nenaudojate SIP paskyros" -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" msgstr "Jūsų rodomas vardas (pvz., Džonas Do):" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "Jūsų naudotojo vardas:" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" msgstr "Jūsų galutinis SIP adresas:" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" msgstr "Numatytoji tapatybė" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" msgstr "Vediklis" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "Pridėti" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "Keisti" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "Šalinti" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" msgstr "Įgaliotojo serverio paskyros" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" msgstr "Ištrinti visus slaptažodžius" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "Privatumas" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" msgstr "Automatiškai atsiliepti, kai yra gaunamas skambutis" -#: ../gtk/parameters.ui.h:31 +#: ../gtk/parameters.ui.h:28 msgid "Delay before answering (ms)" msgstr "Delsa, prieš atsiliepiant (ms)" -#: ../gtk/parameters.ui.h:32 +#: ../gtk/parameters.ui.h:29 msgid "Auto-answer" msgstr "Automatinis atsiliepimas" -#: ../gtk/parameters.ui.h:33 +#: ../gtk/parameters.ui.h:30 msgid "Manage SIP Accounts" -msgstr "Tvarkyti SIP Paskyras" +msgstr "Tvarkyti SIP paskyras" -#: ../gtk/parameters.ui.h:34 +#: ../gtk/parameters.ui.h:31 msgid "Ring sound:" msgstr "Skambinimo garsas:" -#: ../gtk/parameters.ui.h:35 +#: ../gtk/parameters.ui.h:32 msgid "ALSA special device (optional):" msgstr "Specialus ALSA įrenginys (nebūtina):" -#: ../gtk/parameters.ui.h:36 +#: ../gtk/parameters.ui.h:33 msgid "Capture device:" msgstr "Mikrofonas:" -#: ../gtk/parameters.ui.h:37 +#: ../gtk/parameters.ui.h:34 msgid "Ring device:" msgstr "Skambinimo įrenginys:" -#: ../gtk/parameters.ui.h:38 +#: ../gtk/parameters.ui.h:35 msgid "Playback device:" msgstr "Atkūrimo įrenginys:" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" msgstr "Įjungti aido panaikinimą" -#: ../gtk/parameters.ui.h:40 +#: ../gtk/parameters.ui.h:37 msgid "Audio" msgstr "Garsas" -#: ../gtk/parameters.ui.h:41 +#: ../gtk/parameters.ui.h:38 msgid "Video input device:" msgstr "Vaizdo įvesties įrenginys:" -#: ../gtk/parameters.ui.h:42 +#: ../gtk/parameters.ui.h:39 msgid "Preferred video resolution:" msgstr "Pageidaujama vaizdo raiška:" -#: ../gtk/parameters.ui.h:43 +#: ../gtk/parameters.ui.h:40 msgid "Video output method:" msgstr "Vaizdo išvesties metodas:" -#: ../gtk/parameters.ui.h:44 +#: ../gtk/parameters.ui.h:41 msgid "Show camera preview" msgstr "Rodyti kameros peržiūrą" -#: ../gtk/parameters.ui.h:45 +#: ../gtk/parameters.ui.h:42 msgid "Video preset:" msgstr "Vaizdo išankstinė parinktis:" -#: ../gtk/parameters.ui.h:46 +#: ../gtk/parameters.ui.h:43 msgid "Preferred video framerate:" msgstr "Pageidaujamas vaizdo kadrų dažnis:" -#: ../gtk/parameters.ui.h:47 +#: ../gtk/parameters.ui.h:44 msgid "0 stands for \"unlimited\"" msgstr "0 reiškia \"neribota\"" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "Vaizdas" -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" msgstr "Išsiuntimo greičio riba, Kbit/sek.:" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" msgstr "Atsiuntimo greičio riba, Kbit/sek.:" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" msgstr "Įjungti adaptyvų spartos valdymą" -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." msgstr "Adaptyvus spartos valdymas yra technika, skirta, skambučio metu, dinamiškai atspėti prieinamą pralaidumą." -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "Pralaidumo valdymas" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" msgstr "Multimedijos nustatymai" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" msgstr "Nustatyti didžiausią duomenų persiuntimo įtaisą:" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" msgstr "Siųsti DTMF kaip SIP informaciją" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "Leisti IPv6" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "Perdavimas" -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "SIP/UDP prievadas" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" msgstr "Atsitiktinis" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "SIP/TCP prievadas" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" msgstr "Garso RTP/UDP:" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "Fiksuotas" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" msgstr "Vaizdo RTP/UDP:" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" msgstr "DSCP laukai" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" msgstr "Tinklo protokolas ir prievadai" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" msgstr "Tiesioginis sujungimas su internetu" -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" msgstr "Už NAT / Užkardos (nurodyti tinklų sietuvo IP )" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "Už NAT / Užkardos (naudoti STUN, siekiant išspręsti)" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" msgstr "Už NAT / Užkardos (naudoti ICE)" -#: ../gtk/parameters.ui.h:73 +#: ../gtk/parameters.ui.h:70 msgid "Behind NAT / Firewall (use uPnP)" msgstr "Už NAT / Užkardos (naudoti uPnP)" -#: ../gtk/parameters.ui.h:74 +#: ../gtk/parameters.ui.h:71 msgid "Public IP address:" msgstr "Viešas IP adresas:" -#: ../gtk/parameters.ui.h:75 +#: ../gtk/parameters.ui.h:72 msgid "Stun server:" msgstr "Stun serveris:" -#: ../gtk/parameters.ui.h:76 +#: ../gtk/parameters.ui.h:73 msgid "NAT and Firewall" msgstr "NAT ir Užkarda" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "Medijos šifravimo tipas" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" msgstr "" -#: ../gtk/parameters.ui.h:79 +#: ../gtk/parameters.ui.h:76 msgid "Media encryption is mandatory" msgstr "Medijos šifravimas yra privalomas" -#: ../gtk/parameters.ui.h:80 -msgid "Encryption" +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" msgstr "" -#: ../gtk/parameters.ui.h:81 +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" +msgstr "" + +#: ../gtk/parameters.ui.h:79 +msgid "Encryption" +msgstr "Šifravimas" + +#: ../gtk/parameters.ui.h:80 msgid "Network settings" msgstr "Tinklo nustatymai" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" msgstr "Įjungti" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "Išjungti" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" msgstr "Garso kodekai" -#: ../gtk/parameters.ui.h:85 +#: ../gtk/parameters.ui.h:84 msgid "Video codecs" msgstr "Vaizdo kodekai" -#: ../gtk/parameters.ui.h:86 +#: ../gtk/parameters.ui.h:85 msgid "Codecs" msgstr "Kodekai" -#: ../gtk/parameters.ui.h:87 +#: ../gtk/parameters.ui.h:86 msgid "Language" msgstr "Kalba" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "Rodyti išplėstinius nustatymus" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "Lygmuo" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" msgstr "Naudotojo sąsaja" -#: ../gtk/parameters.ui.h:94 +#: ../gtk/parameters.ui.h:93 msgid "LDAP Account setup" msgstr "LDAP paskyros sąranka" -#: ../gtk/parameters.ui.h:95 +#: ../gtk/parameters.ui.h:94 msgid "LDAP" msgstr "LDAP" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "Atlikta" @@ -1608,7 +1612,7 @@ msgstr "Paskyros sąrankos pagelbiklis" #: ../gtk/setup_wizard.ui.h:10 msgid "Enter your account information" -msgstr "" +msgstr "Įveskite savo paskyros informaciją" #: ../gtk/setup_wizard.ui.h:11 msgid "Username*" @@ -1790,52 +1794,52 @@ msgstr "" msgid "Please wait" msgstr "Prašome palaukti" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "Pasiruošę" -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" -msgstr "" +msgstr "Konfigūruojama" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" -msgstr "" +msgstr "Susisiekiama" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" -msgstr "" +msgstr "Nepavyko skambinti" -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" msgstr "" -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "bando su jumis susisiekti" -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." msgstr "" -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." msgstr "Modifikuojami skambučio parametrai..." -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "Prisijungta." -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "Skambutis nutrauktas" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" msgstr "Nepavyko pristabdyti skambučio" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." msgstr "Pristabdomas esamas skambutis..." @@ -1843,59 +1847,59 @@ msgstr "Pristabdomas esamas skambutis..." msgid "Stun lookup in progress..." msgstr "" -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." msgstr "" -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "Prisijungęs" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "Užimtas" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "Netrukus sugrįš" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "Pasišalinęs" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" msgstr "Kalba telefonu" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" msgstr "Pietauja" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "Netrukdyti" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "Perkeltas" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" msgstr "Naudoja kitą pokalbių tarnybą" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" msgstr "Atsijungęs" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "Nežinoma būsena" @@ -1919,12 +1923,12 @@ msgstr "" msgid "Could not resolve this number." msgstr "" -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "Nepavyko prisijungti kaip %s" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." msgstr "" @@ -2033,16 +2037,16 @@ msgstr "Paslauga neprieinama, bandoma iš naujo" msgid "Authentication token is %s" msgstr "" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." msgstr "Nepavyko modifikuoti skambučio parametrų: %s." -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." msgstr "Skambučio parametrai buvo sėkmingai modifikuoti." -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." @@ -2074,7 +2078,7 @@ msgid "" "To: %s\n" "Status: %s\n" "Duration: %i mn %i sec\n" -msgstr "" +msgstr "%s ties %s\nNuo: %s\nKam: %s\nBūsena: %s\nTrukmė: %i min. %i sek.\n" #: ../coreapi/call_log.c:235 msgid "Outgoing call" diff --git a/po/nb_NO.po b/po/nb_NO.po index 9d7c68983..22a2b6cd5 100644 --- a/po/nb_NO.po +++ b/po/nb_NO.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:56+0000\n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" "Last-Translator: Belledonne Communications \n" "Language-Team: Norwegian Bokmål (Norway) (http://www.transifex.com/belledonne-communications/linphone-gtk/language/nb_NO/)\n" "MIME-Version: 1.0\n" @@ -33,7 +33,7 @@ msgstr "Send tekst til %s" msgid "Add %s to your contact list" msgstr "" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "" @@ -105,7 +105,7 @@ msgstr "" msgid "Message not sent" msgstr "" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "" @@ -151,7 +151,7 @@ msgstr "" msgid "Run self test and exit 0 if succeed" msgstr "" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" @@ -159,80 +159,80 @@ msgid "" "If you answer no, this person will be temporarily blacklisted." msgstr "" -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" msgstr "" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "Samtale avsluttet" -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "Innkommende samtale" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "Svarer" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "Avvis" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" msgstr "" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "Peker til nettsted" -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "Linphone" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" msgstr "" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" msgstr "%s (Standard)" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" msgstr "Vi er overført til %s" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." msgstr "Klarte ikke å finne noe lydkort på denne datamaskinen.\nDu vil ikke kunne sende eller motta lydsamtaler." -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "En gratis SIP video-telefon" -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "" @@ -246,31 +246,31 @@ msgstr "" msgid "Search in %s directory" msgstr "Søk i %s katalogen" -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "Ugyldig SIP kontakt !" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "Rediger kontakt '%s'" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "Slett kontakt '%s'" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" msgstr "Legg til kontakt fra %s katalogen" @@ -299,7 +299,7 @@ msgstr "Parametere" msgid "Enabled" msgstr "På" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "Av" @@ -740,7 +740,7 @@ msgstr "" msgid "Audio Assistant" msgstr "" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "" @@ -954,15 +954,15 @@ msgstr "" msgid "LDAP Settings" msgstr "" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" msgstr "" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" msgstr "" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "Brukernavn:" @@ -1128,58 +1128,66 @@ msgid "Show keypad" msgstr "" #: ../gtk/main.ui.h:8 +msgid "Import contacts from vCards" +msgstr "" + +#: ../gtk/main.ui.h:9 +msgid "Export contacts as vCards" +msgstr "" + +#: ../gtk/main.ui.h:10 msgid "_Help" msgstr "_Hjelp" -#: ../gtk/main.ui.h:9 +#: ../gtk/main.ui.h:11 msgid "Show debug window" msgstr "Vis avlusningsvindu" -#: ../gtk/main.ui.h:10 +#: ../gtk/main.ui.h:12 msgid "_Homepage" msgstr "H_jemmeside" -#: ../gtk/main.ui.h:11 +#: ../gtk/main.ui.h:13 msgid "Check _Updates" msgstr "Sjekk _Oppdateringer" -#: ../gtk/main.ui.h:12 +#: ../gtk/main.ui.h:14 msgid "Account assistant" msgstr "" -#: ../gtk/main.ui.h:14 +#: ../gtk/main.ui.h:16 msgid "SIP address or phone number:" msgstr "Sip adresse eller telefonnummer:" -#: ../gtk/main.ui.h:15 +#: ../gtk/main.ui.h:17 msgid "Initiate a new call" msgstr "Start en ny samtale" -#: ../gtk/main.ui.h:16 +#: ../gtk/main.ui.h:18 msgid "Contacts" msgstr "Kontakter" -#: ../gtk/main.ui.h:17 +#: ../gtk/main.ui.h:19 msgid "Search" msgstr "Søk" -#: ../gtk/main.ui.h:18 +#: ../gtk/main.ui.h:20 msgid "Add contacts from directory" msgstr "Legg til kontakter fra katalogen" -#: ../gtk/main.ui.h:19 +#: ../gtk/main.ui.h:21 msgid "Add contact" msgstr "Legg til kontakt" -#: ../gtk/main.ui.h:20 +#: ../gtk/main.ui.h:22 msgid "Clear call history" msgstr "" -#: ../gtk/main.ui.h:22 +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "Min nåværende identitet:" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" msgstr "" @@ -1236,320 +1244,316 @@ msgid "SIP (TLS)" msgstr "" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "Innstillinger" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" msgstr "Denne seksjonen velger SIP-addresse når du ikke bruker en SIP-konto" -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" msgstr "Vist navn (eks: Ola Nordmann):" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "Ditt brukernavn:" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" msgstr "Din resulterende SIP addresse:" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" msgstr "Standard identitet" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" msgstr "" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "Legg til" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "Rediger" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "Fjern" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" msgstr "Proxy kontoer" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" msgstr "Slett alle passord" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "Personvern" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" msgstr "" -#: ../gtk/parameters.ui.h:31 +#: ../gtk/parameters.ui.h:28 msgid "Delay before answering (ms)" msgstr "" -#: ../gtk/parameters.ui.h:32 +#: ../gtk/parameters.ui.h:29 msgid "Auto-answer" msgstr "" -#: ../gtk/parameters.ui.h:33 +#: ../gtk/parameters.ui.h:30 msgid "Manage SIP Accounts" msgstr "Behandle SIP-kontoer" -#: ../gtk/parameters.ui.h:34 +#: ../gtk/parameters.ui.h:31 msgid "Ring sound:" msgstr "Ringelyd:" -#: ../gtk/parameters.ui.h:35 +#: ../gtk/parameters.ui.h:32 msgid "ALSA special device (optional):" msgstr "Spesiell ALSA enhet (valgfritt):" -#: ../gtk/parameters.ui.h:36 +#: ../gtk/parameters.ui.h:33 msgid "Capture device:" msgstr "Mikrofonenhet:" -#: ../gtk/parameters.ui.h:37 +#: ../gtk/parameters.ui.h:34 msgid "Ring device:" msgstr "Ringe-enhet:" -#: ../gtk/parameters.ui.h:38 +#: ../gtk/parameters.ui.h:35 msgid "Playback device:" msgstr "Avspillingsenhet:" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" msgstr "Bruk ekko-kansellering" -#: ../gtk/parameters.ui.h:40 +#: ../gtk/parameters.ui.h:37 msgid "Audio" msgstr "Lyd" -#: ../gtk/parameters.ui.h:41 +#: ../gtk/parameters.ui.h:38 msgid "Video input device:" msgstr "Videoenhet:" -#: ../gtk/parameters.ui.h:42 +#: ../gtk/parameters.ui.h:39 msgid "Preferred video resolution:" msgstr "" -#: ../gtk/parameters.ui.h:43 +#: ../gtk/parameters.ui.h:40 msgid "Video output method:" msgstr "" -#: ../gtk/parameters.ui.h:44 +#: ../gtk/parameters.ui.h:41 msgid "Show camera preview" msgstr "" -#: ../gtk/parameters.ui.h:45 +#: ../gtk/parameters.ui.h:42 msgid "Video preset:" msgstr "" -#: ../gtk/parameters.ui.h:46 +#: ../gtk/parameters.ui.h:43 msgid "Preferred video framerate:" msgstr "" -#: ../gtk/parameters.ui.h:47 +#: ../gtk/parameters.ui.h:44 msgid "0 stands for \"unlimited\"" msgstr "0 betyr \"ubegrenset\"" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "Video" -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" msgstr "Maks opplastningshastighet i Kbit/sek:" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" msgstr "Nedlastningsbegrensning i Kbit/sek:" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" msgstr "" -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." msgstr "" -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "Båndbreddekontrol" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" msgstr "Multimediainnstillinger" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" msgstr "Velg MTU (Maximum Transmission Unit):" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" msgstr "Send DTMF som SIP-info" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "Transport" -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" msgstr "" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" msgstr "Lyd RTP/UDP:" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" msgstr "Video RTP/UDP:" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" msgstr "" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" msgstr "" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" msgstr "Tilkoblet Internett direkte" -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" msgstr "" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "Bak NAT / Brannmur (bruk STUN for å avgjøre)" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" msgstr "" -#: ../gtk/parameters.ui.h:73 +#: ../gtk/parameters.ui.h:70 msgid "Behind NAT / Firewall (use uPnP)" msgstr "" -#: ../gtk/parameters.ui.h:74 +#: ../gtk/parameters.ui.h:71 msgid "Public IP address:" msgstr "Offentlig IP-addresse:" -#: ../gtk/parameters.ui.h:75 +#: ../gtk/parameters.ui.h:72 msgid "Stun server:" msgstr "STUN tjener:" -#: ../gtk/parameters.ui.h:76 +#: ../gtk/parameters.ui.h:73 msgid "NAT and Firewall" msgstr "NAT og Brannvegg" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" msgstr "" -#: ../gtk/parameters.ui.h:79 +#: ../gtk/parameters.ui.h:76 msgid "Media encryption is mandatory" msgstr "" -#: ../gtk/parameters.ui.h:80 +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" +msgstr "" + +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" +msgstr "" + +#: ../gtk/parameters.ui.h:79 msgid "Encryption" msgstr "" -#: ../gtk/parameters.ui.h:81 +#: ../gtk/parameters.ui.h:80 msgid "Network settings" msgstr "Nettverksinnstillinger" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" msgstr "Aktiver" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "Deaktiver" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" msgstr "" -#: ../gtk/parameters.ui.h:85 +#: ../gtk/parameters.ui.h:84 msgid "Video codecs" msgstr "" -#: ../gtk/parameters.ui.h:86 +#: ../gtk/parameters.ui.h:85 msgid "Codecs" msgstr "Kodek" -#: ../gtk/parameters.ui.h:87 +#: ../gtk/parameters.ui.h:86 msgid "Language" msgstr "Språk" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "Vis avanserte innstillinger" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "Nivå" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" msgstr "Brukergrensesnitt" -#: ../gtk/parameters.ui.h:94 +#: ../gtk/parameters.ui.h:93 msgid "LDAP Account setup" msgstr "" -#: ../gtk/parameters.ui.h:95 +#: ../gtk/parameters.ui.h:94 msgid "LDAP" msgstr "" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "Ferdig" @@ -1787,52 +1791,52 @@ msgstr "" msgid "Please wait" msgstr "Vennligst vent" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "Klar" -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" msgstr "" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" msgstr "Tilknytter" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" msgstr "Kunne ikke ringe" -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" msgstr "Beklager, du har nådd maksimalt antall samtidige samtaler" -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "Kontakter deg." -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." msgstr " og ba om autosvar." -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." msgstr "Endrer ringeparametre..." -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "Tilkoblet" -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "Samtale avbrutt" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" msgstr "Kunne ikke pause samtalen" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." msgstr "Pauser nåværende samtale" @@ -1840,59 +1844,59 @@ msgstr "Pauser nåværende samtale" msgid "Stun lookup in progress..." msgstr "STUN oppslag pågår..." -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." msgstr "" -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "Tilknyttet" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "Opptatt" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "Kommer plutselig tilbake" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "Borte" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" msgstr "I telefonen" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" msgstr "Ute til lunsj" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "Ikke forstyrr" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "Flyttet" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" msgstr "Bruker en annen tjeneste" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" msgstr "Frakoblet" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "Pågående" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "" @@ -1916,12 +1920,12 @@ msgstr "Ser etter telefonnummer for destinasjonen..." msgid "Could not resolve this number." msgstr "Kan ikke tilkoble dette nummeret." -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "Ikke ikke logge inn som %s" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." msgstr "" @@ -2030,16 +2034,16 @@ msgstr "" msgid "Authentication token is %s" msgstr "" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." msgstr "" -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." msgstr "" -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." diff --git a/po/nl.po b/po/nl.po index e1ca5ec1d..912039a6e 100644 --- a/po/nl.po +++ b/po/nl.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:56+0000\n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" "Last-Translator: Belledonne Communications \n" "Language-Team: Dutch (http://www.transifex.com/belledonne-communications/linphone-gtk/language/nl/)\n" "MIME-Version: 1.0\n" @@ -33,7 +33,7 @@ msgstr "SMS versturen aan %s" msgid "Add %s to your contact list" msgstr "" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "Recente gesprekken" @@ -105,7 +105,7 @@ msgstr "" msgid "Message not sent" msgstr "" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "" @@ -151,7 +151,7 @@ msgstr "Doorloop de audio-instelwizard" msgid "Run self test and exit 0 if succeed" msgstr "Draai een zelftest en exit 0 wanneer succesvol" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" @@ -159,80 +159,80 @@ msgid "" "If you answer no, this person will be temporarily blacklisted." msgstr "" -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" msgstr "Vul uw wachtwoord in voor gebruikersnaam %s\nop realm %s" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "Oproepfout" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "Oproep beëindigd" -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "Inkomende oproep" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "Opnemen" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "Weigeren" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "Oproep gepauzeerd" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "door %s" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" msgstr "%s stelt u voor om video in te schakelen. Wilt u dit accepteren?" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "Websitelink" -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "Linphone" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" msgstr "" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" msgstr "%s (Standaard)" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" msgstr "We zijn overgeschakeld naar %s" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." msgstr "Er zijn geluidskaarten aangetroffen op deze computer.\nU zult niet in staat zijn om audio-oproepen te ontvangen of versturen." -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "Een gratis SIP-videotelefoon" -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "" @@ -246,31 +246,31 @@ msgstr "Toevoegen aan adresboek" msgid "Search in %s directory" msgstr "Zoeken in de map %s" -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "Ongeldig SIP-contactpersoon" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "Contactpersoon '%s' bewerken" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "Contactpersoon '%s' verwijderen" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "Chatgeschiedenis van '%s' verwijderen" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" msgstr "Nieuw contactpersoon toevoegen vanuit de map %s" @@ -299,7 +299,7 @@ msgstr "Argumenten" msgid "Enabled" msgstr "Ingeschakeld" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "Uitgeschakeld" @@ -740,7 +740,7 @@ msgstr "Laten we nu Linphone opstarten" msgid "Audio Assistant" msgstr "Audio-instelwizard" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "Audio-instelwizard" @@ -954,15 +954,15 @@ msgstr "Waardering van de gesprekskwaliteit" msgid "LDAP Settings" msgstr "" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" msgstr "" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" msgstr "" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "Gebruikersnaam:" @@ -1128,58 +1128,66 @@ msgid "Show keypad" msgstr "" #: ../gtk/main.ui.h:8 +msgid "Import contacts from vCards" +msgstr "" + +#: ../gtk/main.ui.h:9 +msgid "Export contacts as vCards" +msgstr "" + +#: ../gtk/main.ui.h:10 msgid "_Help" msgstr "_Hulp" -#: ../gtk/main.ui.h:9 +#: ../gtk/main.ui.h:11 msgid "Show debug window" msgstr "Foutopsporingsvenster weergeven" -#: ../gtk/main.ui.h:10 +#: ../gtk/main.ui.h:12 msgid "_Homepage" msgstr "_Website" -#: ../gtk/main.ui.h:11 +#: ../gtk/main.ui.h:13 msgid "Check _Updates" msgstr "Controleren op _updates" -#: ../gtk/main.ui.h:12 +#: ../gtk/main.ui.h:14 msgid "Account assistant" msgstr "Account-instelwizard" -#: ../gtk/main.ui.h:14 +#: ../gtk/main.ui.h:16 msgid "SIP address or phone number:" msgstr "SIP-adres of telefoonnummer:" -#: ../gtk/main.ui.h:15 +#: ../gtk/main.ui.h:17 msgid "Initiate a new call" msgstr "Een nieuw gesprek beginnen" -#: ../gtk/main.ui.h:16 +#: ../gtk/main.ui.h:18 msgid "Contacts" msgstr "Contactpersonen" -#: ../gtk/main.ui.h:17 +#: ../gtk/main.ui.h:19 msgid "Search" msgstr "Zoeken" -#: ../gtk/main.ui.h:18 +#: ../gtk/main.ui.h:20 msgid "Add contacts from directory" msgstr "Voeg contactpersonen toe uit map" -#: ../gtk/main.ui.h:19 +#: ../gtk/main.ui.h:21 msgid "Add contact" msgstr "Contactpersoon toevoegen" -#: ../gtk/main.ui.h:20 +#: ../gtk/main.ui.h:22 msgid "Clear call history" msgstr "" -#: ../gtk/main.ui.h:22 +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "Mijn huidige identiteit:" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" msgstr "" @@ -1236,320 +1244,316 @@ msgid "SIP (TLS)" msgstr "" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "Instellingen" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" msgstr "" -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" msgstr "Uw weergavenaam (bijv.: Jan Noniem):" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "Uw gebruikersnaam:" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" msgstr "" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" msgstr "Standaardidentiteit" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" msgstr "Instelhulp" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "Toevoegen" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "Bewerken" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "Verwijderen" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" msgstr "" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" msgstr "" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" msgstr "" -#: ../gtk/parameters.ui.h:31 +#: ../gtk/parameters.ui.h:28 msgid "Delay before answering (ms)" msgstr "" -#: ../gtk/parameters.ui.h:32 +#: ../gtk/parameters.ui.h:29 msgid "Auto-answer" msgstr "" -#: ../gtk/parameters.ui.h:33 +#: ../gtk/parameters.ui.h:30 msgid "Manage SIP Accounts" msgstr "" -#: ../gtk/parameters.ui.h:34 +#: ../gtk/parameters.ui.h:31 msgid "Ring sound:" msgstr "Belgeluid:" -#: ../gtk/parameters.ui.h:35 +#: ../gtk/parameters.ui.h:32 msgid "ALSA special device (optional):" msgstr "ALSA speciaal apparaat (optioneel)" -#: ../gtk/parameters.ui.h:36 +#: ../gtk/parameters.ui.h:33 msgid "Capture device:" msgstr "Opnameapparaat:" -#: ../gtk/parameters.ui.h:37 +#: ../gtk/parameters.ui.h:34 msgid "Ring device:" msgstr "Belapparaat:" -#: ../gtk/parameters.ui.h:38 +#: ../gtk/parameters.ui.h:35 msgid "Playback device:" msgstr "Afspeelapparaat:" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" msgstr "Echo-onderdrukking inschakelen" -#: ../gtk/parameters.ui.h:40 +#: ../gtk/parameters.ui.h:37 msgid "Audio" msgstr "Audio" -#: ../gtk/parameters.ui.h:41 +#: ../gtk/parameters.ui.h:38 msgid "Video input device:" msgstr "Videoingang-apparaat:" -#: ../gtk/parameters.ui.h:42 +#: ../gtk/parameters.ui.h:39 msgid "Preferred video resolution:" msgstr "" -#: ../gtk/parameters.ui.h:43 +#: ../gtk/parameters.ui.h:40 msgid "Video output method:" msgstr "Videouitgangsmethode:" -#: ../gtk/parameters.ui.h:44 +#: ../gtk/parameters.ui.h:41 msgid "Show camera preview" msgstr "Cameravoorbeeld weergeven" -#: ../gtk/parameters.ui.h:45 +#: ../gtk/parameters.ui.h:42 msgid "Video preset:" msgstr "" -#: ../gtk/parameters.ui.h:46 +#: ../gtk/parameters.ui.h:43 msgid "Preferred video framerate:" msgstr "" -#: ../gtk/parameters.ui.h:47 +#: ../gtk/parameters.ui.h:44 msgid "0 stands for \"unlimited\"" msgstr "" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "Video" -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" msgstr "" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" msgstr "" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" msgstr "" -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." msgstr "" -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" msgstr "Multimedia-instellingen" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" msgstr "Maximale Transmissie-unit instellen:" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" msgstr "DTMF's als SIP-informatie versturen" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "Overdracht" -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "SIP/UDP-poort" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" msgstr "Willekeurig" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "SIP/TCP-poort" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" msgstr "AUDIO RTP/UDP:" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "Vastgezet" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" msgstr "Video RTP/UDP:" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "Tunnel" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" msgstr "DSCP-velden" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" msgstr "Netwerkprotocol en -poorten" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" msgstr "Directe verbinding met het internet" -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" msgstr "Achter een NAT / Firewall (specificeer de gateway IP)" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" msgstr "" -#: ../gtk/parameters.ui.h:73 +#: ../gtk/parameters.ui.h:70 msgid "Behind NAT / Firewall (use uPnP)" msgstr "" -#: ../gtk/parameters.ui.h:74 +#: ../gtk/parameters.ui.h:71 msgid "Public IP address:" msgstr "Openbaar IP-adres:" -#: ../gtk/parameters.ui.h:75 +#: ../gtk/parameters.ui.h:72 msgid "Stun server:" msgstr "Stun-server" -#: ../gtk/parameters.ui.h:76 +#: ../gtk/parameters.ui.h:73 msgid "NAT and Firewall" msgstr "NAT en Firewall" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "Mediaversleutelingstype" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" msgstr "" -#: ../gtk/parameters.ui.h:79 +#: ../gtk/parameters.ui.h:76 msgid "Media encryption is mandatory" msgstr "Mediaversleuteling is vereist" -#: ../gtk/parameters.ui.h:80 +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" +msgstr "" + +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" +msgstr "" + +#: ../gtk/parameters.ui.h:79 msgid "Encryption" msgstr "" -#: ../gtk/parameters.ui.h:81 +#: ../gtk/parameters.ui.h:80 msgid "Network settings" msgstr "Netwerkinstellingen" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" msgstr "Aan" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "Uit" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" msgstr "" -#: ../gtk/parameters.ui.h:85 +#: ../gtk/parameters.ui.h:84 msgid "Video codecs" msgstr "" -#: ../gtk/parameters.ui.h:86 +#: ../gtk/parameters.ui.h:85 msgid "Codecs" msgstr "" -#: ../gtk/parameters.ui.h:87 +#: ../gtk/parameters.ui.h:86 msgid "Language" msgstr "" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" msgstr "" -#: ../gtk/parameters.ui.h:94 +#: ../gtk/parameters.ui.h:93 msgid "LDAP Account setup" msgstr "" -#: ../gtk/parameters.ui.h:95 +#: ../gtk/parameters.ui.h:94 msgid "LDAP" msgstr "" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "" @@ -1787,52 +1791,52 @@ msgstr "" msgid "Please wait" msgstr "" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "Gereed." -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" msgstr "" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" msgstr "Verbinden" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" msgstr "" -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" msgstr "" -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "" -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." msgstr "" -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." msgstr "" -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "Verbonden." -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" msgstr "" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." msgstr "" @@ -1840,59 +1844,59 @@ msgstr "" msgid "Stun lookup in progress..." msgstr "STUN adres wordt opgezocht..." -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." msgstr "" -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "Aanwezig" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "Bezet" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "Afwezig" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" msgstr "" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" msgstr "" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "Niet storen" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" msgstr "" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" msgstr "" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "" @@ -1916,12 +1920,12 @@ msgstr "Zoekt de lokatie van het telefoonnummer..." msgid "Could not resolve this number." msgstr "Kon dit nummer niet vinden." -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." msgstr "" @@ -2030,16 +2034,16 @@ msgstr "" msgid "Authentication token is %s" msgstr "" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." msgstr "" -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." msgstr "" -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." diff --git a/po/pl.po b/po/pl.po index c561a1534..8be1db1af 100644 --- a/po/pl.po +++ b/po/pl.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:56+0000\n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" "Last-Translator: Belledonne Communications \n" "Language-Team: Polish (http://www.transifex.com/belledonne-communications/linphone-gtk/language/pl/)\n" "MIME-Version: 1.0\n" @@ -32,7 +32,7 @@ msgstr "" msgid "Add %s to your contact list" msgstr "" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "" @@ -106,7 +106,7 @@ msgstr "" msgid "Message not sent" msgstr "" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "" @@ -152,7 +152,7 @@ msgstr "" msgid "Run self test and exit 0 if succeed" msgstr "" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" @@ -160,80 +160,80 @@ msgid "" "If you answer no, this person will be temporarily blacklisted." msgstr "" -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" msgstr "" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "" -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" msgstr "" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "" -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" msgstr "" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" msgstr "" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" msgstr "" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." msgstr "" -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "" -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "" @@ -247,31 +247,31 @@ msgstr "" msgid "Search in %s directory" msgstr "" -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" msgstr "" @@ -300,7 +300,7 @@ msgstr "Parametr" msgid "Enabled" msgstr "Włączone" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "Wyłączone" @@ -742,7 +742,7 @@ msgstr "" msgid "Audio Assistant" msgstr "" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "" @@ -956,15 +956,15 @@ msgstr "" msgid "LDAP Settings" msgstr "" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" msgstr "" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" msgstr "" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "" @@ -1130,58 +1130,66 @@ msgid "Show keypad" msgstr "" #: ../gtk/main.ui.h:8 -msgid "_Help" +msgid "Import contacts from vCards" msgstr "" #: ../gtk/main.ui.h:9 -msgid "Show debug window" +msgid "Export contacts as vCards" msgstr "" #: ../gtk/main.ui.h:10 -msgid "_Homepage" +msgid "_Help" msgstr "" #: ../gtk/main.ui.h:11 -msgid "Check _Updates" +msgid "Show debug window" msgstr "" #: ../gtk/main.ui.h:12 -msgid "Account assistant" +msgid "_Homepage" +msgstr "" + +#: ../gtk/main.ui.h:13 +msgid "Check _Updates" msgstr "" #: ../gtk/main.ui.h:14 -msgid "SIP address or phone number:" -msgstr "" - -#: ../gtk/main.ui.h:15 -msgid "Initiate a new call" +msgid "Account assistant" msgstr "" #: ../gtk/main.ui.h:16 -msgid "Contacts" +msgid "SIP address or phone number:" msgstr "" #: ../gtk/main.ui.h:17 -msgid "Search" +msgid "Initiate a new call" msgstr "" #: ../gtk/main.ui.h:18 -msgid "Add contacts from directory" +msgid "Contacts" msgstr "" #: ../gtk/main.ui.h:19 -msgid "Add contact" +msgid "Search" msgstr "" #: ../gtk/main.ui.h:20 -msgid "Clear call history" +msgid "Add contacts from directory" +msgstr "" + +#: ../gtk/main.ui.h:21 +msgid "Add contact" msgstr "" #: ../gtk/main.ui.h:22 +msgid "Clear call history" +msgstr "" + +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" msgstr "" @@ -1238,320 +1246,316 @@ msgid "SIP (TLS)" msgstr "" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" msgstr "" -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" msgstr "" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" msgstr "" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" msgstr "" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" msgstr "" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" msgstr "" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" msgstr "" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" msgstr "" -#: ../gtk/parameters.ui.h:31 +#: ../gtk/parameters.ui.h:28 msgid "Delay before answering (ms)" msgstr "" -#: ../gtk/parameters.ui.h:32 +#: ../gtk/parameters.ui.h:29 msgid "Auto-answer" msgstr "" -#: ../gtk/parameters.ui.h:33 +#: ../gtk/parameters.ui.h:30 msgid "Manage SIP Accounts" msgstr "" -#: ../gtk/parameters.ui.h:34 +#: ../gtk/parameters.ui.h:31 msgid "Ring sound:" msgstr "" -#: ../gtk/parameters.ui.h:35 +#: ../gtk/parameters.ui.h:32 msgid "ALSA special device (optional):" msgstr "" -#: ../gtk/parameters.ui.h:36 +#: ../gtk/parameters.ui.h:33 msgid "Capture device:" msgstr "" -#: ../gtk/parameters.ui.h:37 +#: ../gtk/parameters.ui.h:34 msgid "Ring device:" msgstr "" -#: ../gtk/parameters.ui.h:38 +#: ../gtk/parameters.ui.h:35 msgid "Playback device:" msgstr "" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" msgstr "" -#: ../gtk/parameters.ui.h:40 +#: ../gtk/parameters.ui.h:37 msgid "Audio" msgstr "" -#: ../gtk/parameters.ui.h:41 +#: ../gtk/parameters.ui.h:38 msgid "Video input device:" msgstr "" -#: ../gtk/parameters.ui.h:42 +#: ../gtk/parameters.ui.h:39 msgid "Preferred video resolution:" msgstr "" -#: ../gtk/parameters.ui.h:43 +#: ../gtk/parameters.ui.h:40 msgid "Video output method:" msgstr "" -#: ../gtk/parameters.ui.h:44 +#: ../gtk/parameters.ui.h:41 msgid "Show camera preview" msgstr "" -#: ../gtk/parameters.ui.h:45 +#: ../gtk/parameters.ui.h:42 msgid "Video preset:" msgstr "" -#: ../gtk/parameters.ui.h:46 +#: ../gtk/parameters.ui.h:43 msgid "Preferred video framerate:" msgstr "" -#: ../gtk/parameters.ui.h:47 +#: ../gtk/parameters.ui.h:44 msgid "0 stands for \"unlimited\"" msgstr "" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "" -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" msgstr "" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" msgstr "" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" msgstr "" -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." msgstr "" -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" msgstr "" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" msgstr "" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" msgstr "" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "" -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" msgstr "" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" msgstr "" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" msgstr "" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" msgstr "" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" msgstr "" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" msgstr "" -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" msgstr "" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" msgstr "" -#: ../gtk/parameters.ui.h:73 +#: ../gtk/parameters.ui.h:70 msgid "Behind NAT / Firewall (use uPnP)" msgstr "" -#: ../gtk/parameters.ui.h:74 +#: ../gtk/parameters.ui.h:71 msgid "Public IP address:" msgstr "" -#: ../gtk/parameters.ui.h:75 +#: ../gtk/parameters.ui.h:72 msgid "Stun server:" msgstr "" -#: ../gtk/parameters.ui.h:76 +#: ../gtk/parameters.ui.h:73 msgid "NAT and Firewall" msgstr "" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" msgstr "" -#: ../gtk/parameters.ui.h:79 +#: ../gtk/parameters.ui.h:76 msgid "Media encryption is mandatory" msgstr "" -#: ../gtk/parameters.ui.h:80 +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" +msgstr "" + +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" +msgstr "" + +#: ../gtk/parameters.ui.h:79 msgid "Encryption" msgstr "" -#: ../gtk/parameters.ui.h:81 +#: ../gtk/parameters.ui.h:80 msgid "Network settings" msgstr "" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" msgstr "Włączony" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "Wyłącz" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" msgstr "" -#: ../gtk/parameters.ui.h:85 +#: ../gtk/parameters.ui.h:84 msgid "Video codecs" msgstr "" -#: ../gtk/parameters.ui.h:86 +#: ../gtk/parameters.ui.h:85 msgid "Codecs" msgstr "" -#: ../gtk/parameters.ui.h:87 +#: ../gtk/parameters.ui.h:86 msgid "Language" msgstr "" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" msgstr "" -#: ../gtk/parameters.ui.h:94 +#: ../gtk/parameters.ui.h:93 msgid "LDAP Account setup" msgstr "" -#: ../gtk/parameters.ui.h:95 +#: ../gtk/parameters.ui.h:94 msgid "LDAP" msgstr "" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "" @@ -1789,52 +1793,52 @@ msgstr "" msgid "Please wait" msgstr "" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "" -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" msgstr "" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" msgstr "" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" msgstr "" -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" msgstr "" -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "" -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." msgstr "" -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." msgstr "" -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "Połączony" -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" msgstr "" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." msgstr "" @@ -1842,59 +1846,59 @@ msgstr "" msgid "Stun lookup in progress..." msgstr "" -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." msgstr "" -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "Zajęty" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" msgstr "" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" msgstr "" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "Nie przeszkadzać" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" msgstr "" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" msgstr "" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "" @@ -1918,12 +1922,12 @@ msgstr "" msgid "Could not resolve this number." msgstr "" -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." msgstr "" @@ -2032,16 +2036,16 @@ msgstr "" msgid "Authentication token is %s" msgstr "" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." msgstr "" -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." msgstr "" -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." diff --git a/po/pt_BR.po b/po/pt_BR.po index 7129b3745..81def6a83 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:56+0000\n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" "Last-Translator: Belledonne Communications \n" "Language-Team: Portuguese (Brazil) (http://www.transifex.com/belledonne-communications/linphone-gtk/language/pt_BR/)\n" "MIME-Version: 1.0\n" @@ -32,7 +32,7 @@ msgstr "" msgid "Add %s to your contact list" msgstr "" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "" @@ -104,7 +104,7 @@ msgstr "" msgid "Message not sent" msgstr "" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "" @@ -150,7 +150,7 @@ msgstr "" msgid "Run self test and exit 0 if succeed" msgstr "" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" @@ -158,80 +158,80 @@ msgid "" "If you answer no, this person will be temporarily blacklisted." msgstr "" -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" msgstr "" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "" -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "Camadas recebidas" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" msgstr "" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "" -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" msgstr "" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" msgstr "" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" msgstr "" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." msgstr "" -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "" -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "" @@ -245,31 +245,31 @@ msgstr "" msgid "Search in %s directory" msgstr "" -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" msgstr "" @@ -298,7 +298,7 @@ msgstr "Parâmetros" msgid "Enabled" msgstr "Ativado" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "Desativado" @@ -739,7 +739,7 @@ msgstr "" msgid "Audio Assistant" msgstr "" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "" @@ -953,15 +953,15 @@ msgstr "" msgid "LDAP Settings" msgstr "" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" msgstr "" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" msgstr "" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "" @@ -1127,58 +1127,66 @@ msgid "Show keypad" msgstr "" #: ../gtk/main.ui.h:8 -msgid "_Help" +msgid "Import contacts from vCards" msgstr "" #: ../gtk/main.ui.h:9 -msgid "Show debug window" +msgid "Export contacts as vCards" msgstr "" #: ../gtk/main.ui.h:10 -msgid "_Homepage" +msgid "_Help" msgstr "" #: ../gtk/main.ui.h:11 -msgid "Check _Updates" +msgid "Show debug window" msgstr "" #: ../gtk/main.ui.h:12 -msgid "Account assistant" +msgid "_Homepage" +msgstr "" + +#: ../gtk/main.ui.h:13 +msgid "Check _Updates" msgstr "" #: ../gtk/main.ui.h:14 -msgid "SIP address or phone number:" -msgstr "" - -#: ../gtk/main.ui.h:15 -msgid "Initiate a new call" +msgid "Account assistant" msgstr "" #: ../gtk/main.ui.h:16 -msgid "Contacts" +msgid "SIP address or phone number:" msgstr "" #: ../gtk/main.ui.h:17 -msgid "Search" +msgid "Initiate a new call" msgstr "" #: ../gtk/main.ui.h:18 -msgid "Add contacts from directory" +msgid "Contacts" msgstr "" #: ../gtk/main.ui.h:19 -msgid "Add contact" +msgid "Search" msgstr "" #: ../gtk/main.ui.h:20 -msgid "Clear call history" +msgid "Add contacts from directory" +msgstr "" + +#: ../gtk/main.ui.h:21 +msgid "Add contact" msgstr "" #: ../gtk/main.ui.h:22 +msgid "Clear call history" +msgstr "" + +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" msgstr "" @@ -1235,320 +1243,316 @@ msgid "SIP (TLS)" msgstr "" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" msgstr "" -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" msgstr "" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" msgstr "" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" msgstr "" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" msgstr "" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "Editar" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "Remover" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" msgstr "" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" msgstr "" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" msgstr "" -#: ../gtk/parameters.ui.h:31 +#: ../gtk/parameters.ui.h:28 msgid "Delay before answering (ms)" msgstr "" -#: ../gtk/parameters.ui.h:32 +#: ../gtk/parameters.ui.h:29 msgid "Auto-answer" msgstr "" -#: ../gtk/parameters.ui.h:33 +#: ../gtk/parameters.ui.h:30 msgid "Manage SIP Accounts" msgstr "" -#: ../gtk/parameters.ui.h:34 +#: ../gtk/parameters.ui.h:31 msgid "Ring sound:" msgstr "" -#: ../gtk/parameters.ui.h:35 +#: ../gtk/parameters.ui.h:32 msgid "ALSA special device (optional):" msgstr "" -#: ../gtk/parameters.ui.h:36 +#: ../gtk/parameters.ui.h:33 msgid "Capture device:" msgstr "" -#: ../gtk/parameters.ui.h:37 +#: ../gtk/parameters.ui.h:34 msgid "Ring device:" msgstr "" -#: ../gtk/parameters.ui.h:38 +#: ../gtk/parameters.ui.h:35 msgid "Playback device:" msgstr "" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" msgstr "" -#: ../gtk/parameters.ui.h:40 +#: ../gtk/parameters.ui.h:37 msgid "Audio" msgstr "" -#: ../gtk/parameters.ui.h:41 +#: ../gtk/parameters.ui.h:38 msgid "Video input device:" msgstr "" -#: ../gtk/parameters.ui.h:42 +#: ../gtk/parameters.ui.h:39 msgid "Preferred video resolution:" msgstr "" -#: ../gtk/parameters.ui.h:43 +#: ../gtk/parameters.ui.h:40 msgid "Video output method:" msgstr "" -#: ../gtk/parameters.ui.h:44 +#: ../gtk/parameters.ui.h:41 msgid "Show camera preview" msgstr "" -#: ../gtk/parameters.ui.h:45 +#: ../gtk/parameters.ui.h:42 msgid "Video preset:" msgstr "" -#: ../gtk/parameters.ui.h:46 +#: ../gtk/parameters.ui.h:43 msgid "Preferred video framerate:" msgstr "" -#: ../gtk/parameters.ui.h:47 +#: ../gtk/parameters.ui.h:44 msgid "0 stands for \"unlimited\"" msgstr "" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "" -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" msgstr "" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" msgstr "" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" msgstr "" -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." msgstr "" -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" msgstr "" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" msgstr "" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" msgstr "" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "" -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" msgstr "" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" msgstr "" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" msgstr "" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" msgstr "" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" msgstr "" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" msgstr "" -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" msgstr "" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" msgstr "" -#: ../gtk/parameters.ui.h:73 +#: ../gtk/parameters.ui.h:70 msgid "Behind NAT / Firewall (use uPnP)" msgstr "" -#: ../gtk/parameters.ui.h:74 +#: ../gtk/parameters.ui.h:71 msgid "Public IP address:" msgstr "" -#: ../gtk/parameters.ui.h:75 +#: ../gtk/parameters.ui.h:72 msgid "Stun server:" msgstr "" -#: ../gtk/parameters.ui.h:76 +#: ../gtk/parameters.ui.h:73 msgid "NAT and Firewall" msgstr "" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" msgstr "" -#: ../gtk/parameters.ui.h:79 +#: ../gtk/parameters.ui.h:76 msgid "Media encryption is mandatory" msgstr "" -#: ../gtk/parameters.ui.h:80 +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" +msgstr "" + +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" +msgstr "" + +#: ../gtk/parameters.ui.h:79 msgid "Encryption" msgstr "" -#: ../gtk/parameters.ui.h:81 +#: ../gtk/parameters.ui.h:80 msgid "Network settings" msgstr "" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" msgstr "Ativado" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "Desativar" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" msgstr "" -#: ../gtk/parameters.ui.h:85 +#: ../gtk/parameters.ui.h:84 msgid "Video codecs" msgstr "" -#: ../gtk/parameters.ui.h:86 +#: ../gtk/parameters.ui.h:85 msgid "Codecs" msgstr "" -#: ../gtk/parameters.ui.h:87 +#: ../gtk/parameters.ui.h:86 msgid "Language" msgstr "" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" msgstr "" -#: ../gtk/parameters.ui.h:94 +#: ../gtk/parameters.ui.h:93 msgid "LDAP Account setup" msgstr "" -#: ../gtk/parameters.ui.h:95 +#: ../gtk/parameters.ui.h:94 msgid "LDAP" msgstr "" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "" @@ -1786,52 +1790,52 @@ msgstr "" msgid "Please wait" msgstr "" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "" -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" msgstr "" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" msgstr "" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" msgstr "" -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" msgstr "" -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "" -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." msgstr "" -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." msgstr "" -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "Conectado." -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" msgstr "" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." msgstr "" @@ -1839,59 +1843,59 @@ msgstr "" msgid "Stun lookup in progress..." msgstr "" -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." msgstr "" -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "Ocupado" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" msgstr "" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" msgstr "" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "Não perturbe" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" msgstr "" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" msgstr "" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "" @@ -1915,12 +1919,12 @@ msgstr "Procurando por telefone de destino..." msgid "Could not resolve this number." msgstr "Não foi possível encontrar este número." -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." msgstr "" @@ -2029,16 +2033,16 @@ msgstr "" msgid "Authentication token is %s" msgstr "" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." msgstr "" -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." msgstr "" -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." diff --git a/po/ru.po b/po/ru.po index eaed7deef..db4d7a195 100644 --- a/po/ru.po +++ b/po/ru.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:56+0000\n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" "Last-Translator: Belledonne Communications \n" "Language-Team: Russian (http://www.transifex.com/belledonne-communications/linphone-gtk/language/ru/)\n" "MIME-Version: 1.0\n" @@ -37,7 +37,7 @@ msgstr "Послать текст для %s" msgid "Add %s to your contact list" msgstr "Добавить %s в мой список контактов" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "Последние звонки" @@ -113,7 +113,7 @@ msgstr "Отправка..." msgid "Message not sent" msgstr "Сообщение не отправилось" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "Копировать" @@ -159,7 +159,7 @@ msgstr "Запустить помощника аудио" msgid "Run self test and exit 0 if succeed" msgstr "Запустить самотест и выйти при успехе со статусом 0" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" @@ -167,80 +167,80 @@ msgid "" "If you answer no, this person will be temporarily blacklisted." msgstr "%s хочет добавить Вас в его/её список контактов.\nВы бы добавили его/её в свой список контактов и позволили ему/ей видеть ваш статус присутствия?\nЕсли вы ответите нет, то этот человек будет временно занесён в чёрный список." -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" msgstr "Пожалуйста, введите пароль для пользователя %s\n для реалм (рилм) %s:" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "Ошибка звонка" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "Звонок окончен" -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "Входящий звонок" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "Ответ" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "Отклонить" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "Звонок приостановлен" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "%s" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" msgstr "%s предложил запустить видео. Вы принимаете?" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "Домашняя страница" -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "Linphone" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" msgstr "Видео интернет телефон" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" msgstr "%s (по умолчанию)" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" msgstr "Мы передали в %s" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." msgstr "Звуковые карты не были обнаружены на этом компьютере.\nВы не сможете отправлять или получать аудио звонки." -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "Свободный SIP видео-телефон" -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "Привет\n" @@ -254,31 +254,31 @@ msgstr "Добавить в адресную книгу" msgid "Search in %s directory" msgstr "Поиск в директории %s" -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "Неверный sip контакт!" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "Добавить новый контакт" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "Редактировать контакт '%s'" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "Удалить контакт '%s'" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "Удалить историю чата для '%s'" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" msgstr "Добавить новый контакт из директории '%s'" @@ -307,7 +307,7 @@ msgstr "Параметры" msgid "Enabled" msgstr "Разрешён" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "Не разрешён" @@ -750,7 +750,7 @@ msgstr "Давайте сейчас запустим linphone" msgid "Audio Assistant" msgstr "Помощник аудио" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "Помощник аудио" @@ -964,15 +964,15 @@ msgstr "Вызвать рейтинг качества" msgid "LDAP Settings" msgstr "Настройки LDAP" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" msgstr "Адрес сервера:" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" msgstr "Метод аутентификации:" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "Имя пользователя:" @@ -1138,58 +1138,66 @@ msgid "Show keypad" msgstr "Показать клавиатуру" #: ../gtk/main.ui.h:8 +msgid "Import contacts from vCards" +msgstr "" + +#: ../gtk/main.ui.h:9 +msgid "Export contacts as vCards" +msgstr "" + +#: ../gtk/main.ui.h:10 msgid "_Help" msgstr "_Помощь" -#: ../gtk/main.ui.h:9 +#: ../gtk/main.ui.h:11 msgid "Show debug window" msgstr "Показать окно отладки" -#: ../gtk/main.ui.h:10 +#: ../gtk/main.ui.h:12 msgid "_Homepage" msgstr "_Домашняя страница" -#: ../gtk/main.ui.h:11 +#: ../gtk/main.ui.h:13 msgid "Check _Updates" msgstr "Проверить _обновления" -#: ../gtk/main.ui.h:12 +#: ../gtk/main.ui.h:14 msgid "Account assistant" msgstr "Помощник учётной записи" -#: ../gtk/main.ui.h:14 +#: ../gtk/main.ui.h:16 msgid "SIP address or phone number:" msgstr "SIP-адрес или номер телефона:" -#: ../gtk/main.ui.h:15 +#: ../gtk/main.ui.h:17 msgid "Initiate a new call" msgstr "Начать новый звонок" -#: ../gtk/main.ui.h:16 +#: ../gtk/main.ui.h:18 msgid "Contacts" msgstr "Контакты" -#: ../gtk/main.ui.h:17 +#: ../gtk/main.ui.h:19 msgid "Search" msgstr "Поиск" -#: ../gtk/main.ui.h:18 +#: ../gtk/main.ui.h:20 msgid "Add contacts from directory" msgstr "Добавить контакты из директории" -#: ../gtk/main.ui.h:19 +#: ../gtk/main.ui.h:21 msgid "Add contact" msgstr "Добавить контакт" -#: ../gtk/main.ui.h:20 +#: ../gtk/main.ui.h:22 msgid "Clear call history" msgstr "Очистить историю звонков" -#: ../gtk/main.ui.h:22 +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "Мой текущий идентификатор:" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" msgstr "Автоответ включен" @@ -1246,320 +1254,316 @@ msgid "SIP (TLS)" msgstr "SIP (TLS)" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "По умолчанию" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "много кадров в секунду" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "Пользовательский" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "Настройки" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" msgstr "Эта секция определяет ваш SIP адрес, когда вы не используете учётную запись SIP" -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" msgstr "Отображаемое имя (например: Иван Сидоров):" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "Ваше имя пользователя:" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" msgstr "Ваш результирующий SIP адрес:" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" msgstr "Идентификатор по умолчанию" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" msgstr "Мастер" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "Добавить" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "Редактировать" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "Удалить" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" msgstr "Учётные записи" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" msgstr "Стереть все пароли" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "Секретность" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" msgstr "Автоматический ответ при получении звонка" -#: ../gtk/parameters.ui.h:31 +#: ../gtk/parameters.ui.h:28 msgid "Delay before answering (ms)" msgstr "Задержка перед ответом (мс)" -#: ../gtk/parameters.ui.h:32 +#: ../gtk/parameters.ui.h:29 msgid "Auto-answer" msgstr "Автоответ" -#: ../gtk/parameters.ui.h:33 +#: ../gtk/parameters.ui.h:30 msgid "Manage SIP Accounts" msgstr "Управление учётными записями SIP" -#: ../gtk/parameters.ui.h:34 +#: ../gtk/parameters.ui.h:31 msgid "Ring sound:" msgstr "Мелодия звонка:" -#: ../gtk/parameters.ui.h:35 +#: ../gtk/parameters.ui.h:32 msgid "ALSA special device (optional):" msgstr "Специальное устройство ALSA (опционально)" -#: ../gtk/parameters.ui.h:36 +#: ../gtk/parameters.ui.h:33 msgid "Capture device:" msgstr "Устройство захвата:" -#: ../gtk/parameters.ui.h:37 +#: ../gtk/parameters.ui.h:34 msgid "Ring device:" msgstr "Устройство звонка:" -#: ../gtk/parameters.ui.h:38 +#: ../gtk/parameters.ui.h:35 msgid "Playback device:" msgstr "Устройство воспроизведения:" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" msgstr "Разрешить подавление эха" -#: ../gtk/parameters.ui.h:40 +#: ../gtk/parameters.ui.h:37 msgid "Audio" msgstr "Аудио" -#: ../gtk/parameters.ui.h:41 +#: ../gtk/parameters.ui.h:38 msgid "Video input device:" msgstr "Устройство для вывода видео:" -#: ../gtk/parameters.ui.h:42 +#: ../gtk/parameters.ui.h:39 msgid "Preferred video resolution:" msgstr "Предпочтительное разрешение видео:" -#: ../gtk/parameters.ui.h:43 +#: ../gtk/parameters.ui.h:40 msgid "Video output method:" msgstr "Метод вывода видео:" -#: ../gtk/parameters.ui.h:44 +#: ../gtk/parameters.ui.h:41 msgid "Show camera preview" msgstr "Показать предпросмотр с камеры" -#: ../gtk/parameters.ui.h:45 +#: ../gtk/parameters.ui.h:42 msgid "Video preset:" msgstr "Предустановки видео:" -#: ../gtk/parameters.ui.h:46 +#: ../gtk/parameters.ui.h:43 msgid "Preferred video framerate:" msgstr "Предпочтительная частота кадров:" -#: ../gtk/parameters.ui.h:47 +#: ../gtk/parameters.ui.h:44 msgid "0 stands for \"unlimited\"" msgstr "0 означает \"безлимитный\"" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "Видео" -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" msgstr "Ограничение исходящего потока КБит/сек:" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" msgstr "Ограничение скорости входящего потока КБит/сек:" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" msgstr "Разрешить адаптивное управление скоростью" -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." msgstr "Адаптивное управление скоростью - это технология динамического угадывания доступной пропускной способности во время звонка." -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "Пропускная способность" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" msgstr "Настройки мультимедиа" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" msgstr "Установить MTU (максимально передаваемый блок):" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" msgstr "Отправлять DTFM как SIP-информацию" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "Разрешить IPv6" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "Транспорт" -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "Порт SIP/UDP" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" msgstr "Случайно" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "Порт SIP/TCP" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" msgstr "Аудио RTP/UDP:" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "Фиксированный" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" msgstr "Видео RTP/UDP:" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "Тунель" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" msgstr "Поля DSCP" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" msgstr "Сетевые протоколы и порты" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" msgstr "Прямое подключение к интернет" -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" msgstr "За NAT / брандмауэром (указать IP шлюза)" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "За NAT / брандмауэром (использовать STUN)" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" msgstr "За NAT / брандмауэром (использовать ICE)" -#: ../gtk/parameters.ui.h:73 +#: ../gtk/parameters.ui.h:70 msgid "Behind NAT / Firewall (use uPnP)" msgstr "За NAT / брандмауэром (использовать uPnP)" -#: ../gtk/parameters.ui.h:74 +#: ../gtk/parameters.ui.h:71 msgid "Public IP address:" msgstr "Выделенный (публичный) IP-адрес:" -#: ../gtk/parameters.ui.h:75 +#: ../gtk/parameters.ui.h:72 msgid "Stun server:" msgstr "STUN сервер:" -#: ../gtk/parameters.ui.h:76 +#: ../gtk/parameters.ui.h:73 msgid "NAT and Firewall" msgstr "NAT и брандмауэр" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "Тип медиа-шифрования" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" -msgstr "" +msgstr "Использовать лайм для исходящих сообщений чата" -#: ../gtk/parameters.ui.h:79 +#: ../gtk/parameters.ui.h:76 msgid "Media encryption is mandatory" msgstr "Медиа-шифрование обязательно" -#: ../gtk/parameters.ui.h:80 -msgid "Encryption" +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" msgstr "" -#: ../gtk/parameters.ui.h:81 +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" +msgstr "" + +#: ../gtk/parameters.ui.h:79 +msgid "Encryption" +msgstr "Шифрование" + +#: ../gtk/parameters.ui.h:80 msgid "Network settings" msgstr "Настройки сети" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" msgstr "Разрешить" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "Выключить" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" msgstr "Аудио кодеки" -#: ../gtk/parameters.ui.h:85 +#: ../gtk/parameters.ui.h:84 msgid "Video codecs" msgstr "Видео кодеки" -#: ../gtk/parameters.ui.h:86 +#: ../gtk/parameters.ui.h:85 msgid "Codecs" msgstr "Кодеки" -#: ../gtk/parameters.ui.h:87 +#: ../gtk/parameters.ui.h:86 msgid "Language" msgstr "Язык" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "Показать дополнительные настройки" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "Уровень" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" msgstr "Пользовательский интерфейс" -#: ../gtk/parameters.ui.h:94 +#: ../gtk/parameters.ui.h:93 msgid "LDAP Account setup" msgstr "Установка учётной записи LDAP" -#: ../gtk/parameters.ui.h:95 +#: ../gtk/parameters.ui.h:94 msgid "LDAP" msgstr "LDAP" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "Готово" @@ -1797,52 +1801,52 @@ msgstr "Конфигурировать http прокси (опциональ msgid "Please wait" msgstr "Пожалуйста, подождите" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "Готов" -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" msgstr "Конфигурирование" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" msgstr "Соединение" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" msgstr "Невозможно позвонить" -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" msgstr "К сожалению, мы достигли максимального количества одновременных звонков" -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "контактирует с вами" -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." msgstr "и спросил автоматический ответ." -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." msgstr "Изменение параметров звонка..." -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "Соединён." -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "Звонок отменён" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" msgstr "Невозможно приостановить звонок" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." msgstr "Приостановка текущего звонка..." @@ -1850,59 +1854,59 @@ msgstr "Приостановка текущего звонка..." msgid "Stun lookup in progress..." msgstr "Идет поиск STUN..." -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." msgstr "Сбор локальных кандидатов ICE в прогрессе..." -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "В сети" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "Занят" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "Скоро вернусь" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "Нет на месте" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" msgstr "На телефоне" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" msgstr "На обеде" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "Не беспокоить" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "Отошёл" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" msgstr "Разговариваю" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" msgstr "Не в сети" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "В ожидании" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "Отдых" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "Неизвестный статус" @@ -1926,12 +1930,12 @@ msgstr "Поиск назначения для телефонного номер msgid "Could not resolve this number." msgstr "Не получилось принять решение по этому номеру." -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "Невозможно зайти как: %s" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." msgstr "Обновление %s..." @@ -2040,16 +2044,16 @@ msgstr "Сервис недоступен, повтор" msgid "Authentication token is %s" msgstr "Маркер проверки подлинности: %s" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." msgstr "Параметры звонка не были изменены: %s." -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." msgstr "Параметры звонка были успешно изменены." -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." diff --git a/po/sr.po b/po/sr.po index f3f5f87f4..47dddddda 100644 --- a/po/sr.po +++ b/po/sr.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:56+0000\n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" "Last-Translator: Belledonne Communications \n" "Language-Team: Serbian (http://www.transifex.com/belledonne-communications/linphone-gtk/language/sr/)\n" "MIME-Version: 1.0\n" @@ -33,7 +33,7 @@ msgstr "Пошаљи текст за %s" msgid "Add %s to your contact list" msgstr "Додајте „%s“ на списак контаката" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "Скорашњи позиви" @@ -107,7 +107,7 @@ msgstr "Шаљем..." msgid "Message not sent" msgstr "Порука није послата" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "Умножи" @@ -153,7 +153,7 @@ msgstr "Покреће помоћника звука" msgid "Run self test and exit 0 if succeed" msgstr "Покреће самоиспробавање и излази 0 ако је успешно" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" @@ -161,80 +161,80 @@ msgid "" "If you answer no, this person will be temporarily blacklisted." msgstr "%s жели да вас дода на свој списак контакта.\nДа ли желите да га/је додате на ваш списак контакта и да му/јој омогућите да види ваше стање присуства?\nАко одговорите негативно, ова особа ће тренутно бити стављена на списак забрањених." -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" msgstr "Унесите вашу лозинку за корисничко име %s\n на подручју %s:" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "Грешка позива" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "Позив је завршен" -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "Долазни позив" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "Јави се" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "Одбиј" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "Позив је заустављен" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "од %s" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" msgstr "%s предлаже да започнете видео. Да ли прихватате ?" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "Веза веб сајта" -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "Линфон" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" msgstr "Интернетски видео телефон" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" msgstr "%s (основно)" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" msgstr "Преселили смо се на %s" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." msgstr "Ниједна звучна картица није откривена на овом рачунару.\nНећете бити у могућности да шаљете или да примате звучне позиве." -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "Слободан СИП телефон са снимком" -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "Здраво\n" @@ -248,31 +248,31 @@ msgstr "Додајте у адресар" msgid "Search in %s directory" msgstr "Тражи у директоријуму „%s“" -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "Неисправан сип контакт !" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "Додај нови контакт" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "Уредите контакт „%s“" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "Обришите контакт „%s“" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "Обришите историјат ћаскања за „%s“" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" msgstr "Додајте нови контакт из директоријума „%s“" @@ -301,7 +301,7 @@ msgstr "Параметри" msgid "Enabled" msgstr "Укључено" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "Искључено" @@ -743,7 +743,7 @@ msgstr "Хајде сада да покренемо Линфон" msgid "Audio Assistant" msgstr "Помоћник звука" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "Помоћник звука" @@ -957,15 +957,15 @@ msgstr "Оцена квалитета позива" msgid "LDAP Settings" msgstr "ЛДАП подешавања" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" msgstr "Адреса сервера:" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" msgstr "Начин потврђивања идентитета:" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "Корисничко име:" @@ -1131,58 +1131,66 @@ msgid "Show keypad" msgstr "Прикажи тастатуру" #: ../gtk/main.ui.h:8 +msgid "Import contacts from vCards" +msgstr "" + +#: ../gtk/main.ui.h:9 +msgid "Export contacts as vCards" +msgstr "" + +#: ../gtk/main.ui.h:10 msgid "_Help" msgstr "По_моћ" -#: ../gtk/main.ui.h:9 +#: ../gtk/main.ui.h:11 msgid "Show debug window" msgstr "Прикажи прозорче прочишћавања" -#: ../gtk/main.ui.h:10 +#: ../gtk/main.ui.h:12 msgid "_Homepage" msgstr "_Матична страница" -#: ../gtk/main.ui.h:11 +#: ../gtk/main.ui.h:13 msgid "Check _Updates" msgstr "Провери _ажурирања" -#: ../gtk/main.ui.h:12 +#: ../gtk/main.ui.h:14 msgid "Account assistant" msgstr "Помоћник налога" -#: ../gtk/main.ui.h:14 +#: ../gtk/main.ui.h:16 msgid "SIP address or phone number:" msgstr "СИП адреса или број телефона:" -#: ../gtk/main.ui.h:15 +#: ../gtk/main.ui.h:17 msgid "Initiate a new call" msgstr "Започните нови позив" -#: ../gtk/main.ui.h:16 +#: ../gtk/main.ui.h:18 msgid "Contacts" msgstr "Пријатељи" -#: ../gtk/main.ui.h:17 +#: ../gtk/main.ui.h:19 msgid "Search" msgstr "Тражи" -#: ../gtk/main.ui.h:18 +#: ../gtk/main.ui.h:20 msgid "Add contacts from directory" msgstr "Додај пријатеље из директоријума" -#: ../gtk/main.ui.h:19 +#: ../gtk/main.ui.h:21 msgid "Add contact" msgstr "Додај пријатеља" -#: ../gtk/main.ui.h:20 +#: ../gtk/main.ui.h:22 msgid "Clear call history" msgstr "Очисти историјат озива" -#: ../gtk/main.ui.h:22 +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "Мој тренутни идентитет:" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" msgstr "Самојављање је укључено" @@ -1239,320 +1247,316 @@ msgid "SIP (TLS)" msgstr "СИП (ТЛС)" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "основно" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "високи-проток" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "произвољно" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "Подешавања" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" msgstr "Овај одељак одређује вашу СИП адресу када не користите СИП налог" -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" msgstr "Ваше приказано име (нпр: Пера Перић):" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "Ваше корисничко име:" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" msgstr "Ваша резултирајућа СИП адреса:" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" msgstr "Основни идентитет" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" msgstr "Чаробњак" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "Додај" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "Уреди" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "Уклони" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" msgstr "Посреднички налози" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" msgstr "Обриши све лозинке" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "Приватност" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" msgstr "Сам одговори када се прими позив" -#: ../gtk/parameters.ui.h:31 +#: ../gtk/parameters.ui.h:28 msgid "Delay before answering (ms)" msgstr "Сачекај пре него што одговориш (ms)" -#: ../gtk/parameters.ui.h:32 +#: ../gtk/parameters.ui.h:29 msgid "Auto-answer" msgstr "Самостални-одговор" -#: ../gtk/parameters.ui.h:33 +#: ../gtk/parameters.ui.h:30 msgid "Manage SIP Accounts" msgstr "СИП налози" -#: ../gtk/parameters.ui.h:34 +#: ../gtk/parameters.ui.h:31 msgid "Ring sound:" msgstr "Звук звона:" -#: ../gtk/parameters.ui.h:35 +#: ../gtk/parameters.ui.h:32 msgid "ALSA special device (optional):" msgstr "АЛСА-ин посебни уређај (изборно):" -#: ../gtk/parameters.ui.h:36 +#: ../gtk/parameters.ui.h:33 msgid "Capture device:" msgstr "Уређај за снимање:" -#: ../gtk/parameters.ui.h:37 +#: ../gtk/parameters.ui.h:34 msgid "Ring device:" msgstr "Уређај за звоно:" -#: ../gtk/parameters.ui.h:38 +#: ../gtk/parameters.ui.h:35 msgid "Playback device:" msgstr "Уређај за пуштање:" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" msgstr "Укључи поништавање одјека" -#: ../gtk/parameters.ui.h:40 +#: ../gtk/parameters.ui.h:37 msgid "Audio" msgstr "Звук" -#: ../gtk/parameters.ui.h:41 +#: ../gtk/parameters.ui.h:38 msgid "Video input device:" msgstr "Улазни уређај снимка:" -#: ../gtk/parameters.ui.h:42 +#: ../gtk/parameters.ui.h:39 msgid "Preferred video resolution:" msgstr "Жељена резолуција снимка:" -#: ../gtk/parameters.ui.h:43 +#: ../gtk/parameters.ui.h:40 msgid "Video output method:" msgstr "Начин излаза снимка:" -#: ../gtk/parameters.ui.h:44 +#: ../gtk/parameters.ui.h:41 msgid "Show camera preview" msgstr "Прикажи претпреглед камерице" -#: ../gtk/parameters.ui.h:45 +#: ../gtk/parameters.ui.h:42 msgid "Video preset:" msgstr "Претподешавање снимка:" -#: ../gtk/parameters.ui.h:46 +#: ../gtk/parameters.ui.h:43 msgid "Preferred video framerate:" msgstr "Жељени проток кадрова снимка:" -#: ../gtk/parameters.ui.h:47 +#: ../gtk/parameters.ui.h:44 msgid "0 stands for \"unlimited\"" msgstr "0 значи „неограничено“" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "Снимак" -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" msgstr "Ограничи брзину слања на (Kb/s):" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" msgstr "Ограничи брзину преузимања на (Kb/s):" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" msgstr "Укључи прилагодљиво управљање протоком" -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." msgstr "Прилагодљиво управљање протоком је техника за променљиво погађање доступног пропусног опсега за време позива." -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "Управљање пропусним опсегом" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" msgstr "Мултимедија" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" msgstr "Подеси јединицу највећег преноса:" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" msgstr "Пошаљи ДТМФ као СИП податке" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "Омогући ИПв6" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "Пренос" -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "СИП/УДП прикључник" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" msgstr "Насумично" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "СИП/ТЦП прикључник" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" msgstr "РТП/УДП звука:" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "Неизмењиво" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" msgstr "РТП/УДП снимка:" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "Тунел" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" msgstr "ДСЦП поља" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" msgstr "Мрежни протокол и прикључници" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" msgstr "Непосредна веза на Интернет" -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" msgstr "Иза НАТ-а / мрежне баријере (наведите ИП мрежног пролаза)" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "Иза НАТ-а / мрежне баријере (користите СТУН за решавање)" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" msgstr "Иза НАТ-а / мрежне баријере (користите ИЦЕ)" -#: ../gtk/parameters.ui.h:73 +#: ../gtk/parameters.ui.h:70 msgid "Behind NAT / Firewall (use uPnP)" msgstr "Иза НАТ-а / мрежне баријере (користите уПнП)" -#: ../gtk/parameters.ui.h:74 +#: ../gtk/parameters.ui.h:71 msgid "Public IP address:" msgstr "Јавна ИП адреса:" -#: ../gtk/parameters.ui.h:75 +#: ../gtk/parameters.ui.h:72 msgid "Stun server:" msgstr "Стун сервер:" -#: ../gtk/parameters.ui.h:76 +#: ../gtk/parameters.ui.h:73 msgid "NAT and Firewall" msgstr "НАТ и мрежна баријера" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "Врста шифровања медија" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" msgstr "" -#: ../gtk/parameters.ui.h:79 +#: ../gtk/parameters.ui.h:76 msgid "Media encryption is mandatory" msgstr "Шифровање медија је обавезно" -#: ../gtk/parameters.ui.h:80 +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" +msgstr "" + +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" +msgstr "" + +#: ../gtk/parameters.ui.h:79 msgid "Encryption" msgstr "" -#: ../gtk/parameters.ui.h:81 +#: ../gtk/parameters.ui.h:80 msgid "Network settings" msgstr "Мрежа" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" msgstr "Укључи" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "Искључи" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" msgstr "Кодеци звука" -#: ../gtk/parameters.ui.h:85 +#: ../gtk/parameters.ui.h:84 msgid "Video codecs" msgstr "Кодеци снимка" -#: ../gtk/parameters.ui.h:86 +#: ../gtk/parameters.ui.h:85 msgid "Codecs" msgstr "Kодеци" -#: ../gtk/parameters.ui.h:87 +#: ../gtk/parameters.ui.h:86 msgid "Language" msgstr "Језик" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "Прикажи напредна подешавања" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "Ниво" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" msgstr "Корисничко сучеље" -#: ../gtk/parameters.ui.h:94 +#: ../gtk/parameters.ui.h:93 msgid "LDAP Account setup" msgstr "Подешавања ЛДАП налога" -#: ../gtk/parameters.ui.h:95 +#: ../gtk/parameters.ui.h:94 msgid "LDAP" msgstr "ЛДАП" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "Готово" @@ -1790,52 +1794,52 @@ msgstr "Подесите хттп посредника (изборно)" msgid "Please wait" msgstr "Сачекајте мало" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "Спреман" -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" msgstr "Подешавам" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" msgstr "Ступам у везу" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" msgstr "Не могу да позовем" -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" msgstr "Извините, достигли смо највећи број истовремених позива" -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "вам се обраћа" -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." msgstr " и затражени само-одговор." -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." msgstr "Мењам параметре позива..." -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "Повезан сам." -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "Позив је прекинут" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" msgstr "Не могу да зауставим позив" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." msgstr "Заустављам тренутни позив..." @@ -1843,59 +1847,59 @@ msgstr "Заустављам тренутни позив..." msgid "Stun lookup in progress..." msgstr "У току је тражење стуна..." -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." msgstr "Прикупљање месних ИЦЕ кандидата је у току..." -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "На вези" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "Заузет" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "Одмах се враћам" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "Одсутан" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" msgstr "На телефону" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" msgstr "На ручку сам" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "Не узнемиравај" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "Премештен" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" msgstr "Користим другу услугу дописивања" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" msgstr "Неповезан" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "На чекању" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "На одмору" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "Непознато стање" @@ -1919,12 +1923,12 @@ msgstr "Тражим одредиште телефонског броја..." msgid "Could not resolve this number." msgstr "Не могу да решим овај број." -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "Не могу да се пријавим као %s" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." msgstr "Освежавам на %s..." @@ -2033,16 +2037,16 @@ msgstr "Услуга није доступна, поново покушавам" msgid "Authentication token is %s" msgstr "Симбол потврђивања идентитета је „%s“" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." msgstr "Параметри позива не могу бити измењени: %s." -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." msgstr "Параметри позива су успешно измењени." -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." diff --git a/po/sv.po b/po/sv.po index fd65cd39c..3b540ad03 100644 --- a/po/sv.po +++ b/po/sv.po @@ -4,12 +4,13 @@ # # Translators: # Henrik Mattsson-Mårn , 2016 +# Magnus Johansson , 2016 msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:56+0000\n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" "Last-Translator: Belledonne Communications \n" "Language-Team: Swedish (http://www.transifex.com/belledonne-communications/linphone-gtk/language/sv/)\n" "MIME-Version: 1.0\n" @@ -33,7 +34,7 @@ msgstr "Skicka text till %s" msgid "Add %s to your contact list" msgstr "Lägg till %s till din kontaktlista" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "Senaste samtal" @@ -77,12 +78,12 @@ msgstr[1] "%i sekunder" msgid "" "%s\tQuality: %s\n" "%s\t%s\t" -msgstr "" +msgstr "%s\tKvalitet: %s\n%s\t%s\t" #: ../gtk/calllogs.c:361 #, c-format msgid "%s\t%s" -msgstr "" +msgstr "%s\t%s" #: ../gtk/conference.c:38 ../gtk/in_call_frame.ui.h:11 msgid "Conference" @@ -105,7 +106,7 @@ msgstr "Skickar..." msgid "Message not sent" msgstr "Meddelande ej skickat" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "Kopiera" @@ -149,90 +150,90 @@ msgstr "Kör ljudassistenten" #: ../gtk/main.c:143 msgid "Run self test and exit 0 if succeed" -msgstr "" +msgstr "Kör självtest och avsluta 0 om möjligt" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" "Would you add him/her to your contact list and allow him/her to see your presence status?\n" "If you answer no, this person will be temporarily blacklisted." -msgstr "" +msgstr "%s skulle vilja lägga dig till sin kontaktlista.\nVill du lägga denna person till din kontaktlista och tillåta den att se din närvarostatus?\nOm du svarar nej kommer personen att bli tillfälligt svartlistad." -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" -msgstr "" +msgstr "Var vänlig och ange ditt lösenord för användarnam %s\n i område %s:" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "Samtalsfel" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "Samtalet slut" -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "Inkommande samtal" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "Svara" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "Avböj" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "Samtal pausat" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "av %s" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" -msgstr "" +msgstr "%s föreslår att starta video. Godtar du det?" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "Webbsajt" -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "Linphone" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" -msgstr "" +msgstr "En internetvideotelefon" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" msgstr "%s (Default)" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" -msgstr "" +msgstr "Vi är överförda till %s" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." -msgstr "" +msgstr "Inget ljudkort har upptäckts på denna dator.\nDu kommer inte att kunna skicka och ta emot samtal." -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "En gratis SIP video-telefon" -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "Hej\n" @@ -246,31 +247,31 @@ msgstr "Lägg till i adressbok" msgid "Search in %s directory" msgstr "Sök i %s katalogen" -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "ogiltig SIP kontakt!" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "Lägg till en ny kontakt" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "Ändra kontakt '%s'" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "Ta bort kontakt '%s'" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "Ta bort chatthistorik för '%s'" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" msgstr "Lägg till kontakt ifrån %s katalogen" @@ -289,7 +290,7 @@ msgstr "Status" #: ../gtk/propertybox.c:617 msgid "IP Bitrate (kbit/s)" -msgstr "" +msgstr "Datahastighet (kbit/s)" #: ../gtk/propertybox.c:628 msgid "Parameters" @@ -299,7 +300,7 @@ msgstr "Parametrar" msgid "Enabled" msgstr "På" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "Av" @@ -313,7 +314,7 @@ msgstr "Engelska" #: ../gtk/propertybox.c:1171 msgid "French" -msgstr "Fransk" +msgstr "Franska" #: ../gtk/propertybox.c:1172 msgid "Swedish" @@ -321,7 +322,7 @@ msgstr "Svenska" #: ../gtk/propertybox.c:1173 msgid "Italian" -msgstr "Italiensk" +msgstr "Italienska" #: ../gtk/propertybox.c:1174 msgid "Spanish" @@ -329,7 +330,7 @@ msgstr "Spanska" #: ../gtk/propertybox.c:1175 msgid "Brazilian Portugese" -msgstr "Portugisiska" +msgstr "Portugisiska (Brasilien)" #: ../gtk/propertybox.c:1176 msgid "Polish" @@ -353,7 +354,7 @@ msgstr "Nederländksa" #: ../gtk/propertybox.c:1181 msgid "Hungarian" -msgstr "Hungerska" +msgstr "Ungerska" #: ../gtk/propertybox.c:1182 msgid "Czech" @@ -390,7 +391,7 @@ msgstr "Turkiska" #: ../gtk/propertybox.c:1246 msgid "" "You need to restart linphone for the new language selection to take effect." -msgstr "Du behöver starta om programmet för att det nya språket ska synas." +msgstr "Du behöver starta om Linphone för att det nya språket ska synas." #: ../gtk/propertybox.c:1332 msgid "None" @@ -413,7 +414,7 @@ msgstr "ZRTP" msgid "" "A more recent version is availalble from %s.\n" "Would you like to open a browser to download it ?" -msgstr "En nyare version är tillgänglig på %s.\nVill du öppna en browser för att ladda ner den?" +msgstr "En nyare version är tillgänglig på %s.\nVill du öppna en webbläsare för att ladda ner den?" #: ../gtk/update.c:91 msgid "You are running the lastest version." @@ -425,11 +426,11 @@ msgstr "Förnamn, Efternamn" #: ../gtk/buddylookup.c:160 msgid "Error communicating with server." -msgstr "Error med förbindelsen till servern." +msgstr "Kommunikationsfel med servern." #: ../gtk/buddylookup.c:164 msgid "Connecting..." -msgstr "Kontaktar" +msgstr "Kontaktar ..." #: ../gtk/buddylookup.c:168 msgid "Connected" @@ -448,11 +449,11 @@ msgstr[1] "Hittat kontakt %i" #: ../gtk/setupwizard.c:219 msgid "Username is already in use!" -msgstr "" +msgstr "Användarnamnet är upptaget!" #: ../gtk/setupwizard.c:223 msgid "Failed to check username availability. Please try again later." -msgstr "" +msgstr "Misslyckades att kontrollera tillgänglighet. Var vänlig och försök senare." #: ../gtk/incall_view.c:67 ../gtk/incall_view.c:87 #, c-format @@ -462,7 +463,7 @@ msgstr "Ring #%i" #: ../gtk/incall_view.c:145 #, c-format msgid "Transfer to call #%i with %s" -msgstr "" +msgstr "Övergår till att ringa #%i med %s" #: ../gtk/incall_view.c:202 ../gtk/incall_view.c:205 msgid "Not used" @@ -482,7 +483,7 @@ msgstr "ICE pågår" #: ../gtk/incall_view.c:218 msgid "Going through one or more NATs" -msgstr "" +msgstr "Går igenom en eller flera NAT:s" #: ../gtk/incall_view.c:220 msgid "Direct" @@ -490,7 +491,7 @@ msgstr "Direkt" #: ../gtk/incall_view.c:222 msgid "Through a relay server" -msgstr "Genom en relay-server" +msgstr "Genom en reläserver" #: ../gtk/incall_view.c:230 msgid "uPnP not activated" @@ -521,12 +522,12 @@ msgstr "Direkt eller genom server" msgid "" "download: %f\n" "upload: %f (kbit/s)" -msgstr "" +msgstr "nedladdning: %f\nuppladdning: %f (kbit/s)" #: ../gtk/incall_view.c:263 ../gtk/incall_view.c:265 #, c-format msgid "%ix%i @ %f fps" -msgstr "" +msgstr "%ix%i @ %f fps" #: ../gtk/incall_view.c:295 #, c-format @@ -556,23 +557,23 @@ msgstr "bra" #: ../gtk/incall_view.c:611 msgid "average" -msgstr "medel" +msgstr "medelmåttig" #: ../gtk/incall_view.c:613 msgid "poor" -msgstr "dåligt" +msgstr "dålig" #: ../gtk/incall_view.c:615 msgid "very poor" -msgstr "mycket dåligt" +msgstr "mycket dålig" #: ../gtk/incall_view.c:617 msgid "too bad" -msgstr "för dåligt" +msgstr "för dålig" #: ../gtk/incall_view.c:618 ../gtk/incall_view.c:634 msgid "unavailable" -msgstr "ej tillgängligt" +msgstr "ej tillgänglig" #: ../gtk/incall_view.c:732 msgid "Secured by SRTP" @@ -585,15 +586,15 @@ msgstr "Säkrad av DTLS" #: ../gtk/incall_view.c:744 #, c-format msgid "Secured by ZRTP - [auth token: %s]" -msgstr "" +msgstr "Säkrad av ZRTP - [auth token: %s]" #: ../gtk/incall_view.c:748 msgid "Set unverified" -msgstr "" +msgstr "Ange som obekräftad" #: ../gtk/incall_view.c:748 msgid "Set verified" -msgstr "" +msgstr "Ange som bekräftad" #: ../gtk/incall_view.c:788 msgid "In conference" @@ -636,16 +637,16 @@ msgstr "Pausa" msgid "" "Recording into\n" "%s %s" -msgstr "" +msgstr "Spelar in i\n%s %s" #: ../gtk/incall_view.c:996 msgid "(Paused)" -msgstr "(Pausad)" +msgstr "(Pauserad)" #: ../gtk/loginframe.c:75 #, c-format msgid "Please enter login information for %s" -msgstr "Mata in ditt lösenord för domänen %s:" +msgstr "Ange inloggningsuppgifter för %s" #: ../gtk/config-fetching.c:57 #, c-format @@ -655,7 +656,7 @@ msgstr "hämtar från %s" #: ../gtk/config-fetching.c:73 #, c-format msgid "Downloading of remote configuration from %s failed." -msgstr "" +msgstr "Hämtning av fjärrkonfiguration från %s misslyckades." #: ../gtk/audio_assistant.c:103 msgid "No voice detected" @@ -663,7 +664,7 @@ msgstr "Ingen röst upptäckt" #: ../gtk/audio_assistant.c:104 msgid "Too low" -msgstr "För låg" +msgstr "För svag" #: ../gtk/audio_assistant.c:105 msgid "Good" @@ -671,11 +672,11 @@ msgstr "Bra" #: ../gtk/audio_assistant.c:106 msgid "Too loud" -msgstr "För hög" +msgstr "För stark" #: ../gtk/audio_assistant.c:188 msgid "Did you hear three beeps ?" -msgstr "Hörde du tre pip ?" +msgstr "Hörde du tre pip?" #: ../gtk/audio_assistant.c:301 ../gtk/audio_assistant.c:306 msgid "Sound preferences not found " @@ -683,17 +684,17 @@ msgstr "Ljudinställningar ej funna" #: ../gtk/audio_assistant.c:315 msgid "Cannot launch system sound control " -msgstr "" +msgstr "Kan inte starta systemljudkontroll" #: ../gtk/audio_assistant.c:327 msgid "" "Welcome!\n" "This assistant will help you to configure audio settings for Linphone" -msgstr "" +msgstr "Välkommen\nDenna assistent kommer att hjälpa dig ställa in ljudet för Linphone" #: ../gtk/audio_assistant.c:337 msgid "Capture device" -msgstr "" +msgstr "Inspelningsenhet" #: ../gtk/audio_assistant.c:338 msgid "Recorded volume" @@ -717,11 +718,11 @@ msgstr "Spela tre pip" #: ../gtk/audio_assistant.c:412 msgid "Press the record button and say some words" -msgstr "" +msgstr "Klicka på inspelningsknappen och säg några ord" #: ../gtk/audio_assistant.c:413 msgid "Listen to your record voice" -msgstr "" +msgstr "Lyssna på din inspelade röst" #: ../gtk/audio_assistant.c:414 ../gtk/conf_frame.ui.h:2 #: ../gtk/in_call_frame.ui.h:4 @@ -740,13 +741,13 @@ msgstr "Låt oss starta Linphone nu" msgid "Audio Assistant" msgstr "Ljudassistent" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "Ljudassistent" #: ../gtk/audio_assistant.c:528 msgid "Mic Gain calibration" -msgstr "" +msgstr "Mikrofonkalibrering" #: ../gtk/audio_assistant.c:534 msgid "Speaker volume calibration" @@ -758,7 +759,7 @@ msgstr "Spela in och upp" #: ../gtk/audio_assistant.c:544 ../gtk/setup_wizard.ui.h:38 msgid "Terminating" -msgstr "" +msgstr "Avslutar" #: ../gtk/about.ui.h:1 msgid "About Linphone" @@ -770,7 +771,7 @@ msgstr "(C) Belledonne Communications, 2010\n" #: ../gtk/about.ui.h:4 msgid "An internet video phone using the standard SIP (rfc3261) protocol." -msgstr "En Internet video telefon baserat på SIP protokoll." +msgstr "En internetvideotelefon som använder SIP (rfc3261)." #: ../gtk/about.ui.h:5 msgid "" @@ -786,11 +787,11 @@ msgid "" "cs: Petr Pisar \n" "hu: anonymous\n" "he: Eli Zaretskii \n" -msgstr "" +msgstr "fr: Simon Morlat\nen: Simon Morlat och Delphine Perreau\nit: Alberto Zanoni \nde: Jean-Jacques Sarton \nsv: Daniel Nylander \nes: Jesus Benitez \nja: Yoshiya Yamaguchi \npt_BR: Rafael Caesar Lenzi \npl: Robert Nasiadek \ncs: Petr Pisar \nhu: anonym\nhe: Eli Zaretskii \n" #: ../gtk/buddylookup.ui.h:1 msgid "Search contacts in directory" -msgstr "Sök för kontakter i katalogen" +msgstr "Sök kontakter i katalogen" #: ../gtk/buddylookup.ui.h:2 msgid "Add to my list" @@ -798,11 +799,11 @@ msgstr "Lägg till min lista" #: ../gtk/buddylookup.ui.h:3 msgid "Search somebody" -msgstr "Sök efter kontakter" +msgstr "Sök någon" #: ../gtk/callee_frame.ui.h:1 msgid "Callee name" -msgstr "" +msgstr "Den uppringdas namn" #: ../gtk/call_logs.ui.h:1 msgid "Call history" @@ -822,39 +823,39 @@ msgstr "Samtalsstatistik" #: ../gtk/call_statistics.ui.h:2 msgid "Audio codec" -msgstr "" +msgstr "Ljudkodek" #: ../gtk/call_statistics.ui.h:3 msgid "Video codec" -msgstr "" +msgstr "Videokodek" #: ../gtk/call_statistics.ui.h:4 msgid "Audio IP bandwidth usage" -msgstr "" +msgstr "Bandbreddsanvändning för ljud" #: ../gtk/call_statistics.ui.h:5 msgid "Audio Media connectivity" -msgstr "" +msgstr "Ljudanslutningsbarhet" #: ../gtk/call_statistics.ui.h:6 msgid "Video IP bandwidth usage" -msgstr "" +msgstr "Bandbreddsanvändning för bild" #: ../gtk/call_statistics.ui.h:7 msgid "Video Media connectivity" -msgstr "" +msgstr "Videoanslutningsbarhet" #: ../gtk/call_statistics.ui.h:8 msgid "Round trip time" -msgstr "" +msgstr "Rundturstid" #: ../gtk/call_statistics.ui.h:9 msgid "Video resolution received" -msgstr "" +msgstr "Videoupplösning mottagen" #: ../gtk/call_statistics.ui.h:10 msgid "Video resolution sent" -msgstr "" +msgstr "Videoupplösning skickad" #: ../gtk/call_statistics.ui.h:11 msgid "RTP profile" @@ -880,7 +881,7 @@ msgstr "Anger en fjärrkonfigurations-URI" msgid "" "This dialog allows to set an http or https address when configuration is to be fetched at startup.\n" "Please enter or modify the configuration URI below. After clicking OK, Linphone will restart automatically in order to fetch and take into account the new configuration. " -msgstr "" +msgstr "Detta dialogfönster tillåter angivandet av en http- eller https-adress när konfigurationen hämtas vid starten.\nVar vänlig och ange eller modifiera konfigurations-URI:n nedan. Sedan du klickat på OK kommer Linphone att starta om automatiskt för att kunna hämta och använda den nya konfigurationen." #: ../gtk/contact.ui.h:2 msgid "SIP Address" @@ -908,15 +909,15 @@ msgstr "SIP" #: ../gtk/dscp_settings.ui.h:3 msgid "Audio RTP stream" -msgstr "" +msgstr "Ljud-RTP-ström" #: ../gtk/dscp_settings.ui.h:4 msgid "Video RTP stream" -msgstr "" +msgstr "Video-RTP-ström" #: ../gtk/dscp_settings.ui.h:5 msgid "Set DSCP values (in hexadecimal)" -msgstr "" +msgstr "Ange DSCP-värden (med hexadecimal)" #: ../gtk/in_call_frame.ui.h:1 msgid "Click here to set the speakers volume" @@ -944,7 +945,7 @@ msgstr "I samtal" #: ../gtk/in_call_frame.ui.h:13 msgid "Duration" -msgstr "Förlopp" +msgstr "Längd" #: ../gtk/in_call_frame.ui.h:14 msgid "Call quality rating" @@ -954,15 +955,15 @@ msgstr "Samtalskvalitetsbetyg" msgid "LDAP Settings" msgstr "LDAP-inställningar" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" -msgstr "Server-adress:" +msgstr "Serveradress:" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" -msgstr "" +msgstr "Autentiseringsmetod:" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "Användarnamn:" @@ -976,7 +977,7 @@ msgstr "Använd TLS-anslutning" #: ../gtk/ldap.ui.h:7 msgid "Not yet available" -msgstr "Inte tillgängligt än" +msgstr "Inte tillgänglig än" #: ../gtk/ldap.ui.h:8 msgid "Connection" @@ -984,15 +985,15 @@ msgstr "Anslutning" #: ../gtk/ldap.ui.h:9 msgid "Bind DN" -msgstr "" +msgstr "Bind DN" #: ../gtk/ldap.ui.h:10 msgid "Authname" -msgstr "" +msgstr "Autentiseringsnamn" #: ../gtk/ldap.ui.h:11 msgid "Realm" -msgstr "" +msgstr "Område" #: ../gtk/ldap.ui.h:12 msgid "SASL" @@ -1000,7 +1001,7 @@ msgstr "SASL" #: ../gtk/ldap.ui.h:13 msgid "Base object:" -msgstr "Bas-objekt:" +msgstr "Basobjekt:" #: ../gtk/ldap.ui.h:15 #, no-c-format @@ -1009,15 +1010,15 @@ msgstr "Filter (%s för namn):" #: ../gtk/ldap.ui.h:16 msgid "Name Attribute:" -msgstr "Namn-attribut:" +msgstr "Namnattribut:" #: ../gtk/ldap.ui.h:17 msgid "SIP address attribute:" -msgstr "" +msgstr "SIP-adressattribut:" #: ../gtk/ldap.ui.h:18 msgid "Attributes to query:" -msgstr "" +msgstr "Attribut för fråga:" #: ../gtk/ldap.ui.h:19 msgid "Search" @@ -1025,7 +1026,7 @@ msgstr "Sök" #: ../gtk/ldap.ui.h:20 msgid "Timeout for search:" -msgstr "" +msgstr "Tidsgräns för sökning:" #: ../gtk/ldap.ui.h:21 msgid "Max results:" @@ -1037,7 +1038,7 @@ msgstr "Följ alias" #: ../gtk/ldap.ui.h:23 msgid "Miscellaneous" -msgstr "" +msgstr "Diverse" #: ../gtk/ldap.ui.h:24 msgid "ANONYMOUS" @@ -1065,11 +1066,11 @@ msgstr "Lösenord" #: ../gtk/login_frame.ui.h:3 msgid "Internet connection:" -msgstr "Internet förbindelse:" +msgstr "Internetförbindelse:" #: ../gtk/login_frame.ui.h:4 msgid "Automatically log me in" -msgstr "Logga mig automatiskt" +msgstr "Logga in mig automatiskt" #: ../gtk/login_frame.ui.h:5 ../gtk/password.ui.h:3 msgid "UserID" @@ -1077,7 +1078,7 @@ msgstr "AnvändarID" #: ../gtk/login_frame.ui.h:6 msgid "Login information" -msgstr "Login information" +msgstr "Inloggningsuppgifter" #: ../gtk/login_frame.ui.h:7 msgid "Welcome!" @@ -1093,11 +1094,11 @@ msgstr "Fiberkanal" #: ../gtk/log.ui.h:1 msgid "Linphone debug window" -msgstr "Linphone debug fönster" +msgstr "Linphones felrättningsfönster" #: ../gtk/log.ui.h:2 msgid "Scroll to end" -msgstr "" +msgstr "Rulla till slutet" #: ../gtk/main.ui.h:1 msgid "Default" @@ -1109,7 +1110,7 @@ msgstr "Ta bort" #: ../gtk/main.ui.h:3 msgid "_Options" -msgstr "" +msgstr "_Alternativ" #: ../gtk/main.ui.h:4 msgid "Set configuration URI" @@ -1121,71 +1122,79 @@ msgstr "Starta alltid video" #: ../gtk/main.ui.h:6 msgid "Enable self-view" -msgstr "Själv bild" +msgstr "Självbild" #: ../gtk/main.ui.h:7 msgid "Show keypad" -msgstr "" +msgstr "Visa knappsats" #: ../gtk/main.ui.h:8 -msgid "_Help" -msgstr "_Hjälp" +msgid "Import contacts from vCards" +msgstr "" #: ../gtk/main.ui.h:9 -msgid "Show debug window" +msgid "Export contacts as vCards" msgstr "" #: ../gtk/main.ui.h:10 +msgid "_Help" +msgstr "_Hjälp" + +#: ../gtk/main.ui.h:11 +msgid "Show debug window" +msgstr "Visa felrättningsfönster" + +#: ../gtk/main.ui.h:12 msgid "_Homepage" msgstr "_Hemsida" -#: ../gtk/main.ui.h:11 +#: ../gtk/main.ui.h:13 msgid "Check _Updates" msgstr "Sök efter _uppdateringar" -#: ../gtk/main.ui.h:12 +#: ../gtk/main.ui.h:14 msgid "Account assistant" msgstr "Kontoassistent" -#: ../gtk/main.ui.h:14 -msgid "SIP address or phone number:" -msgstr "Användarnamn" - -#: ../gtk/main.ui.h:15 -msgid "Initiate a new call" -msgstr "Initiera ett nytt samtal" - #: ../gtk/main.ui.h:16 +msgid "SIP address or phone number:" +msgstr "SIP-adress eller telefonnummer:" + +#: ../gtk/main.ui.h:17 +msgid "Initiate a new call" +msgstr "Påbörja ett nytt samtal" + +#: ../gtk/main.ui.h:18 msgid "Contacts" msgstr "Kontakter" -#: ../gtk/main.ui.h:17 +#: ../gtk/main.ui.h:19 msgid "Search" msgstr "Sök" -#: ../gtk/main.ui.h:18 +#: ../gtk/main.ui.h:20 msgid "Add contacts from directory" msgstr "Lägg till kontakt ifrån katalogen" -#: ../gtk/main.ui.h:19 +#: ../gtk/main.ui.h:21 msgid "Add contact" msgstr "Lägg till kontakt" -#: ../gtk/main.ui.h:20 +#: ../gtk/main.ui.h:22 msgid "Clear call history" msgstr "Rensa samtalshistorik" -#: ../gtk/main.ui.h:22 +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "Min nuvarande identitet" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" -msgstr "Auto-svar är aktiverat" +msgstr "Autosvar är aktiverat" #: ../gtk/parameters.ui.h:1 msgid "anonymous" -msgstr "" +msgstr "anonym" #: ../gtk/parameters.ui.h:2 msgid "GSSAPI" @@ -1197,7 +1206,7 @@ msgstr "SASL" #: ../gtk/parameters.ui.h:4 msgid "default soundcard" -msgstr "default ljudkort" +msgstr "standardljudkort" #: ../gtk/parameters.ui.h:5 msgid "a sound card" @@ -1205,7 +1214,7 @@ msgstr "ett ljudkort" #: ../gtk/parameters.ui.h:6 msgid "default camera" -msgstr "default kamera" +msgstr "standardkamera" #: ../gtk/parameters.ui.h:7 msgid "CIF" @@ -1213,11 +1222,11 @@ msgstr "CIF" #: ../gtk/parameters.ui.h:8 msgid "Audio codecs" -msgstr "" +msgstr "Ljudkodekar" #: ../gtk/parameters.ui.h:9 msgid "Video codecs" -msgstr "" +msgstr "Videokodekar" #: ../gtk/parameters.ui.h:10 msgid "C" @@ -1236,348 +1245,344 @@ msgid "SIP (TLS)" msgstr "SIP (TLS)" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "standard" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "anpassad" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "Inställningar" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" -msgstr "Denna sektion specificerar din SIP adress när du inte använder ett SIP konto" +msgstr "Denna sektion specificerar din SIP-adress när du inte använder ett SIP-konto" -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" -msgstr "Ditt synliga namn, e.g. Kalle Karlsson:" +msgstr "Ditt synliga namn (t.ex. Kalle Karlsson):" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "Ditt användarnamn:" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" -msgstr "Din SIP adress:" +msgstr "Din SIP-adress:" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" -msgstr "Default identitet" +msgstr "Standardidentitet" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" -msgstr "" +msgstr "Guide" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "Lägg till" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "Editera" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "Ta bort" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" -msgstr "Proxy konton" +msgstr "Proxykonton" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" -msgstr "Glöm alla lösenord" +msgstr "Radera alla lösenord" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "Integritet" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" -msgstr "" +msgstr "Svara automatiskt när ett samtal tas emot" + +#: ../gtk/parameters.ui.h:28 +msgid "Delay before answering (ms)" +msgstr "Fördröjning före svar (ms)" + +#: ../gtk/parameters.ui.h:29 +msgid "Auto-answer" +msgstr "Autosvar" + +#: ../gtk/parameters.ui.h:30 +msgid "Manage SIP Accounts" +msgstr "Hantera SIP-konton" #: ../gtk/parameters.ui.h:31 -msgid "Delay before answering (ms)" -msgstr "" +msgid "Ring sound:" +msgstr "Ringsignal:" #: ../gtk/parameters.ui.h:32 -msgid "Auto-answer" -msgstr "Auto-svar" +msgid "ALSA special device (optional):" +msgstr "Speciell enhet för ALSA (tillval):" #: ../gtk/parameters.ui.h:33 -msgid "Manage SIP Accounts" -msgstr "Hantera SIP konton" +msgid "Capture device:" +msgstr "Inspelningsenhet:" #: ../gtk/parameters.ui.h:34 -msgid "Ring sound:" -msgstr "Ring signal:" +msgid "Ring device:" +msgstr "Ringningsenhet:" #: ../gtk/parameters.ui.h:35 -msgid "ALSA special device (optional):" -msgstr "ALSA speciell enhet (tillval):" - -#: ../gtk/parameters.ui.h:36 -msgid "Capture device:" -msgstr "Mikrofon enhet:" - -#: ../gtk/parameters.ui.h:37 -msgid "Ring device:" -msgstr "Ringning enhet:" - -#: ../gtk/parameters.ui.h:38 msgid "Playback device:" msgstr "Uppspelningsenhet:" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" -msgstr "Tillåta ekokancellering" +msgstr "Tillåt ekoborttagning" + +#: ../gtk/parameters.ui.h:37 +msgid "Audio" +msgstr "Ljud" + +#: ../gtk/parameters.ui.h:38 +msgid "Video input device:" +msgstr "Videoinmatningsenhet:" + +#: ../gtk/parameters.ui.h:39 +msgid "Preferred video resolution:" +msgstr "Föredragen videoupplösning:" #: ../gtk/parameters.ui.h:40 -msgid "Audio" -msgstr "Audio" +msgid "Video output method:" +msgstr "Videoutmatningsmetod:" #: ../gtk/parameters.ui.h:41 -msgid "Video input device:" -msgstr "Video ingångsenhet:" +msgid "Show camera preview" +msgstr "Visa kameraförhandsgranskning" #: ../gtk/parameters.ui.h:42 -msgid "Preferred video resolution:" -msgstr "Föredragen video-upplösning:" +msgid "Video preset:" +msgstr "Videoförval:" #: ../gtk/parameters.ui.h:43 -msgid "Video output method:" -msgstr "" +msgid "Preferred video framerate:" +msgstr "Föredragen videobildfrekvens:" #: ../gtk/parameters.ui.h:44 -msgid "Show camera preview" -msgstr "Visa kamera-förhandsgranskning" - -#: ../gtk/parameters.ui.h:45 -msgid "Video preset:" -msgstr "Video-förval:" - -#: ../gtk/parameters.ui.h:46 -msgid "Preferred video framerate:" -msgstr "Föredragen video-bildfrekvens:" - -#: ../gtk/parameters.ui.h:47 msgid "0 stands for \"unlimited\"" msgstr "0 står för \"utan begränsning\"" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "Video" -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" -msgstr "Max upstream bandbreddshastighet i kbit/sek:" +msgstr "Max uppladdningshastighet i Kbit/sek:" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" -msgstr "Max downstream bandbreddshastighet i kbit/sek:" +msgstr "Max nedladdningshastighet i Kbit/sek:" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" -msgstr "" +msgstr "Aktivera anpassningsbar hastighetskontroll" -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." -msgstr "" +msgstr "Anpassningsbar hastighetskontroll är en teknik för att dynamiskt gissa tillgänglig bandbredd under ett samtal." -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "Bandbreddskontroll" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" -msgstr "Multimedia inställningar" +msgstr "Multimediainställningar" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" msgstr "Välj MTU (Maximum Transmission Unit):" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" -msgstr "Kicka DTMF koder som SIP info" +msgstr "Skicka DTMF-koder som SIP-information" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "Tillåt IPv6" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "Transport" -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "SIP/UDP-port" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" -msgstr "Slumpad" +msgstr "Slumpmässig" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "SIP/TCP-port" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" -msgstr "Ljud RTP/UDP:" +msgstr "Ljud-RTP/UDP:" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "Låst" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" -msgstr "Video RTP/UDP:" +msgstr "Video-RTP/UDP:" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "Tunnel" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" msgstr "DSCP-fält" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" msgstr "Nätverksprotokoll och portar" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" -msgstr "Direkt förbindelse till Internet" +msgstr "Direkt förbindelse till internet" -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" -msgstr "" +msgstr "Bakom NAT / brandvägg (specificera IP)" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "Bakom en NAT / brandvägg (använd STUN för att avgöra adressen)" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" -msgstr "Bakom NAT / Firewall (använd ICE)" +msgstr "Bakom NAT / brandvägg (använd ICE)" + +#: ../gtk/parameters.ui.h:70 +msgid "Behind NAT / Firewall (use uPnP)" +msgstr "Bakom NAT / brandvägg (använd uPnP)" + +#: ../gtk/parameters.ui.h:71 +msgid "Public IP address:" +msgstr "Publik IP-adress:" + +#: ../gtk/parameters.ui.h:72 +msgid "Stun server:" +msgstr "STUN-server:" #: ../gtk/parameters.ui.h:73 -msgid "Behind NAT / Firewall (use uPnP)" -msgstr "Bakom NAT / Firewall (använd uPnP)" - -#: ../gtk/parameters.ui.h:74 -msgid "Public IP address:" -msgstr "Publik IP adress:" - -#: ../gtk/parameters.ui.h:75 -msgid "Stun server:" -msgstr "STUN server:" - -#: ../gtk/parameters.ui.h:76 msgid "NAT and Firewall" msgstr "NAT och Brandvägg" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "Mediakrypteringstyp" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" +msgstr "Använd Lime för utgående chattmeddelanden" + +#: ../gtk/parameters.ui.h:76 +msgid "Media encryption is mandatory" +msgstr "Mediakryptering är obligatorisk" + +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" +msgstr "" + +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" msgstr "" #: ../gtk/parameters.ui.h:79 -msgid "Media encryption is mandatory" -msgstr "" +msgid "Encryption" +msgstr "Kryptering" #: ../gtk/parameters.ui.h:80 -msgid "Encryption" -msgstr "" - -#: ../gtk/parameters.ui.h:81 msgid "Network settings" msgstr "Nätverksinställningar" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" -msgstr "Möjliggör" +msgstr "Aktivera" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "Inaktivera" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" -msgstr "" +msgstr "Ljudkodekar" + +#: ../gtk/parameters.ui.h:84 +msgid "Video codecs" +msgstr "Videokodekar" #: ../gtk/parameters.ui.h:85 -msgid "Video codecs" -msgstr "" +msgid "Codecs" +msgstr "Kodekar" #: ../gtk/parameters.ui.h:86 -msgid "Codecs" -msgstr "Codecs" - -#: ../gtk/parameters.ui.h:87 msgid "Language" msgstr "Språk" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "Visa avancerade inställningar" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "Nivå" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" -msgstr "Användarinterface" +msgstr "Användargränssnitt" + +#: ../gtk/parameters.ui.h:93 +msgid "LDAP Account setup" +msgstr "LDAP-kontoinställning" #: ../gtk/parameters.ui.h:94 -msgid "LDAP Account setup" -msgstr "" - -#: ../gtk/parameters.ui.h:95 msgid "LDAP" msgstr "LDAP" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "Klar" #: ../gtk/password.ui.h:1 msgid "Linphone - Authentication required" -msgstr "" +msgstr "Linphone - Autentisering krävs" #: ../gtk/password.ui.h:2 msgid "Please enter the domain password" -msgstr "Mata in lösenordet för domänen" +msgstr "Ange lösenordet för domänen" #: ../gtk/provisioning-fetch.ui.h:1 msgid "Configuring..." -msgstr "Konfigurerar..." +msgstr "Konfigurerar ..." #: ../gtk/provisioning-fetch.ui.h:2 msgid "Please wait while fetching configuration from server..." -msgstr "" +msgstr "Var vänlig och vänta medan konfiguration hämtas från server ..." #: ../gtk/setup_wizard.ui.h:1 msgid "SIP account configuration assistant" -msgstr "" +msgstr "Inställningsassistent för SIP-konto" #: ../gtk/setup_wizard.ui.h:2 msgid "" "Welcome!\n" "This assistant will help you to use a SIP account for your calls." -msgstr "" +msgstr "Välkommen!\nDenna assistent kommer att hjälpa dig använda ett SIP-konto för dina samtal." #: ../gtk/setup_wizard.ui.h:4 msgid "Welcome to the account setup assistant" @@ -1657,15 +1662,15 @@ msgstr "Bekräfta ditt lösenord: (*)" #: ../gtk/setup_wizard.ui.h:25 msgid "Keep me informed with linphone updates" -msgstr "Håll mig informerad om linphone-uppdateringar" +msgstr "Håll mig informerad om Linphone-uppdateringar" #: ../gtk/setup_wizard.ui.h:26 msgid "Enter account information (step 1/2)" -msgstr "Ange konto-information (steg 1/2)" +msgstr "Ange kontoinformation (steg 1/2)" #: ../gtk/setup_wizard.ui.h:27 msgid "Your account is being created, please wait." -msgstr "Ditt konto skapas, vänta." +msgstr "Ditt konto skapas. Var vänlig vänta." #: ../gtk/setup_wizard.ui.h:28 msgid "Account creation in progress" @@ -1675,25 +1680,25 @@ msgstr "Kontoskapande pågår" msgid "" "Please validate your account by clicking on the link we just sent you by email.\n" "Then come back here and press Next button." -msgstr "" +msgstr "Var vänlig och bekräfta ditt konto genom att klicka på länken vi nyss skickade dig via e-post.\nKom sedan tillbaka hit och klicka på knappen Nästa." #: ../gtk/setup_wizard.ui.h:31 msgid "Validation (step 2/2)" -msgstr "Validering (steg 2/2)" +msgstr "Bekräftelse (steg 2/2)" #: ../gtk/setup_wizard.ui.h:32 msgid "Checking if your account is been validated, please wait." -msgstr "" +msgstr "Kontrollerar om ditt konto bekräftas. Var vänlig, vänta." #: ../gtk/setup_wizard.ui.h:33 msgid "Account validation check in progress" -msgstr "" +msgstr "Kontobekräftelsekontroll pågår" #: ../gtk/setup_wizard.ui.h:34 msgid "" "Error, account not validated, username already used or server unreachable.\n" "Please go back and try again." -msgstr "" +msgstr "Fel. Konto ej bekräftat, användarnamn upptaget eller server onåbar.\nVar vänlig, gå tillbaka och försök igen." #: ../gtk/setup_wizard.ui.h:36 msgid "Error" @@ -1701,19 +1706,19 @@ msgstr "Fel" #: ../gtk/setup_wizard.ui.h:37 msgid "Thank you. Your account is now configured and ready for use." -msgstr "Tack. Ditt konto är nu konfigurerad och färdig att användas." +msgstr "Tack. Ditt konto är nu konfigurerat och färdigt att användas." #: ../gtk/sip_account.ui.h:1 msgid "Linphone - Configure a SIP account" -msgstr "Linphone - Konfigurera ett SIP konto" +msgstr "Linphone - Konfigurera ett SIP-konto" #: ../gtk/sip_account.ui.h:2 msgid "Your SIP identity:" -msgstr "Din SIP identitet:" +msgstr "Din SIP-identitet:" #: ../gtk/sip_account.ui.h:3 msgid "Looks like sip:@" -msgstr "" +msgstr "Ser ut som sip:@" #: ../gtk/sip_account.ui.h:4 msgid "sip:" @@ -1721,15 +1726,15 @@ msgstr "sip:" #: ../gtk/sip_account.ui.h:5 msgid "SIP Proxy address:" -msgstr "SIP Proxy adress:" +msgstr "SIP-proxyadress:" #: ../gtk/sip_account.ui.h:6 msgid "Looks like sip:" -msgstr "" +msgstr "Ser ut som sip:" #: ../gtk/sip_account.ui.h:7 msgid "Registration duration (sec):" -msgstr "Registreringsfrekvens (sek.):" +msgstr "Registreringstid (sek.):" #: ../gtk/sip_account.ui.h:8 msgid "Contact params (optional):" @@ -1737,7 +1742,7 @@ msgstr "Kontaktparametrar (tillval):" #: ../gtk/sip_account.ui.h:9 msgid "AVPF regular RTCP interval (sec):" -msgstr "" +msgstr "AVPF regular RTCP intervall (sek):" #: ../gtk/sip_account.ui.h:10 msgid "Route (optional):" @@ -1745,7 +1750,7 @@ msgstr "Route (tillval):" #: ../gtk/sip_account.ui.h:11 msgid "Transport" -msgstr "" +msgstr "Transport" #: ../gtk/sip_account.ui.h:12 msgid "Register" @@ -1753,7 +1758,7 @@ msgstr "Registrera" #: ../gtk/sip_account.ui.h:13 msgid "Publish presence information" -msgstr "Publicera närvaro information" +msgstr "Publicera närvaroinformation" #: ../gtk/sip_account.ui.h:14 msgid "Enable AVPF" @@ -1761,7 +1766,7 @@ msgstr "Aktivera AVPF" #: ../gtk/sip_account.ui.h:15 msgid "Configure a SIP account" -msgstr "Konfigurera ett SIP konto" +msgstr "Konfigurera ett SIP-konto" #: ../gtk/tunnel_config.ui.h:1 msgid "Configure VoIP tunnel" @@ -1781,118 +1786,118 @@ msgstr "Konfigurera tunnel" #: ../gtk/tunnel_config.ui.h:9 msgid "Configure http proxy (optional)" -msgstr "" +msgstr "Konfigurera http-proxy (valfritt)" #: ../gtk/waiting.ui.h:2 msgid "Please wait" msgstr "Vänta" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "Redo" -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" msgstr "Konfigurerar" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" msgstr "Kontaktar" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" msgstr "Kunde inte ringa" -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" -msgstr "" +msgstr "Beklagar. Vi har nått det maximala antalet samtidiga samtal." -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "kontaktar dig" -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." -msgstr "" +msgstr "och frågade autosvar." -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." -msgstr "Modifierar samtalsparametrar..." +msgstr "Modifierar samtalsparametrar ..." -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "Kopplad" -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "Samtal avbrutet" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" msgstr "Kunde inte pausa samtalet" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." msgstr "Pausar nuvarande samtal..." #: ../coreapi/misc.c:441 msgid "Stun lookup in progress..." -msgstr "STUN uppslagning pågår..." +msgstr "STUN-uppslagning pågår ..." -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." -msgstr "" +msgstr "Samlande av ICE-lokalkandidater pågår ..." -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "Online" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "Upptagen" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "Kommer strax tillbaka" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "Borta" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" -msgstr "På telefon" +msgstr "I telefon" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" -msgstr "Lunchar" +msgstr "På lunch" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "Stör ej" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "Flyttat" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" -msgstr "Använder en annan tjänst" +msgstr "Använder en annan meddelandetjänst" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" -msgstr "Offline" +msgstr "Frånkopplad" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "Pågående" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "Ledighet" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "Okänd status" @@ -1900,31 +1905,31 @@ msgstr "Okänd status" msgid "" "The sip proxy address you entered is invalid, it must start with \"sip:\" " "followed by a hostname." -msgstr "SIP proxy adressen som du matade in är inte rätt, adressen måste starta med \"sip:\", följd av ett hostnamn" +msgstr "SIP-proxyadressen du angav är inte rätt. Adressen måste starta med \"sip:\" följt av ett värdnamn." #: ../coreapi/proxy.c:342 msgid "" "The sip identity you entered is invalid.\n" "It should look like sip:username@proxydomain, such as sip:alice@example.net" -msgstr "SIP adressen som du matade in är inte rätt. Adressen borde se ut som sip:namn@domän, såsom sip:peter@exempel.se" +msgstr "SIP-adressen du angav är inte rätt.\nAdressen bör se ut som sip:användarnamn@domän, såsom sip:alice@exempel.net" #: ../coreapi/proxy.c:972 msgid "Looking for telephone number destination..." -msgstr "Leta efter telefonnummer för destinationen..." +msgstr "Leta efter telefonnummerdestinationen ..." #: ../coreapi/proxy.c:976 msgid "Could not resolve this number." -msgstr "Kan inte nå dett nummer." +msgstr "Kan inte nå detta nummer." -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "Kunde inte logga in som %s" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." -msgstr "" +msgstr "Förnyar på %s ..." #: ../coreapi/callbacks.c:415 msgid "Remote ringing." @@ -1932,7 +1937,7 @@ msgstr "Ringer hos motparten." #: ../coreapi/callbacks.c:427 msgid "Remote ringing..." -msgstr "" +msgstr "Ringer hos motparten ..." #: ../coreapi/callbacks.c:450 msgid "Early media." @@ -1945,11 +1950,11 @@ msgstr "Samtal besvarat av %s" #: ../coreapi/callbacks.c:522 msgid "Call resumed." -msgstr "Samtal fortsatt." +msgstr "Samtal återupptaget." #: ../coreapi/callbacks.c:577 msgid "Incompatible, check codecs or security settings..." -msgstr "" +msgstr "Inkompatibel. Kontrollera kodekar eller säkerhetsinställningar ..." #: ../coreapi/callbacks.c:582 ../coreapi/callbacks.c:918 msgid "Incompatible media parameters." @@ -1957,16 +1962,16 @@ msgstr "Inkompatibla mediaparametrar." #: ../coreapi/callbacks.c:607 msgid "We have been resumed." -msgstr "" +msgstr "Vi har återupptagits." #. we are being paused #: ../coreapi/callbacks.c:615 msgid "We are paused by other party." -msgstr "" +msgstr "Vi har pauserats av annan part." #: ../coreapi/callbacks.c:625 msgid "Call is updated by remote." -msgstr "" +msgstr "Samtalet är uppdaterat av motpart." #: ../coreapi/callbacks.c:794 msgid "Call terminated." @@ -1974,11 +1979,11 @@ msgstr "Samtalet slut." #: ../coreapi/callbacks.c:822 msgid "User is busy." -msgstr "Användare upptagen." +msgstr "Användare är upptagen." #: ../coreapi/callbacks.c:823 msgid "User is temporarily unavailable." -msgstr "Användaren temporärt inte tillgänglig." +msgstr "Användaren är tillfälligt otillgänglig." #. char *retrymsg=_("%s. Retry after %i minute(s)."); #: ../coreapi/callbacks.c:825 @@ -1991,7 +1996,7 @@ msgstr "Samtalet avböjdes." #: ../coreapi/callbacks.c:841 msgid "Request timeout." -msgstr "" +msgstr "Förfråganstid" #: ../coreapi/callbacks.c:872 msgid "Redirected" @@ -2028,18 +2033,18 @@ msgstr "Tjänst ej tillgänglig, försöker igen" #: ../coreapi/linphonecall.c:204 #, c-format msgid "Authentication token is %s" -msgstr "" +msgstr "Autentiseringstecken är %s" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." -msgstr "" +msgstr "Samtalsparametrar kunde inte ändras: %s" -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." -msgstr "" +msgstr "Samtalsparametrar ändrades framgångsrikt." -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." @@ -2070,7 +2075,7 @@ msgid "" "To: %s\n" "Status: %s\n" "Duration: %i mn %i sec\n" -msgstr "" +msgstr "%s vid %s\nFrån: %s\nTill: %s\nStatus: %s\nLängd: %i min %i sek\n" #: ../coreapi/call_log.c:235 msgid "Outgoing call" diff --git a/po/tr.po b/po/tr.po index 16282cea1..11a18caf5 100644 --- a/po/tr.po +++ b/po/tr.po @@ -3,13 +3,13 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: -# faradundamarti , 2015 +# faradundamarti , 2015-2016 msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:56+0000\n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" "Last-Translator: Belledonne Communications \n" "Language-Team: Turkish (http://www.transifex.com/belledonne-communications/linphone-gtk/language/tr/)\n" "MIME-Version: 1.0\n" @@ -33,7 +33,7 @@ msgstr "" msgid "Add %s to your contact list" msgstr "" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "Son çağrılar" @@ -105,7 +105,7 @@ msgstr "Gönderiliyor..." msgid "Message not sent" msgstr "İleti gitmedi" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "Kopya" @@ -151,7 +151,7 @@ msgstr "Ses yardımcısını çalıştır" msgid "Run self test and exit 0 if succeed" msgstr "" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" @@ -159,80 +159,80 @@ msgid "" "If you answer no, this person will be temporarily blacklisted." msgstr "" -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" msgstr "" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "Çağrı yanlış" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "Çağrı sonlandırıldı" -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "Gelen çağrı" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "Yanıt" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "Reddet" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "Çağrı duraklatıldı" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "%s tarafından" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" msgstr "%s görüntü başlatmayı önerdi.Kabul ediyor musun?" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "İnternet " -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "Linphone" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" msgstr "Görüntülü internet telefonu" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" msgstr "%s (Öntanımlı)" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" msgstr "%s ye aktardık" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." msgstr "Bu bilgisayarda bir ses kartı bulunamadı.\nSesli görüşme yapamazsınız." -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "Özgür bir SİP görüntülü-telefon" -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "Merhaba\n" @@ -246,31 +246,31 @@ msgstr "Adres defterine ekle" msgid "Search in %s directory" msgstr "%s dizininde ara" -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "Geçersiz sip bağlantısı !" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "Yeni bir bağlantı ekle" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "'%s' bağlantısını düzenle" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "'%s' bağlantısını sil" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "'%s' sohbet geçmişini sil" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" msgstr "%s dizininden yeni bağlantı ekle" @@ -299,7 +299,7 @@ msgstr "Değişkenler" msgid "Enabled" msgstr "Etkin" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "Devre dışı" @@ -448,11 +448,11 @@ msgstr[1] "" #: ../gtk/setupwizard.c:219 msgid "Username is already in use!" -msgstr "" +msgstr "Kullanıcı adınız zaten kullanılıyor!" #: ../gtk/setupwizard.c:223 msgid "Failed to check username availability. Please try again later." -msgstr "" +msgstr "Kullanıcı adınızın geçerlilik denetimi başarısız.Daha sonra tekrar deneyin." #: ../gtk/incall_view.c:67 ../gtk/incall_view.c:87 #, c-format @@ -490,7 +490,7 @@ msgstr "Doğrudan" #: ../gtk/incall_view.c:222 msgid "Through a relay server" -msgstr "" +msgstr "Bir röle sunucu aracılığı ile" #: ../gtk/incall_view.c:230 msgid "uPnP not activated" @@ -645,7 +645,7 @@ msgstr "(Duraklatıldı)" #: ../gtk/loginframe.c:75 #, c-format msgid "Please enter login information for %s" -msgstr "" +msgstr "%s için giriş bilgisini girin " #: ../gtk/config-fetching.c:57 #, c-format @@ -740,7 +740,7 @@ msgstr "Haydi şimdi Linphona başlayalım" msgid "Audio Assistant" msgstr "Ses Yardımcısı" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "Ses yardımcısı" @@ -750,7 +750,7 @@ msgstr "" #: ../gtk/audio_assistant.c:534 msgid "Speaker volume calibration" -msgstr "" +msgstr "Hoparlör ses yüksekliği ayarı" #: ../gtk/audio_assistant.c:539 msgid "Record and Play" @@ -858,7 +858,7 @@ msgstr "Giden görüntü çözünürlüğü" #: ../gtk/call_statistics.ui.h:11 msgid "RTP profile" -msgstr "" +msgstr "RTP profili" #: ../gtk/call_statistics.ui.h:12 msgid "Call statistics and information" @@ -888,7 +888,7 @@ msgstr "SİP Adresi" #: ../gtk/contact.ui.h:3 msgid "Show this contact presence status" -msgstr "" +msgstr "Bu bağlantının varolan durumunu göster" #: ../gtk/contact.ui.h:4 msgid "Allow this contact to see my presence status" @@ -954,15 +954,15 @@ msgstr "Çağrı kalitesi düzeyi" msgid "LDAP Settings" msgstr "LDAP Ayarları" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" msgstr "Sunucu adresi:" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" msgstr "Kimlik doğrulama yöntemi:" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "Kullanıcı adı:" @@ -988,7 +988,7 @@ msgstr "" #: ../gtk/ldap.ui.h:10 msgid "Authname" -msgstr "" +msgstr "Yazar Adı" #: ../gtk/ldap.ui.h:11 msgid "Realm" @@ -996,7 +996,7 @@ msgstr "Ülke" #: ../gtk/ldap.ui.h:12 msgid "SASL" -msgstr "" +msgstr "SASL" #: ../gtk/ldap.ui.h:13 msgid "Base object:" @@ -1013,7 +1013,7 @@ msgstr "Öznitelik Adı:" #: ../gtk/ldap.ui.h:17 msgid "SIP address attribute:" -msgstr "" +msgstr "SIP adresi özniteliği" #: ../gtk/ldap.ui.h:18 msgid "Attributes to query:" @@ -1033,7 +1033,7 @@ msgstr "En çok sonuç:" #: ../gtk/ldap.ui.h:22 msgid "Follow Aliases" -msgstr "" +msgstr "Takma Adları İzle" #: ../gtk/ldap.ui.h:23 msgid "Miscellaneous" @@ -1113,7 +1113,7 @@ msgstr "_Seçenekler" #: ../gtk/main.ui.h:4 msgid "Set configuration URI" -msgstr "" +msgstr "URl yapılandırma ayarları" #: ../gtk/main.ui.h:5 msgid "Always start video" @@ -1121,65 +1121,73 @@ msgstr "Her zaman görüntüyü başlat" #: ../gtk/main.ui.h:6 msgid "Enable self-view" -msgstr "" +msgstr "Özgörüntü etkin" #: ../gtk/main.ui.h:7 msgid "Show keypad" -msgstr "" +msgstr "Tuştakımını göster" #: ../gtk/main.ui.h:8 +msgid "Import contacts from vCards" +msgstr "" + +#: ../gtk/main.ui.h:9 +msgid "Export contacts as vCards" +msgstr "" + +#: ../gtk/main.ui.h:10 msgid "_Help" msgstr "_Yardım" -#: ../gtk/main.ui.h:9 +#: ../gtk/main.ui.h:11 msgid "Show debug window" msgstr "Hata düzeltme penceresini göster" -#: ../gtk/main.ui.h:10 +#: ../gtk/main.ui.h:12 msgid "_Homepage" msgstr "_Anasayfa" -#: ../gtk/main.ui.h:11 +#: ../gtk/main.ui.h:13 msgid "Check _Updates" msgstr "Güncellemeleri _Denetle" -#: ../gtk/main.ui.h:12 +#: ../gtk/main.ui.h:14 msgid "Account assistant" msgstr "Hesap yardımcısı" -#: ../gtk/main.ui.h:14 +#: ../gtk/main.ui.h:16 msgid "SIP address or phone number:" msgstr "SİP adresi veya telefon numarası:" -#: ../gtk/main.ui.h:15 +#: ../gtk/main.ui.h:17 msgid "Initiate a new call" msgstr "Yeni bir arama başlat" -#: ../gtk/main.ui.h:16 +#: ../gtk/main.ui.h:18 msgid "Contacts" msgstr "Bağlantılar" -#: ../gtk/main.ui.h:17 +#: ../gtk/main.ui.h:19 msgid "Search" msgstr "Arama" -#: ../gtk/main.ui.h:18 +#: ../gtk/main.ui.h:20 msgid "Add contacts from directory" msgstr "Rehberden bağlantılar ekle" -#: ../gtk/main.ui.h:19 +#: ../gtk/main.ui.h:21 msgid "Add contact" msgstr "Bağlantı ekle" -#: ../gtk/main.ui.h:20 +#: ../gtk/main.ui.h:22 msgid "Clear call history" msgstr "Çağrı geçmişini temizle" -#: ../gtk/main.ui.h:22 +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "Güncel kimliğim:" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" msgstr "Otomatik yanıtlama etkin" @@ -1236,320 +1244,316 @@ msgid "SIP (TLS)" msgstr "SIP (TLS)" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "Öntanımlı" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "yüksek-fps" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "özel" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "Ayarlar" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" msgstr "Bu bölüm bir SİP hesabı kullanmadığınız zaman sizin SİP adresinizi tanımlar" -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" msgstr "Görünecek adınız (örneğin: Faradunda Marti)" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "Kullanıcı adınız:" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" msgstr "" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" msgstr "Öntanımlı kimlik" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" msgstr "Yardımcı" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "Ekle" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "Düzenle" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "Kaldır" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" msgstr "Vekil sunucu hesapları" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" msgstr "Bütün parolaları sil" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "Gizlilik" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" msgstr "Bir çağrı alındığında otomatik olarak yanıtla" -#: ../gtk/parameters.ui.h:31 +#: ../gtk/parameters.ui.h:28 msgid "Delay before answering (ms)" msgstr "Yanıtlamadan önceki gecikme (ms)" -#: ../gtk/parameters.ui.h:32 +#: ../gtk/parameters.ui.h:29 msgid "Auto-answer" msgstr "Otomatik yanıt" -#: ../gtk/parameters.ui.h:33 +#: ../gtk/parameters.ui.h:30 msgid "Manage SIP Accounts" msgstr "SİP Hesaplarını Yönet" -#: ../gtk/parameters.ui.h:34 +#: ../gtk/parameters.ui.h:31 msgid "Ring sound:" msgstr "Zil sesi:" -#: ../gtk/parameters.ui.h:35 +#: ../gtk/parameters.ui.h:32 msgid "ALSA special device (optional):" msgstr "ALSA özel aygıt (seçmeli)" -#: ../gtk/parameters.ui.h:36 +#: ../gtk/parameters.ui.h:33 msgid "Capture device:" msgstr "Görüntü yakalama aygıtı" -#: ../gtk/parameters.ui.h:37 +#: ../gtk/parameters.ui.h:34 msgid "Ring device:" msgstr "Ses çalma aygıtı:" -#: ../gtk/parameters.ui.h:38 +#: ../gtk/parameters.ui.h:35 msgid "Playback device:" msgstr "Oynatma aygıtı:" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" msgstr "yankı giderme etkin" -#: ../gtk/parameters.ui.h:40 +#: ../gtk/parameters.ui.h:37 msgid "Audio" msgstr "Ses" -#: ../gtk/parameters.ui.h:41 +#: ../gtk/parameters.ui.h:38 msgid "Video input device:" msgstr "Görüntü aygıtı:" -#: ../gtk/parameters.ui.h:42 +#: ../gtk/parameters.ui.h:39 msgid "Preferred video resolution:" msgstr "Tercih edilen görüntü çözünürlüğü:" -#: ../gtk/parameters.ui.h:43 +#: ../gtk/parameters.ui.h:40 msgid "Video output method:" msgstr "Görüntü çıkış yöntemi:" -#: ../gtk/parameters.ui.h:44 +#: ../gtk/parameters.ui.h:41 msgid "Show camera preview" msgstr "Kamera önizlemesi göster" -#: ../gtk/parameters.ui.h:45 +#: ../gtk/parameters.ui.h:42 msgid "Video preset:" msgstr "Görüntü ön ayarları:" -#: ../gtk/parameters.ui.h:46 +#: ../gtk/parameters.ui.h:43 msgid "Preferred video framerate:" msgstr "Tercih edilen görüntü kare sayısı:" -#: ../gtk/parameters.ui.h:47 +#: ../gtk/parameters.ui.h:44 msgid "0 stands for \"unlimited\"" msgstr "" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "Görüntü" -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" msgstr "Gönderim hız sınırı Kbit/saniye:" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" msgstr "İndirme hız sınırı Kbit/saniye:" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" msgstr "Uyarlanabilir hız denetimi etkin" -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." msgstr "" -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "Bantgenişliği denetimi" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" msgstr "Çokluortam ayarları" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" -msgstr "" +msgstr "Maksimum İletim Birimi Ayarları" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" msgstr "" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "IPv6'ya izin ver" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "Taşıma" -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "SIP/UDP bağlantı noktası" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" msgstr "Rastgele" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "SIP/TCP bağlantı noktası" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" msgstr "" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "Sabitlenmiş" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" msgstr "" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "Tünel" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" -msgstr "" +msgstr "DSCP alanları" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" -msgstr "" +msgstr "Ağ protokol ve bağlanma yerleri" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" msgstr "İnternete doğrudan bağlantı" -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" -msgstr "" +msgstr "NAT Arkasından / Güvenlik Duvarı (IP ağ geçidi belirleme)" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" -msgstr "" +msgstr "NAT Arkasından / Güvenlik Duvarı (ICE kullan)" -#: ../gtk/parameters.ui.h:73 +#: ../gtk/parameters.ui.h:70 msgid "Behind NAT / Firewall (use uPnP)" -msgstr "" +msgstr "NAT arkasından / Güvenlik Duvarı (evrensel tak-çalıştır kullan)" -#: ../gtk/parameters.ui.h:74 +#: ../gtk/parameters.ui.h:71 msgid "Public IP address:" msgstr "Ortak İP adresi:" -#: ../gtk/parameters.ui.h:75 +#: ../gtk/parameters.ui.h:72 msgid "Stun server:" msgstr "Stun sunucusu:" -#: ../gtk/parameters.ui.h:76 +#: ../gtk/parameters.ui.h:73 msgid "NAT and Firewall" -msgstr "" +msgstr "NAT ve Güvenlik Duvarı" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "Ortam şifreleme türü" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" -msgstr "" +msgstr "Giden sohbet iletileri için Lime kullan" -#: ../gtk/parameters.ui.h:79 +#: ../gtk/parameters.ui.h:76 msgid "Media encryption is mandatory" msgstr "Ortam şifrelemesi zorunludur" -#: ../gtk/parameters.ui.h:80 -msgid "Encryption" +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" msgstr "" -#: ../gtk/parameters.ui.h:81 +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" +msgstr "" + +#: ../gtk/parameters.ui.h:79 +msgid "Encryption" +msgstr "Şifreleme" + +#: ../gtk/parameters.ui.h:80 msgid "Network settings" msgstr "Ağ ayarları" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" msgstr "Etkinleştirme" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "Devre dışı" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" msgstr "Ses çözücüleri" -#: ../gtk/parameters.ui.h:85 +#: ../gtk/parameters.ui.h:84 msgid "Video codecs" msgstr "Görüntü çözücüleri" -#: ../gtk/parameters.ui.h:86 +#: ../gtk/parameters.ui.h:85 msgid "Codecs" msgstr "Çözücüler" -#: ../gtk/parameters.ui.h:87 +#: ../gtk/parameters.ui.h:86 msgid "Language" msgstr "Dil" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "Gelişmiş ayarları göster" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "Aşama" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" msgstr "Kullanıcı arayüzü" -#: ../gtk/parameters.ui.h:94 +#: ../gtk/parameters.ui.h:93 msgid "LDAP Account setup" msgstr "LDAP Hesap ayarı" -#: ../gtk/parameters.ui.h:95 +#: ../gtk/parameters.ui.h:94 msgid "LDAP" msgstr "LDAP" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "Tamam" @@ -1597,7 +1601,7 @@ msgstr "Önceden bir sip hesabım var ve onu kullanmak istiyorum" #: ../gtk/setup_wizard.ui.h:8 msgid "I want to specify a remote configuration URI" -msgstr "" +msgstr "Bir uzaktan URl yapılandırma belirlemek istiyorum" #: ../gtk/setup_wizard.ui.h:9 msgid "Account setup assistant" @@ -1741,7 +1745,7 @@ msgstr "" #: ../gtk/sip_account.ui.h:10 msgid "Route (optional):" -msgstr "" +msgstr "Güzergah (isteğe bağlı)" #: ../gtk/sip_account.ui.h:11 msgid "Transport" @@ -1753,7 +1757,7 @@ msgstr "Kayıt" #: ../gtk/sip_account.ui.h:13 msgid "Publish presence information" -msgstr "" +msgstr "Yayınlama ön bilgisi" #: ../gtk/sip_account.ui.h:14 msgid "Enable AVPF" @@ -1769,7 +1773,7 @@ msgstr "VoIP tüneli yapılandır" #: ../gtk/tunnel_config.ui.h:2 msgid "Host" -msgstr "" +msgstr "Barındırıcı" #: ../gtk/tunnel_config.ui.h:3 msgid "Port" @@ -1777,122 +1781,122 @@ msgstr "Bağlantı noktası" #: ../gtk/tunnel_config.ui.h:6 msgid "Configure tunnel" -msgstr "" +msgstr "Tünel yapılandır" #: ../gtk/tunnel_config.ui.h:9 msgid "Configure http proxy (optional)" -msgstr "" +msgstr "http vekil yapılandır (isteğe bağlı)" #: ../gtk/waiting.ui.h:2 msgid "Please wait" msgstr "Lütfen bekleyin" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "Hazır" -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" msgstr "Yapılandırılıyor" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" msgstr "Bağlanıyor" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" msgstr "Aranamıyor" -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" msgstr "" -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "" -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." msgstr "" -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." -msgstr "" +msgstr "Çağrı değiştirgeleri değiştiriliyor..." -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "Bağlandı." -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "Çağrı iptal edildi" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" -msgstr "" +msgstr "Çağrı duraklatılamadı" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." -msgstr "" +msgstr "Geçerli çağrı duraklatılıyor..." #: ../coreapi/misc.c:441 msgid "Stun lookup in progress..." msgstr "" -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." msgstr "" -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "Çevrimiçi" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "Meşgul" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "Hemen döneceğim" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "Uzakta" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" msgstr "Telefondayım" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" msgstr "Yemekteyim" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "Rahatsız etmeyin" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "Taşındı" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" msgstr "Diğer mesaj servisi kullanılıyor" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" msgstr "Çevrimdışı" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "Bekliyor" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "Tatil" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "Bilinmeyen durum" @@ -1916,12 +1920,12 @@ msgstr "" msgid "Could not resolve this number." msgstr "" -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." msgstr "" @@ -2030,16 +2034,16 @@ msgstr "Servis kullanımdışı, tekrar deneyin" msgid "Authentication token is %s" msgstr "" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." msgstr "" -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." msgstr "" -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." diff --git a/po/zh_CN.po b/po/zh_CN.po index f2c23fdb2..1bc9f386f 100644 --- a/po/zh_CN.po +++ b/po/zh_CN.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:56+0000\n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" "Last-Translator: Belledonne Communications \n" "Language-Team: Chinese (China) (http://www.transifex.com/belledonne-communications/linphone-gtk/language/zh_CN/)\n" "MIME-Version: 1.0\n" @@ -32,7 +32,7 @@ msgstr "发送消息给 %s" msgid "Add %s to your contact list" msgstr "" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "" @@ -102,7 +102,7 @@ msgstr "" msgid "Message not sent" msgstr "" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "" @@ -148,7 +148,7 @@ msgstr "" msgid "Run self test and exit 0 if succeed" msgstr "" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" @@ -156,80 +156,80 @@ msgid "" "If you answer no, this person will be temporarily blacklisted." msgstr "" -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" msgstr "" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "呼叫结束" -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "呼入" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "拒绝" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" msgstr "" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "网站" -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "Linphone" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" msgstr "" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" msgstr "%s (默认)" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" msgstr "" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." msgstr "未在此计算机上检测到声卡。\n您无法发送或接收音频呼叫。" -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "免费的 SIP 视频电话" -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "" @@ -243,31 +243,31 @@ msgstr "" msgid "Search in %s directory" msgstr "在 %s 目录中查找 " -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "无效的 SIP 联系人!" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "编辑联系人 %s" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "删除联系人 %s" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" msgstr "从 %s 目录增加联系人 " @@ -296,7 +296,7 @@ msgstr "参数" msgid "Enabled" msgstr "启用" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "禁用" @@ -736,7 +736,7 @@ msgstr "" msgid "Audio Assistant" msgstr "" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "" @@ -950,15 +950,15 @@ msgstr "" msgid "LDAP Settings" msgstr "" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" msgstr "" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" msgstr "" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "用户名:" @@ -1124,58 +1124,66 @@ msgid "Show keypad" msgstr "" #: ../gtk/main.ui.h:8 -msgid "_Help" +msgid "Import contacts from vCards" msgstr "" #: ../gtk/main.ui.h:9 -msgid "Show debug window" +msgid "Export contacts as vCards" msgstr "" #: ../gtk/main.ui.h:10 -msgid "_Homepage" +msgid "_Help" msgstr "" #: ../gtk/main.ui.h:11 -msgid "Check _Updates" +msgid "Show debug window" msgstr "" #: ../gtk/main.ui.h:12 -msgid "Account assistant" +msgid "_Homepage" +msgstr "" + +#: ../gtk/main.ui.h:13 +msgid "Check _Updates" msgstr "" #: ../gtk/main.ui.h:14 -msgid "SIP address or phone number:" -msgstr "SIP 地址或电话号码:" - -#: ../gtk/main.ui.h:15 -msgid "Initiate a new call" +msgid "Account assistant" msgstr "" #: ../gtk/main.ui.h:16 +msgid "SIP address or phone number:" +msgstr "SIP 地址或电话号码:" + +#: ../gtk/main.ui.h:17 +msgid "Initiate a new call" +msgstr "" + +#: ../gtk/main.ui.h:18 msgid "Contacts" msgstr "联系人" -#: ../gtk/main.ui.h:17 +#: ../gtk/main.ui.h:19 msgid "Search" msgstr "搜索" -#: ../gtk/main.ui.h:18 +#: ../gtk/main.ui.h:20 msgid "Add contacts from directory" msgstr "从目录增加联系人" -#: ../gtk/main.ui.h:19 +#: ../gtk/main.ui.h:21 msgid "Add contact" msgstr "" -#: ../gtk/main.ui.h:20 +#: ../gtk/main.ui.h:22 msgid "Clear call history" msgstr "" -#: ../gtk/main.ui.h:22 +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "当前地址:" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" msgstr "" @@ -1232,320 +1240,316 @@ msgid "SIP (TLS)" msgstr "" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "设置" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" msgstr "该段在您不使用SIP帐户时的SIP地址" -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" msgstr "您的显示名:" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "您的用户名:" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" msgstr "您的 SIP 地址结果:" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" msgstr "默认帐户" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" msgstr "" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "添加" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "编辑" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "移除" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" msgstr "代理帐户" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" msgstr "清除所有密码" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "隐私" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" msgstr "" -#: ../gtk/parameters.ui.h:31 +#: ../gtk/parameters.ui.h:28 msgid "Delay before answering (ms)" msgstr "" -#: ../gtk/parameters.ui.h:32 +#: ../gtk/parameters.ui.h:29 msgid "Auto-answer" msgstr "" -#: ../gtk/parameters.ui.h:33 +#: ../gtk/parameters.ui.h:30 msgid "Manage SIP Accounts" msgstr "SIP 帐户管理" -#: ../gtk/parameters.ui.h:34 +#: ../gtk/parameters.ui.h:31 msgid "Ring sound:" msgstr "铃声文件:" -#: ../gtk/parameters.ui.h:35 +#: ../gtk/parameters.ui.h:32 msgid "ALSA special device (optional):" msgstr "ALSA 特殊设备(可选):" -#: ../gtk/parameters.ui.h:36 +#: ../gtk/parameters.ui.h:33 msgid "Capture device:" msgstr "录音设备:" -#: ../gtk/parameters.ui.h:37 +#: ../gtk/parameters.ui.h:34 msgid "Ring device:" msgstr "响铃设备:" -#: ../gtk/parameters.ui.h:38 +#: ../gtk/parameters.ui.h:35 msgid "Playback device:" msgstr "回放设备:" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" msgstr "启用回声抑制" -#: ../gtk/parameters.ui.h:40 +#: ../gtk/parameters.ui.h:37 msgid "Audio" msgstr "音频" -#: ../gtk/parameters.ui.h:41 +#: ../gtk/parameters.ui.h:38 msgid "Video input device:" msgstr "视频输入设备:" -#: ../gtk/parameters.ui.h:42 +#: ../gtk/parameters.ui.h:39 msgid "Preferred video resolution:" msgstr "" -#: ../gtk/parameters.ui.h:43 +#: ../gtk/parameters.ui.h:40 msgid "Video output method:" msgstr "" -#: ../gtk/parameters.ui.h:44 +#: ../gtk/parameters.ui.h:41 msgid "Show camera preview" msgstr "" -#: ../gtk/parameters.ui.h:45 +#: ../gtk/parameters.ui.h:42 msgid "Video preset:" msgstr "" -#: ../gtk/parameters.ui.h:46 +#: ../gtk/parameters.ui.h:43 msgid "Preferred video framerate:" msgstr "" -#: ../gtk/parameters.ui.h:47 +#: ../gtk/parameters.ui.h:44 msgid "0 stands for \"unlimited\"" msgstr "0 表示 “没有限制”" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "视频" -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" msgstr "上传速率限制 kbit/s:" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" msgstr "下载速率限制 kbit/s:" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" msgstr "" -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." msgstr "" -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "带宽控制" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" msgstr "音视频设置" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" msgstr "设置最大传输单元(MTU):" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" msgstr "以 SIP 消息发送 DTMF" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "传输协议" -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" msgstr "" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" msgstr "音频 RTP/UDP:" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" msgstr "视频 RTP/UDP:" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" msgstr "" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" msgstr "" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" msgstr "直接连接到互联网" -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" msgstr "" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "在 NAT 或防火墙后(使用 STUN 解决)" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" msgstr "" -#: ../gtk/parameters.ui.h:73 +#: ../gtk/parameters.ui.h:70 msgid "Behind NAT / Firewall (use uPnP)" msgstr "" -#: ../gtk/parameters.ui.h:74 +#: ../gtk/parameters.ui.h:71 msgid "Public IP address:" msgstr "公网 IP 地址:" -#: ../gtk/parameters.ui.h:75 +#: ../gtk/parameters.ui.h:72 msgid "Stun server:" msgstr "Stun 服务器:" -#: ../gtk/parameters.ui.h:76 +#: ../gtk/parameters.ui.h:73 msgid "NAT and Firewall" msgstr "NAT 及防火墙" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" msgstr "" -#: ../gtk/parameters.ui.h:79 +#: ../gtk/parameters.ui.h:76 msgid "Media encryption is mandatory" msgstr "" -#: ../gtk/parameters.ui.h:80 +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" +msgstr "" + +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" +msgstr "" + +#: ../gtk/parameters.ui.h:79 msgid "Encryption" msgstr "" -#: ../gtk/parameters.ui.h:81 +#: ../gtk/parameters.ui.h:80 msgid "Network settings" msgstr "网络设置" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" msgstr "启用" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "禁用" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" msgstr "" -#: ../gtk/parameters.ui.h:85 +#: ../gtk/parameters.ui.h:84 msgid "Video codecs" msgstr "" -#: ../gtk/parameters.ui.h:86 +#: ../gtk/parameters.ui.h:85 msgid "Codecs" msgstr "编解码器" -#: ../gtk/parameters.ui.h:87 +#: ../gtk/parameters.ui.h:86 msgid "Language" msgstr "语言" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "显示高级设置" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "级别" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" msgstr "用户界面" -#: ../gtk/parameters.ui.h:94 +#: ../gtk/parameters.ui.h:93 msgid "LDAP Account setup" msgstr "" -#: ../gtk/parameters.ui.h:95 +#: ../gtk/parameters.ui.h:94 msgid "LDAP" msgstr "" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "完成" @@ -1783,52 +1787,52 @@ msgstr "" msgid "Please wait" msgstr "请稍候" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "就绪" -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" msgstr "" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" msgstr "联系中" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" msgstr "" -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" msgstr "" -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "正在联系您" -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." msgstr " 并询问了自动回答。" -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." msgstr "" -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "已连接。" -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" msgstr "" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." msgstr "" @@ -1836,59 +1840,59 @@ msgstr "" msgid "Stun lookup in progress..." msgstr "正在进行 Stun 查找..." -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." msgstr "" -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "在线" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "忙碌" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "很快回来" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "离开" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" msgstr "正在通话" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" msgstr "外出吃饭" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "请勿打扰" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "已转到其他服务" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" msgstr "正在使用其他消息服务" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" msgstr "离线" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "挂起" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "" @@ -1912,12 +1916,12 @@ msgstr "查询电话号码目的地..." msgid "Could not resolve this number." msgstr "该号码无法解析。" -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "无法登录为 %s" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." msgstr "" @@ -2026,16 +2030,16 @@ msgstr "" msgid "Authentication token is %s" msgstr "" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." msgstr "" -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." msgstr "" -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." diff --git a/po/zh_TW.po b/po/zh_TW.po index 434b3ff31..ce56ee2f4 100644 --- a/po/zh_TW.po +++ b/po/zh_TW.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: linphone-gtk\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-02-22 16:56+0100\n" -"PO-Revision-Date: 2016-02-22 15:56+0000\n" +"POT-Creation-Date: 2016-03-15 14:09+0100\n" +"PO-Revision-Date: 2016-03-15 13:09+0000\n" "Last-Translator: Belledonne Communications \n" "Language-Team: Chinese (Taiwan) (http://www.transifex.com/belledonne-communications/linphone-gtk/language/zh_TW/)\n" "MIME-Version: 1.0\n" @@ -32,7 +32,7 @@ msgstr "傳送文字給 %s" msgid "Add %s to your contact list" msgstr "" -#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:21 +#: ../gtk/calllogs.c:245 ../gtk/main.ui.h:23 msgid "Recent calls" msgstr "" @@ -102,7 +102,7 @@ msgstr "" msgid "Message not sent" msgstr "" -#: ../gtk/chat.c:492 +#: ../gtk/chat.c:493 msgid "Copy" msgstr "" @@ -148,7 +148,7 @@ msgstr "" msgid "Run self test and exit 0 if succeed" msgstr "" -#: ../gtk/main.c:1034 +#: ../gtk/main.c:1036 #, c-format msgid "" "%s would like to add you to his/her contact list.\n" @@ -156,80 +156,80 @@ msgid "" "If you answer no, this person will be temporarily blacklisted." msgstr "" -#: ../gtk/main.c:1111 +#: ../gtk/main.c:1113 #, c-format msgid "" "Please enter your password for username %s\n" " at realm %s:" msgstr "" -#: ../gtk/main.c:1220 +#: ../gtk/main.c:1222 msgid "Call error" msgstr "" -#: ../gtk/main.c:1223 ../coreapi/linphonecore.c:3858 +#: ../gtk/main.c:1225 ../coreapi/linphonecore.c:3938 msgid "Call ended" msgstr "通話已結束" -#: ../gtk/main.c:1226 ../coreapi/call_log.c:235 +#: ../gtk/main.c:1228 ../coreapi/call_log.c:235 msgid "Incoming call" msgstr "來電" -#: ../gtk/main.c:1229 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 +#: ../gtk/main.c:1231 ../gtk/incall_view.c:579 ../gtk/in_call_frame.ui.h:2 msgid "Answer" msgstr "接聽" -#: ../gtk/main.c:1231 ../gtk/in_call_frame.ui.h:3 +#: ../gtk/main.c:1233 ../gtk/in_call_frame.ui.h:3 msgid "Decline" msgstr "拒接" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 msgid "Call paused" msgstr "" -#: ../gtk/main.c:1238 +#: ../gtk/main.c:1240 #, c-format msgid "by %s" msgstr "" -#: ../gtk/main.c:1312 +#: ../gtk/main.c:1314 #, c-format msgid "%s proposed to start video. Do you accept ?" msgstr "" -#: ../gtk/main.c:1478 +#: ../gtk/main.c:1480 msgid "Website link" msgstr "網站連結" -#: ../gtk/main.c:1537 ../gtk/waiting.ui.h:1 +#: ../gtk/main.c:1539 ../gtk/waiting.ui.h:1 msgid "Linphone" msgstr "Linphone" -#: ../gtk/main.c:1538 +#: ../gtk/main.c:1540 msgid "A video internet phone" msgstr "" -#: ../gtk/main.c:1600 +#: ../gtk/main.c:1602 #, c-format msgid "%s (Default)" msgstr "%s (預設值)" -#: ../gtk/main.c:1943 ../coreapi/callbacks.c:1080 +#: ../gtk/main.c:1975 ../coreapi/callbacks.c:1080 #, c-format msgid "We are transferred to %s" msgstr "我們被轉接到 %s" -#: ../gtk/main.c:1954 +#: ../gtk/main.c:1986 msgid "" "No sound cards have been detected on this computer.\n" "You won't be able to send or receive audio calls." msgstr "在這臺電腦中偵測不到音效卡。\n您將無法傳送或接收語音電話。" -#: ../gtk/main.c:2119 +#: ../gtk/main.c:2151 msgid "A free SIP video-phone" msgstr "自由的 SIP 視訊電話" -#: ../gtk/main.c:2233 +#: ../gtk/main.c:2270 #, c-format msgid "Hello\n" msgstr "" @@ -243,31 +243,31 @@ msgstr "" msgid "Search in %s directory" msgstr "在 %s 目錄中搜尋" -#: ../gtk/friendlist.c:771 +#: ../gtk/friendlist.c:773 msgid "Invalid sip contact !" msgstr "無效的 sip 連絡人!" -#: ../gtk/friendlist.c:819 +#: ../gtk/friendlist.c:820 #, c-format msgid "Add a new contact" msgstr "" -#: ../gtk/friendlist.c:822 +#: ../gtk/friendlist.c:823 #, c-format msgid "Edit contact '%s'" msgstr "編輯連絡人「%s」" -#: ../gtk/friendlist.c:823 +#: ../gtk/friendlist.c:824 #, c-format msgid "Delete contact '%s'" msgstr "刪除連絡人「%s」" -#: ../gtk/friendlist.c:824 +#: ../gtk/friendlist.c:825 #, c-format msgid "Delete chat history of '%s'" msgstr "" -#: ../gtk/friendlist.c:861 +#: ../gtk/friendlist.c:862 #, c-format msgid "Add new contact from %s directory" msgstr "從 %s 目錄加入新的連絡人" @@ -296,7 +296,7 @@ msgstr "參數" msgid "Enabled" msgstr "已啟用" -#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:60 +#: ../gtk/propertybox.c:672 ../gtk/propertybox.c:824 ../gtk/parameters.ui.h:57 msgid "Disabled" msgstr "已停用" @@ -736,7 +736,7 @@ msgstr "" msgid "Audio Assistant" msgstr "" -#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:13 +#: ../gtk/audio_assistant.c:523 ../gtk/main.ui.h:15 msgid "Audio assistant" msgstr "" @@ -950,15 +950,15 @@ msgstr "" msgid "LDAP Settings" msgstr "" -#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:91 +#: ../gtk/ldap.ui.h:2 ../gtk/parameters.ui.h:90 msgid "Server address:" msgstr "" -#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:92 +#: ../gtk/ldap.ui.h:3 ../gtk/parameters.ui.h:91 msgid "Authentication method:" msgstr "" -#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:93 ../gtk/setup_wizard.ui.h:17 +#: ../gtk/ldap.ui.h:4 ../gtk/parameters.ui.h:92 ../gtk/setup_wizard.ui.h:17 msgid "Username:" msgstr "使用者名稱:" @@ -1124,58 +1124,66 @@ msgid "Show keypad" msgstr "" #: ../gtk/main.ui.h:8 +msgid "Import contacts from vCards" +msgstr "" + +#: ../gtk/main.ui.h:9 +msgid "Export contacts as vCards" +msgstr "" + +#: ../gtk/main.ui.h:10 msgid "_Help" msgstr "求助(_H)" -#: ../gtk/main.ui.h:9 +#: ../gtk/main.ui.h:11 msgid "Show debug window" msgstr "顯示除錯視窗" -#: ../gtk/main.ui.h:10 +#: ../gtk/main.ui.h:12 msgid "_Homepage" msgstr "官方網頁(_H)" -#: ../gtk/main.ui.h:11 +#: ../gtk/main.ui.h:13 msgid "Check _Updates" msgstr "檢查更新(_U)" -#: ../gtk/main.ui.h:12 +#: ../gtk/main.ui.h:14 msgid "Account assistant" msgstr "" -#: ../gtk/main.ui.h:14 +#: ../gtk/main.ui.h:16 msgid "SIP address or phone number:" msgstr "SIP 位址或電話號碼:" -#: ../gtk/main.ui.h:15 +#: ../gtk/main.ui.h:17 msgid "Initiate a new call" msgstr "打出新電話" -#: ../gtk/main.ui.h:16 +#: ../gtk/main.ui.h:18 msgid "Contacts" msgstr "連絡人" -#: ../gtk/main.ui.h:17 +#: ../gtk/main.ui.h:19 msgid "Search" msgstr "搜尋" -#: ../gtk/main.ui.h:18 +#: ../gtk/main.ui.h:20 msgid "Add contacts from directory" msgstr "從目錄加入連絡人" -#: ../gtk/main.ui.h:19 +#: ../gtk/main.ui.h:21 msgid "Add contact" msgstr "加入聯絡人" -#: ../gtk/main.ui.h:20 +#: ../gtk/main.ui.h:22 msgid "Clear call history" msgstr "" -#: ../gtk/main.ui.h:22 +#: ../gtk/main.ui.h:24 msgid "My current identity:" msgstr "我目前的使用者識別:" -#: ../gtk/main.ui.h:23 +#: ../gtk/main.ui.h:25 msgid "Autoanswer is enabled" msgstr "" @@ -1232,320 +1240,316 @@ msgid "SIP (TLS)" msgstr "" #: ../gtk/parameters.ui.h:14 -msgid "default" -msgstr "" - -#: ../gtk/parameters.ui.h:15 -msgid "high-fps" -msgstr "" - -#: ../gtk/parameters.ui.h:16 -msgid "custom" -msgstr "" - -#: ../gtk/parameters.ui.h:17 msgid "Settings" msgstr "設定值" -#: ../gtk/parameters.ui.h:18 +#: ../gtk/parameters.ui.h:15 msgid "This section defines your SIP address when not using a SIP account" msgstr "這一區在不使用 SIP 帳號時定義您的 SIP 位址" -#: ../gtk/parameters.ui.h:19 +#: ../gtk/parameters.ui.h:16 msgid "Your display name (eg: John Doe):" msgstr "您的顯示名稱 (例如: John Doe):" -#: ../gtk/parameters.ui.h:20 +#: ../gtk/parameters.ui.h:17 msgid "Your username:" msgstr "您的使用者名稱:" -#: ../gtk/parameters.ui.h:21 +#: ../gtk/parameters.ui.h:18 msgid "Your resulting SIP address:" msgstr "您組成的 SIP 位址:" -#: ../gtk/parameters.ui.h:22 +#: ../gtk/parameters.ui.h:19 msgid "Default identity" msgstr "預設身分識別" -#: ../gtk/parameters.ui.h:23 +#: ../gtk/parameters.ui.h:20 msgid "Wizard" msgstr "" -#: ../gtk/parameters.ui.h:24 +#: ../gtk/parameters.ui.h:21 msgid "Add" msgstr "加入" -#: ../gtk/parameters.ui.h:25 +#: ../gtk/parameters.ui.h:22 msgid "Edit" msgstr "編輯" -#: ../gtk/parameters.ui.h:26 +#: ../gtk/parameters.ui.h:23 msgid "Remove" msgstr "移除" -#: ../gtk/parameters.ui.h:27 +#: ../gtk/parameters.ui.h:24 msgid "Proxy accounts" msgstr "代理伺服器帳號" -#: ../gtk/parameters.ui.h:28 +#: ../gtk/parameters.ui.h:25 msgid "Erase all passwords" msgstr "消除所有的密碼" -#: ../gtk/parameters.ui.h:29 +#: ../gtk/parameters.ui.h:26 msgid "Privacy" msgstr "隱私" -#: ../gtk/parameters.ui.h:30 +#: ../gtk/parameters.ui.h:27 msgid "Automatically answer when a call is received" msgstr "" -#: ../gtk/parameters.ui.h:31 +#: ../gtk/parameters.ui.h:28 msgid "Delay before answering (ms)" msgstr "" -#: ../gtk/parameters.ui.h:32 +#: ../gtk/parameters.ui.h:29 msgid "Auto-answer" msgstr "" -#: ../gtk/parameters.ui.h:33 +#: ../gtk/parameters.ui.h:30 msgid "Manage SIP Accounts" msgstr "管理 SIP 帳號" -#: ../gtk/parameters.ui.h:34 +#: ../gtk/parameters.ui.h:31 msgid "Ring sound:" msgstr "鈴聲音效:" -#: ../gtk/parameters.ui.h:35 +#: ../gtk/parameters.ui.h:32 msgid "ALSA special device (optional):" msgstr "ALSA 特殊裝置 (選擇性):" -#: ../gtk/parameters.ui.h:36 +#: ../gtk/parameters.ui.h:33 msgid "Capture device:" msgstr "捕捉裝置:" -#: ../gtk/parameters.ui.h:37 +#: ../gtk/parameters.ui.h:34 msgid "Ring device:" msgstr "響鈴裝置:" -#: ../gtk/parameters.ui.h:38 +#: ../gtk/parameters.ui.h:35 msgid "Playback device:" msgstr "播放裝置" -#: ../gtk/parameters.ui.h:39 +#: ../gtk/parameters.ui.h:36 msgid "Enable echo cancellation" msgstr "啟用回音消除" -#: ../gtk/parameters.ui.h:40 +#: ../gtk/parameters.ui.h:37 msgid "Audio" msgstr "音效" -#: ../gtk/parameters.ui.h:41 +#: ../gtk/parameters.ui.h:38 msgid "Video input device:" msgstr "視訊輸入裝置:" -#: ../gtk/parameters.ui.h:42 +#: ../gtk/parameters.ui.h:39 msgid "Preferred video resolution:" msgstr "" -#: ../gtk/parameters.ui.h:43 +#: ../gtk/parameters.ui.h:40 msgid "Video output method:" msgstr "" -#: ../gtk/parameters.ui.h:44 +#: ../gtk/parameters.ui.h:41 msgid "Show camera preview" msgstr "" -#: ../gtk/parameters.ui.h:45 +#: ../gtk/parameters.ui.h:42 msgid "Video preset:" msgstr "" -#: ../gtk/parameters.ui.h:46 +#: ../gtk/parameters.ui.h:43 msgid "Preferred video framerate:" msgstr "" -#: ../gtk/parameters.ui.h:47 +#: ../gtk/parameters.ui.h:44 msgid "0 stands for \"unlimited\"" msgstr "0 表示「不限制」" -#: ../gtk/parameters.ui.h:48 +#: ../gtk/parameters.ui.h:45 msgid "Video" msgstr "視訊" -#: ../gtk/parameters.ui.h:49 +#: ../gtk/parameters.ui.h:46 msgid "Upload speed limit in Kbit/sec:" msgstr "上傳速度限制於 Kbit/sec:" -#: ../gtk/parameters.ui.h:50 +#: ../gtk/parameters.ui.h:47 msgid "Download speed limit in Kbit/sec:" msgstr "下載速度限制於 Kbit/sec:" -#: ../gtk/parameters.ui.h:51 +#: ../gtk/parameters.ui.h:48 msgid "Enable adaptive rate control" msgstr "" -#: ../gtk/parameters.ui.h:52 +#: ../gtk/parameters.ui.h:49 msgid "" "Adaptive rate control is a technique to dynamically guess the available " "bandwidth during a call." msgstr "" -#: ../gtk/parameters.ui.h:53 +#: ../gtk/parameters.ui.h:50 msgid "Bandwidth control" msgstr "頻寬控制" -#: ../gtk/parameters.ui.h:54 +#: ../gtk/parameters.ui.h:51 msgid "Multimedia settings" msgstr "多媒體設定值" -#: ../gtk/parameters.ui.h:55 +#: ../gtk/parameters.ui.h:52 msgid "Set Maximum Transmission Unit:" msgstr "設定最大傳輸單位:" -#: ../gtk/parameters.ui.h:56 +#: ../gtk/parameters.ui.h:53 msgid "Send DTMFs as SIP info" msgstr "傳送 DTMFs 為 SIP 資訊" -#: ../gtk/parameters.ui.h:57 +#: ../gtk/parameters.ui.h:54 msgid "Allow IPv6" msgstr "" -#: ../gtk/parameters.ui.h:58 +#: ../gtk/parameters.ui.h:55 msgid "Transport" msgstr "傳輸" -#: ../gtk/parameters.ui.h:59 +#: ../gtk/parameters.ui.h:56 msgid "SIP/UDP port" msgstr "" -#: ../gtk/parameters.ui.h:61 +#: ../gtk/parameters.ui.h:58 msgid "Random" msgstr "" -#: ../gtk/parameters.ui.h:62 +#: ../gtk/parameters.ui.h:59 msgid "SIP/TCP port" msgstr "" -#: ../gtk/parameters.ui.h:63 +#: ../gtk/parameters.ui.h:60 msgid "Audio RTP/UDP:" msgstr "音效 RTP/UDP:" -#: ../gtk/parameters.ui.h:64 +#: ../gtk/parameters.ui.h:61 msgid "Fixed" msgstr "" -#: ../gtk/parameters.ui.h:65 +#: ../gtk/parameters.ui.h:62 msgid "Video RTP/UDP:" msgstr "視訊 RTP/UDP:" -#: ../gtk/parameters.ui.h:66 +#: ../gtk/parameters.ui.h:63 msgid "Tunnel" msgstr "" -#: ../gtk/parameters.ui.h:67 +#: ../gtk/parameters.ui.h:64 msgid "DSCP fields" msgstr "" -#: ../gtk/parameters.ui.h:68 +#: ../gtk/parameters.ui.h:65 msgid "Network protocol and ports" msgstr "" -#: ../gtk/parameters.ui.h:69 +#: ../gtk/parameters.ui.h:66 msgid "Direct connection to the Internet" msgstr "直接連線到網際網路" -#: ../gtk/parameters.ui.h:70 +#: ../gtk/parameters.ui.h:67 msgid "Behind NAT / Firewall (specify gateway IP )" msgstr "" -#: ../gtk/parameters.ui.h:71 +#: ../gtk/parameters.ui.h:68 msgid "Behind NAT / Firewall (use STUN to resolve)" msgstr "在 NAT / 防火牆之後 (使用 STUN 解析)" -#: ../gtk/parameters.ui.h:72 +#: ../gtk/parameters.ui.h:69 msgid "Behind NAT / Firewall (use ICE)" msgstr "" -#: ../gtk/parameters.ui.h:73 +#: ../gtk/parameters.ui.h:70 msgid "Behind NAT / Firewall (use uPnP)" msgstr "" -#: ../gtk/parameters.ui.h:74 +#: ../gtk/parameters.ui.h:71 msgid "Public IP address:" msgstr "公共 IP 地址:" -#: ../gtk/parameters.ui.h:75 +#: ../gtk/parameters.ui.h:72 msgid "Stun server:" msgstr "Stun 伺服器:" -#: ../gtk/parameters.ui.h:76 +#: ../gtk/parameters.ui.h:73 msgid "NAT and Firewall" msgstr "NAT 與防火牆" -#: ../gtk/parameters.ui.h:77 +#: ../gtk/parameters.ui.h:74 msgid "Media encryption type" msgstr "" -#: ../gtk/parameters.ui.h:78 +#: ../gtk/parameters.ui.h:75 msgid "Use Lime for outgoing chat messages" msgstr "" -#: ../gtk/parameters.ui.h:79 +#: ../gtk/parameters.ui.h:76 msgid "Media encryption is mandatory" msgstr "" -#: ../gtk/parameters.ui.h:80 +#: ../gtk/parameters.ui.h:77 +msgid "Mandatory" +msgstr "" + +#: ../gtk/parameters.ui.h:78 +msgid "Preferred" +msgstr "" + +#: ../gtk/parameters.ui.h:79 msgid "Encryption" msgstr "" -#: ../gtk/parameters.ui.h:81 +#: ../gtk/parameters.ui.h:80 msgid "Network settings" msgstr "網路設定值" -#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:4 +#: ../gtk/parameters.ui.h:81 ../gtk/tunnel_config.ui.h:4 msgid "Enable" msgstr "啟用" -#: ../gtk/parameters.ui.h:83 ../gtk/tunnel_config.ui.h:5 +#: ../gtk/parameters.ui.h:82 ../gtk/tunnel_config.ui.h:5 msgid "Disable" msgstr "停用" -#: ../gtk/parameters.ui.h:84 +#: ../gtk/parameters.ui.h:83 msgid "Audio codecs" msgstr "" -#: ../gtk/parameters.ui.h:85 +#: ../gtk/parameters.ui.h:84 msgid "Video codecs" msgstr "" -#: ../gtk/parameters.ui.h:86 +#: ../gtk/parameters.ui.h:85 msgid "Codecs" msgstr "編碼解碼器" -#: ../gtk/parameters.ui.h:87 +#: ../gtk/parameters.ui.h:86 msgid "Language" msgstr "語言" -#: ../gtk/parameters.ui.h:88 +#: ../gtk/parameters.ui.h:87 msgid "Show advanced settings" msgstr "顯示進階設定值" -#: ../gtk/parameters.ui.h:89 +#: ../gtk/parameters.ui.h:88 msgid "Level" msgstr "級數" -#: ../gtk/parameters.ui.h:90 +#: ../gtk/parameters.ui.h:89 msgid "User interface" msgstr "使用者介面" -#: ../gtk/parameters.ui.h:94 +#: ../gtk/parameters.ui.h:93 msgid "LDAP Account setup" msgstr "" -#: ../gtk/parameters.ui.h:95 +#: ../gtk/parameters.ui.h:94 msgid "LDAP" msgstr "" -#: ../gtk/parameters.ui.h:96 +#: ../gtk/parameters.ui.h:95 msgid "Done" msgstr "完成" @@ -1783,52 +1787,52 @@ msgstr "" msgid "Please wait" msgstr "請稍候" -#: ../coreapi/linphonecore.c:1573 +#: ../coreapi/linphonecore.c:1590 msgid "Ready" msgstr "準備就緒" -#: ../coreapi/linphonecore.c:2613 +#: ../coreapi/linphonecore.c:2681 msgid "Configuring" msgstr "" #. must be known at that time -#: ../coreapi/linphonecore.c:3005 +#: ../coreapi/linphonecore.c:3080 msgid "Contacting" msgstr "正在連絡" -#: ../coreapi/linphonecore.c:3010 +#: ../coreapi/linphonecore.c:3085 msgid "Could not call" msgstr "無法通話" -#: ../coreapi/linphonecore.c:3146 +#: ../coreapi/linphonecore.c:3224 msgid "Sorry, we have reached the maximum number of simultaneous calls" msgstr "抱歉,我們已達瀏同步通話的最大數目" -#: ../coreapi/linphonecore.c:3304 +#: ../coreapi/linphonecore.c:3384 msgid "is contacting you" msgstr "正在連絡您" -#: ../coreapi/linphonecore.c:3305 +#: ../coreapi/linphonecore.c:3385 msgid " and asked autoanswer." msgstr "並要求自動接聽。" -#: ../coreapi/linphonecore.c:3422 +#: ../coreapi/linphonecore.c:3502 msgid "Modifying call parameters..." msgstr "修改通話參數..." -#: ../coreapi/linphonecore.c:3814 +#: ../coreapi/linphonecore.c:3894 msgid "Connected." msgstr "已連線。" -#: ../coreapi/linphonecore.c:3839 +#: ../coreapi/linphonecore.c:3919 msgid "Call aborted" msgstr "通話已放棄" -#: ../coreapi/linphonecore.c:4041 +#: ../coreapi/linphonecore.c:4121 msgid "Could not pause the call" msgstr "無法暫停通話" -#: ../coreapi/linphonecore.c:4044 +#: ../coreapi/linphonecore.c:4124 msgid "Pausing the current call..." msgstr "暫停目前的通話..." @@ -1836,59 +1840,59 @@ msgstr "暫停目前的通話..." msgid "Stun lookup in progress..." msgstr "正在進行 Stun 搜尋..." -#: ../coreapi/misc.c:655 +#: ../coreapi/misc.c:657 msgid "ICE local candidates gathering in progress..." msgstr "" -#: ../coreapi/friend.c:33 +#: ../coreapi/friend.c:48 msgid "Online" msgstr "上線" -#: ../coreapi/friend.c:36 +#: ../coreapi/friend.c:51 msgid "Busy" msgstr "忙碌" -#: ../coreapi/friend.c:39 +#: ../coreapi/friend.c:54 msgid "Be right back" msgstr "馬上回來" -#: ../coreapi/friend.c:42 +#: ../coreapi/friend.c:57 msgid "Away" msgstr "離開" -#: ../coreapi/friend.c:45 +#: ../coreapi/friend.c:60 msgid "On the phone" msgstr "電話中" -#: ../coreapi/friend.c:48 +#: ../coreapi/friend.c:63 msgid "Out to lunch" msgstr "外出午餐" -#: ../coreapi/friend.c:51 +#: ../coreapi/friend.c:66 msgid "Do not disturb" msgstr "請勿打擾" -#: ../coreapi/friend.c:54 +#: ../coreapi/friend.c:69 msgid "Moved" msgstr "移動中" -#: ../coreapi/friend.c:57 +#: ../coreapi/friend.c:72 msgid "Using another messaging service" msgstr "使用另一個訊息服務" -#: ../coreapi/friend.c:60 +#: ../coreapi/friend.c:75 msgid "Offline" msgstr "離線" -#: ../coreapi/friend.c:63 +#: ../coreapi/friend.c:78 msgid "Pending" msgstr "等待中" -#: ../coreapi/friend.c:66 +#: ../coreapi/friend.c:81 msgid "Vacation" msgstr "" -#: ../coreapi/friend.c:68 +#: ../coreapi/friend.c:83 msgid "Unknown status" msgstr "" @@ -1912,12 +1916,12 @@ msgstr "尋找電話號碼目的端..." msgid "Could not resolve this number." msgstr "無法解析這個號碼。" -#: ../coreapi/proxy.c:1410 +#: ../coreapi/proxy.c:1409 #, c-format msgid "Could not login as %s" msgstr "無法以 %s 登入" -#: ../coreapi/proxy.c:1495 +#: ../coreapi/proxy.c:1494 #, c-format msgid "Refreshing on %s..." msgstr "" @@ -2026,16 +2030,16 @@ msgstr "" msgid "Authentication token is %s" msgstr "" -#: ../coreapi/linphonecall.c:1607 +#: ../coreapi/linphonecall.c:1616 #, c-format msgid "Call parameters could not be modified: %s." msgstr "" -#: ../coreapi/linphonecall.c:1609 +#: ../coreapi/linphonecall.c:1618 msgid "Call parameters were successfully modified." msgstr "" -#: ../coreapi/linphonecall.c:4521 +#: ../coreapi/linphonecall.c:4527 #, c-format msgid "You have missed %i call." msgid_plural "You have missed %i calls." From 9b6ebbc00cb7e036863bd7f617e0302de9fce3b4 Mon Sep 17 00:00:00 2001 From: Simon Morlat Date: Tue, 15 Mar 2016 17:18:18 +0100 Subject: [PATCH 02/53] refine test about supported tags --- coreapi/offeranswer.c | 2 +- tester/call_tester.c | 20 ++++++++++++++------ 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/coreapi/offeranswer.c b/coreapi/offeranswer.c index bedfa51ab..8fab8ab1b 100644 --- a/coreapi/offeranswer.c +++ b/coreapi/offeranswer.c @@ -438,7 +438,7 @@ static void initiate_outgoing(MSFactory* factory, const SalStreamDescription *lo result->dtls_role = SalDtlsRoleInvalid; } result->rtcp_mux = remote_answer->rtcp_mux && local_offer->rtcp_mux; - result->implicit_rtcp_fb = local_offer->implicit_rtcp_fb && remote_answer->implicit_rtcp_fb; + result->implicit_rtcp_fb = local_offer->implicit_rtcp_fb && remote_answer->implicit_rtcp_fb; } diff --git a/tester/call_tester.c b/tester/call_tester.c index 4ad8f5472..853f49bd5 100644 --- a/tester/call_tester.c +++ b/tester/call_tester.c @@ -4203,26 +4203,34 @@ static void call_with_in_dialog_codec_change(void) { static void call_with_in_dialog_codec_change_no_sdp(void) { call_with_in_dialog_codec_change_base(TRUE); } + static void call_with_custom_supported_tags(void) { LinphoneCoreManager* marie; LinphoneCoreManager* pauline; const LinphoneCallParams *remote_params; const char *recv_supported; - bool_t call_ok; + LinphoneCall *pauline_call; marie = linphone_core_manager_new( "marie_rc"); pauline = linphone_core_manager_new(transport_supported(LinphoneTransportTls) ? "pauline_rc" : "pauline_tcp_rc"); linphone_core_add_supported_tag(marie->lc,"pouet-tag"); - BC_ASSERT_TRUE(call_ok=call(pauline,marie)); - if (!call_ok) goto end; - liblinphone_tester_check_rtcp(marie,pauline); - remote_params=linphone_call_get_remote_params(linphone_core_get_current_call(pauline->lc)); + linphone_core_add_supported_tag(marie->lc,"truc-tag"); + linphone_core_add_supported_tag(marie->lc,"machin-tag"); + + linphone_core_invite_address(marie->lc, pauline->identity); + BC_ASSERT_TRUE(wait_for(marie->lc, pauline->lc, &pauline->stat.number_of_LinphoneCallIncomingReceived,1)); + BC_ASSERT_TRUE(wait_for(marie->lc, pauline->lc, &marie->stat.number_of_LinphoneCallOutgoingRinging,1)); + pauline_call = linphone_core_get_current_call(pauline->lc); + if (!pauline_call) goto end; + + remote_params=linphone_call_get_remote_params(pauline_call); recv_supported=linphone_call_params_get_custom_header(remote_params,"supported"); BC_ASSERT_PTR_NOT_NULL(recv_supported); if (recv_supported){ - BC_ASSERT_PTR_NOT_NULL(strstr(recv_supported,"pouet-tag")); + BC_ASSERT_PTR_NOT_NULL(strstr(recv_supported,"pouet-tag, truc-tag, machin-tag")); } + end_call(marie,pauline); end: linphone_core_manager_destroy(marie); From 34edd8acb5b71d82a6ca716952ecc3cf9efdecbe Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Wed, 16 Mar 2016 11:39:22 +0100 Subject: [PATCH 03/53] Added a way to get/set organization field in vCard from API --- coreapi/linphonecore_jni.cc | 25 +++++++++++++++++++ coreapi/vcard.cc | 22 ++++++++++++++++ coreapi/vcard.h | 16 +++++++++++- coreapi/vcard_stubs.c | 8 ++++++ .../org/linphone/core/LinphoneFriend.java | 10 ++++++++ .../org/linphone/core/LinphoneFriendImpl.java | 12 +++++++++ 6 files changed, 92 insertions(+), 1 deletion(-) diff --git a/coreapi/linphonecore_jni.cc b/coreapi/linphonecore_jni.cc index 434d5f75b..7c2475b32 100644 --- a/coreapi/linphonecore_jni.cc +++ b/coreapi/linphonecore_jni.cc @@ -3431,6 +3431,31 @@ extern "C" jstring Java_org_linphone_core_LinphoneFriendImpl_getName(JNIEnv* en return name ? env->NewStringUTF(name) : NULL; } +extern "C" jstring Java_org_linphone_core_LinphoneFriendImpl_getOrganization(JNIEnv* env, + jobject thiz, + jlong ptr) { + LinphoneFriend *lf = (LinphoneFriend *)ptr; + LinphoneVcard *lvc = linphone_friend_get_vcard(lf); + if (lvc) { + const char *org = linphone_vcard_get_organization(lvc); + return org ? env->NewStringUTF(org) : NULL; + } + return NULL; +} + +extern "C" void Java_org_linphone_core_LinphoneFriendImpl_setOrganization(JNIEnv* env, + jobject thiz, + jlong ptr, + jstring jorg) { + LinphoneFriend *lf = (LinphoneFriend *)ptr; + LinphoneVcard *lvc = linphone_friend_get_vcard(lf); + if (lvc) { + const char* org = env->GetStringUTFChars(jorg, NULL); + linphone_vcard_set_organization(lvc, org); + env->ReleaseStringUTFChars(jorg, org); + } +} + extern "C" void Java_org_linphone_core_LinphoneFriendImpl_setIncSubscribePolicy(JNIEnv* env ,jobject thiz ,jlong ptr diff --git a/coreapi/vcard.cc b/coreapi/vcard.cc index fe6bc8a2b..635312069 100644 --- a/coreapi/vcard.cc +++ b/coreapi/vcard.cc @@ -163,6 +163,28 @@ MSList* linphone_vcard_get_sip_addresses(const LinphoneVcard *vCard) { return result; } +void linphone_vcard_set_organization(LinphoneVcard *vCard, const char *organization) { + if (!vCard) return; + + if (vCard->belCard->getOrganizations().size() > 0) { + const shared_ptr org = vCard->belCard->getOrganizations().front(); + org->setValue(organization); + } else { + shared_ptr org = belcard::BelCardGeneric::create(); + org->setValue(organization); + vCard->belCard->addOrganization(org); + } +} + +const char* linphone_vcard_get_organization(const LinphoneVcard *vCard) { + if (vCard && vCard->belCard->getOrganizations().size() > 0) { + const shared_ptr org = vCard->belCard->getOrganizations().front(); + return org->getValue().c_str(); + } + + return NULL; +} + bool_t linphone_vcard_generate_unique_id(LinphoneVcard *vCard) { char uuid[64]; diff --git a/coreapi/vcard.h b/coreapi/vcard.h index 15a3a891d..71e5440e7 100644 --- a/coreapi/vcard.h +++ b/coreapi/vcard.h @@ -122,6 +122,20 @@ void linphone_vcard_edit_main_sip_address(LinphoneVcard *vCard, const char *sip_ */ LINPHONE_PUBLIC MSList* linphone_vcard_get_sip_addresses(const LinphoneVcard *vCard); +/** + * Fills the Organization field of the vCard + * @param[in] vCard the LinphoneVcard + * @param[in] url the Organization + */ +LINPHONE_PUBLIC void linphone_vcard_set_organization(LinphoneVcard *vCard, const char *organization); + +/** + * Gets the Organization of the vCard + * @param[in] vCard the LinphoneVcard + * @return the Organization of the vCard or NULL + */ +LINPHONE_PUBLIC const char* linphone_vcard_get_organization(const LinphoneVcard *vCard); + /** * Generates a random unique id for the vCard. * If is required to be able to synchronize the vCard with a CardDAV server @@ -163,7 +177,7 @@ LINPHONE_PUBLIC const char* linphone_vcard_get_etag(const LinphoneVcard *vCard); * @param[in] vCard the LinphoneVcard * @param[in] url the URL */ -LINPHONE_PUBLIC void linphone_vcard_set_url(LinphoneVcard *vCard, const char * url); +LINPHONE_PUBLIC void linphone_vcard_set_url(LinphoneVcard *vCard, const char *url); /** * Gets the URL of the vCard diff --git a/coreapi/vcard_stubs.c b/coreapi/vcard_stubs.c index 7c473f129..6e9a33a3b 100644 --- a/coreapi/vcard_stubs.c +++ b/coreapi/vcard_stubs.c @@ -71,6 +71,14 @@ MSList* linphone_vcard_get_sip_addresses(const LinphoneVcard *vCard) { return NULL; } +void linphone_vcard_set_organization(LinphoneVcard *vCard, const char *organization) { + +} + +const char* linphone_vcard_get_organization(const LinphoneVcard *vCard) { + return NULL; +} + bool_t linphone_vcard_generate_unique_id(LinphoneVcard *vCard) { return FALSE; } diff --git a/java/common/org/linphone/core/LinphoneFriend.java b/java/common/org/linphone/core/LinphoneFriend.java index b16ca9b63..af55605a6 100644 --- a/java/common/org/linphone/core/LinphoneFriend.java +++ b/java/common/org/linphone/core/LinphoneFriend.java @@ -155,4 +155,14 @@ public interface LinphoneFriend { * @return */ String getName(); + /** + * Set an organization for this friend + * @param organization + */ + void setOrganization(String organization); + /** + * Get organization of this friend + * @return + */ + String getOrganization(); } diff --git a/java/impl/org/linphone/core/LinphoneFriendImpl.java b/java/impl/org/linphone/core/LinphoneFriendImpl.java index b6114b3e6..f6406ea4c 100644 --- a/java/impl/org/linphone/core/LinphoneFriendImpl.java +++ b/java/impl/org/linphone/core/LinphoneFriendImpl.java @@ -130,4 +130,16 @@ class LinphoneFriendImpl implements LinphoneFriend, Serializable { public String getName() { return getName(nativePtr); } + + private native void setOrganization(long nativePtr, String organization); + @Override + public void setOrganization(String organization) { + setOrganization(nativePtr, organization); + } + + private native String getOrganization(long nativePtr); + @Override + public String getOrganization() { + return getOrganization(nativePtr); + } } From 34a8252861f6330fa1ad081b89a8a2ef618086f8 Mon Sep 17 00:00:00 2001 From: Ghislain MARY Date: Thu, 17 Mar 2016 10:10:03 +0100 Subject: [PATCH 04/53] Remove debug log from apixml2python script. --- tools/python/apixml2python/linphone.py | 1 - 1 file changed, 1 deletion(-) diff --git a/tools/python/apixml2python/linphone.py b/tools/python/apixml2python/linphone.py index 9be436235..a6456159b 100644 --- a/tools/python/apixml2python/linphone.py +++ b/tools/python/apixml2python/linphone.py @@ -216,7 +216,6 @@ class ArgumentType: self.cnativefmt_str = '%ld' elif self.basic_type == 'MSList': if self.contained_type == 'const char *': - print("nthoetnuoehautnohutneueosanm") self.type_str = 'list of string' self.convert_code = "{result_name}{result_suffix} = {cast}PyList_AsMSListOfString({arg_name});\n" self.convert_from_func = 'PyList_FromMSListOfString' From a6d669b89530305c86d227cf9ed127ddfb60f492 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Grisez?= Date: Thu, 17 Mar 2016 11:19:51 +0100 Subject: [PATCH 05/53] Use the MacOSX versions of libsqlite3, libxml2 and libz --- cmake/FindSqlite3.cmake | 11 +++++------ cmake/FindXML2.cmake | 11 +++++------ cmake/FindZlib.cmake | 9 ++++++--- 3 files changed, 16 insertions(+), 15 deletions(-) diff --git a/cmake/FindSqlite3.cmake b/cmake/FindSqlite3.cmake index 7cab06bd1..33a8feefc 100644 --- a/cmake/FindSqlite3.cmake +++ b/cmake/FindSqlite3.cmake @@ -26,13 +26,13 @@ # SQLITE3_INCLUDE_DIRS - the sqlite3 include directory # SQLITE3_LIBRARIES - The libraries needed to use sqlite3 -set(_SQLITE3_ROOT_PATHS - ${CMAKE_INSTALL_PREFIX} -) +if(APPLE AND NOT IOS) + set(_SQLITE3_ROOT_PATHS "/usr/lib") +endif() find_path(SQLITE3_INCLUDE_DIRS NAMES sqlite3.h - HINTS _SQLITE3_ROOT_PATHS + HINTS "${_SQLITE3_ROOT_PATHS}" PATH_SUFFIXES include ) @@ -42,8 +42,7 @@ endif() find_library(SQLITE3_LIBRARIES NAMES sqlite3 - HINTS ${_SQLITE3_ROOT_PATHS} - PATH_SUFFIXES bin lib + HINTS "${_SQLITE3_ROOT_PATHS}" ) include(FindPackageHandleStandardArgs) diff --git a/cmake/FindXML2.cmake b/cmake/FindXML2.cmake index 9d0eebe14..3750cd6a3 100644 --- a/cmake/FindXML2.cmake +++ b/cmake/FindXML2.cmake @@ -26,13 +26,13 @@ # XML2_INCLUDE_DIRS - the libxml2 include directory # XML2_LIBRARIES - The libraries needed to use libxml2 -set(_XML2_ROOT_PATHS - ${CMAKE_INSTALL_PREFIX} -) +if(APPLE AND NOT IOS) + set(_XML2_ROOT_PATHS "/usr/lib") +endif() find_path(XML2_INCLUDE_DIRS NAMES libxml/xmlreader.h - HINTS _XML2_ROOT_PATHS + HINTS "${_XML2_ROOT_PATHS}" PATH_SUFFIXES include/libxml2 ) @@ -42,8 +42,7 @@ endif() find_library(XML2_LIBRARIES NAMES xml2 - HINTS ${_XML2_ROOT_PATHS} - PATH_SUFFIXES bin lib + HINTS "${_XML2_ROOT_PATHS}" ) include(FindPackageHandleStandardArgs) diff --git a/cmake/FindZlib.cmake b/cmake/FindZlib.cmake index f29d2a8db..98f9e52bd 100644 --- a/cmake/FindZlib.cmake +++ b/cmake/FindZlib.cmake @@ -25,10 +25,13 @@ # ZLIB_FOUND - system has zlib # ZLIB_INCLUDE_DIRS - the zlib include directory # ZLIB_LIBRARIES - The libraries needed to use zlib +if(APPLE AND IOS) + set(_ZLIB_ROOT_PATHS "/usr/lib") +endif() find_path(ZLIB_INCLUDE_DIRS NAMES zlib.h - HINTS _ZLIB_ROOT_PATHS + HINTS "${_ZLIB_ROOT_PATHS}" PATH_SUFFIXES include ) @@ -39,12 +42,12 @@ endif() if(ENABLE_STATIC) find_library(ZLIB_LIBRARIES NAMES zstatic zlibstatic zlibstaticd z - PATH_SUFFIXES bin lib + HINTS "${_ZLIB_ROOT_PATHS}" ) else() find_library(ZLIB_LIBRARIES NAMES z zlib zlibd - PATH_SUFFIXES bin lib + HINTS "${_ZLIB_ROOT_PATHS}" ) endif() From cb7f78ec36ece4ea1f59ee0540b4e803df351153 Mon Sep 17 00:00:00 2001 From: Ghislain MARY Date: Thu, 17 Mar 2016 14:40:38 +0100 Subject: [PATCH 06/53] Update ortp and ms2 submodules. --- mediastreamer2 | 2 +- oRTP | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/mediastreamer2 b/mediastreamer2 index 018228fe8..07b710a92 160000 --- a/mediastreamer2 +++ b/mediastreamer2 @@ -1 +1 @@ -Subproject commit 018228fe85cd4c2f0e0882b11d53f0b4df172974 +Subproject commit 07b710a92f9b4b17c1d8ec03d047815c04a03ac7 diff --git a/oRTP b/oRTP index 40feb7a50..8440432f9 160000 --- a/oRTP +++ b/oRTP @@ -1 +1 @@ -Subproject commit 40feb7a5001060c6d13d563880828be59ff0381a +Subproject commit 8440432f9de08cc61c84a7c178e090f365c7a648 From 4b022c926dfaa912255ca76c6477f963a2fb466c Mon Sep 17 00:00:00 2001 From: Ghislain MARY Date: Thu, 17 Mar 2016 14:44:41 +0100 Subject: [PATCH 07/53] Add CMake files as EXTRA_DIST of autotools. --- Makefile.am | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/Makefile.am b/Makefile.am index 18d95f563..0afbae915 100644 --- a/Makefile.am +++ b/Makefile.am @@ -62,6 +62,30 @@ EXTRA_DIST = BUGS \ $(LINPHONEDEPS_FILELIST) \ $(ISS_SCRIPT).in +EXTRA_DIST += CMakelists.txt \ +cmake/FindGtkMacIntegration.cmake \ +cmake/FindIconv.cmake \ +cmake/FindIntl.cmake \ +cmake/FindNotify.cmake \ +cmake/FindSqlite3.cmake \ +cmake/FindXML2.cmake \ +cmake/FindZlib.cmake \ +cmake/LinphoneConfig.cmake.in \ +config.h.cmake \ +console/CMakeLists.txt \ +coreapi/CMakeLists.txt \ +coreapi/gitversion.cmake \ +coreapi/help/CMakeLists.txt \ +gtk/CMakeLists.txt \ +java/CMakeLists.txt \ +pixmaps/CMakeLists.txt \ +po/CMakeLists.txt \ +share/CMakeLists.txt \ +share/rings/CMakeLists.txt \ +share/rootca.cmake \ +tester/CMakeLists.txt \ +tools/CMakeLists.txt + DISTCLEANFILES= $(ISS_SCRIPT) $(PACKAGE_WIN32_FILELIST) CLEANFILES=Portfile Portfile-devel From 60366de9284f1240d7cddba62a245293a76bf71b Mon Sep 17 00:00:00 2001 From: Ghislain MARY Date: Fri, 18 Mar 2016 10:03:06 +0100 Subject: [PATCH 08/53] Fix typo. --- Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile.am b/Makefile.am index 0afbae915..2c236fae3 100644 --- a/Makefile.am +++ b/Makefile.am @@ -62,7 +62,7 @@ EXTRA_DIST = BUGS \ $(LINPHONEDEPS_FILELIST) \ $(ISS_SCRIPT).in -EXTRA_DIST += CMakelists.txt \ +EXTRA_DIST += CMakeLists.txt \ cmake/FindGtkMacIntegration.cmake \ cmake/FindIconv.cmake \ cmake/FindIntl.cmake \ From 9d0c5464c980421dc3cbe6a5ca3b1c8d92471881 Mon Sep 17 00:00:00 2001 From: Ghislain MARY Date: Fri, 18 Mar 2016 14:20:12 +0100 Subject: [PATCH 09/53] Fix search of sqlite3, libxml2 and zlib on Mac OS X. --- cmake/FindSqlite3.cmake | 9 ++++++--- cmake/FindXML2.cmake | 9 ++++++--- cmake/FindZlib.cmake | 14 +++++++++----- 3 files changed, 21 insertions(+), 11 deletions(-) diff --git a/cmake/FindSqlite3.cmake b/cmake/FindSqlite3.cmake index 33a8feefc..ea8d0292d 100644 --- a/cmake/FindSqlite3.cmake +++ b/cmake/FindSqlite3.cmake @@ -27,12 +27,15 @@ # SQLITE3_LIBRARIES - The libraries needed to use sqlite3 if(APPLE AND NOT IOS) - set(_SQLITE3_ROOT_PATHS "/usr/lib") + set(SQLITE3_HINTS "/usr") +endif() +if(SQLITE3_HINTS) + set(SQLITE3_LIBRARIES_HINTS "${SQLITE3_HINTS}/lib") endif() find_path(SQLITE3_INCLUDE_DIRS NAMES sqlite3.h - HINTS "${_SQLITE3_ROOT_PATHS}" + HINTS "${SQLITE3_HINTS}" PATH_SUFFIXES include ) @@ -42,7 +45,7 @@ endif() find_library(SQLITE3_LIBRARIES NAMES sqlite3 - HINTS "${_SQLITE3_ROOT_PATHS}" + HINTS "${SQLITE3_LIBRARIES_HINTS}" ) include(FindPackageHandleStandardArgs) diff --git a/cmake/FindXML2.cmake b/cmake/FindXML2.cmake index 3750cd6a3..cf0333f4b 100644 --- a/cmake/FindXML2.cmake +++ b/cmake/FindXML2.cmake @@ -27,12 +27,15 @@ # XML2_LIBRARIES - The libraries needed to use libxml2 if(APPLE AND NOT IOS) - set(_XML2_ROOT_PATHS "/usr/lib") + set(XML2_HINTS "/usr") +endif() +if(XML2_HINTS) + set(XML2_LIBRARIES_HINTS "${XML2_HINTS}/lib") endif() find_path(XML2_INCLUDE_DIRS NAMES libxml/xmlreader.h - HINTS "${_XML2_ROOT_PATHS}" + HINTS "${XML2_HINTS}" PATH_SUFFIXES include/libxml2 ) @@ -42,7 +45,7 @@ endif() find_library(XML2_LIBRARIES NAMES xml2 - HINTS "${_XML2_ROOT_PATHS}" + HINTS "${XML2_LIBRARIES_HINTS}" ) include(FindPackageHandleStandardArgs) diff --git a/cmake/FindZlib.cmake b/cmake/FindZlib.cmake index 98f9e52bd..ca718d860 100644 --- a/cmake/FindZlib.cmake +++ b/cmake/FindZlib.cmake @@ -25,13 +25,17 @@ # ZLIB_FOUND - system has zlib # ZLIB_INCLUDE_DIRS - the zlib include directory # ZLIB_LIBRARIES - The libraries needed to use zlib -if(APPLE AND IOS) - set(_ZLIB_ROOT_PATHS "/usr/lib") + +if(APPLE AND NOT IOS) + set(ZLIB_HINTS "/usr") +endif() +if(ZLIB_HINTS) + set(ZLIB_LIBRARIES_HINTS "${ZLIB_HINTS}/lib") endif() find_path(ZLIB_INCLUDE_DIRS NAMES zlib.h - HINTS "${_ZLIB_ROOT_PATHS}" + HINTS "${ZLIB_HINTS}" PATH_SUFFIXES include ) @@ -42,12 +46,12 @@ endif() if(ENABLE_STATIC) find_library(ZLIB_LIBRARIES NAMES zstatic zlibstatic zlibstaticd z - HINTS "${_ZLIB_ROOT_PATHS}" + HINTS "${ZLIB_LIBRARIES_HINTS}" ) else() find_library(ZLIB_LIBRARIES NAMES z zlib zlibd - HINTS "${_ZLIB_ROOT_PATHS}" + HINTS "${ZLIB_LIBRARIES_HINTS}" ) endif() From 4048f97dea9214cbc0013083b493e5fb333d8bce Mon Sep 17 00:00:00 2001 From: Simon Morlat Date: Fri, 18 Mar 2016 22:30:51 +0100 Subject: [PATCH 10/53] fix p2p presence case related to io_errors. --- coreapi/bellesip_sal/sal_op_presence.c | 30 +++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/coreapi/bellesip_sal/sal_op_presence.c b/coreapi/bellesip_sal/sal_op_presence.c index 6e9f0e6d2..dd157b3f6 100644 --- a/coreapi/bellesip_sal/sal_op_presence.c +++ b/coreapi/bellesip_sal/sal_op_presence.c @@ -47,7 +47,29 @@ void sal_add_presence_info(SalOp *op, belle_sip_message_t *notify, SalPresenceMo } static void presence_process_io_error(void *user_ctx, const belle_sip_io_error_event_t *event){ - /*ms_error("presence_process_io_error not implemented yet");*/ + SalOp* op = (SalOp*)user_ctx; + belle_sip_request_t* request; + belle_sip_client_transaction_t* client_transaction = NULL; + + if (BELLE_SIP_OBJECT_IS_INSTANCE_OF(belle_sip_io_error_event_get_source(event), + belle_sip_client_transaction_t)){ + client_transaction = (belle_sip_client_transaction_t*)belle_sip_io_error_event_get_source(event); + } + + if (!client_transaction) return; + + request = belle_sip_transaction_get_request(BELLE_SIP_TRANSACTION(client_transaction)); + + if (strcmp("SUBSCRIBE",belle_sip_request_get_method(request))==0){ + if (op->refresher){ + ms_warning("presence_process_io_error() refresher is present, should not happen"); + return; + } + ms_message("subscription to [%s] io error",sal_op_get_to(op)); + if (!op->op_released){ + op->base.root->callbacks.notify_presence(op,SalSubscribeTerminated, NULL,NULL); /*NULL = offline*/ + } + } } static void presence_process_dialog_terminated(void *ctx, const belle_sip_dialog_terminated_event_t *event) { @@ -81,6 +103,12 @@ static void presence_refresher_listener(belle_sip_refresher_t* refresher, void* /*send a new SUBSCRIBE, that will attempt to establish a new dialog*/ sal_subscribe_presence(op,NULL,NULL,-1); } + if (status_code == 0 || status_code == 503){ + /*timeout or io error: the remote doesn't seem reachable.*/ + if (!op->op_released){ + op->base.root->callbacks.notify_presence(op,SalSubscribeActive, NULL,NULL); /*NULL = offline*/ + } + } } From 991f4338e4a3dc60ad560d409a15859fe2420220 Mon Sep 17 00:00:00 2001 From: Jehan Monnier Date: Mon, 21 Mar 2016 11:30:52 +0100 Subject: [PATCH 11/53] Revert "update test certificates with 2048bits rosa key" back to 1024 private key for bw compatibility This reverts commit a110765526b7305d8131eab2110c252b526b2fe1. --- tester/certificates/altname/agent.pem | 115 +++++++++++++++---------- tester/certificates/cn/agent.pem | 116 ++++++++++++++++---------- tester/certificates/cn/openssl-cn.cnf | 2 +- 3 files changed, 142 insertions(+), 91 deletions(-) diff --git a/tester/certificates/altname/agent.pem b/tester/certificates/altname/agent.pem index 405ece5cb..edb7c9fa1 100644 --- a/tester/certificates/altname/agent.pem +++ b/tester/certificates/altname/agent.pem @@ -1,52 +1,75 @@ +-----BEGIN RSA PRIVATE KEY----- +MIICXAIBAAKBgQDHZG78iwkkxJeq3ZPuQwY9DfdcNCvHXayW+5p5VUULV50ohJKt +JJzhp5ysq4VH7q/dmOnMnbYTACnqVSlph88zRdQJd/g0h6T4DyWa5Jxe+R1hwLWV +fgeSXstCK8m9SwxKqnqA5mPZxfARXg3r4XWkUK2A1lWIXCkZU3MMD4JJ4QIDAQAB +AoGAGgyi+1dmwGj2r5n3I5+aBwv2DxO5zHgOfkMssUFUneC6ZXq8duZboJd3Po/B +/93NGBRMJzFLgjv5PeYWXPUjOoJT7eg0aDJKX/uMKSvzhyIL/bUJPfyo2GCmkAr5 +CF5EBFFjlsui2kSFusxbQmyzZkkIl3OYdlTBdQFsmEROk8kCQQD3aW1ZPbDkSxsi +09VZBWVW95LojcxYQeqjPTs8EAB2jKmR4aw8KGKCz+yBGwiSdukDZ/p3IftuifHk +J+3a6kqnAkEAzlBKjM8xVWprTp/3p1DMYNA+KNsXuf08xGB/zegpU561FjUzK7U4 +QKyDSIaRgSv4WAJbIauwaZdydM6Q0DnANwJBAKEQGQeHiaiU3E2H6dPSF27OLO0H +ooeyIbWzHuSy5hpG5/z4FM/02myePzCtEJ+ImZiGEB+OF8iWNMp60/U3oPECQAoR +RPIGEkQ2wzG9AJq7iJ2Yy8+2kTvULajvhI0JrSqVbgS9Z9fUKgCN6oIZfvQsrxus +UcIc3KjqaP1mLw7aIpUCQH5S0B+GOwKa8+RbuRcgBvksqkRwRZn6jawoNJJSBCDn +gQJ5B9PvJXppTsbnulSD2srhUqCR1pzGfnl8bYV8b8Q= +-----END RSA PRIVATE KEY----- +Certificate: + Data: + Version: 3 (0x2) + Serial Number: 9 (0x9) + Signature Algorithm: sha1WithRSAEncryption + Issuer: C=FR, ST=Some-State, L=Grenoble, O=Belledonne Communications, OU=LAB, CN=Jehan Monnier/emailAddress=jehan.monnier@belledonne-communications.com + Validity + Not Before: Sep 25 16:12:35 2014 GMT + Not After : Sep 22 16:12:35 2024 GMT + Subject: C=FR, ST=France, L=Grenoble, O=Belledonne Communications, OU=LAB, CN=Jehan Monnier/emailAddress=jehan.monnier@belledonne-communications.com + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + Public-Key: (1024 bit) + Modulus: + 00:c7:64:6e:fc:8b:09:24:c4:97:aa:dd:93:ee:43: + 06:3d:0d:f7:5c:34:2b:c7:5d:ac:96:fb:9a:79:55: + 45:0b:57:9d:28:84:92:ad:24:9c:e1:a7:9c:ac:ab: + 85:47:ee:af:dd:98:e9:cc:9d:b6:13:00:29:ea:55: + 29:69:87:cf:33:45:d4:09:77:f8:34:87:a4:f8:0f: + 25:9a:e4:9c:5e:f9:1d:61:c0:b5:95:7e:07:92:5e: + cb:42:2b:c9:bd:4b:0c:4a:aa:7a:80:e6:63:d9:c5: + f0:11:5e:0d:eb:e1:75:a4:50:ad:80:d6:55:88:5c: + 29:19:53:73:0c:0f:82:49:e1 + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Basic Constraints: + CA:FALSE + X509v3 Key Usage: + Digital Signature, Non Repudiation, Key Encipherment + X509v3 Subject Alternative Name: + DNS:altname.linphone.org, DNS:*.wildcard2.linphone.org + Signature Algorithm: sha1WithRSAEncryption + 56:f5:23:64:4c:8d:85:6e:05:d6:42:a3:41:b2:6a:ab:a1:cd: + be:ae:4a:38:c5:23:4c:62:2c:06:4d:49:b7:fc:ad:86:1d:9b: + c0:7e:33:80:fa:7d:31:8b:ca:9c:28:44:b2:1c:f1:ed:73:5b: + d3:80:72:b0:6c:0b:20:2b:e5:2b:02:c6:be:14:ad:55:34:2f: + 6f:8e:bb:7b:61:ce:9c:af:85:a7:b0:cd:d1:4e:1e:17:e9:7e: + 61:ed:50:60:9a:de:d0:7a:6d:a5:ee:04:9a:5c:41:94:21:e5: + 05:61:a8:17:ab:eb:b4:cc:7f:90:9b:3a:0e:ca:31:fb:65:40: + 11:2d -----BEGIN CERTIFICATE----- -MIID9DCCA12gAwIBAgIBCzANBgkqhkiG9w0BAQsFADCBuzELMAkGA1UEBhMCRlIx +MIIDPzCCAqigAwIBAgIBCTANBgkqhkiG9w0BAQUFADCBuzELMAkGA1UEBhMCRlIx EzARBgNVBAgMClNvbWUtU3RhdGUxETAPBgNVBAcMCEdyZW5vYmxlMSIwIAYDVQQK DBlCZWxsZWRvbm5lIENvbW11bmljYXRpb25zMQwwCgYDVQQLDANMQUIxFjAUBgNV BAMMDUplaGFuIE1vbm5pZXIxOjA4BgkqhkiG9w0BCQEWK2plaGFuLm1vbm5pZXJA -YmVsbGVkb25uZS1jb21tdW5pY2F0aW9ucy5jb20wHhcNMTYwMjA1MTMzOTEyWhcN -MjUwNDIzMTMzOTEyWjCBwjELMAkGA1UEBhMCRlIxDzANBgNVBAgMBkZyYW5jZTER +YmVsbGVkb25uZS1jb21tdW5pY2F0aW9ucy5jb20wHhcNMTQwOTI1MTYxMjM1WhcN +MjQwOTIyMTYxMjM1WjCBtzELMAkGA1UEBhMCRlIxDzANBgNVBAgMBkZyYW5jZTER MA8GA1UEBwwIR3Jlbm9ibGUxIjAgBgNVBAoMGUJlbGxlZG9ubmUgQ29tbXVuaWNh -dGlvbnMxDDAKBgNVBAsMA0xBQjEhMB8GA1UEAwwYU2VlIGFsdG5hbWUgZm9yIERO -UyBuYW1lMTowOAYJKoZIhvcNAQkBFitqZWhhbi5tb25uaWVyQGJlbGxlZG9ubmUt -Y29tbXVuaWNhdGlvbnMuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC -AQEA4HOA7wv6S+g8nfT79NEz4qJb/Na/Bm1mCvJBCrzwKZvmVk8iFDZOvtLnfqFE -NO0h4nAr9JAGsI10uEjvOJL3JZEKsNEmQfRO19Ewi8Qxvc/O3bPtSH3QcWa7DkE9 -2Fx89fBc2Qr7hrVCYe2mZF7YMrBW08RjWUvLYc0JVN8TpU99a9jT2GCj7aui30eB -ayucQ0OfUgPtVatcmkOWEbqhcuh0nwhZv1hw0d3jY9kNTWKaETQ8PKQqgqp8xQs+ -atK76hfe5c3RkTpAfaWTbR/l08tWJbM+ZSUmQPHT5JJ6dMIb/kCoW09LlFDUBykS -hdoPVuTRNWO9u7K0gIGSUA9zNwIDAQABo3sweTAJBgNVHRMEAjAAMCwGCWCGSAGG -+EIBDQQfFh1PcGVuU1NMIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQU -Ye2gfJ6hZX6JwA8E5ObsVVotPWUwHwYDVR0jBBgwFoAUBl9dxxavYvgtbnEDiKDW -HSsEf7owDQYJKoZIhvcNAQELBQADgYEAEHzjsD025OBExgRPnMNshQYq/mP8xK+T -SKs/Fef0NwT1lMYAHkMm4+baEjL7V5J+qe37XH45ExZIhZAAUH0L85jr9RUbcpPk -OvXWu5hRkkmX2Ecmj5Q4nH0wZEIZWmEFkt7BXdwgjp+ZUpj6d8qA+b31w88h3zD+ -YLw3KqRpbuQ= +dGlvbnMxDDAKBgNVBAsMA0xBQjEWMBQGA1UEAwwNSmVoYW4gTW9ubmllcjE6MDgG +CSqGSIb3DQEJARYramVoYW4ubW9ubmllckBiZWxsZWRvbm5lLWNvbW11bmljYXRp +b25zLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAx2Ru/IsJJMSXqt2T +7kMGPQ33XDQrx12slvuaeVVFC1edKISSrSSc4aecrKuFR+6v3ZjpzJ22EwAp6lUp +aYfPM0XUCXf4NIek+A8lmuScXvkdYcC1lX4Hkl7LQivJvUsMSqp6gOZj2cXwEV4N +6+F1pFCtgNZViFwpGVNzDA+CSeECAwEAAaNVMFMwCQYDVR0TBAIwADALBgNVHQ8E +BAMCBeAwOQYDVR0RBDIwMIIUYWx0bmFtZS5saW5waG9uZS5vcmeCGCoud2lsZGNh +cmQyLmxpbnBob25lLm9yZzANBgkqhkiG9w0BAQUFAAOBgQBW9SNkTI2FbgXWQqNB +smqroc2+rko4xSNMYiwGTUm3/K2GHZvAfjOA+n0xi8qcKESyHPHtc1vTgHKwbAsg +K+UrAsa+FK1VNC9vjrt7Yc6cr4WnsM3RTh4X6X5h7VBgmt7Qem2l7gSaXEGUIeUF +YagXq+u0zH+QmzoOyjH7ZUARLQ== -----END CERTIFICATE----- ------BEGIN RSA PRIVATE KEY----- -MIIEpAIBAAKCAQEA4HOA7wv6S+g8nfT79NEz4qJb/Na/Bm1mCvJBCrzwKZvmVk8i -FDZOvtLnfqFENO0h4nAr9JAGsI10uEjvOJL3JZEKsNEmQfRO19Ewi8Qxvc/O3bPt -SH3QcWa7DkE92Fx89fBc2Qr7hrVCYe2mZF7YMrBW08RjWUvLYc0JVN8TpU99a9jT -2GCj7aui30eBayucQ0OfUgPtVatcmkOWEbqhcuh0nwhZv1hw0d3jY9kNTWKaETQ8 -PKQqgqp8xQs+atK76hfe5c3RkTpAfaWTbR/l08tWJbM+ZSUmQPHT5JJ6dMIb/kCo -W09LlFDUBykShdoPVuTRNWO9u7K0gIGSUA9zNwIDAQABAoIBABgrN9oFzyj3U/eq -VqsxD8Y6t28NbLpzc0aAeZJ/b9j7KZ1nngLRKj+QFE9lbCPK2Rg5/fGyxJWkVco2 -SFQuNyC7coxBqT324bqJkxGpybVnuB3VbxqcOaLMbh4F1nQC2Y3eGRFiBl2mDQTg -g0dRkzQ6Gs9o2U3XRIo+et/BuarWJcJaIX1JfLO0TXOg5u70/nOMv56+YnkUxZeD -Ff/McINqk4SjgSCFZTQvbWTspfgIYlwqdCWr/zg/D6+Yh20eybH6gKv/IatuGAZw -lKGlbEQPwOgWKzJb7f13+f7szZQbq4f8Vz/CQHTAAXEdXOpMRCkcfkMyGuA7pgut -qxgBuoECgYEA+EtPTmcCKLAOovcQ61rMfTL3LSs1FSANu+40Ie9XkvN5dD6mGETa -eWjpljYkuUPvfufuVb2soc2atNWtaivGEkoEiDOuLnaVZpp6dTKM17zScvuTSo1D -ttn8Td8wKtXHEDsNpVaOkK0oY6jIAjAReo50i3RjJQ5dAWCE0PTgiPcCgYEA52rD -D5EciC8s3V/ylaI9eog4Tnlx0y+66gxZQcBH1poFS6Q4HIxuA9TjjqTeoUe5CDSG -fyQXGR0EwWrzgNL5smmeN0yFgykptrdvD34VCQegcpHMiyryueYST1IBnfsBAiAk -o1Gahgx4IWQwvjfr+E+LB9eNfWvo+GZ7ZzjWF8ECgYEA9HbBuMH3ADSH1LBJelDF -8acScuiNtSUAIL6hmZ/bq5YJSQi95Ds2mD9RbVIVyks3LM4SfVzo8c5LuiyAN36t -4Cf8WlX380tSQdlrJKUGwwroccl89fQsbYYmwk0zUZl2C2b5Qob8iznSAH2Xn3/Q -VciYuw126G9B5y8u1cWkpXUCgYAsM8JKaOdQQ+KH7lnBpxmjG/3VT3Eka4uCRRWP -b5DJNuYoCpgFK/WfmbxVdLxphe+b15yREG2xCE/uOeWFB8dWAsKLwXwHD4e+NM9r -4CNYdDJ7b8noEy4FwCJjMEDK0jThGQ6me2HOlPclOaPt0XSrG1ZtCwklmcUIHVsY -3kxWgQKBgQCAJNaC8M9MDtkzZitUJPKITwWOj8OY97t2651I/hArsVP6Eqt9P33F -ZUigatOQuTi0FDpA3jEFk4Lw8OAHb2j7YQOZan8UKWrUUwZNsiEir7x2yRnNKXGf -CJe50Wc2y1BCDDz7bEfRemHtNJwWzHbMF7QnINwxOb8GsqJgDaKwLw== ------END RSA PRIVATE KEY----- - diff --git a/tester/certificates/cn/agent.pem b/tester/certificates/cn/agent.pem index ed5b0507a..978221639 100644 --- a/tester/certificates/cn/agent.pem +++ b/tester/certificates/cn/agent.pem @@ -1,52 +1,80 @@ +-----BEGIN RSA PRIVATE KEY----- +MIICXAIBAAKBgQDHZG78iwkkxJeq3ZPuQwY9DfdcNCvHXayW+5p5VUULV50ohJKt +JJzhp5ysq4VH7q/dmOnMnbYTACnqVSlph88zRdQJd/g0h6T4DyWa5Jxe+R1hwLWV +fgeSXstCK8m9SwxKqnqA5mPZxfARXg3r4XWkUK2A1lWIXCkZU3MMD4JJ4QIDAQAB +AoGAGgyi+1dmwGj2r5n3I5+aBwv2DxO5zHgOfkMssUFUneC6ZXq8duZboJd3Po/B +/93NGBRMJzFLgjv5PeYWXPUjOoJT7eg0aDJKX/uMKSvzhyIL/bUJPfyo2GCmkAr5 +CF5EBFFjlsui2kSFusxbQmyzZkkIl3OYdlTBdQFsmEROk8kCQQD3aW1ZPbDkSxsi +09VZBWVW95LojcxYQeqjPTs8EAB2jKmR4aw8KGKCz+yBGwiSdukDZ/p3IftuifHk +J+3a6kqnAkEAzlBKjM8xVWprTp/3p1DMYNA+KNsXuf08xGB/zegpU561FjUzK7U4 +QKyDSIaRgSv4WAJbIauwaZdydM6Q0DnANwJBAKEQGQeHiaiU3E2H6dPSF27OLO0H +ooeyIbWzHuSy5hpG5/z4FM/02myePzCtEJ+ImZiGEB+OF8iWNMp60/U3oPECQAoR +RPIGEkQ2wzG9AJq7iJ2Yy8+2kTvULajvhI0JrSqVbgS9Z9fUKgCN6oIZfvQsrxus +UcIc3KjqaP1mLw7aIpUCQH5S0B+GOwKa8+RbuRcgBvksqkRwRZn6jawoNJJSBCDn +gQJ5B9PvJXppTsbnulSD2srhUqCR1pzGfnl8bYV8b8Q= +-----END RSA PRIVATE KEY----- + +Certificate: + Data: + Version: 3 (0x2) + Serial Number: 6 (0x6) + Signature Algorithm: sha1WithRSAEncryption + Issuer: C=FR, ST=Some-State, L=Grenoble, O=Belledonne Communications, OU=LAB, CN=Jehan Monnier/emailAddress=jehan.monnier@belledonne-communications.com + Validity + Not Before: Sep 23 16:13:11 2013 GMT + Not After : Sep 21 16:13:11 2023 GMT + Subject: C=FR, ST=France, L=Grenoble, O=Belledonne Communications, OU=LAB, CN=sip2.linphone.org, CN=*.wildcard1.linphone.org/emailAddress=jehan.monnier@belledonne-communications.com + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + Public-Key: (1024 bit) + Modulus: + 00:c7:64:6e:fc:8b:09:24:c4:97:aa:dd:93:ee:43: + 06:3d:0d:f7:5c:34:2b:c7:5d:ac:96:fb:9a:79:55: + 45:0b:57:9d:28:84:92:ad:24:9c:e1:a7:9c:ac:ab: + 85:47:ee:af:dd:98:e9:cc:9d:b6:13:00:29:ea:55: + 29:69:87:cf:33:45:d4:09:77:f8:34:87:a4:f8:0f: + 25:9a:e4:9c:5e:f9:1d:61:c0:b5:95:7e:07:92:5e: + cb:42:2b:c9:bd:4b:0c:4a:aa:7a:80:e6:63:d9:c5: + f0:11:5e:0d:eb:e1:75:a4:50:ad:80:d6:55:88:5c: + 29:19:53:73:0c:0f:82:49:e1 + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Basic Constraints: + CA:FALSE + Netscape Comment: + OpenSSL Generated Certificate + X509v3 Subject Key Identifier: + 32:19:16:F0:DD:2C:34:8F:FE:12:5D:4F:E0:0C:EE:C5:06:C8:B1:8C + X509v3 Authority Key Identifier: + keyid:06:5F:5D:C7:16:AF:62:F8:2D:6E:71:03:88:A0:D6:1D:2B:04:7F:BA + + Signature Algorithm: sha1WithRSAEncryption + af:2e:d2:9a:b9:e0:ca:c8:e3:25:eb:30:0b:5e:02:e9:43:2d: + 84:09:11:d1:be:8e:a4:86:bf:c7:19:aa:18:c3:55:b2:07:c5: + 68:ff:c6:39:f7:2b:da:27:85:34:8b:7b:6c:92:8f:ba:aa:9d: + 44:f3:0c:47:88:7a:0c:b1:e0:c7:6f:eb:af:d2:ab:d0:6d:25: + d5:ff:40:37:69:2b:bd:f2:6e:4a:42:32:29:98:27:c7:ec:34: + 25:eb:22:6f:83:50:82:1c:08:88:77:ec:31:82:c2:0c:77:b1: + 2b:c9:7d:6c:ff:95:d0:10:cf:8e:9f:2e:eb:a1:a6:40:fc:c0: + ec:83 -----BEGIN CERTIFICATE----- -MIIEEDCCA3mgAwIBAgIBCjANBgkqhkiG9w0BAQsFADCBuzELMAkGA1UEBhMCRlIx +MIIDjDCCAvWgAwIBAgIBBjANBgkqhkiG9w0BAQUFADCBuzELMAkGA1UEBhMCRlIx EzARBgNVBAgMClNvbWUtU3RhdGUxETAPBgNVBAcMCEdyZW5vYmxlMSIwIAYDVQQK DBlCZWxsZWRvbm5lIENvbW11bmljYXRpb25zMQwwCgYDVQQLDANMQUIxFjAUBgNV BAMMDUplaGFuIE1vbm5pZXIxOjA4BgkqhkiG9w0BCQEWK2plaGFuLm1vbm5pZXJA -YmVsbGVkb25uZS1jb21tdW5pY2F0aW9ucy5jb20wHhcNMTYwMjA1MTMxNTUzWhcN -MjUwNDIzMTMxNTUzWjCB3jELMAkGA1UEBhMCRlIxDzANBgNVBAgMBkZyYW5jZTER +YmVsbGVkb25uZS1jb21tdW5pY2F0aW9ucy5jb20wHhcNMTMwOTIzMTYxMzExWhcN +MjMwOTIxMTYxMzExWjCB3jELMAkGA1UEBhMCRlIxDzANBgNVBAgMBkZyYW5jZTER MA8GA1UEBwwIR3Jlbm9ibGUxIjAgBgNVBAoMGUJlbGxlZG9ubmUgQ29tbXVuaWNh dGlvbnMxDDAKBgNVBAsMA0xBQjEaMBgGA1UEAwwRc2lwMi5saW5waG9uZS5vcmcx ITAfBgNVBAMMGCoud2lsZGNhcmQxLmxpbnBob25lLm9yZzE6MDgGCSqGSIb3DQEJ -ARYramVoYW4ubW9ubmllckBiZWxsZWRvbm5lLWNvbW11bmljYXRpb25zLmNvbTCC -ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOBzgO8L+kvoPJ30+/TRM+Ki -W/zWvwZtZgryQQq88Cmb5lZPIhQ2Tr7S536hRDTtIeJwK/SQBrCNdLhI7ziS9yWR -CrDRJkH0TtfRMIvEMb3Pzt2z7Uh90HFmuw5BPdhcfPXwXNkK+4a1QmHtpmRe2DKw -VtPEY1lLy2HNCVTfE6VPfWvY09hgo+2rot9HgWsrnENDn1ID7VWrXJpDlhG6oXLo -dJ8IWb9YcNHd42PZDU1imhE0PDykKoKqfMULPmrSu+oX3uXN0ZE6QH2lk20f5dPL -ViWzPmUlJkDx0+SSenTCG/5AqFtPS5RQ1AcpEoXaD1bk0TVjvbuytICBklAPczcC -AwEAAaN7MHkwCQYDVR0TBAIwADAsBglghkgBhvhCAQ0EHxYdT3BlblNTTCBHZW5l -cmF0ZWQgQ2VydGlmaWNhdGUwHQYDVR0OBBYEFGHtoHyeoWV+icAPBOTm7FVaLT1l -MB8GA1UdIwQYMBaAFAZfXccWr2L4LW5xA4ig1h0rBH+6MA0GCSqGSIb3DQEBCwUA -A4GBAAEZ7o7Lw9gdKuSTcYV9t+OjsqR55N1Pr2p/i7iD+uW3Mw+Sc/AZtbb6S65g -hTX9LFY75LlEWffCEP2/jQRByL333lBCz7Bj7Jk92u7VoSwZFGSG8vi+E/32S43n -RgChTywjb7O1CpkHYMh3EcO3hVUObHB7axocrMJiZeFcOf8Q +ARYramVoYW4ubW9ubmllckBiZWxsZWRvbm5lLWNvbW11bmljYXRpb25zLmNvbTCB +nzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAx2Ru/IsJJMSXqt2T7kMGPQ33XDQr +x12slvuaeVVFC1edKISSrSSc4aecrKuFR+6v3ZjpzJ22EwAp6lUpaYfPM0XUCXf4 +NIek+A8lmuScXvkdYcC1lX4Hkl7LQivJvUsMSqp6gOZj2cXwEV4N6+F1pFCtgNZV +iFwpGVNzDA+CSeECAwEAAaN7MHkwCQYDVR0TBAIwADAsBglghkgBhvhCAQ0EHxYd +T3BlblNTTCBHZW5lcmF0ZWQgQ2VydGlmaWNhdGUwHQYDVR0OBBYEFDIZFvDdLDSP +/hJdT+AM7sUGyLGMMB8GA1UdIwQYMBaAFAZfXccWr2L4LW5xA4ig1h0rBH+6MA0G +CSqGSIb3DQEBBQUAA4GBAK8u0pq54MrI4yXrMAteAulDLYQJEdG+jqSGv8cZqhjD +VbIHxWj/xjn3K9onhTSLe2ySj7qqnUTzDEeIegyx4Mdv66/Sq9BtJdX/QDdpK73y +bkpCMimYJ8fsNCXrIm+DUIIcCIh37DGCwgx3sSvJfWz/ldAQz46fLuuhpkD8wOyD -----END CERTIFICATE----- ------BEGIN RSA PRIVATE KEY----- -MIIEpAIBAAKCAQEA4HOA7wv6S+g8nfT79NEz4qJb/Na/Bm1mCvJBCrzwKZvmVk8i -FDZOvtLnfqFENO0h4nAr9JAGsI10uEjvOJL3JZEKsNEmQfRO19Ewi8Qxvc/O3bPt -SH3QcWa7DkE92Fx89fBc2Qr7hrVCYe2mZF7YMrBW08RjWUvLYc0JVN8TpU99a9jT -2GCj7aui30eBayucQ0OfUgPtVatcmkOWEbqhcuh0nwhZv1hw0d3jY9kNTWKaETQ8 -PKQqgqp8xQs+atK76hfe5c3RkTpAfaWTbR/l08tWJbM+ZSUmQPHT5JJ6dMIb/kCo -W09LlFDUBykShdoPVuTRNWO9u7K0gIGSUA9zNwIDAQABAoIBABgrN9oFzyj3U/eq -VqsxD8Y6t28NbLpzc0aAeZJ/b9j7KZ1nngLRKj+QFE9lbCPK2Rg5/fGyxJWkVco2 -SFQuNyC7coxBqT324bqJkxGpybVnuB3VbxqcOaLMbh4F1nQC2Y3eGRFiBl2mDQTg -g0dRkzQ6Gs9o2U3XRIo+et/BuarWJcJaIX1JfLO0TXOg5u70/nOMv56+YnkUxZeD -Ff/McINqk4SjgSCFZTQvbWTspfgIYlwqdCWr/zg/D6+Yh20eybH6gKv/IatuGAZw -lKGlbEQPwOgWKzJb7f13+f7szZQbq4f8Vz/CQHTAAXEdXOpMRCkcfkMyGuA7pgut -qxgBuoECgYEA+EtPTmcCKLAOovcQ61rMfTL3LSs1FSANu+40Ie9XkvN5dD6mGETa -eWjpljYkuUPvfufuVb2soc2atNWtaivGEkoEiDOuLnaVZpp6dTKM17zScvuTSo1D -ttn8Td8wKtXHEDsNpVaOkK0oY6jIAjAReo50i3RjJQ5dAWCE0PTgiPcCgYEA52rD -D5EciC8s3V/ylaI9eog4Tnlx0y+66gxZQcBH1poFS6Q4HIxuA9TjjqTeoUe5CDSG -fyQXGR0EwWrzgNL5smmeN0yFgykptrdvD34VCQegcpHMiyryueYST1IBnfsBAiAk -o1Gahgx4IWQwvjfr+E+LB9eNfWvo+GZ7ZzjWF8ECgYEA9HbBuMH3ADSH1LBJelDF -8acScuiNtSUAIL6hmZ/bq5YJSQi95Ds2mD9RbVIVyks3LM4SfVzo8c5LuiyAN36t -4Cf8WlX380tSQdlrJKUGwwroccl89fQsbYYmwk0zUZl2C2b5Qob8iznSAH2Xn3/Q -VciYuw126G9B5y8u1cWkpXUCgYAsM8JKaOdQQ+KH7lnBpxmjG/3VT3Eka4uCRRWP -b5DJNuYoCpgFK/WfmbxVdLxphe+b15yREG2xCE/uOeWFB8dWAsKLwXwHD4e+NM9r -4CNYdDJ7b8noEy4FwCJjMEDK0jThGQ6me2HOlPclOaPt0XSrG1ZtCwklmcUIHVsY -3kxWgQKBgQCAJNaC8M9MDtkzZitUJPKITwWOj8OY97t2651I/hArsVP6Eqt9P33F -ZUigatOQuTi0FDpA3jEFk4Lw8OAHb2j7YQOZan8UKWrUUwZNsiEir7x2yRnNKXGf -CJe50Wc2y1BCDDz7bEfRemHtNJwWzHbMF7QnINwxOb8GsqJgDaKwLw== ------END RSA PRIVATE KEY----- - diff --git a/tester/certificates/cn/openssl-cn.cnf b/tester/certificates/cn/openssl-cn.cnf index 3130609e5..908f6ed4c 100644 --- a/tester/certificates/cn/openssl-cn.cnf +++ b/tester/certificates/cn/openssl-cn.cnf @@ -103,7 +103,7 @@ emailAddress = optional #################################################################### [ req ] -default_bits = 2048 +default_bits = 1024 default_keyfile = privkey.pem distinguished_name = req_distinguished_name attributes = req_attributes From 3858fcdb0fb97b3741f391df8d77d820c798651a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Grisez?= Date: Mon, 21 Mar 2016 11:41:38 +0100 Subject: [PATCH 12/53] Fixes regression about early-media call The camera was not enabled again after recieving the 200 Ok response while an outgoing early media call establishment. --- coreapi/callbacks.c | 4 ++-- coreapi/linphonecall.c | 26 +++++++++++++++++--------- 2 files changed, 19 insertions(+), 11 deletions(-) diff --git a/coreapi/callbacks.c b/coreapi/callbacks.c index 1e14854a9..41b399e08 100644 --- a/coreapi/callbacks.c +++ b/coreapi/callbacks.c @@ -158,12 +158,12 @@ void linphone_core_update_streams(LinphoneCore *lc, LinphoneCall *call, SalMedia if (call->all_muted){ ms_message("Early media finished, unmuting inputs..."); /*we were in early media, now we want to enable real media */ - linphone_call_enable_camera (call,linphone_call_camera_enabled (call)); + call->all_muted = FALSE; if (call->audiostream) linphone_core_enable_mic(lc, linphone_core_mic_enabled(lc)); #ifdef VIDEO_ENABLED if (call->videostream && call->camera_enabled) - video_stream_change_camera(call->videostream,linphone_call_get_video_device(call)); + linphone_call_enable_camera(call, linphone_call_camera_enabled(call)); #endif } /*FIXME ZRTP, might be restarted in any cases ? */ diff --git a/coreapi/linphonecall.c b/coreapi/linphonecall.c index acad05698..39089fdbe 100644 --- a/coreapi/linphonecall.c +++ b/coreapi/linphonecall.c @@ -2054,15 +2054,23 @@ LinphoneCall *linphone_call_get_replaced_call(LinphoneCall *call){ void linphone_call_enable_camera (LinphoneCall *call, bool_t enable){ #ifdef VIDEO_ENABLED call->camera_enabled=enable; - if ((call->state==LinphoneCallStreamsRunning || call->state==LinphoneCallOutgoingEarlyMedia || call->state==LinphoneCallIncomingEarlyMedia) - && call->videostream!=NULL && video_stream_started(call->videostream) ){ - if (video_stream_get_camera(call->videostream) != linphone_call_get_video_device(call)) { - const char *cur_cam, *new_cam; - cur_cam = video_stream_get_camera(call->videostream) ? ms_web_cam_get_name(video_stream_get_camera(call->videostream)) : "NULL"; - new_cam = linphone_call_get_video_device(call) ? ms_web_cam_get_name(linphone_call_get_video_device(call)) : "NULL"; - ms_message("Switching video cam from [%s] to [%s] on call [%p]" , cur_cam, new_cam, call); - video_stream_change_camera(call->videostream, linphone_call_get_video_device(call)); - } + switch(call->state) { + case LinphoneCallStreamsRunning: + case LinphoneCallOutgoingEarlyMedia: + case LinphoneCallIncomingEarlyMedia: + case LinphoneCallConnected: + if(call->videostream!=NULL + && video_stream_started(call->videostream) + && video_stream_get_camera(call->videostream) != linphone_call_get_video_device(call)) { + const char *cur_cam, *new_cam; + cur_cam = video_stream_get_camera(call->videostream) ? ms_web_cam_get_name(video_stream_get_camera(call->videostream)) : "NULL"; + new_cam = linphone_call_get_video_device(call) ? ms_web_cam_get_name(linphone_call_get_video_device(call)) : "NULL"; + ms_message("Switching video cam from [%s] to [%s] on call [%p]" , cur_cam, new_cam, call); + video_stream_change_camera(call->videostream, linphone_call_get_video_device(call)); + } + break; + + default: break; } #endif } From 5f8bdb3c0bffb6f3f74b64e4cd55085623e0e7ce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Grisez?= Date: Mon, 21 Mar 2016 15:34:26 +0100 Subject: [PATCH 13/53] Add a test to test video call with early-media --- tester/call_tester.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/tester/call_tester.c b/tester/call_tester.c index 853f49bd5..c3e0eeb87 100644 --- a/tester/call_tester.c +++ b/tester/call_tester.c @@ -3756,6 +3756,26 @@ static void call_rejected_without_403_because_wrong_credentials_no_auth_req_cb(v } #ifdef VIDEO_ENABLED +static void video_early_media_call(void) { + LinphoneCoreManager *marie = linphone_core_manager_new("marie_early_rc"); + LinphoneCoreManager *pauline = linphone_core_manager_new("pauline_rc"); + LinphoneCall *pauline_to_marie; + + linphone_core_set_video_device(pauline->lc, "Mire: Mire (synthetic moving picture)"); + + video_call_base_3(pauline, marie, TRUE, LinphoneMediaEncryptionNone, TRUE, TRUE); + + BC_ASSERT_PTR_NOT_NULL(pauline_to_marie = linphone_core_get_current_call(pauline->lc)); + if(pauline_to_marie) { + BC_ASSERT_EQUAL(pauline_to_marie->videostream->source->desc->id, MS_MIRE_ID, int, "%d"); + } + + end_call(pauline, marie); + + linphone_core_manager_destroy(marie); + linphone_core_manager_destroy(pauline); +} + /*this is call forking with early media managed at client side (not by flexisip server)*/ static void multiple_early_media(void) { LinphoneCoreManager* pauline = linphone_core_manager_new("pauline_tcp_rc"); @@ -6159,6 +6179,7 @@ test_t call_tests[] = { TEST_NO_TAG("Call with video declined", call_with_declined_video), TEST_NO_TAG("Call with video declined despite policy", call_with_declined_video_despite_policy), TEST_NO_TAG("Call with video declined using policy", call_with_declined_video_using_policy), + TEST_NO_TAG("Video early-media call", video_early_media_call), TEST_NO_TAG("Call with multiple early media", multiple_early_media), TEST_ONE_TAG("Call with ICE from video to non-video", call_with_ice_video_to_novideo, "ICE"), TEST_ONE_TAG("Call with ICE and video added", call_with_ice_video_added, "ICE"), From 61919a5cbd4765bbd136496ef719d500f89b18d0 Mon Sep 17 00:00:00 2001 From: Jehan Monnier Date: Mon, 21 Mar 2016 16:39:06 +0100 Subject: [PATCH 14/53] change tunnel address --- tester/tester_hosts | 3 ++- tester/tunnel_tester.c | 35 +++++++++++------------------------ 2 files changed, 13 insertions(+), 25 deletions(-) diff --git a/tester/tester_hosts b/tester/tester_hosts index 872dd4a63..638e4eb6d 100644 --- a/tester/tester_hosts +++ b/tester/tester_hosts @@ -1,2 +1,3 @@ 94.23.19.176 sip2.linphone.org sip.example.org sipopen.example.org auth.example.org auth1.example.org auth2.example.org altname.linphone.org sip.wildcard1.linphone.org altname.wildcard2.linphone.org -2001:41d0:2:14b0::1 sip2.linphone.org sip.example.org sipopen.example.org auth.example.org auth1.example.org auth2.example.org altname.linphone.org sip.wildcard1.linphone.org altname.wildcard2.linphone.org \ No newline at end of file +2001:41d0:2:14b0::1 sip2.linphone.org sip.example.org sipopen.example.org auth.example.org auth1.example.org auth2.example.org altname.linphone.org sip.wildcard1.linphone.org altname.wildcard2.linphone.org +188.165.46.90 tunnel.wildcard2.linphone.org diff --git a/tester/tunnel_tester.c b/tester/tunnel_tester.c index f7fce7d65..85db979ba 100644 --- a/tester/tunnel_tester.c +++ b/tester/tunnel_tester.c @@ -23,28 +23,6 @@ #include "private.h" #include "liblinphone_tester.h" -/* Retrieve the public IP from a given hostname */ -static const char* get_ip_from_hostname(const char * tunnel_hostname){ - struct addrinfo hints; - struct addrinfo *res = NULL, *it = NULL; - struct sockaddr_in *add; - char * output = NULL; - int err; - memset(&hints, 0, sizeof(hints)); - hints.ai_family = AF_UNSPEC; - hints.ai_socktype = SOCK_STREAM; - if ((err = getaddrinfo(tunnel_hostname, NULL, &hints, &res))){ - ms_error("error while retrieving IP from %s: %s", tunnel_hostname, gai_strerror(err)); - return NULL; - } - - for (it=res; it!=NULL; it=it->ai_next){ - add = (struct sockaddr_in *) it->ai_addr; - output = inet_ntoa( add->sin_addr ); - } - freeaddrinfo(res); - return output; -} static char* get_public_contact_ip(LinphoneCore* lc) { const LinphoneAddress * contact = linphone_proxy_config_get_contact(linphone_core_get_default_proxy_config(lc)); BC_ASSERT_PTR_NOT_NULL(contact); @@ -60,9 +38,16 @@ static void call_with_tunnel_base(LinphoneTunnelMode tunnel_mode, bool_t with_si LinphoneProxyConfig *proxy = linphone_core_get_default_proxy_config(pauline->lc); LinphoneAddress *server_addr = linphone_address_new(linphone_proxy_config_get_server_addr(proxy)); LinphoneAddress *route = linphone_address_new(linphone_proxy_config_get_route(proxy)); - const char * tunnel_ip = get_ip_from_hostname("tunnel.linphone.org"); + LinphoneAddress *tunnel_name, *tunnel_ip_addr; + const char * tunnel_ip; char *public_ip, *public_ip2=NULL; + linphone_core_enable_dns_srv(pauline->lc,FALSE); + tunnel_name = linphone_address_new("sip:tunnel.wildcard2.linphone.org:443"); + tunnel_ip_addr = linphone_core_manager_resolve(pauline, tunnel_name); + tunnel_ip = linphone_address_get_domain(tunnel_ip_addr); + linphone_core_enable_dns_srv(pauline->lc,TRUE); + BC_ASSERT_TRUE(wait_for(pauline->lc,NULL,&pauline->stat.number_of_LinphoneRegistrationOk,1)); public_ip = get_public_contact_ip(pauline->lc); BC_ASSERT_STRING_NOT_EQUAL(public_ip, tunnel_ip); @@ -93,7 +78,7 @@ static void call_with_tunnel_base(LinphoneTunnelMode tunnel_mode, bool_t with_si LinphoneTunnel *tunnel = linphone_core_get_tunnel(pauline->lc); LinphoneTunnelConfig *config = linphone_tunnel_config_new(); - linphone_tunnel_config_set_host(config, "tunnel.linphone.org"); + linphone_tunnel_config_set_host(config, tunnel_ip); linphone_tunnel_config_set_port(config, 443); linphone_tunnel_config_set_remote_udp_mirror_port(config, 12345); linphone_tunnel_add_server(tunnel, config); @@ -161,6 +146,8 @@ static void call_with_tunnel_base(LinphoneTunnelMode tunnel_mode, bool_t with_si if(public_ip2 != NULL) ms_free(public_ip2); linphone_address_destroy(server_addr); linphone_address_destroy(route); + linphone_address_destroy(tunnel_name); + linphone_address_destroy(tunnel_ip_addr); linphone_core_manager_destroy(pauline); linphone_core_manager_destroy(marie); }else{ From f45856be68efba1ab08e8ff37b2db0dde8da3635 Mon Sep 17 00:00:00 2001 From: Johan Pascal Date: Mon, 21 Mar 2016 20:29:17 +0100 Subject: [PATCH 15/53] Tunnel client can verify server certificate --- coreapi/TunnelManager.cc | 17 ++++++ coreapi/TunnelManager.hh | 13 +++++ coreapi/linphone_tunnel.cc | 11 ++++ ...auline_tunnel_verify_server_certificate_rc | 54 +++++++++++++++++++ tester/tunnel_tester.c | 14 +++-- 5 files changed, 106 insertions(+), 3 deletions(-) create mode 100644 tester/rcfiles/pauline_tunnel_verify_server_certificate_rc diff --git a/coreapi/TunnelManager.cc b/coreapi/TunnelManager.cc index b74baedb2..362816674 100644 --- a/coreapi/TunnelManager.cc +++ b/coreapi/TunnelManager.cc @@ -100,6 +100,15 @@ void TunnelManager::startClient() { ms_message("TunnelManager: Starting tunnel client"); mTunnelClient = new TunnelClient(TRUE); mTunnelClient->setCallback((TunnelClientController::StateCallback)tunnelCallback,this); + if (mVerifyServerCertificate) { + const char *rootCertificatePath = linphone_core_get_root_ca(mCore); + if (rootCertificatePath != NULL) { + ms_message("TunnelManager: Load root certificate from %s", rootCertificatePath); + mTunnelClient->setRootCertificate(rootCertificatePath); /* give the path to root certificate to the tunnel client in order to be able to verify the server certificate */ + } else { + ms_warning("TunnelManager is set to verify server certificate but no root certificate is available in linphoneCore"); + } + } list::iterator it; for(it=mServerAddrs.begin();it!=mServerAddrs.end();++it){ const ServerAddr &addr=*it; @@ -427,6 +436,14 @@ bool TunnelManager::tunnelizeSipPacketsEnabled() const { return mTunnelizeSipPackets; } +void TunnelManager::verifyServerCertificate(bool enable){ + mVerifyServerCertificate = enable; +} + +bool TunnelManager::verifyServerCertificateEnabled() const { + return mVerifyServerCertificate; +} + void TunnelManager::setHttpProxy(const char *host,int port, const char *username, const char *passwd){ mHttpUserName=username?username:""; mHttpPasswd=passwd?passwd:""; diff --git a/coreapi/TunnelManager.hh b/coreapi/TunnelManager.hh index 764c8efda..dccaf8756 100644 --- a/coreapi/TunnelManager.hh +++ b/coreapi/TunnelManager.hh @@ -110,6 +110,18 @@ namespace belledonnecomm { * @return True, SIP packets pass through the tunnel */ bool tunnelizeSipPacketsEnabled() const; + /** + * Indicate to the tunnel manager wether server certificate + * must be verified during TLS handshake. Default: disabled + * @param enable If set to TRUE, SIP packets will pass through the tunnel. + * If set to FALSE, SIP packets will pass by the configured proxies. + */ + void verifyServerCertificate(bool enable); + /** + * Check wether the tunnel manager is set to verify server certificate during TLS handshake + * @return True, server certificate is verified(using the linphonecore root certificate) + */ + bool verifyServerCertificateEnabled() const; /** * @brief Constructor * @param lc The LinphoneCore instance of which the TunnelManager will be associated to. @@ -188,6 +200,7 @@ namespace belledonnecomm { LinphoneTunnelMode mMode; State mState; bool mTunnelizeSipPackets; + bool mVerifyServerCertificate; TunnelClient* mTunnelClient; std::string mHttpUserName; std::string mHttpPasswd; diff --git a/coreapi/linphone_tunnel.cc b/coreapi/linphone_tunnel.cc index a751bc948..76b320f06 100644 --- a/coreapi/linphone_tunnel.cc +++ b/coreapi/linphone_tunnel.cc @@ -330,6 +330,15 @@ bool_t linphone_tunnel_sip_enabled(const LinphoneTunnel *tunnel) { return bcTunnel(tunnel)->tunnelizeSipPacketsEnabled() ? TRUE : FALSE; } +void linphone_tunnel_verify_server_certificate(LinphoneTunnel *tunnel, bool_t enable) { + bcTunnel(tunnel)->verifyServerCertificate(enable); + lp_config_set_int(config(tunnel), "tunnel", "verifyCert", (enable ? TRUE : FALSE)); +} + +bool_t linphone_tunnel_verify_server_certificate_enabled(const LinphoneTunnel *tunnel) { + return bcTunnel(tunnel)->verifyServerCertificateEnabled() ? TRUE : FALSE; +} + static void my_ortp_logv(const char *domain, OrtpLogLevel level, const char *fmt, va_list args){ ortp_logv(domain, level,fmt,args); } @@ -342,10 +351,12 @@ static void my_ortp_logv(const char *domain, OrtpLogLevel level, const char *fmt void linphone_tunnel_configure(LinphoneTunnel *tunnel){ LinphoneTunnelMode mode = linphone_tunnel_mode_from_string(lp_config_get_string(config(tunnel), "tunnel", "mode", NULL)); bool_t tunnelizeSIPPackets = (bool_t)lp_config_get_int(config(tunnel), "tunnel", "sip", TRUE); + bool_t tunnelVerifyServerCertificate = (bool_t)lp_config_get_int(config(tunnel), "tunnel", "verifyCert", FALSE); linphone_tunnel_enable_logs_with_handler(tunnel,TRUE,my_ortp_logv); linphone_tunnel_load_config(tunnel); linphone_tunnel_enable_sip(tunnel, tunnelizeSIPPackets); linphone_tunnel_set_mode(tunnel, mode); + linphone_tunnel_verify_server_certificate(tunnel, tunnelVerifyServerCertificate); } /* Deprecated functions */ diff --git a/tester/rcfiles/pauline_tunnel_verify_server_certificate_rc b/tester/rcfiles/pauline_tunnel_verify_server_certificate_rc new file mode 100644 index 000000000..ca9d1eeac --- /dev/null +++ b/tester/rcfiles/pauline_tunnel_verify_server_certificate_rc @@ -0,0 +1,54 @@ +[sip] +sip_port=-1 +sip_tcp_port=-1 +sip_tls_port=-1 +default_proxy=0 +ping_with_options=0 + +composing_idle_timeout=1 + +[auth_info_0] +username=pauline +userid=pauline +passwd=secret +realm=sip.example.org + + +[proxy_0] +reg_proxy=sip2.linphone.org;transport=tls +reg_route=sip2.linphone.org;transport=tls +reg_identity=sip:pauline@sip.example.org +reg_expires=3600 +reg_sendregister=1 +publish=0 +dial_escape_plus=0 + +#[friend_0] +#url="Mariette" +#pol=accept +#subscribe=0 + +[rtp] +audio_rtp_port=18070-28000 +video_rtp_port=39072-49000 + +[video] +display=0 +capture=0 +show_local=0 +size=qcif +enabled=0 +self_view=0 +automatically_initiate=0 +automatically_accept=0 +device=StaticImage: Static picture + +[sound] +echocancellation=0 #to not overload cpu in case of VG + +[net] +dns_srv_enabled=0 #no srv needed in general +stun_server=stun.linphone.org + +[tunnel] +verifyCert=1 diff --git a/tester/tunnel_tester.c b/tester/tunnel_tester.c index 85db979ba..4b1555bdc 100644 --- a/tester/tunnel_tester.c +++ b/tester/tunnel_tester.c @@ -30,10 +30,10 @@ static char* get_public_contact_ip(LinphoneCore* lc) { } -static void call_with_tunnel_base(LinphoneTunnelMode tunnel_mode, bool_t with_sip, LinphoneMediaEncryption encryption, bool_t with_video_and_ice) { +static void call_with_tunnel_base_with_config_files(LinphoneTunnelMode tunnel_mode, bool_t with_sip, LinphoneMediaEncryption encryption, bool_t with_video_and_ice, const char *marie_rc, const char *pauline_rc) { if (linphone_core_tunnel_available()){ - LinphoneCoreManager *pauline = linphone_core_manager_new( "pauline_rc"); - LinphoneCoreManager *marie = linphone_core_manager_new( "marie_rc"); + LinphoneCoreManager *pauline = linphone_core_manager_new( pauline_rc); + LinphoneCoreManager *marie = linphone_core_manager_new( marie_rc); LinphoneCall *pauline_call, *marie_call; LinphoneProxyConfig *proxy = linphone_core_get_default_proxy_config(pauline->lc); LinphoneAddress *server_addr = linphone_address_new(linphone_proxy_config_get_server_addr(proxy)); @@ -155,6 +155,9 @@ static void call_with_tunnel_base(LinphoneTunnelMode tunnel_mode, bool_t with_si } } +static void call_with_tunnel_base(LinphoneTunnelMode tunnel_mode, bool_t with_sip, LinphoneMediaEncryption encryption, bool_t with_video_and_ice) { + call_with_tunnel_base_with_config_files(tunnel_mode, with_sip, encryption, with_video_and_ice, "marie_rc", "pauline_rc"); +} static void call_with_tunnel(void) { call_with_tunnel_base(LinphoneTunnelModeEnable, TRUE, LinphoneMediaEncryptionNone, FALSE); @@ -168,6 +171,10 @@ static void call_with_tunnel_without_sip(void) { call_with_tunnel_base(LinphoneTunnelModeEnable, FALSE, LinphoneMediaEncryptionNone, FALSE); } +static void call_with_tunnel_verify_server_certificate(void) { + call_with_tunnel_base_with_config_files(LinphoneTunnelModeEnable, TRUE, LinphoneMediaEncryptionNone, FALSE, "marie_rc", "pauline_tunnel_verify_server_certificate_rc"); +} + static void call_with_tunnel_auto(void) { call_with_tunnel_base(LinphoneTunnelModeAuto, TRUE, LinphoneMediaEncryptionNone, FALSE); } @@ -237,6 +244,7 @@ test_t tunnel_tests[] = { TEST_NO_TAG("Simple", call_with_tunnel), TEST_NO_TAG("With SRTP", call_with_tunnel_srtp), TEST_NO_TAG("Without SIP", call_with_tunnel_without_sip), + TEST_NO_TAG("Verify Server Certificate", call_with_tunnel_verify_server_certificate), TEST_NO_TAG("In automatic mode", call_with_tunnel_auto), TEST_NO_TAG("In automatic mode with SRTP without SIP", call_with_tunnel_auto_without_sip_with_srtp), TEST_NO_TAG("Ice call", tunnel_ice_call), From 73c3a59b4f7c80fed8fd6aac79413d17583fa742 Mon Sep 17 00:00:00 2001 From: Gautier Pelloux-Prayer Date: Tue, 22 Mar 2016 11:37:27 +0100 Subject: [PATCH 16/53] submodules: update ortp & ms2 --- mediastreamer2 | 2 +- oRTP | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/mediastreamer2 b/mediastreamer2 index 07b710a92..3782184a6 160000 --- a/mediastreamer2 +++ b/mediastreamer2 @@ -1 +1 @@ -Subproject commit 07b710a92f9b4b17c1d8ec03d047815c04a03ac7 +Subproject commit 3782184a6d97ebee08c4c1373264977c00255774 diff --git a/oRTP b/oRTP index 8440432f9..3bc6368d4 160000 --- a/oRTP +++ b/oRTP @@ -1 +1 @@ -Subproject commit 8440432f9de08cc61c84a7c178e090f365c7a648 +Subproject commit 3bc6368d420f3f71b818e5cdd9df23839382a639 From cff024b8f9f73b6f708b5f50ad86128cb7dd8607 Mon Sep 17 00:00:00 2001 From: Gautier Pelloux-Prayer Date: Tue, 22 Mar 2016 12:25:19 +0100 Subject: [PATCH 17/53] submodules: update ms2 --- mediastreamer2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mediastreamer2 b/mediastreamer2 index 3782184a6..40ccb6eb8 160000 --- a/mediastreamer2 +++ b/mediastreamer2 @@ -1 +1 @@ -Subproject commit 3782184a6d97ebee08c4c1373264977c00255774 +Subproject commit 40ccb6eb80047df328e9a1d5c259a14753340e1d From 54dcf5b6f3b8f78a6bbbcb9264ee14fd0b42e14e Mon Sep 17 00:00:00 2001 From: Gautier Pelloux-Prayer Date: Tue, 22 Mar 2016 13:19:37 +0100 Subject: [PATCH 18/53] submodules: update ortp --- oRTP | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/oRTP b/oRTP index 3bc6368d4..a50779a2e 160000 --- a/oRTP +++ b/oRTP @@ -1 +1 @@ -Subproject commit 3bc6368d420f3f71b818e5cdd9df23839382a639 +Subproject commit a50779a2e1ead21e29df2267bc6718fb015e2533 From 0e0a45cd622048f3ac358e07a3da0760de2353d5 Mon Sep 17 00:00:00 2001 From: Gautier Pelloux-Prayer Date: Tue, 22 Mar 2016 13:31:38 +0100 Subject: [PATCH 19/53] submodules: update ms2 --- mediastreamer2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mediastreamer2 b/mediastreamer2 index 40ccb6eb8..2b59c4d29 160000 --- a/mediastreamer2 +++ b/mediastreamer2 @@ -1 +1 @@ -Subproject commit 40ccb6eb80047df328e9a1d5c259a14753340e1d +Subproject commit 2b59c4d29abc57dee08f286da8dac6a16834994d From 02196b224878513e621a4acc681132d382a7a159 Mon Sep 17 00:00:00 2001 From: Gautier Pelloux-Prayer Date: Tue, 22 Mar 2016 13:42:12 +0100 Subject: [PATCH 20/53] submodules: update ms2 --- mediastreamer2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mediastreamer2 b/mediastreamer2 index 2b59c4d29..888c00d18 160000 --- a/mediastreamer2 +++ b/mediastreamer2 @@ -1 +1 @@ -Subproject commit 2b59c4d29abc57dee08f286da8dac6a16834994d +Subproject commit 888c00d18c79177d114fd050c8b6e688bb86d9a7 From e4d3a08bb297ec955001a946dd7e3975c6e30953 Mon Sep 17 00:00:00 2001 From: Ghislain MARY Date: Tue, 22 Mar 2016 17:22:01 +0100 Subject: [PATCH 21/53] Update ortp submodule. --- oRTP | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/oRTP b/oRTP index a50779a2e..f5b615cba 160000 --- a/oRTP +++ b/oRTP @@ -1 +1 @@ -Subproject commit a50779a2e1ead21e29df2267bc6718fb015e2533 +Subproject commit f5b615cbabe59b1190ceff78847d2e8802788a14 From 37b8bfcb335f0f427adbfd2d1d73f57f135098ee Mon Sep 17 00:00:00 2001 From: Simon Morlat Date: Tue, 22 Mar 2016 17:49:33 +0100 Subject: [PATCH 22/53] add test about early media and ICE --- coreapi/linphonecore.c | 8 ++++++-- coreapi/linphonecore.h | 17 +++++++++-------- mediastreamer2 | 2 +- tester/call_tester.c | 39 +++++++++++++++++++++++++++++++++++++++ 4 files changed, 55 insertions(+), 11 deletions(-) diff --git a/coreapi/linphonecore.c b/coreapi/linphonecore.c index 92668030f..9bd7ffd77 100644 --- a/coreapi/linphonecore.c +++ b/coreapi/linphonecore.c @@ -4458,6 +4458,7 @@ LinphonePresenceModel * linphone_core_get_presence_model(const LinphoneCore *lc) * Get playback sound level in 0-100 scale. * * @ingroup media_parameters + * @deprecated **/ int linphone_core_get_play_level(LinphoneCore *lc) { @@ -4468,6 +4469,7 @@ int linphone_core_get_play_level(LinphoneCore *lc) * Get ring sound level in 0-100 scale * * @ingroup media_parameters + * @deprecated **/ int linphone_core_get_ring_level(LinphoneCore *lc) { @@ -4478,6 +4480,7 @@ int linphone_core_get_ring_level(LinphoneCore *lc) * Get sound capture level in 0-100 scale * * @ingroup media_parameters + * @deprecated **/ int linphone_core_get_rec_level(LinphoneCore *lc){ return lc->sound_conf.rec_lev; @@ -4487,6 +4490,7 @@ int linphone_core_get_rec_level(LinphoneCore *lc){ * Set sound ring level in 0-100 scale * * @ingroup media_parameters + * @deprecated **/ void linphone_core_set_ring_level(LinphoneCore *lc, int level){ MSSndCard *sndcard; @@ -4560,7 +4564,7 @@ float linphone_core_get_playback_gain_db(LinphoneCore *lc) { /** * Set sound playback level in 0-100 scale - * + * @deprecated * @ingroup media_parameters **/ void linphone_core_set_play_level(LinphoneCore *lc, int level){ @@ -4572,7 +4576,7 @@ void linphone_core_set_play_level(LinphoneCore *lc, int level){ /** * Set sound capture level in 0-100 scale - * + * @deprecated * @ingroup media_parameters **/ void linphone_core_set_rec_level(LinphoneCore *lc, int level) diff --git a/coreapi/linphonecore.h b/coreapi/linphonecore.h index d30c5b4ab..f98437606 100644 --- a/coreapi/linphonecore.h +++ b/coreapi/linphonecore.h @@ -3213,26 +3213,27 @@ LINPHONE_PUBLIC void linphone_core_reload_sound_devices(LinphoneCore *lc); LINPHONE_PUBLIC bool_t linphone_core_sound_device_can_capture(LinphoneCore *lc, const char *device); LINPHONE_PUBLIC bool_t linphone_core_sound_device_can_playback(LinphoneCore *lc, const char *device); -LINPHONE_PUBLIC int linphone_core_get_ring_level(LinphoneCore *lc); -LINPHONE_PUBLIC int linphone_core_get_play_level(LinphoneCore *lc); -LINPHONE_PUBLIC int linphone_core_get_rec_level(LinphoneCore *lc); -LINPHONE_PUBLIC void linphone_core_set_ring_level(LinphoneCore *lc, int level); -LINPHONE_PUBLIC void linphone_core_set_play_level(LinphoneCore *lc, int level); +LINPHONE_PUBLIC LINPHONE_DEPRECATED int linphone_core_get_ring_level(LinphoneCore *lc); +LINPHONE_PUBLIC LINPHONE_DEPRECATED int linphone_core_get_play_level(LinphoneCore *lc); +LINPHONE_PUBLIC LINPHONE_DEPRECATED int linphone_core_get_rec_level(LinphoneCore *lc); +LINPHONE_PUBLIC LINPHONE_DEPRECATED void linphone_core_set_ring_level(LinphoneCore *lc, int level); +LINPHONE_PUBLIC LINPHONE_DEPRECATED void linphone_core_set_play_level(LinphoneCore *lc, int level); +LINPHONE_PUBLIC LINPHONE_DEPRECATED void linphone_core_set_rec_level(LinphoneCore *lc, int level); +LINPHONE_DEPRECATED char linphone_core_get_sound_source(LinphoneCore *lc); +LINPHONE_DEPRECATED void linphone_core_set_sound_source(LinphoneCore *lc, char source); LINPHONE_PUBLIC void linphone_core_set_mic_gain_db(LinphoneCore *lc, float level); LINPHONE_PUBLIC float linphone_core_get_mic_gain_db(LinphoneCore *lc); LINPHONE_PUBLIC void linphone_core_set_playback_gain_db(LinphoneCore *lc, float level); LINPHONE_PUBLIC float linphone_core_get_playback_gain_db(LinphoneCore *lc); -LINPHONE_PUBLIC void linphone_core_set_rec_level(LinphoneCore *lc, int level); LINPHONE_PUBLIC const char * linphone_core_get_ringer_device(LinphoneCore *lc); LINPHONE_PUBLIC const char * linphone_core_get_playback_device(LinphoneCore *lc); LINPHONE_PUBLIC const char * linphone_core_get_capture_device(LinphoneCore *lc); LINPHONE_PUBLIC int linphone_core_set_ringer_device(LinphoneCore *lc, const char * devid); LINPHONE_PUBLIC int linphone_core_set_playback_device(LinphoneCore *lc, const char * devid); LINPHONE_PUBLIC int linphone_core_set_capture_device(LinphoneCore *lc, const char * devid); -char linphone_core_get_sound_source(LinphoneCore *lc); -void linphone_core_set_sound_source(LinphoneCore *lc, char source); + LINPHONE_PUBLIC void linphone_core_stop_ringing(LinphoneCore *lc); LINPHONE_PUBLIC void linphone_core_set_ring(LinphoneCore *lc, const char *path); LINPHONE_PUBLIC const char *linphone_core_get_ring(const LinphoneCore *lc); diff --git a/mediastreamer2 b/mediastreamer2 index 888c00d18..c04430db7 160000 --- a/mediastreamer2 +++ b/mediastreamer2 @@ -1 +1 @@ -Subproject commit 888c00d18c79177d114fd050c8b6e688bb86d9a7 +Subproject commit c04430db7777cf8d93ddfd4d3789f677657e48bf diff --git a/tester/call_tester.c b/tester/call_tester.c index c3e0eeb87..2ac34946a 100644 --- a/tester/call_tester.c +++ b/tester/call_tester.c @@ -3241,6 +3241,44 @@ end: linphone_core_manager_destroy(pauline); } +static void early_media_call_with_ice(void) { + LinphoneCoreManager* marie = linphone_core_manager_new("marie_early_rc"); + LinphoneCoreManager* pauline = linphone_core_manager_new(transport_supported(LinphoneTransportTls) ? "pauline_rc" : "pauline_tcp_rc"); + LinphoneCall *marie_call; + MSList *lcs = NULL; + + lcs = ms_list_append(lcs, marie->lc); + lcs = ms_list_append(lcs, pauline->lc); + + /*in this test, pauline has ICE activated, marie not, but marie proposes early media. + * We want to check that ICE processing is not disturbing early media*/ + linphone_core_set_firewall_policy(pauline->lc, LinphonePolicyUseIce); + + linphone_core_invite_address(pauline->lc, marie->identity); + + BC_ASSERT_TRUE(wait_for_list(lcs, &marie->stat.number_of_LinphoneCallIncomingReceived,1,3000)); + BC_ASSERT_TRUE(wait_for_list(lcs, &marie->stat.number_of_LinphoneCallIncomingEarlyMedia,1,3000)); + BC_ASSERT_TRUE(wait_for_list(lcs, &pauline->stat.number_of_LinphoneCallOutgoingEarlyMedia,1,1000)); + + wait_for_until(pauline->lc,marie->lc,NULL,0,1000); + + marie_call = linphone_core_get_current_call(marie->lc); + + if (!marie_call) goto end; + + linphone_core_accept_call(marie->lc, marie_call); + BC_ASSERT_TRUE(wait_for_list(lcs, &marie->stat.number_of_LinphoneCallConnected,1,3000)); + BC_ASSERT_TRUE(wait_for_list(lcs, &pauline->stat.number_of_LinphoneCallConnected,1,3000)); + BC_ASSERT_TRUE(wait_for_list(lcs, &marie->stat.number_of_LinphoneCallStreamsRunning,1,3000)); + BC_ASSERT_TRUE(wait_for_list(lcs, &pauline->stat.number_of_LinphoneCallStreamsRunning,1,3000)); + + end_call(marie, pauline); +end: + ms_list_free(lcs); + linphone_core_manager_destroy(marie); + linphone_core_manager_destroy(pauline); +} + static void early_media_call_with_ringing(void){ LinphoneCoreManager* marie = linphone_core_manager_new("marie_rc"); LinphoneCoreManager* pauline = linphone_core_manager_new("pauline_tcp_rc"); @@ -6125,6 +6163,7 @@ test_t call_tests[] = { TEST_NO_TAG("Call with media relay (random ports)", call_with_media_relay_random_ports), TEST_NO_TAG("Simple call compatibility mode", simple_call_compatibility_mode), TEST_NO_TAG("Early-media call", early_media_call), + TEST_ONE_TAG("Early-media call with ICE", early_media_call_with_ice, "ICE"), TEST_NO_TAG("Early-media call with ringing", early_media_call_with_ringing), TEST_NO_TAG("Early-media call with updated media session", early_media_call_with_session_update), TEST_NO_TAG("Early-media call with updated codec", early_media_call_with_codec_update), From 2be885bb35c72ab585c697b6a96cc88bd954671e Mon Sep 17 00:00:00 2001 From: Simon Morlat Date: Wed, 23 Mar 2016 10:57:53 +0100 Subject: [PATCH 23/53] improve android logger, by stripping \r, because android studio suppresses logs that ends with \r. --- coreapi/linphonecore_jni.cc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/coreapi/linphonecore_jni.cc b/coreapi/linphonecore_jni.cc index 7c2475b32..62396b464 100644 --- a/coreapi/linphonecore_jni.cc +++ b/coreapi/linphonecore_jni.cc @@ -81,7 +81,10 @@ void linphone_android_log_handler(int prio, char *str) { } else { current = str; while ((next = strchr(current, '\n')) != NULL) { + *next = '\0'; + if (next != str && next[-1] == '\r') + next[-1] = '\0'; __android_log_write(prio, LogDomain, current); current = next + 1; } From a442d453098961e664feab1d7387a5b87a6092cd Mon Sep 17 00:00:00 2001 From: Ghislain MARY Date: Wed, 23 Mar 2016 11:48:38 +0100 Subject: [PATCH 24/53] Update ortp submodule. --- oRTP | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/oRTP b/oRTP index f5b615cba..56a8d75fb 160000 --- a/oRTP +++ b/oRTP @@ -1 +1 @@ -Subproject commit f5b615cbabe59b1190ceff78847d2e8802788a14 +Subproject commit 56a8d75fbd8d667ab2102011700cdc2a46243a3b From 9dfde257c52ae98b58c9f75713fdbf60631f3853 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Wed, 23 Mar 2016 13:29:40 +0100 Subject: [PATCH 25/53] Improved getAddress to return null if needed --- java/impl/org/linphone/core/LinphoneFriendImpl.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/java/impl/org/linphone/core/LinphoneFriendImpl.java b/java/impl/org/linphone/core/LinphoneFriendImpl.java index f6406ea4c..3cc45ec21 100644 --- a/java/impl/org/linphone/core/LinphoneFriendImpl.java +++ b/java/impl/org/linphone/core/LinphoneFriendImpl.java @@ -60,7 +60,11 @@ class LinphoneFriendImpl implements LinphoneFriend, Serializable { this.setAddress(nativePtr, ((LinphoneAddressImpl)anAddress).nativePtr); } public LinphoneAddress getAddress() { - return new LinphoneAddressImpl(getAddress(nativePtr),LinphoneAddressImpl.WrapMode.FromConst); + long ptr = getAddress(nativePtr); + if (ptr != 0) { + return new LinphoneAddressImpl(ptr, LinphoneAddressImpl.WrapMode.FromConst); + } + return null; } public void setIncSubscribePolicy(SubscribePolicy policy) { synchronized(getSyncObject()){ From aebdff1985f3f81fbf5eecf807ba592a604b624e Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Wed, 23 Mar 2016 14:47:32 +0100 Subject: [PATCH 26/53] Prevent crash in CardDAV sync if we fail to parse a vCard --- coreapi/carddav.c | 65 ++++++++++++++++++++++++++--------------------- 1 file changed, 36 insertions(+), 29 deletions(-) diff --git a/coreapi/carddav.c b/coreapi/carddav.c index 6bfcb1d8e..233da34a8 100644 --- a/coreapi/carddav.c +++ b/coreapi/carddav.c @@ -31,7 +31,7 @@ LinphoneCardDavContext* linphone_carddav_context_new(LinphoneFriendList *lfl) { carddav_context = (LinphoneCardDavContext *)ms_new0(LinphoneCardDavContext, 1); carddav_context->friend_list = linphone_friend_list_ref(lfl); #else - ms_error("vCard isn't available (maybe it wasn't compiled), can't do CardDAV sync"); + ms_error("[carddav] vCard isn't available (maybe it wasn't compiled), can't do CardDAV sync"); #endif return carddav_context; } @@ -64,7 +64,7 @@ static void linphone_carddav_sync_done(LinphoneCardDavContext *cdc, bool_t succe ms_debug("CardDAV sync successful, saving new cTag: %i", cdc->ctag); linphone_friend_list_update_revision(cdc->friend_list, cdc->ctag); } else { - ms_error("CardDAV sync failure: %s", msg); + ms_error("[carddav] CardDAV sync failure: %s", msg); } if (cdc->sync_done_cb) { @@ -105,31 +105,38 @@ static void linphone_carddav_vcards_pulled(LinphoneCardDavContext *cdc, MSList * linphone_vcard_set_url(lvc, full_url); linphone_vcard_set_etag(lvc, vCard->etag); ms_debug("Downloaded vCard etag/url are %s and %s", vCard->etag, full_url); - } - lf = linphone_friend_new_from_vcard(lvc); - local_friend = ms_list_find_custom(friends, (int (*)(const void*, const void*))find_matching_friend, lf); - - if (local_friend) { - LinphoneFriend *lf2 = (LinphoneFriend *)local_friend->data; - lf->storage_id = lf2->storage_id; - lf->pol = lf2->pol; - lf->subscribe = lf2->subscribe; - lf->refkey = ms_strdup(lf2->refkey); - lf->presence_received = lf2->presence_received; - lf->lc = lf2->lc; - lf->friend_list = lf2->friend_list; - - if (cdc->contact_updated_cb) { - ms_debug("Contact updated: %s", linphone_friend_get_name(lf)); - cdc->contact_updated_cb(cdc, lf, lf2); + + lf = linphone_friend_new_from_vcard(lvc); + if (lf) { + local_friend = ms_list_find_custom(friends, (int (*)(const void*, const void*))find_matching_friend, lf); + + if (local_friend) { + LinphoneFriend *lf2 = (LinphoneFriend *)local_friend->data; + lf->storage_id = lf2->storage_id; + lf->pol = lf2->pol; + lf->subscribe = lf2->subscribe; + lf->refkey = ms_strdup(lf2->refkey); + lf->presence_received = lf2->presence_received; + lf->lc = lf2->lc; + lf->friend_list = lf2->friend_list; + + if (cdc->contact_updated_cb) { + ms_debug("Contact updated: %s", linphone_friend_get_name(lf)); + cdc->contact_updated_cb(cdc, lf, lf2); + } + } else { + if (cdc->contact_created_cb) { + ms_debug("Contact created: %s", linphone_friend_get_name(lf)); + cdc->contact_created_cb(cdc, lf); + } + } + linphone_friend_unref(lf); + } else { + ms_error("[carddav] Couldn't create a friend from vCard"); } } else { - if (cdc->contact_created_cb) { - ms_debug("Contact created: %s", linphone_friend_get_name(lf)); - cdc->contact_created_cb(cdc, lf); - } + ms_error("[carddav] Couldn't parse vCard %s", vCard->vcard); } - linphone_friend_unref(lf); } vCards = ms_list_next(vCards); } @@ -367,7 +374,7 @@ static void process_response_from_carddav_request(void *data, const belle_http_r linphone_carddav_sync_done(query->context, TRUE, NULL); break; default: - ms_error("Unknown request: %i", query->type); + ms_error("[carddav] Unknown request: %i", query->type); break; } } else { @@ -383,7 +390,7 @@ static void process_response_from_carddav_request(void *data, const belle_http_r static void process_io_error_from_carddav_request(void *data, const belle_sip_io_error_event_t *event) { LinphoneCardDavQuery *query = (LinphoneCardDavQuery *)data; - ms_error("I/O error during CardDAV request sending"); + ms_error("[carddav] I/O error during CardDAV request sending"); linphone_carddav_query_free(query); linphone_carddav_sync_done(query->context, FALSE, "I/O error during CardDAV request sending"); } @@ -412,7 +419,7 @@ static void process_auth_requested_from_carddav_request(void *data, belle_sip_au } if (!auth_infos) { - ms_error("Authentication requested during CardDAV request sending, and username/password weren't provided"); + ms_error("[carddav] Authentication requested during CardDAV request sending, and username/password weren't provided"); linphone_carddav_sync_done(query->context, FALSE, "Authentication requested during CardDAV request sending, and username/password weren't provided"); linphone_carddav_query_free(query); } @@ -528,7 +535,7 @@ void linphone_carddav_put_vcard(LinphoneCardDavContext *cdc, LinphoneFriend *lf) } if (msg) { - ms_error("%s", msg); + ms_error("[carddav] %s", msg); } if (cdc && cdc->sync_done_cb) { @@ -582,7 +589,7 @@ void linphone_carddav_delete_vcard(LinphoneCardDavContext *cdc, LinphoneFriend * } if (msg) { - ms_error("%s", msg); + ms_error("[carddav] %s", msg); } if (cdc && cdc->sync_done_cb) { From 889c2e19741ff7d492fbab15d14844fff30eba99 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Wed, 23 Mar 2016 16:23:03 +0100 Subject: [PATCH 27/53] Added method to configure ssl_config for sal and http provider --- coreapi/bellesip_sal/sal_impl.c | 8 ++++++++ coreapi/bellesip_sal/sal_impl.h | 1 + coreapi/linphonecore.c | 7 +++++++ coreapi/linphonecore.h | 8 ++++++++ include/sal/sal.h | 1 + 5 files changed, 25 insertions(+) diff --git a/coreapi/bellesip_sal/sal_impl.c b/coreapi/bellesip_sal/sal_impl.c index 131d7656c..010921544 100644 --- a/coreapi/bellesip_sal/sal_impl.c +++ b/coreapi/bellesip_sal/sal_impl.c @@ -501,6 +501,7 @@ Sal * sal_init(MSFactory *factory){ sal->refresher_retry_after=60000; /*default value in ms*/ sal->enable_sip_update=TRUE; sal->pending_trans_checking=TRUE; + sal->ssl_config = NULL; return sal; } @@ -746,6 +747,7 @@ static void set_tls_properties(Sal *ctx){ else if (!ctx->tls_verify_cn) verify_exceptions = BELLE_TLS_VERIFY_CN_MISMATCH; belle_tls_crypto_config_set_verify_exceptions(crypto_config, verify_exceptions); if (ctx->root_ca != NULL) belle_tls_crypto_config_set_root_ca(crypto_config, ctx->root_ca); + if (ctx->ssl_config != NULL) belle_tls_crypto_config_set_ssl_config(crypto_config, ctx->ssl_config); belle_sip_tls_listening_point_set_crypto_config(tlp, crypto_config); belle_sip_object_unref(crypto_config); } @@ -774,6 +776,12 @@ void sal_verify_server_cn(Sal *ctx, bool_t verify){ return ; } +void sal_set_ssl_config(Sal *ctx, void *ssl_config) { + ctx->ssl_config = ssl_config; + set_tls_properties(ctx); + return ; +} + void sal_use_tcp_tls_keepalive(Sal *ctx, bool_t enabled) { ctx->use_tcp_tls_keep_alive=enabled; } diff --git a/coreapi/bellesip_sal/sal_impl.h b/coreapi/bellesip_sal/sal_impl.h index b9175a7d0..a77ed6855 100644 --- a/coreapi/bellesip_sal/sal_impl.h +++ b/coreapi/bellesip_sal/sal_impl.h @@ -53,6 +53,7 @@ struct Sal{ bool_t enable_sip_update; /*true by default*/ SalOpSDPHandling default_sdp_handling; bool_t pending_trans_checking; /*testing purpose*/ + void *ssl_config; }; typedef enum SalOpState { diff --git a/coreapi/linphonecore.c b/coreapi/linphonecore.c index 9bd7ffd77..394e1810b 100644 --- a/coreapi/linphonecore.c +++ b/coreapi/linphonecore.c @@ -4893,6 +4893,13 @@ void linphone_core_verify_server_cn(LinphoneCore *lc, bool_t yesno){ lp_config_set_int(lc->config,"sip","verify_server_cn",yesno); } +void linphone_core_set_ssl_config(LinphoneCore *lc, void *ssl_config) { + sal_set_ssl_config(lc->sal, ssl_config); + if (lc->http_crypto_config) { + belle_tls_crypto_config_set_ssl_config(lc->http_crypto_config, ssl_config); + } +} + static void notify_end_of_ringtone( LinphoneRingtonePlayer* rp, void* user_data, int status) { LinphoneCore *lc=(LinphoneCore*)user_data; lc->preview_finished=1; diff --git a/coreapi/linphonecore.h b/coreapi/linphonecore.h index f98437606..4a0f357e7 100644 --- a/coreapi/linphonecore.h +++ b/coreapi/linphonecore.h @@ -3240,6 +3240,14 @@ LINPHONE_PUBLIC const char *linphone_core_get_ring(const LinphoneCore *lc); LINPHONE_PUBLIC void linphone_core_verify_server_certificates(LinphoneCore *lc, bool_t yesno); LINPHONE_PUBLIC void linphone_core_verify_server_cn(LinphoneCore *lc, bool_t yesno); LINPHONE_PUBLIC void linphone_core_set_root_ca(LinphoneCore *lc, const char *path); +/** + * Set the pointer to an externally provided ssl configuration for the crypto library + * @param lc #LinphoneCore object + * @param[in] ssl_config A pointer to an opaque structure which will be provided directly to the crypto library used in bctoolbox. Use with extra care. + * This ssl_config structure is responsability of the caller and will not be freed at the connection's end. + * @ingroup initializing + */ +LINPHONE_PUBLIC void linphone_core_set_ssl_config(LinphoneCore *lc, void *ssl_config); LINPHONE_PUBLIC const char *linphone_core_get_root_ca(LinphoneCore *lc); LINPHONE_PUBLIC void linphone_core_set_ringback(LinphoneCore *lc, const char *path); LINPHONE_PUBLIC const char * linphone_core_get_ringback(const LinphoneCore *lc); diff --git a/include/sal/sal.h b/include/sal/sal.h index c5b04b159..7efc6b47b 100644 --- a/include/sal/sal.h +++ b/include/sal/sal.h @@ -622,6 +622,7 @@ void sal_set_root_ca(Sal* ctx, const char* rootCa); const char *sal_get_root_ca(Sal* ctx); void sal_verify_server_certificates(Sal *ctx, bool_t verify); void sal_verify_server_cn(Sal *ctx, bool_t verify); +void sal_set_ssl_config(Sal *ctx, void *ssl_config); void sal_set_uuid(Sal*ctx, const char *uuid); int sal_create_uuid(Sal*ctx, char *uuid, size_t len); int sal_generate_uuid(char *uuid, size_t len); From a8cd6e8a1f6c43f961e935e12553b52c311e190f Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Wed, 23 Mar 2016 17:30:35 +0100 Subject: [PATCH 28/53] Added BV16 payload type in default codecs list --- coreapi/linphonecore.c | 1 + 1 file changed, 1 insertion(+) diff --git a/coreapi/linphonecore.c b/coreapi/linphonecore.c index 394e1810b..c4a15790e 100644 --- a/coreapi/linphonecore.c +++ b/coreapi/linphonecore.c @@ -1681,6 +1681,7 @@ static void linphone_core_register_default_codecs(LinphoneCore *lc){ linphone_core_register_payload_type(lc,&payload_type_aal2_g726_32,NULL,FALSE); linphone_core_register_payload_type(lc,&payload_type_aal2_g726_40,NULL,FALSE); linphone_core_register_payload_type(lc,&payload_type_codec2,NULL,FALSE); + linphone_core_register_payload_type(lc,&payload_type_bv16,NULL,FALSE); #ifdef VIDEO_ENABLED From 411273845489b21c1dd3bde1bd718bff9414f74d Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Fri, 25 Mar 2016 14:59:28 +0100 Subject: [PATCH 29/53] Added methods to friend to manipulate phone numbers and sip addresses --- coreapi/friend.c | 106 +++++++++++++++++++++++++++++++++++++-- coreapi/linphonefriend.h | 44 +++++++++++++++- coreapi/vcard.cc | 31 ++++++++++++ coreapi/vcard.h | 28 +++++++++++ coreapi/vcard_stubs.c | 12 +++++ 5 files changed, 216 insertions(+), 5 deletions(-) diff --git a/coreapi/friend.c b/coreapi/friend.c index 41d191535..2025a67af 100644 --- a/coreapi/friend.c +++ b/coreapi/friend.c @@ -195,6 +195,10 @@ void linphone_core_interpret_friend_uri(LinphoneCore *lc, const char *uri, char } } +const LinphoneAddress *linphone_friend_get_address(const LinphoneFriend *lf){ + return lf->uri; +} + int linphone_friend_set_address(LinphoneFriend *lf, const LinphoneAddress *addr){ LinphoneAddress *fr = linphone_address_clone(addr); LinphoneVcard *vcard = NULL; @@ -211,6 +215,103 @@ int linphone_friend_set_address(LinphoneFriend *lf, const LinphoneAddress *addr) return 0; } +void linphone_friend_add_address(LinphoneFriend *lf, const LinphoneAddress *addr) { + LinphoneVcard *vcard = NULL; + if (!lf || !addr) { + return; + } + + vcard = linphone_friend_get_vcard(lf); + if (!vcard) { + return; + } + + linphone_vcard_add_sip_address(vcard, linphone_address_as_string_uri_only(addr)); +} + +const MSList* linphone_friend_get_addresses(LinphoneFriend *lf) { + LinphoneVcard *vcard = NULL; + MSList *sipAddresses = NULL; + MSList *addresses = NULL; + + if (!lf) { + return NULL; + } + + vcard = linphone_friend_get_vcard(lf); + if (!vcard) { + return NULL; + } + + sipAddresses = linphone_vcard_get_sip_addresses(vcard); + if (sipAddresses) { + const char *sipAddress = (const char *)sipAddresses->data; + LinphoneAddress *addr = linphone_address_new(sipAddress); + if (addr) { + ms_list_append(addresses, addr); + } + ms_list_free(sipAddresses); + } + return addresses; +} + +void linphone_friend_remove_address(LinphoneFriend *lf, const LinphoneAddress *addr) { + LinphoneVcard *vcard = NULL; + if (!lf || !addr) { + return; + } + + vcard = linphone_friend_get_vcard(lf); + if (!vcard) { + return; + } + + linphone_vcard_remove_sip_address(vcard, linphone_address_as_string_uri_only(addr)); +} + +void linphone_friend_add_phone_number(LinphoneFriend *lf, const char *phone) { + LinphoneVcard *vcard = NULL; + if (!lf || !phone) { + return; + } + + vcard = linphone_friend_get_vcard(lf); + if (!vcard) { + return; + } + + linphone_vcard_add_phone_number(vcard, phone); +} + +const MSList* linphone_friend_get_phone_numbers(LinphoneFriend *lf) { + LinphoneVcard *vcard = NULL; + + if (!lf) { + return NULL; + } + + vcard = linphone_friend_get_vcard(lf); + if (!vcard) { + return NULL; + } + + return linphone_vcard_get_phone_numbers(vcard); +} + +void linphone_friend_remove_phone_number(LinphoneFriend *lf, const char *phone) { + LinphoneVcard *vcard = NULL; + if (!lf || !phone) { + return; + } + + vcard = linphone_friend_get_vcard(lf); + if (!vcard) { + return; + } + + linphone_vcard_remove_phone_number(vcard, phone); +} + int linphone_friend_set_name(LinphoneFriend *lf, const char *name){ LinphoneAddress *fr = lf->uri; LinphoneVcard *vcard = NULL; @@ -334,10 +435,6 @@ static belle_sip_error_code _linphone_friend_marshall(belle_sip_object_t *obj, c return err; } -const LinphoneAddress *linphone_friend_get_address(const LinphoneFriend *lf){ - return lf->uri; -} - const char * linphone_friend_get_name(const LinphoneFriend *lf) { if (lf && lf->vcard) { return linphone_vcard_get_full_name(lf->vcard); @@ -915,6 +1012,7 @@ LinphoneFriend *linphone_friend_new_from_vcard(LinphoneVcard *vcard) { linphone_friend_set_address(fr, linphone_address); linphone_address_unref(linphone_address); } + ms_free(sipAddresses); } if (name) { linphone_friend_set_name(fr, name); diff --git a/coreapi/linphonefriend.h b/coreapi/linphonefriend.h index 5488a1358..4cbffbbfd 100644 --- a/coreapi/linphonefriend.h +++ b/coreapi/linphonefriend.h @@ -162,7 +162,49 @@ LINPHONE_PUBLIC int linphone_friend_set_address(LinphoneFriend *fr, const Linpho * @param lf #LinphoneFriend object * @return #LinphoneAddress */ -LINPHONE_PUBLIC const LinphoneAddress *linphone_friend_get_address(const LinphoneFriend *lf); +LINPHONE_PUBLIC const LinphoneAddress *linphone_friend_get_address(const LinphoneFriend *lf); + +/** + * Adds an address in this friend + * @param lf #LinphoneFriend object + * @param addr #LinphoneAddress object + */ +LINPHONE_PUBLIC void linphone_friend_add_address(LinphoneFriend *lf, const LinphoneAddress *addr); + +/** + * Returns a list of #LinphoneAddress for this friend + * @param lf #LinphoneFriend object + * @return \mslist{LinphoneAddress} + */ +LINPHONE_PUBLIC const MSList* linphone_friend_get_addresses(LinphoneFriend *lf); + +/** + * Removes an address in this friend + * @param lf #LinphoneFriend object + * @param addr #LinphoneAddress object + */ +LINPHONE_PUBLIC void linphone_friend_remove_address(LinphoneFriend *lf, const LinphoneAddress *addr); + +/** + * Adds a phone number in this friend + * @param lf #LinphoneFriend object + * @param phone number to add + */ +LINPHONE_PUBLIC void linphone_friend_add_phone_number(LinphoneFriend *lf, const char *phone); + +/** + * Returns a list of phone numbers for this friend + * @param lf #LinphoneFriend object + * @return a MSList of phone numbers + */ +LINPHONE_PUBLIC const MSList* linphone_friend_get_phone_numbers(LinphoneFriend *lf); + +/** + * Removes a phone number in this friend + * @param lf #LinphoneFriend object + * @param phone number to remove + */ +LINPHONE_PUBLIC void linphone_friend_remove_phone_number(LinphoneFriend *lf, const char *phone); /** * Set the display name for this friend diff --git a/coreapi/vcard.cc b/coreapi/vcard.cc index 635312069..2623c241f 100644 --- a/coreapi/vcard.cc +++ b/coreapi/vcard.cc @@ -163,6 +163,37 @@ MSList* linphone_vcard_get_sip_addresses(const LinphoneVcard *vCard) { return result; } +void linphone_vcard_add_phone_number(LinphoneVcard *vCard, const char *phone) { + if (!vCard || !phone) return; + + shared_ptr phone_number = belcard::BelCardGeneric::create(); + phone_number->setValue(phone); + vCard->belCard->addPhoneNumber(phone_number); +} + +void linphone_vcard_remove_phone_number(LinphoneVcard *vCard, const char *phone) { + if (!vCard) return; + + for (auto it = vCard->belCard->getPhoneNumbers().begin(); it != vCard->belCard->getPhoneNumbers().end(); ++it) { + const char *value = (*it)->getValue().c_str(); + if (strcmp(value, phone) == 0) { + vCard->belCard->removePhoneNumber(*it); + break; + } + } +} + +MSList* linphone_vcard_get_phone_numbers(const LinphoneVcard *vCard) { + MSList *result = NULL; + if (!vCard) return NULL; + + for (auto it = vCard->belCard->getPhoneNumbers().begin(); it != vCard->belCard->getPhoneNumbers().end(); ++it) { + const char *value = (*it)->getValue().c_str(); + result = ms_list_append(result, (char *)value); + } + return result; +} + void linphone_vcard_set_organization(LinphoneVcard *vCard, const char *organization) { if (!vCard) return; diff --git a/coreapi/vcard.h b/coreapi/vcard.h index 71e5440e7..7948fbd11 100644 --- a/coreapi/vcard.h +++ b/coreapi/vcard.h @@ -122,6 +122,34 @@ void linphone_vcard_edit_main_sip_address(LinphoneVcard *vCard, const char *sip_ */ LINPHONE_PUBLIC MSList* linphone_vcard_get_sip_addresses(const LinphoneVcard *vCard); +/** + * Adds a phone number in the vCard, using the TEL property + * @param[in] vCard the LinphoneVcard + * @param[in] sip_address the phone number to add + */ +void linphone_vcard_add_phone_number(LinphoneVcard *vCard, const char *phone); + +/** + * Removes a phone number in the vCard (if it exists), using the TEL property + * @param[in] vCard the LinphoneVcard + * @param[in] sip_address the phone number to remove + */ +void linphone_vcard_remove_phone_number(LinphoneVcard *vCard, const char *phone); + +/** + * Returns the list of phone numbers (as string) in the vCard (all the TEL attributes) or NULL + * @param[in] vCard the LinphoneVcard + * @return \mslist{const char *} + */ +LINPHONE_PUBLIC MSList* linphone_vcard_get_phone_numbers(const LinphoneVcard *vCard); + +/** + * Returns the list of SIP addresses (as string) in the vCard (all the IMPP attributes that has an URI value starting by "sip:") or NULL + * @param[in] vCard the LinphoneVcard + * @return \mslist{const char *} + */ +LINPHONE_PUBLIC MSList* linphone_vcard_get_sip_addresses(const LinphoneVcard *vCard); + /** * Fills the Organization field of the vCard * @param[in] vCard the LinphoneVcard diff --git a/coreapi/vcard_stubs.c b/coreapi/vcard_stubs.c index 6e9a33a3b..0a0fa20ae 100644 --- a/coreapi/vcard_stubs.c +++ b/coreapi/vcard_stubs.c @@ -71,6 +71,18 @@ MSList* linphone_vcard_get_sip_addresses(const LinphoneVcard *vCard) { return NULL; } +void linphone_vcard_add_phone_number(LinphoneVcard *vCard, const char *phone) { + +} + +void linphone_vcard_remove_phone_number(LinphoneVcard *vCard, const char *phone) { + +} + +MSList* linphone_vcard_get_phone_numbers(const LinphoneVcard *vCard) { + return NULL; +} + void linphone_vcard_set_organization(LinphoneVcard *vCard, const char *organization) { } From b068c854ef5186925d9cf23cb16ef541b2e39077 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Fri, 25 Mar 2016 15:22:12 +0100 Subject: [PATCH 30/53] Added tester + few fixes --- coreapi/friend.c | 15 ++++++----- coreapi/linphonefriend.h | 4 +-- tester/vcard_tester.c | 58 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 69 insertions(+), 8 deletions(-) diff --git a/coreapi/friend.c b/coreapi/friend.c index 2025a67af..5557a77d2 100644 --- a/coreapi/friend.c +++ b/coreapi/friend.c @@ -229,10 +229,11 @@ void linphone_friend_add_address(LinphoneFriend *lf, const LinphoneAddress *addr linphone_vcard_add_sip_address(vcard, linphone_address_as_string_uri_only(addr)); } -const MSList* linphone_friend_get_addresses(LinphoneFriend *lf) { +MSList* linphone_friend_get_addresses(LinphoneFriend *lf) { LinphoneVcard *vcard = NULL; MSList *sipAddresses = NULL; MSList *addresses = NULL; + MSList *iterator = NULL; if (!lf) { return NULL; @@ -244,14 +245,16 @@ const MSList* linphone_friend_get_addresses(LinphoneFriend *lf) { } sipAddresses = linphone_vcard_get_sip_addresses(vcard); - if (sipAddresses) { - const char *sipAddress = (const char *)sipAddresses->data; + iterator = sipAddresses; + while (iterator) { + const char *sipAddress = (const char *)iterator->data; LinphoneAddress *addr = linphone_address_new(sipAddress); if (addr) { - ms_list_append(addresses, addr); + addresses = ms_list_append(addresses, addr); } - ms_list_free(sipAddresses); + iterator = ms_list_next(iterator); } + if (sipAddresses) ms_list_free(sipAddresses); return addresses; } @@ -283,7 +286,7 @@ void linphone_friend_add_phone_number(LinphoneFriend *lf, const char *phone) { linphone_vcard_add_phone_number(vcard, phone); } -const MSList* linphone_friend_get_phone_numbers(LinphoneFriend *lf) { +MSList* linphone_friend_get_phone_numbers(LinphoneFriend *lf) { LinphoneVcard *vcard = NULL; if (!lf) { diff --git a/coreapi/linphonefriend.h b/coreapi/linphonefriend.h index 4cbffbbfd..dac4afa24 100644 --- a/coreapi/linphonefriend.h +++ b/coreapi/linphonefriend.h @@ -176,7 +176,7 @@ LINPHONE_PUBLIC void linphone_friend_add_address(LinphoneFriend *lf, const Linph * @param lf #LinphoneFriend object * @return \mslist{LinphoneAddress} */ -LINPHONE_PUBLIC const MSList* linphone_friend_get_addresses(LinphoneFriend *lf); +LINPHONE_PUBLIC MSList* linphone_friend_get_addresses(LinphoneFriend *lf); /** * Removes an address in this friend @@ -197,7 +197,7 @@ LINPHONE_PUBLIC void linphone_friend_add_phone_number(LinphoneFriend *lf, const * @param lf #LinphoneFriend object * @return a MSList of phone numbers */ -LINPHONE_PUBLIC const MSList* linphone_friend_get_phone_numbers(LinphoneFriend *lf); +LINPHONE_PUBLIC MSList* linphone_friend_get_phone_numbers(LinphoneFriend *lf); /** * Removes a phone number in this friend diff --git a/tester/vcard_tester.c b/tester/vcard_tester.c index 496fb3604..5bb38fb22 100644 --- a/tester/vcard_tester.c +++ b/tester/vcard_tester.c @@ -129,6 +129,63 @@ static void linphone_vcard_update_existing_friends_test(void) { lf = NULL; } +static void linphone_vcard_phone_numbers_and_sip_addresses(void) { + LinphoneVcard *lvc = linphone_vcard_new_from_vcard4_buffer("BEGIN:VCARD\r\nVERSION:4.0\r\nFN:Sylvain Berfini\r\nIMPP:sip:sberfini@sip.linphone.org\r\nIMPP;TYPE=home:sip:sylvain@sip.linphone.org\r\nTEL;TYPE=work:0952636505\r\nEND:VCARD\r\n"); + LinphoneFriend *lf = linphone_friend_new_from_vcard(lvc); + MSList *sip_addresses = linphone_friend_get_addresses(lf); + MSList *phone_numbers = linphone_friend_get_phone_numbers(lf); + LinphoneAddress *addr = NULL; + + BC_ASSERT_EQUAL(ms_list_size(sip_addresses), 2, int, "%i"); + BC_ASSERT_EQUAL(ms_list_size(phone_numbers), 1, int, "%i"); + if (sip_addresses) ms_list_free_with_data(sip_addresses, (void (*)(void *))linphone_address_unref); + if (phone_numbers) ms_list_free(phone_numbers); + linphone_friend_unref(lf); + + lvc = linphone_vcard_new_from_vcard4_buffer("BEGIN:VCARD\r\nVERSION:4.0\r\nFN:Sylvain Berfini\r\nTEL;TYPE=work:0952636505\r\nTEL:0476010203\r\nEND:VCARD\r\n"); + lf = linphone_friend_new_from_vcard(lvc); + sip_addresses = linphone_friend_get_addresses(lf); + phone_numbers = linphone_friend_get_phone_numbers(lf); + + BC_ASSERT_EQUAL(ms_list_size(sip_addresses), 0, int, "%i"); + BC_ASSERT_EQUAL(ms_list_size(phone_numbers), 2, int, "%i"); + if (sip_addresses) ms_list_free_with_data(sip_addresses, (void (*)(void *))linphone_address_unref); + if (phone_numbers) ms_list_free(phone_numbers); + + addr = linphone_address_new("sip:sylvain@sip.linphone.org"); + linphone_friend_add_address(lf, addr); + linphone_address_unref(addr); + sip_addresses = linphone_friend_get_addresses(lf); + BC_ASSERT_EQUAL(ms_list_size(sip_addresses), 1, int, "%i"); + if (sip_addresses) ms_list_free_with_data(sip_addresses, (void (*)(void *))linphone_address_unref); + + linphone_friend_remove_phone_number(lf, "0952636505"); + phone_numbers = linphone_friend_get_phone_numbers(lf); + BC_ASSERT_EQUAL(ms_list_size(phone_numbers), 1, int, "%i"); + if (phone_numbers) ms_list_free(phone_numbers); + + linphone_friend_remove_phone_number(lf, "0476010203"); + phone_numbers = linphone_friend_get_phone_numbers(lf); + BC_ASSERT_EQUAL(ms_list_size(phone_numbers), 0, int, "%i"); + if (phone_numbers) ms_list_free(phone_numbers); + + addr = linphone_address_new("sip:sylvain@sip.linphone.org"); + linphone_friend_remove_address(lf, addr); + linphone_address_unref(addr); + sip_addresses = linphone_friend_get_addresses(lf); + BC_ASSERT_EQUAL(ms_list_size(sip_addresses), 0, int, "%i"); + if (sip_addresses) ms_list_free_with_data(sip_addresses, (void (*)(void *))linphone_address_unref); + + linphone_friend_add_phone_number(lf, "+33952636505"); + phone_numbers = linphone_friend_get_phone_numbers(lf); + BC_ASSERT_EQUAL(ms_list_size(phone_numbers), 1, int, "%i"); + if (phone_numbers) ms_list_free(phone_numbers); + + linphone_friend_unref(lf); + lf = NULL; + lvc = NULL; +} + static void friends_if_no_db_set(void) { LinphoneCoreManager* manager = linphone_core_manager_new2("empty_rc", FALSE); LinphoneFriend *lf = linphone_core_create_friend(manager->lc); @@ -663,6 +720,7 @@ test_t vcard_tests[] = { { "Import / Export friends from vCards", linphone_vcard_import_export_friends_test }, { "Import a lot of friends from vCards", linphone_vcard_import_a_lot_of_friends_test }, { "vCard creation for existing friends", linphone_vcard_update_existing_friends_test }, + { "vCard phone numbers and SIP addresses", linphone_vcard_phone_numbers_and_sip_addresses }, #ifdef FRIENDS_SQL_STORAGE_ENABLED { "Friends working if no db set", friends_if_no_db_set }, { "Friends storage migration from rc to db", friends_migration }, From c946d7064e9afcae27ad147f5840d4f3bac0786a Mon Sep 17 00:00:00 2001 From: Ghislain MARY Date: Fri, 25 Mar 2016 16:29:31 +0100 Subject: [PATCH 31/53] Update ms2 and ortp submodule. --- mediastreamer2 | 2 +- oRTP | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/mediastreamer2 b/mediastreamer2 index c04430db7..827048107 160000 --- a/mediastreamer2 +++ b/mediastreamer2 @@ -1 +1 @@ -Subproject commit c04430db7777cf8d93ddfd4d3789f677657e48bf +Subproject commit 827048107e76e116e3c8ef188cff1fb91d83f4b1 diff --git a/oRTP b/oRTP index 56a8d75fb..146a8b2bf 160000 --- a/oRTP +++ b/oRTP @@ -1 +1 @@ -Subproject commit 56a8d75fbd8d667ab2102011700cdc2a46243a3b +Subproject commit 146a8b2bf5f8768aa7596f48084f783bf31d1bf0 From 6f31200e5007c929a9891b4822a0274368c574f6 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Fri, 25 Mar 2016 15:43:38 +0100 Subject: [PATCH 32/53] Added JNI wrapper --- coreapi/linphonecore_jni.cc | 64 +++++++++++++++++++ .../org/linphone/core/LinphoneFriend.java | 8 +++ .../org/linphone/core/LinphoneFriendImpl.java | 50 +++++++++++++++ 3 files changed, 122 insertions(+) diff --git a/coreapi/linphonecore_jni.cc b/coreapi/linphonecore_jni.cc index 62396b464..0363c640a 100644 --- a/coreapi/linphonecore_jni.cc +++ b/coreapi/linphonecore_jni.cc @@ -3418,8 +3418,72 @@ extern "C" void Java_org_linphone_core_LinphoneFriendListImpl_updateSubscription linphone_friend_list_update_subscriptions((LinphoneFriendList*)friendListptr, (LinphoneProxyConfig*)proxyConfigPtr, jonlyWhenRegistered); } +extern "C" jlongArray Java_org_linphone_core_LinphoneFriendImpl_getAddresses(JNIEnv* env + ,jobject thiz + ,jlong ptr) { + MSList *addresses = linphone_friend_get_addresses((LinphoneFriend*)ptr); + int size = ms_list_size(addresses); + jlongArray jaddresses = env->NewLongArray(size); + jlong *jInternalArray = env->GetLongArrayElements(jaddresses, NULL); + for (int i = 0; i < size; i++) { + jInternalArray[i] = (unsigned long) (addresses->data); + addresses = ms_list_next(addresses); + } + ms_list_free(addresses); + env->ReleaseLongArrayElements(jaddresses, jInternalArray, 0); + return jaddresses; +} +extern "C" void Java_org_linphone_core_LinphoneFriendImpl_addAddress(JNIEnv* env + ,jobject thiz + ,jlong ptr + ,jlong jaddress) { + linphone_friend_add_address((LinphoneFriend*)ptr, (LinphoneAddress*)jaddress); +} +extern "C" void Java_org_linphone_core_LinphoneFriendImpl_removeAddress(JNIEnv* env + ,jobject thiz + ,jlong ptr + ,jlong jaddress) { + linphone_friend_remove_address((LinphoneFriend*)ptr, (LinphoneAddress*)jaddress); +} + +extern "C" jobjectArray Java_org_linphone_core_LinphoneFriendImpl_getPhoneNumbers(JNIEnv* env + ,jobject thiz + ,jlong ptr) { + MSList *phone_numbers = linphone_friend_get_phone_numbers((LinphoneFriend*)ptr); + int size = ms_list_size(phone_numbers); + jobjectArray jphonenumbers = env->NewObjectArray(size, env->FindClass("java/lang/String"), env->NewStringUTF("")); + for (int i = 0; i < size; i++) { + const char *phone = (const char *)phone_numbers->data; + env->SetObjectArrayElement(jphonenumbers, i, env->NewStringUTF(phone)); + phone_numbers = ms_list_next(phone_numbers); + } + ms_list_free(phone_numbers); + return jphonenumbers; +} + +extern "C" void Java_org_linphone_core_LinphoneFriendImpl_addPhoneNumber(JNIEnv* env + ,jobject thiz + ,jlong ptr + ,jstring jphone) { + if (jphone) { + const char* phone = env->GetStringUTFChars(jphone, NULL); + linphone_friend_add_phone_number((LinphoneFriend*)ptr, phone); + env->ReleaseStringUTFChars(jphone, phone); + } +} + +extern "C" void Java_org_linphone_core_LinphoneFriendImpl_removePhoneNumber(JNIEnv* env + ,jobject thiz + ,jlong ptr + ,jstring jphone) { + if (jphone) { + const char* phone = env->GetStringUTFChars(jphone, NULL); + linphone_friend_remove_phone_number((LinphoneFriend*)ptr, phone); + env->ReleaseStringUTFChars(jphone, phone); + } +} extern "C" jlong Java_org_linphone_core_LinphoneFriendImpl_getAddress(JNIEnv* env ,jobject thiz diff --git a/java/common/org/linphone/core/LinphoneFriend.java b/java/common/org/linphone/core/LinphoneFriend.java index af55605a6..a44b2546e 100644 --- a/java/common/org/linphone/core/LinphoneFriend.java +++ b/java/common/org/linphone/core/LinphoneFriend.java @@ -165,4 +165,12 @@ public interface LinphoneFriend { * @return */ String getOrganization(); + + LinphoneAddress[] getAddresses(); + void addAddress(LinphoneAddress addr); + void removeAddress(LinphoneAddress addr); + + String[] getPhoneNumbers(); + void addPhoneNumber(String phone); + void removePhoneNumber(String phone); } diff --git a/java/impl/org/linphone/core/LinphoneFriendImpl.java b/java/impl/org/linphone/core/LinphoneFriendImpl.java index 3cc45ec21..86240d8c9 100644 --- a/java/impl/org/linphone/core/LinphoneFriendImpl.java +++ b/java/impl/org/linphone/core/LinphoneFriendImpl.java @@ -146,4 +146,54 @@ class LinphoneFriendImpl implements LinphoneFriend, Serializable { public String getOrganization() { return getOrganization(nativePtr); } + + private native long[] getAddresses(long nativePtr); + @Override + public LinphoneAddress[] getAddresses() { + long[] ptrs = getAddresses(nativePtr); + if (ptrs == null) return null; + + LinphoneAddress[] addresses = new LinphoneAddress[ptrs.length]; + for (int i = 0; i < addresses.length; i++) { + addresses[i] = new LinphoneAddressImpl(ptrs[i], LinphoneAddressImpl.WrapMode.FromConst); + } + return addresses; + } + + private native void addAddress(long nativePtr, long addr); + @Override + public void addAddress(LinphoneAddress addr) { + addAddress(nativePtr, ((LinphoneAddressImpl)addr).nativePtr); + } + + private native void removeAddress(long nativePtr, long addr); + @Override + public void removeAddress(LinphoneAddress addr) { + removeAddress(nativePtr, ((LinphoneAddressImpl)addr).nativePtr); + } + + private native Object[] getPhoneNumbers(long nativePtr); + @Override + public String[] getPhoneNumbers() { + Object[] phones = getPhoneNumbers(nativePtr); + if (phones == null) return null; + + String[] phoneNumbers = new String[phones.length]; + for (int i = 0; i < phones.length; i++) { + phoneNumbers[i] = phones[i].toString(); + } + return phoneNumbers; + } + + private native void addPhoneNumber(long nativePtr, String phone); + @Override + public void addPhoneNumber(String phone) { + addPhoneNumber(nativePtr, phone); + } + + private native void removePhoneNumber(long nativePtr, String phone); + @Override + public void removePhoneNumber(String phone) { + removePhoneNumber(nativePtr, phone); + } } From 9f00c5cd766cef40701cf57560ec372a8a0ad71b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Grisez?= Date: Tue, 29 Mar 2016 11:11:16 +0200 Subject: [PATCH 33/53] Fixes memory leaks in linphone_call_make_local_media_description() --- coreapi/linphonecall.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/coreapi/linphonecall.c b/coreapi/linphonecall.c index 39089fdbe..5e5e78bcd 100644 --- a/coreapi/linphonecall.c +++ b/coreapi/linphonecall.c @@ -751,6 +751,7 @@ void linphone_call_make_local_media_description(LinphoneCall *call) { } else { ms_message("Don't put audio stream on local offer for call [%p]",call); md->streams[call->main_audio_stream_index].dir = SalStreamInactive; + if(l) l=ms_list_free_with_data(l, (void (*)(void *))payload_type_destroy); } if (params->custom_sdp_media_attributes[LinphoneStreamTypeAudio]) md->streams[call->main_audio_stream_index].custom_sdp_attributes = sal_custom_sdp_attribute_clone(params->custom_sdp_media_attributes[LinphoneStreamTypeAudio]); @@ -785,6 +786,7 @@ void linphone_call_make_local_media_description(LinphoneCall *call) { } else { ms_message("Don't put video stream on local offer for call [%p]",call); md->streams[call->main_video_stream_index].dir = SalStreamInactive; + if(l) l=ms_list_free_with_data(l, (void (*)(void *))payload_type_destroy); } if (params->custom_sdp_media_attributes[LinphoneStreamTypeVideo]) md->streams[call->main_video_stream_index].custom_sdp_attributes = sal_custom_sdp_attribute_clone(params->custom_sdp_media_attributes[LinphoneStreamTypeVideo]); From 993b97dd94ed1c9a5ff319e04c859602b27ec073 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Grisez?= Date: Tue, 29 Mar 2016 11:12:16 +0200 Subject: [PATCH 34/53] Fixes memory leak in LinphoneCall The onhold_file attribute was not freed in the LinphoneCall destructor --- coreapi/linphonecall.c | 1 + 1 file changed, 1 insertion(+) diff --git a/coreapi/linphonecall.c b/coreapi/linphonecall.c index 5e5e78bcd..71a3ccb81 100644 --- a/coreapi/linphonecall.c +++ b/coreapi/linphonecall.c @@ -1715,6 +1715,7 @@ static void linphone_call_destroy(LinphoneCall *obj){ linphone_address_unref(obj->me); obj->me = NULL; } + if (obj->onhold_file) ms_free(obj->onhold_file); sal_error_info_reset(&obj->non_op_error); } From 8607cd54df57f229dd21d28e742a871611db2237 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Grisez?= Date: Tue, 29 Mar 2016 11:17:21 +0200 Subject: [PATCH 35/53] Remove all linphone_call_ref/unref() off conference server simulator code --- tester/tester.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tester/tester.c b/tester/tester.c index 811b86e46..7a2c47cbd 100644 --- a/tester/tester.c +++ b/tester/tester.c @@ -721,14 +721,13 @@ static void linphone_conference_server_call_state_changed(LinphoneCore *lc, Linp if(linphone_call_get_conference(call) == NULL) { linphone_core_add_to_conference(lc, call); linphone_core_leave_conference(lc); - if(conf_srv->first_call == NULL) conf_srv->first_call = linphone_call_ref(call); + if(conf_srv->first_call == NULL) conf_srv->first_call = call; } break; case LinphoneCallEnd: if(call == conf_srv->first_call) { linphone_core_terminate_conference(lc); - linphone_call_unref(call); conf_srv->first_call = NULL; } break; From dcdbf8834a0be929e6995460bf8e4e4f71ab516e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Grisez?= Date: Tue, 29 Mar 2016 11:20:03 +0200 Subject: [PATCH 36/53] Ensures all calls are ended at the end of simple_conference_base() --- tester/multi_call_tester.c | 1 + 1 file changed, 1 insertion(+) diff --git a/tester/multi_call_tester.c b/tester/multi_call_tester.c index fb72a561f..784305fde 100644 --- a/tester/multi_call_tester.c +++ b/tester/multi_call_tester.c @@ -343,6 +343,7 @@ static void simple_conference_base(LinphoneCoreManager* marie, LinphoneCoreManag BC_ASSERT_TRUE(wait_for_list(lcs,&pauline->stat.number_of_LinphoneCallEnd,is_remote_conf?2:1,10000)); BC_ASSERT_TRUE(wait_for_list(lcs,&marie->stat.number_of_LinphoneCallEnd,is_remote_conf?3:1,10000)); BC_ASSERT_TRUE(wait_for_list(lcs,&laure->stat.number_of_LinphoneCallEnd,is_remote_conf?2:1,10000)); + if(is_remote_conf) BC_ASSERT_TRUE(wait_for_list(lcs,&focus->stat.number_of_LinphoneCallEnd,3,10000)); end: ms_list_free(lcs); From cde913c79ca78784b4dc883eea946b912bb0733e Mon Sep 17 00:00:00 2001 From: Gautier Pelloux-Prayer Date: Tue, 29 Mar 2016 11:59:01 +0200 Subject: [PATCH 37/53] setupwizard.c: fix typo --- gtk/setupwizard.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gtk/setupwizard.c b/gtk/setupwizard.c index 63b6cec6f..807c8a4d7 100644 --- a/gtk/setupwizard.c +++ b/gtk/setupwizard.c @@ -309,7 +309,7 @@ void linphone_gtk_account_creation_password_changed(GtkEntry *entry) { } else { if (gtk_entry_get_text_length(password) < PASSWORD_MIN_SIZE) { gtk_label_set_text(passwordError, "Password is too short !"); - } else if (!g_ascii_strcasecmp(gtk_entry_get_text(password), gtk_entry_get_text(password_confirm)) == 0) { + } else if (g_ascii_strcasecmp(gtk_entry_get_text(password), gtk_entry_get_text(password_confirm)) != 0) { gtk_label_set_text(passwordError, "Passwords don't match !"); } g_object_set_data(G_OBJECT(page), "is_password_correct", GINT_TO_POINTER(0)); From 8388d4b48edc03295b73e13d55364a72425a47b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Grisez?= Date: Tue, 29 Mar 2016 15:30:35 +0200 Subject: [PATCH 38/53] Fixes a memory leak while displaying a message --- coreapi/linphonecore.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/coreapi/linphonecore.c b/coreapi/linphonecore.c index c4a15790e..c99b4b78c 100644 --- a/coreapi/linphonecore.c +++ b/coreapi/linphonecore.c @@ -4173,6 +4173,7 @@ int linphone_core_preempt_sound_resources(LinphoneCore *lc){ int linphone_core_resume_call(LinphoneCore *lc, LinphoneCall *call){ char temp[255]={0}; const char *subject="Call resuming"; + char *tmp; if(call->state!=LinphoneCallPaused ){ ms_warning("we cannot resume a call that has not been established and paused before"); @@ -4213,7 +4214,8 @@ int linphone_core_resume_call(LinphoneCore *lc, LinphoneCall *call){ linphone_call_set_state(call,LinphoneCallResuming,"Resuming"); if (call->params->in_conference==FALSE) lc->current_call=call; - snprintf(temp,sizeof(temp)-1,"Resuming the call with %s",linphone_call_get_remote_address_as_string(call)); + snprintf(temp,sizeof(temp)-1,"Resuming the call with %s",(tmp = linphone_call_get_remote_address_as_string(call))); + ms_free(tmp); linphone_core_notify_display_status(lc,temp); if (lc->sip_conf.sdp_200_ack){ From f2bba9df2f66874854c52608c24f48d824b3170c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Grisez?= Date: Tue, 29 Mar 2016 15:31:02 +0200 Subject: [PATCH 39/53] Ensures that all calls have been release at the end of simple_conference_base() Also removes the "LeaksMemory" tag off tests below: + Simple conference + Simple conference with ICE + Simple ZRTP conference with ICE --- tester/multi_call_tester.c | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/tester/multi_call_tester.c b/tester/multi_call_tester.c index 784305fde..a749f905e 100644 --- a/tester/multi_call_tester.c +++ b/tester/multi_call_tester.c @@ -341,9 +341,14 @@ static void simple_conference_base(LinphoneCoreManager* marie, LinphoneCoreManag linphone_core_terminate_conference(marie->lc); BC_ASSERT_TRUE(wait_for_list(lcs,&pauline->stat.number_of_LinphoneCallEnd,is_remote_conf?2:1,10000)); - BC_ASSERT_TRUE(wait_for_list(lcs,&marie->stat.number_of_LinphoneCallEnd,is_remote_conf?3:1,10000)); + BC_ASSERT_TRUE(wait_for_list(lcs,&marie->stat.number_of_LinphoneCallEnd,is_remote_conf?3:2,10000)); BC_ASSERT_TRUE(wait_for_list(lcs,&laure->stat.number_of_LinphoneCallEnd,is_remote_conf?2:1,10000)); if(is_remote_conf) BC_ASSERT_TRUE(wait_for_list(lcs,&focus->stat.number_of_LinphoneCallEnd,3,10000)); + + BC_ASSERT_TRUE(wait_for_list(lcs,&pauline->stat.number_of_LinphoneCallReleased,is_remote_conf?2:1,10000)); + BC_ASSERT_TRUE(wait_for_list(lcs,&marie->stat.number_of_LinphoneCallReleased,is_remote_conf?3:2,10000)); + BC_ASSERT_TRUE(wait_for_list(lcs,&laure->stat.number_of_LinphoneCallReleased,is_remote_conf?2:1,10000)); + if(is_remote_conf) BC_ASSERT_TRUE(wait_for_list(lcs,&focus->stat.number_of_LinphoneCallReleased,3,10000)); end: ms_list_free(lcs); @@ -801,6 +806,11 @@ static void eject_from_4_participants_conference(void) { BC_ASSERT_TRUE(wait_for_list(lcs,&marie->stat.number_of_LinphoneCallEnd,1,10000)); BC_ASSERT_TRUE(wait_for_list(lcs,&laure->stat.number_of_LinphoneCallEnd,1,10000)); BC_ASSERT_TRUE(wait_for_list(lcs,&michelle->stat.number_of_LinphoneCallEnd,1,10000)); + + BC_ASSERT_TRUE(wait_for_list(lcs,&pauline->stat.number_of_LinphoneCallReleased,1,10000)); + BC_ASSERT_TRUE(wait_for_list(lcs,&marie->stat.number_of_LinphoneCallReleased,1,10000)); + BC_ASSERT_TRUE(wait_for_list(lcs,&laure->stat.number_of_LinphoneCallReleased,1,10000)); + BC_ASSERT_TRUE(wait_for_list(lcs,&michelle->stat.number_of_LinphoneCallReleased,1,10000)); ms_list_free(lcs); @@ -912,9 +922,9 @@ test_t multi_call_tests[] = { TEST_ONE_TAG("Incoming call accepted when outgoing call in progress", incoming_call_accepted_when_outgoing_call_in_progress, "LeaksMemory"), TEST_ONE_TAG("Incoming call accepted when outgoing call in outgoing ringing", incoming_call_accepted_when_outgoing_call_in_outgoing_ringing, "LeaksMemory"), TEST_ONE_TAG("Incoming call accepted when outgoing call in outgoing ringing early media", incoming_call_accepted_when_outgoing_call_in_outgoing_ringing_early_media, "LeaksMemory"), - TEST_ONE_TAG("Simple conference", simple_conference, "LeaksMemory"), - TEST_TWO_TAGS("Simple conference with ICE", simple_conference_with_ice, "ICE", "LeaksMemory"), - TEST_TWO_TAGS("Simple ZRTP conference with ICE", simple_zrtp_conference_with_ice, "ICE", "LeaksMemory"), + TEST_NO_TAG("Simple conference", simple_conference), + TEST_TWO_TAGS("Simple conference with ICE", simple_conference_with_ice, "ICE",), + TEST_TWO_TAGS("Simple ZRTP conference with ICE", simple_zrtp_conference_with_ice, "ICE",), TEST_NO_TAG("Eject from 3 participants conference", eject_from_3_participants_local_conference), TEST_ONE_TAG("Eject from 4 participants conference", eject_from_4_participants_conference, "LeaksMemory"), TEST_NO_TAG("Simple call transfer", simple_call_transfer), From 18ee71beab0920683f34d48afe0c8d30b1a4dfc7 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Tue, 29 Mar 2016 16:54:22 +0200 Subject: [PATCH 40/53] Fix leak in LinphoneChatRoom refs --- coreapi/linphonecore_jni.cc | 68 ++++++++++++++----- .../org/linphone/core/LinphoneCallImpl.java | 4 +- .../linphone/core/LinphoneChatRoomImpl.java | 10 ++- .../org/linphone/core/LinphoneCoreImpl.java | 14 ++-- 4 files changed, 69 insertions(+), 27 deletions(-) diff --git a/coreapi/linphonecore_jni.cc b/coreapi/linphonecore_jni.cc index 62396b464..7a0f504bb 100644 --- a/coreapi/linphonecore_jni.cc +++ b/coreapi/linphonecore_jni.cc @@ -506,6 +506,31 @@ jobject getChatMessage(JNIEnv *env, LinphoneChatMessage *msg){ return jobj; } +jobject getChatRoom(JNIEnv *env, LinphoneChatRoom *room) { + jobject jobj = 0; + + if (room != NULL){ + LinphoneCore *lc = linphone_chat_room_get_core(room); + LinphoneJavaBindings *ljb = (LinphoneJavaBindings *)linphone_core_get_user_data(lc); + + void *up = linphone_chat_room_get_user_data(room); + if (up == NULL) { + // take implicit local ref + jobj = env->NewObject(ljb->chatRoomClass, ljb->chatRoomCtrId, (jlong)room); + linphone_chat_room_set_user_data(room, (void*)env->NewWeakGlobalRef(jobj)); + linphone_chat_room_ref(room); + } else { + jobj = env->NewLocalRef((jobject)up); + if (jobj == NULL) { + // takes implicit local ref + jobj=env->NewObject(ljb->chatRoomClass, ljb->chatRoomCtrId, (jlong)room); + linphone_chat_room_set_user_data(room, (void*)env->NewWeakGlobalRef(jobj)); + } + } + } + return jobj; +} + jobject getFriend(JNIEnv *env, LinphoneFriend *lfriend){ jobject jobj=0; @@ -911,7 +936,6 @@ public: } static void message_received(LinphoneCore *lc, LinphoneChatRoom *room, LinphoneChatMessage *msg) { JNIEnv *env = 0; - jobject jmsg; jint result = jvm->AttachCurrentThread(&env,NULL); if (result != 0) { ms_error("cannot attach VM"); @@ -925,8 +949,8 @@ public: env->CallVoidMethod(lcData->listener ,ljb->messageReceivedId ,lcData->core - ,env->NewObject(ljb->chatRoomClass,ljb->chatRoomCtrId,(jlong)room) - ,(jmsg = getChatMessage(env, msg))); + ,getChatRoom(env, room) + ,getChatMessage(env, msg)); handle_possible_java_exception(env, lcData->listener); } static void is_composing_received(LinphoneCore *lc, LinphoneChatRoom *room) { @@ -943,7 +967,7 @@ public: env->CallVoidMethod(lcData->listener ,ljb->isComposingReceivedId ,lcData->core - ,env->NewObject(ljb->chatRoomClass,ljb->chatRoomCtrId,(jlong)room)); + ,getChatRoom(env, room)); handle_possible_java_exception(env, lcData->listener); } static void ecCalibrationStatus(LinphoneCore *lc, LinphoneEcCalibratorStatus status, int delay_ms, void *data) { @@ -2133,7 +2157,7 @@ JNIEXPORT jobject JNICALL Java_org_linphone_core_LinphoneCoreImpl_getPresenceMod RETURN_USER_DATA_OBJECT("PresenceModelImpl", linphone_presence_model, model) } -extern "C" jlong Java_org_linphone_core_LinphoneCoreImpl_getOrCreateChatRoom(JNIEnv* env +extern "C" jobject Java_org_linphone_core_LinphoneCoreImpl_getOrCreateChatRoom(JNIEnv* env ,jobject thiz ,jlong lc ,jstring jto) { @@ -2141,15 +2165,15 @@ extern "C" jlong Java_org_linphone_core_LinphoneCoreImpl_getOrCreateChatRoom(JNI const char* to = env->GetStringUTFChars(jto, NULL); LinphoneChatRoom* lResult = linphone_core_get_chat_room_from_uri((LinphoneCore*)lc,to); env->ReleaseStringUTFChars(jto, to); - return (jlong)lResult; + return getChatRoom(env, lResult); } -extern "C" jlong Java_org_linphone_core_LinphoneCoreImpl_getChatRoom(JNIEnv* env +extern "C" jobject Java_org_linphone_core_LinphoneCoreImpl_getChatRoom(JNIEnv* env ,jobject thiz ,jlong lc ,jlong to) { LinphoneChatRoom* lResult = linphone_core_get_chat_room((LinphoneCore*)lc,(LinphoneAddress *)to); - return (jlong)lResult; + return getChatRoom(env, lResult); } extern "C" void Java_org_linphone_core_LinphoneCoreImpl_enableVideo(JNIEnv* env @@ -3998,21 +4022,25 @@ extern "C" void Java_org_linphone_core_LinphoneChatMessageImpl_unref(JNIEnv* en linphone_chat_message_unref((LinphoneChatMessage*)ptr); } -extern "C" jlongArray Java_org_linphone_core_LinphoneCoreImpl_getChatRooms(JNIEnv* env +extern "C" jobjectArray Java_org_linphone_core_LinphoneCoreImpl_getChatRooms(JNIEnv* env ,jobject thiz ,jlong ptr) { - const MSList* chats = linphone_core_get_chat_rooms((LinphoneCore*)ptr); + LinphoneCore *lc = (LinphoneCore*)ptr; + const MSList* chats = linphone_core_get_chat_rooms(lc); + LinphoneJavaBindings *ljb = (LinphoneJavaBindings *)linphone_core_get_user_data(lc); int chatsSize = ms_list_size(chats); - jlongArray jChats = env->NewLongArray(chatsSize); - jlong *jInternalArray = env->GetLongArrayElements(jChats, NULL); + jobjectArray jChats = env->NewObjectArray(chatsSize, ljb->chatRoomClass, NULL); for (int i = 0; i < chatsSize; i++) { - jInternalArray[i] = (unsigned long) (chats->data); + LinphoneChatRoom *room = (LinphoneChatRoom *)chats->data; + jobject jroom = getChatRoom(env, room); + if (jroom != NULL) { + env->SetObjectArrayElement(jChats, i, jroom); + env->DeleteLocalRef(jroom); + } chats = chats->next; } - env->ReleaseLongArrayElements(jChats, jInternalArray, 0); - return jChats; } @@ -6852,8 +6880,8 @@ JNIEXPORT jstring JNICALL Java_org_linphone_core_LinphoneCoreImpl_getVideoPreset return tmp ? env->NewStringUTF(tmp) : NULL; } -extern "C" jlong Java_org_linphone_core_LinphoneCallImpl_getChatRoom(JNIEnv* env ,jobject thiz, jlong ptr) { - return (jlong) linphone_call_get_chat_room((LinphoneCall *) ptr); +extern "C" jobject Java_org_linphone_core_LinphoneCallImpl_getChatRoom(JNIEnv* env ,jobject thiz, jlong ptr) { + return getChatRoom(env, linphone_call_get_chat_room((LinphoneCall *) ptr)); } extern "C" void Java_org_linphone_core_LinphoneCallParamsImpl_enableRealTimeText(JNIEnv* env ,jobject thiz, jlong ptr, jboolean yesno) { @@ -6868,6 +6896,12 @@ extern "C" void Java_org_linphone_core_LinphoneChatMessageImpl_putChar(JNIEnv* e linphone_chat_message_put_char((LinphoneChatMessage *)ptr, character); } +extern "C" void Java_org_linphone_core_LinphoneChatRoomImpl_finalize(JNIEnv* env, jobject thiz, jlong ptr) { + LinphoneChatRoom *room = (LinphoneChatRoom *)ptr; + linphone_chat_room_set_user_data(room, NULL); + linphone_chat_room_unref(room); +} + extern "C" jobject Java_org_linphone_core_LinphoneChatRoomImpl_getCall(JNIEnv* env ,jobject thiz, jlong ptr) { return getCall(env, linphone_chat_room_get_call((LinphoneChatRoom *)ptr)); } diff --git a/java/impl/org/linphone/core/LinphoneCallImpl.java b/java/impl/org/linphone/core/LinphoneCallImpl.java index 40226a4d3..c25064882 100644 --- a/java/impl/org/linphone/core/LinphoneCallImpl.java +++ b/java/impl/org/linphone/core/LinphoneCallImpl.java @@ -259,10 +259,10 @@ class LinphoneCallImpl implements LinphoneCall { return new LinphonePlayerImpl(getPlayer(nativePtr)); } - private native long getChatRoom(long nativePtr); + private native Object getChatRoom(long nativePtr); @Override public LinphoneChatRoom getChatRoom() { - return new LinphoneChatRoomImpl(getChatRoom(nativePtr)); + return (LinphoneChatRoom)(getChatRoom(nativePtr)); } @Override diff --git a/java/impl/org/linphone/core/LinphoneChatRoomImpl.java b/java/impl/org/linphone/core/LinphoneChatRoomImpl.java index 18d294502..ffb0b521a 100644 --- a/java/impl/org/linphone/core/LinphoneChatRoomImpl.java +++ b/java/impl/org/linphone/core/LinphoneChatRoomImpl.java @@ -43,7 +43,15 @@ class LinphoneChatRoomImpl implements LinphoneChatRoom { String url, int state, long timestamp, boolean isRead, boolean isIncoming); private native void sendChatMessage(long ptr, Object message, long messagePtr); - + private native void finalize(long nativePtr); + + protected void finalize() throws Throwable { + if (nativePtr != 0) { + finalize(nativePtr); + } + super.finalize(); + } + protected LinphoneChatRoomImpl(long aNativePtr) { nativePtr = aNativePtr; } diff --git a/java/impl/org/linphone/core/LinphoneCoreImpl.java b/java/impl/org/linphone/core/LinphoneCoreImpl.java index b37e36702..e7b63c1be 100644 --- a/java/impl/org/linphone/core/LinphoneCoreImpl.java +++ b/java/impl/org/linphone/core/LinphoneCoreImpl.java @@ -104,8 +104,8 @@ class LinphoneCoreImpl implements LinphoneCore { private native int getPresenceInfo(long nativePtr); private native void setPresenceModel(long nativePtr, long presencePtr); private native Object getPresenceModel(long nativePtr); - private native long getOrCreateChatRoom(long nativePtr,String to); - private native long getChatRoom(long nativePtr,long to); + private native Object getOrCreateChatRoom(long nativePtr,String to); + private native Object getChatRoom(long nativePtr,long to); private native void enableVideo(long nativePtr,boolean vcap_enabled,boolean display_enabled); private native boolean isVideoEnabled(long nativePtr); private native boolean isVideoSupported(long nativePtr); @@ -170,7 +170,7 @@ class LinphoneCoreImpl implements LinphoneCore { private native void setChatDatabasePath(long nativePtr, String path); private native void setCallLogsDatabasePath(long nativePtr, String path); private native void setFriendsDatabasePath(long nativePtr, String path); - private native long[] getChatRooms(long nativePtr); + private native Object[] getChatRooms(long nativePtr); private native int migrateToMultiTransport(long nativePtr); private native void migrateCallLogs(long nativePtr); private native void setCallErrorTone(long nativePtr, int reason, String path); @@ -497,10 +497,10 @@ class LinphoneCoreImpl implements LinphoneCore { return (PresenceModel)getPresenceModel(nativePtr); } public synchronized LinphoneChatRoom getOrCreateChatRoom(String to) { - return new LinphoneChatRoomImpl(getOrCreateChatRoom(nativePtr,to)); + return (LinphoneChatRoom)(getOrCreateChatRoom(nativePtr,to)); } public synchronized LinphoneChatRoom getChatRoom(LinphoneAddress to) { - return new LinphoneChatRoomImpl(getChatRoom(nativePtr, ((LinphoneAddressImpl) to).nativePtr)); + return (LinphoneChatRoom)(getChatRoom(nativePtr, ((LinphoneAddressImpl) to).nativePtr)); } public synchronized void setPreviewWindow(Object w) { setPreviewWindowId(nativePtr, w); @@ -1228,13 +1228,13 @@ class LinphoneCoreImpl implements LinphoneCore { } public synchronized LinphoneChatRoom[] getChatRooms() { - long[] typesPtr = getChatRooms(nativePtr); + Object[] typesPtr = getChatRooms(nativePtr); if (typesPtr == null) return null; LinphoneChatRoom[] proxies = new LinphoneChatRoom[typesPtr.length]; for (int i=0; i < proxies.length; i++) { - proxies[i] = new LinphoneChatRoomImpl(typesPtr[i]); + proxies[i] = (LinphoneChatRoom)(typesPtr[i]); } return proxies; From f344a345477653eb45dc2c0c67b0947fbc5df141 Mon Sep 17 00:00:00 2001 From: Ghislain MARY Date: Wed, 30 Mar 2016 12:42:31 +0200 Subject: [PATCH 41/53] Update ms2 submodule. --- mediastreamer2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mediastreamer2 b/mediastreamer2 index 827048107..f5d23bd9c 160000 --- a/mediastreamer2 +++ b/mediastreamer2 @@ -1 +1 @@ -Subproject commit 827048107e76e116e3c8ef188cff1fb91d83f4b1 +Subproject commit f5d23bd9ccf279490584648e15f8a3b0d654c6a6 From 073a25a534c3fa427114a9ec561ddc32fbb0a8dc Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Thu, 31 Mar 2016 09:10:30 +0200 Subject: [PATCH 42/53] Fixed lost contacts issue when switching to another config file --- coreapi/friend.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/coreapi/friend.c b/coreapi/friend.c index 41d191535..368f2242b 100644 --- a/coreapi/friend.c +++ b/coreapi/friend.c @@ -1366,7 +1366,7 @@ void linphone_core_migrate_friends_from_rc_to_db(LinphoneCore *lc) { return; } - if (ms_list_size(linphone_friend_list_get_friends(lfl)) > 0) { + if (ms_list_size(linphone_friend_list_get_friends(lfl)) > 0 && lfl->storage_id == 0) { linphone_core_remove_friend_list(lc, lfl); lfl = linphone_core_create_friend_list(lc); linphone_core_add_friend_list(lc, lfl); From e657258c280caddecfda6ce28ba823be3f2d99d6 Mon Sep 17 00:00:00 2001 From: Ghislain MARY Date: Thu, 31 Mar 2016 11:14:02 +0200 Subject: [PATCH 43/53] Fix generation of Python module. --- coreapi/help/Doxyfile.in | 2 +- coreapi/linphonecore.h | 2 ++ tools/genapixml.py | 6 +++++- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/coreapi/help/Doxyfile.in b/coreapi/help/Doxyfile.in index 6692ba25e..b0230913f 100644 --- a/coreapi/help/Doxyfile.in +++ b/coreapi/help/Doxyfile.in @@ -496,7 +496,7 @@ HIDE_IN_BODY_DOCS = NO # will be excluded. Set it to YES to include the internal documentation. # The default value is: NO. -INTERNAL_DOCS = NO +INTERNAL_DOCS = YES # If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file # names in lower-case letters. If set to YES, upper-case letters are also diff --git a/coreapi/linphonecore.h b/coreapi/linphonecore.h index 4a0f357e7..1cc8e084d 100644 --- a/coreapi/linphonecore.h +++ b/coreapi/linphonecore.h @@ -3241,11 +3241,13 @@ LINPHONE_PUBLIC void linphone_core_verify_server_certificates(LinphoneCore *lc, LINPHONE_PUBLIC void linphone_core_verify_server_cn(LinphoneCore *lc, bool_t yesno); LINPHONE_PUBLIC void linphone_core_set_root_ca(LinphoneCore *lc, const char *path); /** + * @internal * Set the pointer to an externally provided ssl configuration for the crypto library * @param lc #LinphoneCore object * @param[in] ssl_config A pointer to an opaque structure which will be provided directly to the crypto library used in bctoolbox. Use with extra care. * This ssl_config structure is responsability of the caller and will not be freed at the connection's end. * @ingroup initializing + * @endinternal */ LINPHONE_PUBLIC void linphone_core_set_ssl_config(LinphoneCore *lc, void *ssl_config); LINPHONE_PUBLIC const char *linphone_core_get_root_ca(LinphoneCore *lc); diff --git a/tools/genapixml.py b/tools/genapixml.py index 656428b9e..d03d96f54 100755 --- a/tools/genapixml.py +++ b/tools/genapixml.py @@ -498,6 +498,9 @@ class Project: self.add(td) def __parseCFunctionMemberdef(self, node): + internal = node.find("./detaileddescription/internal") + if internal is not None: + return None missingDocWarning = '' name = node.find('./name').text t = ''.join(node.find('./type').itertext()) @@ -557,7 +560,8 @@ class Project: memberdefs = tree.findall("./compounddef[@kind='group']/sectiondef[@kind='func']/memberdef[@kind='function'][@prot='public'][@static='no']") for m in memberdefs: f = self.__parseCFunctionMemberdef(m) - self.add(f) + if f is not None: + self.add(f) def initFromFiles(self, xmlfiles): trees = [] From 17b95ac28be486cca63cdcd6527904370dbf3204 Mon Sep 17 00:00:00 2001 From: Ghislain MARY Date: Thu, 31 Mar 2016 11:28:09 +0200 Subject: [PATCH 44/53] Use libiconv from the system when building on Mac OS X. --- cmake/FindIconv.cmake | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/cmake/FindIconv.cmake b/cmake/FindIconv.cmake index c65317a56..b0ae9013a 100644 --- a/cmake/FindIconv.cmake +++ b/cmake/FindIconv.cmake @@ -26,13 +26,16 @@ # ICONV_INCLUDE_DIRS - the libiconv include directory # ICONV_LIBRARIES - The libraries needed to use libiconv -set(_ICONV_ROOT_PATHS - ${CMAKE_INSTALL_PREFIX} -) +if(APPLE AND NOT IOS) + set(ICONV_HINTS "/usr") +endif() +if(ICONV_HINTS) + set(ICONV_LIBRARIES_HINTS "${ICONV_HINTS}/lib") +endif() find_path(ICONV_INCLUDE_DIRS NAMES iconv.h - HINTS _ICONV_ROOT_PATHS + HINTS "${ICONV_HINTS}" PATH_SUFFIXES include ) @@ -42,8 +45,7 @@ endif() find_library(ICONV_LIBRARIES NAMES iconv - HINTS ${_ICONV_ROOT_PATHS} - PATH_SUFFIXES bin lib + HINTS "${ICONV_LIBRARIES_HINTS}" ) include(FindPackageHandleStandardArgs) From 9497683bae1ca8fba4f7e72e6975e89f1351874a Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Thu, 31 Mar 2016 11:55:44 +0200 Subject: [PATCH 45/53] Fixed issue in linphone_vcard_get_phone_numbers doxygen doc breaking python wrapper --- coreapi/linphonefriend.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/coreapi/linphonefriend.h b/coreapi/linphonefriend.h index dac4afa24..693ee90f1 100644 --- a/coreapi/linphonefriend.h +++ b/coreapi/linphonefriend.h @@ -195,7 +195,7 @@ LINPHONE_PUBLIC void linphone_friend_add_phone_number(LinphoneFriend *lf, const /** * Returns a list of phone numbers for this friend * @param lf #LinphoneFriend object - * @return a MSList of phone numbers + * @return \mslist{const char *} */ LINPHONE_PUBLIC MSList* linphone_friend_get_phone_numbers(LinphoneFriend *lf); From 4ebe3b5fa0e1b33eaa4be07858932a4f2973f618 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Grisez?= Date: Thu, 31 Mar 2016 12:04:01 +0200 Subject: [PATCH 46/53] Update ms2 submodule to fix a build issue --- mediastreamer2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mediastreamer2 b/mediastreamer2 index f5d23bd9c..91cf88734 160000 --- a/mediastreamer2 +++ b/mediastreamer2 @@ -1 +1 @@ -Subproject commit f5d23bd9ccf279490584648e15f8a3b0d654c6a6 +Subproject commit 91cf887343448db8d1a67e5e62647fad4f40c680 From 111434eecbdf374973df03332f9ef8c5e9f43927 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Thu, 31 Mar 2016 17:04:18 +0200 Subject: [PATCH 47/53] Fixed do not disturb led color --- coreapi/friend.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/coreapi/friend.c b/coreapi/friend.c index 7d43f1f9f..7d0c43196 100644 --- a/coreapi/friend.c +++ b/coreapi/friend.c @@ -460,6 +460,7 @@ LinphoneOnlineStatus linphone_friend_get_status(const LinphoneFriend *lf){ LinphoneOnlineStatus online_status = LinphoneStatusOffline; LinphonePresenceBasicStatus basic_status = LinphonePresenceBasicStatusClosed; LinphonePresenceActivity *activity = NULL; + const char *description = NULL; unsigned int nb_activities = 0; if (lf->presence != NULL) { @@ -476,6 +477,7 @@ LinphoneOnlineStatus linphone_friend_get_status(const LinphoneFriend *lf){ } if (nb_activities == 1) { activity = linphone_presence_model_get_activity(lf->presence); + description = linphone_presence_activity_get_description(activity); switch (linphone_presence_activity_get_type(activity)) { case LinphonePresenceActivityBreakfast: case LinphonePresenceActivityDinner: @@ -502,6 +504,12 @@ LinphoneOnlineStatus linphone_friend_get_status(const LinphoneFriend *lf){ online_status = LinphoneStatusVacation; break; case LinphonePresenceActivityBusy: + if (description && strcmp(description, "Do not disturb") == 0) { // See linphonecore.c linphone_core_set_presence_info() method + online_status = LinphoneStatusDoNotDisturb; + } else { + online_status = LinphoneStatusBusy; + } + break; case LinphonePresenceActivityLookingForWork: case LinphonePresenceActivityPlaying: case LinphonePresenceActivityShopping: From fae2bf32e5df948f7db07d849cfcf9f1260a8f82 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Fri, 1 Apr 2016 13:00:21 +0200 Subject: [PATCH 48/53] Added hasCrappyOpenGL for Android --- coreapi/linphonecore_jni.cc | 16 +++++++++++++++- java/common/org/linphone/core/LinphoneCore.java | 5 +++++ .../impl/org/linphone/core/LinphoneCoreImpl.java | 5 +++++ mediastreamer2 | 2 +- 4 files changed, 26 insertions(+), 2 deletions(-) diff --git a/coreapi/linphonecore_jni.cc b/coreapi/linphonecore_jni.cc index 0331ba033..917add4e4 100644 --- a/coreapi/linphonecore_jni.cc +++ b/coreapi/linphonecore_jni.cc @@ -2315,7 +2315,8 @@ extern "C" jboolean Java_org_linphone_core_LinphoneCoreImpl_needsEchoCalibration return TRUE; } - SoundDeviceDescription *sound_description = sound_device_description_get(); + MSDevicesInfo *devices = ms_factory_get_devices_info(factory); + SoundDeviceDescription *sound_description = ms_devices_info_get_sound_device_description(devices); if(sound_description != NULL && sound_description == &genericSoundDeviceDescriptor){ return TRUE; } @@ -2325,6 +2326,19 @@ extern "C" jboolean Java_org_linphone_core_LinphoneCoreImpl_needsEchoCalibration return TRUE; } +extern "C" jboolean Java_org_linphone_core_LinphoneCoreImpl_hasCrappyOpenGL(JNIEnv *env, jobject thiz, jlong lcptr) { + LinphoneCore *lc = (LinphoneCore*) lcptr; + MSFactory * factory = linphone_core_get_ms_factory(lc); + MSDevicesInfo *devices = ms_factory_get_devices_info(factory); + SoundDeviceDescription *sound_description = ms_devices_info_get_sound_device_description(devices); + if (sound_description != NULL && sound_description == &genericSoundDeviceDescriptor){ + return FALSE; + } + + if (sound_description->flags & DEVICE_HAS_CRAPPY_OPENGL) return TRUE; + return FALSE; +} + extern "C" jboolean Java_org_linphone_core_LinphoneCoreImpl_hasBuiltInEchoCanceler(JNIEnv *env, jobject thiz, jlong lcptr) { MSSndCard *sndcard; LinphoneCore *lc = (LinphoneCore*) lcptr; diff --git a/java/common/org/linphone/core/LinphoneCore.java b/java/common/org/linphone/core/LinphoneCore.java index 2992b3c34..f75523317 100644 --- a/java/common/org/linphone/core/LinphoneCore.java +++ b/java/common/org/linphone/core/LinphoneCore.java @@ -1330,6 +1330,11 @@ public interface LinphoneCore { * If the device has a builtin echo canceller, it will return false. */ boolean hasBuiltInEchoCanceler(); + + /** + * Returns true if the OpenGL on this device is crappy and we need to use the old Android display + */ + boolean hasCrappyOpenGL(); void enableIpv6(boolean enable); diff --git a/java/impl/org/linphone/core/LinphoneCoreImpl.java b/java/impl/org/linphone/core/LinphoneCoreImpl.java index e7b63c1be..c2df92a72 100644 --- a/java/impl/org/linphone/core/LinphoneCoreImpl.java +++ b/java/impl/org/linphone/core/LinphoneCoreImpl.java @@ -1108,6 +1108,11 @@ class LinphoneCoreImpl implements LinphoneCore { public synchronized boolean hasBuiltInEchoCanceler() { return hasBuiltInEchoCanceler(nativePtr); } + private native boolean hasCrappyOpenGL(long ptr); + @Override + public synchronized boolean hasCrappyOpenGL() { + return hasCrappyOpenGL(nativePtr); + } private native void declineCall(long coreptr, long callptr, int reason); @Override public synchronized void declineCall(LinphoneCall aCall, Reason reason) { diff --git a/mediastreamer2 b/mediastreamer2 index 91cf88734..52806d2c5 160000 --- a/mediastreamer2 +++ b/mediastreamer2 @@ -1 +1 @@ -Subproject commit 91cf887343448db8d1a67e5e62647fad4f40c680 +Subproject commit 52806d2c5dde697d190ce33f2b5bad386e5bb74f From 9eca8962694be69de3b82c60909362f63edf7250 Mon Sep 17 00:00:00 2001 From: Gautier Pelloux-Prayer Date: Wed, 30 Mar 2016 10:37:13 +0200 Subject: [PATCH 49/53] presence_tester.c: add some long term tests --- coreapi/bellesip_sal/sal_op_registration.c | 10 +- coreapi/friendlist.c | 27 +-- tester/accountmanager.c | 26 +-- tester/presence_tester.c | 200 ++++++++++++++------- 4 files changed, 167 insertions(+), 96 deletions(-) diff --git a/coreapi/bellesip_sal/sal_op_registration.c b/coreapi/bellesip_sal/sal_op_registration.c index 961ba4a34..5ae75722f 100644 --- a/coreapi/bellesip_sal/sal_op_registration.c +++ b/coreapi/bellesip_sal/sal_op_registration.c @@ -25,8 +25,8 @@ static void register_refresher_listener (belle_sip_refresher_t* refresher ,const char* reason_phrase) { SalOp* op = (SalOp*)user_pointer; belle_sip_response_t* response=belle_sip_transaction_get_response(BELLE_SIP_TRANSACTION(belle_sip_refresher_get_transaction(refresher))); - ms_message("Register refresher [%i] reason [%s] for proxy [%s]",status_code,reason_phrase,sal_op_get_proxy(op)); - + ms_message("Register refresher [%i] reason [%s] for proxy [%s]",status_code,reason_phrase,sal_op_get_proxy(op)); + if (belle_sip_refresher_get_auth_events(refresher)) { if (op->auth_info) sal_auth_info_delete(op->auth_info); /*only take first one for now*/ @@ -46,7 +46,7 @@ static void register_refresher_listener (belle_sip_refresher_t* refresher } sal_op_set_service_route(op,(const SalAddress*)service_route_address); if (service_route_address) belle_sip_object_unref(service_route_address); - + sal_remove_pending_auth(op->base.root,op); /*just in case*/ if (contact) { sal_op_set_contact_address(op,(SalAddress*)(BELLE_SIP_HEADER_ADDRESS(contact))); /*update contact with real value*/ @@ -79,13 +79,13 @@ int sal_register(SalOp *op, const char *proxy, const char *from, int expires,Sal belle_sip_request_t *req; belle_sip_uri_t* req_uri; belle_sip_header_t* accept_header; - + if (op->refresher){ belle_sip_refresher_stop(op->refresher); belle_sip_object_unref(op->refresher); op->refresher=NULL; } - + op->type=SalOpRegister; sal_op_set_from(op,from); sal_op_set_to(op,from); diff --git a/coreapi/friendlist.c b/coreapi/friendlist.c index 1ab02b5a5..32db7b6ee 100644 --- a/coreapi/friendlist.c +++ b/coreapi/friendlist.c @@ -296,6 +296,7 @@ static void linphone_friend_list_destroy(LinphoneFriendList *list) { if (list->event != NULL) { linphone_event_terminate(list->event); linphone_event_unref(list->event); + list->event = NULL; } if (list->uri != NULL) ms_free(list->uri); if (list->cbs) linphone_friend_list_cbs_unref(list->cbs); @@ -436,7 +437,7 @@ LinphoneFriendListStatus linphone_friend_list_import_friend(LinphoneFriendList * return LinphoneFriendListOK; } -static void carddav_done(LinphoneCardDavContext *cdc, bool_t success, const char *msg) { +static void carddav_done(LinphoneCardDavContext *cdc, bool_t success, const char *msg) { if (cdc && cdc->friend_list->cbs->sync_state_changed_cb) { cdc->friend_list->cbs->sync_state_changed_cb(cdc->friend_list, success ? LinphoneFriendListSyncSuccessful : LinphoneFriendListSyncFailure, msg); } @@ -465,7 +466,7 @@ static LinphoneFriendListStatus _linphone_friend_list_remove_friend(LinphoneFrie } } } - + lf->friend_list = NULL; linphone_friend_unref(lf); list->friends = ms_list_remove_link(list->friends, elem); @@ -483,7 +484,7 @@ const MSList * linphone_friend_list_get_friends(const LinphoneFriendList *list) void linphone_friend_list_update_dirty_friends(LinphoneFriendList *list) { LinphoneCardDavContext *cdc = linphone_carddav_context_new(list); MSList *dirty_friends = list->dirty_friends_to_update; - + if (cdc) { cdc->sync_done_cb = carddav_done; while (dirty_friends) { @@ -528,7 +529,7 @@ static void carddav_updated(LinphoneCardDavContext *cdc, LinphoneFriend *lf_new, elem->data = linphone_friend_ref(lf_new); } linphone_core_store_friend_in_db(lf_new->lc, lf_new); - + if (cdc->friend_list->cbs->contact_updated_cb) { cdc->friend_list->cbs->contact_updated_cb(lfl, lf_new, lf_old); } @@ -538,7 +539,7 @@ static void carddav_updated(LinphoneCardDavContext *cdc, LinphoneFriend *lf_new, void linphone_friend_list_synchronize_friends_from_server(LinphoneFriendList *list) { LinphoneCardDavContext *cdc = linphone_carddav_context_new(list); - + if (cdc) { cdc->contact_created_cb = carddav_created; cdc->contact_removed_cb = carddav_removed; @@ -734,7 +735,7 @@ void linphone_friend_list_subscription_state_changed(LinphoneCore *lc, LinphoneE , linphone_subscription_state_to_string(state) , lev , list); - + if (state == LinphoneSubscriptionOutgoingProgress && linphone_event_get_reason(lev) == LinphoneReasonNoMatch) { ms_message("Resseting version count for friend list [%p]",list); list->expected_notification_version = 0; @@ -749,7 +750,7 @@ LinphoneCore* linphone_friend_list_get_core(LinphoneFriendList *list) { int linphone_friend_list_import_friends_from_vcard4_file(LinphoneFriendList *list, const char *vcard_file) { MSList *vcards = linphone_vcard_list_from_vcard4_file(vcard_file); int count = 0; - + #ifndef VCARD_ENABLED ms_error("vCard support wasn't enabled at compilation time"); return -1; @@ -762,7 +763,7 @@ int linphone_friend_list_import_friends_from_vcard4_file(LinphoneFriendList *lis ms_error("Can't import into a NULL list"); return -1; } - + while (vcards != NULL && vcards->data != NULL) { LinphoneVcard *vcard = (LinphoneVcard *)vcards->data; LinphoneFriend *lf = linphone_friend_new_from_vcard(vcard); @@ -785,7 +786,7 @@ int linphone_friend_list_import_friends_from_vcard4_file(LinphoneFriendList *lis int linphone_friend_list_import_friends_from_vcard4_buffer(LinphoneFriendList *list, const char *vcard_buffer) { MSList *vcards = linphone_vcard_list_from_vcard4_buffer(vcard_buffer); int count = 0; - + #ifndef VCARD_ENABLED ms_error("vCard support wasn't enabled at compilation time"); return -1; @@ -798,7 +799,7 @@ int linphone_friend_list_import_friends_from_vcard4_buffer(LinphoneFriendList *l ms_error("Can't import into a NULL list"); return -1; } - + while (vcards != NULL && vcards->data != NULL) { LinphoneVcard *vcard = (LinphoneVcard *)vcards->data; LinphoneFriend *lf = linphone_friend_new_from_vcard(vcard); @@ -821,13 +822,13 @@ int linphone_friend_list_import_friends_from_vcard4_buffer(LinphoneFriendList *l void linphone_friend_list_export_friends_as_vcard4_file(LinphoneFriendList *list, const char *vcard_file) { FILE *file = NULL; const MSList *friends = linphone_friend_list_get_friends(list); - + file = fopen(vcard_file, "wb"); if (file == NULL) { ms_warning("Could not write %s ! Maybe it is read-only. Contacts will not be saved.", vcard_file); return; } - + #ifndef VCARD_ENABLED ms_error("vCard support wasn't enabled at compilation time"); #endif @@ -842,6 +843,6 @@ void linphone_friend_list_export_friends_as_vcard4_file(LinphoneFriendList *list } friends = ms_list_next(friends); } - + fclose(file); } diff --git a/tester/accountmanager.c b/tester/accountmanager.c index 543384bc7..8de7b9854 100644 --- a/tester/accountmanager.c +++ b/tester/accountmanager.c @@ -23,9 +23,9 @@ struct _Account{ LinphoneAddress *identity; LinphoneAddress *modified_identity; char *password; - int created; + int registered; int done; - int auth_requested; + int created; }; typedef struct _Account Account; @@ -95,9 +95,15 @@ Account *account_manager_get_account(AccountManager *m, const LinphoneAddress *i static void account_created_on_server_cb(LinphoneCore *lc, LinphoneProxyConfig *cfg, LinphoneRegistrationState state, const char *info){ Account *account=(Account*)linphone_core_get_user_data(lc); switch(state){ - case LinphoneRegistrationOk: - account->created=1; - break; + case LinphoneRegistrationOk: { + char * phrase = sal_op_get_error_info((SalOp*)cfg->op)->full_string; + if (phrase && strcasecmp("Test account created", phrase) == 0) { + account->created=1; + } else { + account->registered=1; + } + break; + } case LinphoneRegistrationCleared: account->done=1; break; @@ -106,11 +112,6 @@ static void account_created_on_server_cb(LinphoneCore *lc, LinphoneProxyConfig * } } -static void account_created_auth_requested_cb(LinphoneCore *lc, const char *username, const char *realm, const char *domain){ - Account *account=(Account*)linphone_core_get_user_data(lc); - account->auth_requested=1; -} - void account_create_on_server(Account *account, const LinphoneProxyConfig *refcfg){ LinphoneCoreVTable vtable={0}; LinphoneCore *lc; @@ -122,7 +123,6 @@ void account_create_on_server(Account *account, const LinphoneProxyConfig *refcf LCSipTransports tr; vtable.registration_state_changed=account_created_on_server_cb; - vtable.auth_info_requested=account_created_auth_requested_cb; lc=configure_lc_from(&vtable,bc_tester_get_resource_dir_prefix(),NULL,account); tr.udp_port=LC_SIP_TRANSPORT_RANDOM; tr.tcp_port=LC_SIP_TRANSPORT_RANDOM; @@ -150,7 +150,7 @@ void account_create_on_server(Account *account, const LinphoneProxyConfig *refcf linphone_core_add_proxy_config(lc,cfg); - if (wait_for_until(lc,NULL,&account->auth_requested,1,10000)==FALSE){ + if (wait_for_until(lc,NULL,&account->created,1,10000)==FALSE){ ms_fatal("Account for %s could not be created on server.", linphone_proxy_config_get_identity(refcfg)); } linphone_proxy_config_edit(cfg); @@ -168,7 +168,7 @@ void account_create_on_server(Account *account, const LinphoneProxyConfig *refcf linphone_core_add_auth_info(lc,ai); linphone_auth_info_destroy(ai); - if (wait_for_until(lc,NULL,&account->created,1,3000)==FALSE){ + if (wait_for_until(lc,NULL,&account->registered,1,3000)==FALSE){ ms_fatal("Account for %s is not working on server.", linphone_proxy_config_get_identity(refcfg)); } linphone_core_remove_proxy_config(lc,cfg); diff --git a/tester/presence_tester.c b/tester/presence_tester.c index c2aa82b5b..52f554049 100644 --- a/tester/presence_tester.c +++ b/tester/presence_tester.c @@ -501,7 +501,7 @@ static void subscriber_no_longer_reachable(void){ /*make sure marie subscribe is not reset by accident because of code below located in linphone_core_iterate if (lc->sip_network_reachable && lc->netup_time!=0 && (current_real_time-lc->netup_time)>3){ - + linphone_core_send_initial_subscribes(lc); } */ @@ -532,10 +532,10 @@ static void subscriber_no_longer_reachable(void){ } -static void test_subscribe_notify_publish(void) { +static void subscribe_with_late_publish(void) { LinphoneCoreManager* marie = linphone_core_manager_new( "marie_rc"); - LinphoneCoreManager* pauline = linphone_core_manager_new( "pauline_rc"); + LinphoneCoreManager* pauline = linphone_core_manager_new(transport_supported(LinphoneTransportTls) ? "pauline_rc" : "pauline_tcp_rc"); LinphoneProxyConfig* proxy; LinphonePresenceModel* presence; LpConfig *pauline_lp; @@ -611,7 +611,7 @@ static void test_forked_subscribe_notify_publish(void) { LinphoneCoreManager* marie = linphone_core_manager_new( "marie_rc"); LinphoneCoreManager* marie2 = linphone_core_manager_new( "marie_rc"); - LinphoneCoreManager* pauline = linphone_core_manager_new( "pauline_rc"); + LinphoneCoreManager* pauline = linphone_core_manager_new(transport_supported(LinphoneTransportTls) ? "pauline_rc" : "pauline_tcp_rc"); LinphoneProxyConfig* proxy; LinphonePresenceModel* presence; LpConfig *pauline_lp; @@ -701,7 +701,7 @@ static void enable_deflate_content_encoding(LinphoneCoreManager *mgr, bool_t ena static void test_presence_list_base(bool_t enable_compression) { LinphoneCoreManager *laure = linphone_core_manager_new("laure_tcp_rc"); LinphoneCoreManager *marie = linphone_core_manager_new("marie_rc"); - LinphoneCoreManager *pauline = linphone_core_manager_new("pauline_rc"); + LinphoneCoreManager *pauline = linphone_core_manager_new(transport_supported(LinphoneTransportTls) ? "pauline_rc" : "pauline_tcp_rc"); const char *rls_uri = "sip:rls@sip.example.org"; LinphoneFriendList *lfl; LinphoneFriend *lf; @@ -744,20 +744,20 @@ static void test_presence_list_base(bool_t enable_compression) { lcs = ms_list_append(lcs, pauline->lc); wait_for_list(lcs, &laure->stat.number_of_NotifyPresenceReceived, 2, 2000); - BC_ASSERT_EQUAL(laure->stat.number_of_NotifyPresenceReceived, 2, int, "%d"); - BC_ASSERT_EQUAL(linphone_core_get_default_friend_list(laure->lc)->expected_notification_version, 1, int, "%d"); + BC_ASSERT_EQUAL_FATAL(laure->stat.number_of_NotifyPresenceReceived, 2, int, "%d"); + BC_ASSERT_EQUAL_FATAL(linphone_core_get_default_friend_list(laure->lc)->expected_notification_version, 1, int, "%d"); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(laure->lc), marie_identity); - BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusBusy, int, "%d"); - BC_ASSERT_EQUAL(lf->presence_received, TRUE, int, "%d"); - BC_ASSERT_EQUAL(lf->subscribe_active, TRUE, int, "%d"); + BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusBusy, int, "%d"); + BC_ASSERT_TRUE_FATAL(lf->presence_received); + BC_ASSERT_TRUE_FATAL(lf->subscribe_active); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(laure->lc), pauline_identity); - BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusVacation, int, "%d"); - BC_ASSERT_EQUAL(lf->presence_received, TRUE, int, "%d"); - BC_ASSERT_EQUAL(lf->subscribe_active, TRUE, int, "%d"); + BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusVacation, int, "%d"); + BC_ASSERT_TRUE_FATAL(lf->presence_received); + BC_ASSERT_TRUE_FATAL(lf->subscribe_active); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(laure->lc), "sip:michelle@sip.inexistentdomain.com"); - BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); - BC_ASSERT_EQUAL(lf->presence_received, FALSE, int, "%d"); - BC_ASSERT_EQUAL(lf->subscribe_active, TRUE, int, "%d"); + BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); + BC_ASSERT_FALSE_FATAL(lf->presence_received); + BC_ASSERT_TRUE_FATAL(lf->subscribe_active); lfl = linphone_core_create_friend_list(marie->lc); linphone_friend_list_set_rls_uri(lfl, rls_uri); @@ -770,12 +770,12 @@ static void test_presence_list_base(bool_t enable_compression) { linphone_friend_list_update_subscriptions(linphone_core_get_default_friend_list(marie->lc), NULL, FALSE); wait_for_list(lcs, &marie->stat.number_of_NotifyPresenceReceived, 1, 2000); - BC_ASSERT_EQUAL(marie->stat.number_of_NotifyPresenceReceived, 1, int, "%d"); - BC_ASSERT_EQUAL(linphone_core_get_default_friend_list(marie->lc)->expected_notification_version, 1, int, "%d"); + BC_ASSERT_EQUAL_FATAL(marie->stat.number_of_NotifyPresenceReceived, 1, int, "%d"); + BC_ASSERT_EQUAL_FATAL(linphone_core_get_default_friend_list(marie->lc)->expected_notification_version, 1, int, "%d"); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(marie->lc), laure_identity); - BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusOnline, int, "%d"); - BC_ASSERT_EQUAL(lf->presence_received, TRUE, int, "%d"); - BC_ASSERT_EQUAL(lf->subscribe_active, TRUE, int, "%d"); + BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusOnline, int, "%d"); + BC_ASSERT_TRUE_FATAL(lf->presence_received); + BC_ASSERT_TRUE_FATAL(lf->subscribe_active); lfl = linphone_core_create_friend_list(pauline->lc); linphone_friend_list_set_rls_uri(lfl, rls_uri); @@ -788,12 +788,12 @@ static void test_presence_list_base(bool_t enable_compression) { linphone_friend_list_update_subscriptions(linphone_core_get_default_friend_list(pauline->lc), NULL, FALSE); wait_for_list(lcs, &pauline->stat.number_of_NotifyPresenceReceived, 1, 2000); - BC_ASSERT_EQUAL(pauline->stat.number_of_NotifyPresenceReceived, 1, int, "%d"); - BC_ASSERT_EQUAL(linphone_core_get_default_friend_list(pauline->lc)->expected_notification_version, 1, int, "%d"); + BC_ASSERT_EQUAL_FATAL(pauline->stat.number_of_NotifyPresenceReceived, 1, int, "%d"); + BC_ASSERT_EQUAL_FATAL(linphone_core_get_default_friend_list(pauline->lc)->expected_notification_version, 1, int, "%d"); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(pauline->lc), marie_identity); - BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusBusy, int, "%d"); - BC_ASSERT_EQUAL(lf->presence_received, TRUE, int, "%d"); - BC_ASSERT_EQUAL(lf->subscribe_active, TRUE, int, "%d"); + BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusBusy, int, "%d"); + BC_ASSERT_TRUE_FATAL(lf->presence_received); + BC_ASSERT_TRUE_FATAL(lf->subscribe_active); linphone_core_set_presence_model(marie->lc, linphone_core_create_presence_model_with_activity(marie->lc, LinphonePresenceActivityOnThePhone, NULL)); @@ -801,40 +801,40 @@ static void test_presence_list_base(bool_t enable_compression) { /* The number of PresenceReceived events can be 3 or 4 here. TODO: ideally it should always be 3. */ BC_ASSERT_GREATER(laure->stat.number_of_NotifyPresenceReceived, 3, int, "%d"); BC_ASSERT_LOWER(laure->stat.number_of_NotifyPresenceReceived, 4, int, "%d"); - BC_ASSERT_EQUAL(linphone_core_get_default_friend_list(laure->lc)->expected_notification_version, 2, int, "%d"); + BC_ASSERT_EQUAL_FATAL(linphone_core_get_default_friend_list(laure->lc)->expected_notification_version, 2, int, "%d"); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(laure->lc), marie_identity); - BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusOnThePhone, int, "%d"); + BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusOnThePhone, int, "%d"); wait_for_list(lcs, &pauline->stat.number_of_NotifyPresenceReceived, 2, 2000); - BC_ASSERT_EQUAL(pauline->stat.number_of_NotifyPresenceReceived, 2, int, "%d"); - BC_ASSERT_EQUAL(linphone_core_get_default_friend_list(pauline->lc)->expected_notification_version, 2, int, "%d"); + BC_ASSERT_EQUAL_FATAL(pauline->stat.number_of_NotifyPresenceReceived, 2, int, "%d"); + BC_ASSERT_EQUAL_FATAL(linphone_core_get_default_friend_list(pauline->lc)->expected_notification_version, 2, int, "%d"); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(pauline->lc), marie_identity); - BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusOnThePhone, int, "%d"); + BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusOnThePhone, int, "%d"); ms_message("Disabling publish"); enable_publish(laure, FALSE); enable_publish(marie, FALSE); enable_publish(pauline, FALSE); - + reset_counters(&pauline->stat); reset_counters(&laure->stat); reset_counters(&marie->stat); - - BC_ASSERT_TRUE(wait_for_list(lcs, &pauline->stat.number_of_LinphonePresenceActivityOffline, 1, 2000)); - lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(pauline->lc), marie_identity); - BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); - BC_ASSERT_TRUE(wait_for_list(lcs, &laure->stat.number_of_LinphonePresenceActivityOffline, 2, 2000)); + BC_ASSERT_TRUE_FATAL(wait_for_list(lcs, &pauline->stat.number_of_LinphonePresenceActivityOffline, 1, 2000)); + lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(pauline->lc), marie_identity); + BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); + + BC_ASSERT_TRUE_FATAL(wait_for_list(lcs, &laure->stat.number_of_LinphonePresenceActivityOffline, 2, 2000)); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(laure->lc), pauline_identity); - BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); + BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(laure->lc), marie_identity); - BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); - - - BC_ASSERT_TRUE(wait_for_list(lcs, &marie->stat.number_of_LinphonePresenceActivityOffline, 1, 2000)); + BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); + + + BC_ASSERT_TRUE_FATAL(wait_for_list(lcs, &marie->stat.number_of_LinphonePresenceActivityOffline, 1, 2000)); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(marie->lc), laure_identity); - BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); + BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); linphone_core_manager_destroy(laure); linphone_core_manager_destroy(marie); @@ -852,7 +852,7 @@ static void test_presence_list_without_compression(void) { #if 0 static void test_presence_list_subscribe_before_publish(void) { LinphoneCoreManager *laure = linphone_core_manager_new("laure_tcp_rc"); - LinphoneCoreManager *pauline = linphone_core_manager_new("pauline_rc"); + LinphoneCoreManager *pauline = linphone_core_manager_new(transport_supported(LinphoneTransportTls) ? "pauline_rc" : "pauline_tcp_rc"); const char *rls_uri = "sip:rls@sip.example.org"; LinphoneFriendList *lfl; LinphoneFriend *lf; @@ -887,12 +887,12 @@ static void test_presence_list_subscribe_before_publish(void) { BC_ASSERT_GREATER(linphone_core_get_default_friend_list(laure->lc)->expected_notification_version, 1, int, "%d"); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(laure->lc), pauline_identity); BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusVacation, int, "%d"); - BC_ASSERT_EQUAL(lf->presence_received, TRUE, int, "%d"); - BC_ASSERT_EQUAL(lf->subscribe_active, TRUE, int, "%d"); + BC_ASSERT_TRUE(lf->presence_received); + BC_ASSERT_TRUE(lf->subscribe_active); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(laure->lc), "sip:michelle@sip.inexistentdomain.com"); BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); - BC_ASSERT_EQUAL(lf->presence_received, FALSE, int, "%d"); - BC_ASSERT_EQUAL(lf->subscribe_active, TRUE, int, "%d"); + BC_ASSERT_FALSE(lf->presence_received); + BC_ASSERT_TRUE(lf->subscribe_active); enable_publish(laure, FALSE); enable_publish(pauline, FALSE); @@ -927,7 +927,7 @@ static void test_presence_list_subscription_expire_for_unknown(void) { static void test_presence_list_subscribe_with_error(bool_t io_error) { LinphoneCoreManager *laure = linphone_core_manager_new("laure_tcp_rc"); - LinphoneCoreManager *pauline = linphone_core_manager_new("pauline_rc"); + LinphoneCoreManager *pauline = linphone_core_manager_new(transport_supported(LinphoneTransportTls) ? "pauline_rc" : "pauline_tcp_rc"); const char *rls_uri = "sip:rls@sip.example.org"; LinphoneFriendList *lfl; LinphoneFriend *lf; @@ -963,12 +963,12 @@ static void test_presence_list_subscribe_with_error(bool_t io_error) { BC_ASSERT_GREATER(linphone_core_get_default_friend_list(laure->lc)->expected_notification_version, 1, int, "%d"); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(laure->lc), pauline_identity); BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusVacation, int, "%d"); - BC_ASSERT_EQUAL(lf->presence_received, TRUE, int, "%d"); - BC_ASSERT_EQUAL(lf->subscribe_active, TRUE, int, "%d"); + BC_ASSERT_TRUE(lf->presence_received); + BC_ASSERT_TRUE(lf->subscribe_active); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(laure->lc), "sip:michelle@sip.inexistentdomain.com"); BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); - BC_ASSERT_EQUAL(lf->presence_received, FALSE, int, "%d"); - BC_ASSERT_EQUAL(lf->subscribe_active, TRUE, int, "%d"); + BC_ASSERT_FALSE(lf->presence_received); + BC_ASSERT_TRUE(lf->subscribe_active); BC_ASSERT_TRUE(wait_for_until(laure->lc, pauline->lc, &laure->stat.number_of_LinphonePresenceActivityVacation, 2, 6000)); if (io_error) { @@ -997,11 +997,11 @@ static void test_presence_list_subscribe_with_error(bool_t io_error) { linphone_core_manager_destroy(pauline); } -static void test_presence_list_subscribe_dialog_expire(void) { +static void presence_list_subscribe_dialog_expire(void) { test_presence_list_subscribe_with_error(FALSE); } -static void test_presence_list_subscribe_io_error(void) { +static void presence_list_subscribe_io_error(void) { test_presence_list_subscribe_with_error(TRUE); } @@ -1010,30 +1010,97 @@ static void simple_subscribe_with_friend_from_rc(void) { LinphoneCoreManager* pauline = presence_linphone_core_manager_new("pauline"); LinphoneCoreManager *marie = presence_linphone_core_manager_new_with_rc_name("marie", "pauline_as_friend_rc"); LinphoneFriend *pauline_as_friend; - + BC_ASSERT_EQUAL(ms_list_size(linphone_core_get_friend_list(marie->lc)), 1, int , "%i"); - + if (ms_list_size(linphone_core_get_friend_list(marie->lc))>0) { pauline_as_friend = (LinphoneFriend*)linphone_core_get_friend_list(marie->lc)->data; linphone_friend_set_address(pauline_as_friend, pauline->identity); /*hack to update addr with port number*/ } - + BC_ASSERT_TRUE (wait_for(marie->lc,pauline->lc,&marie->stat.number_of_LinphonePresenceActivityOnline,1)); - + BC_ASSERT_EQUAL(pauline->stat.number_of_NewSubscriptionRequest,1, int, "%d"); BC_ASSERT_EQUAL(marie->stat.number_of_NotifyPresenceReceived,1, int, "%d"); - + linphone_core_manager_destroy(marie); /*unsubscribe is not reported ?*/ BC_ASSERT_FALSE(wait_for(NULL,pauline->lc,&pauline->stat.number_of_NewSubscriptionRequest,2)); /*just to wait for unsubscription even if not notified*/ - + + linphone_core_manager_destroy(pauline); +} + +static void long_term_presence_base(const char* addr, bool_t exist) { + LinphoneFriend* friend; + LinphoneCoreManager* pauline = presence_linphone_core_manager_new("pauline"); + linphone_core_set_user_agent(pauline->lc, "full-presence-support", NULL); + + friend=linphone_core_create_friend_with_address(pauline->lc,addr); + linphone_friend_edit(friend); + linphone_friend_enable_subscribes(friend,TRUE); + linphone_friend_done(friend); + linphone_core_add_friend(pauline->lc,friend); + + + if (exist) { + BC_ASSERT_TRUE(wait_for(pauline->lc,NULL,&pauline->stat.number_of_LinphonePresenceActivityOnline,1)); + BC_ASSERT_EQUAL(pauline->stat.number_of_LinphonePresenceActivityOnline, 1, int, "%d"); + BC_ASSERT_EQUAL(linphone_presence_model_get_basic_status(linphone_friend_get_presence_model(friend)), LinphonePresenceBasicStatusOpen, int, "%d"); + } else { + BC_ASSERT_TRUE(wait_for(pauline->lc,NULL,&pauline->stat.number_of_LinphonePresenceActivityOffline,1)); + BC_ASSERT_EQUAL(pauline->stat.number_of_LinphonePresenceActivityOffline, 1, int, "%d"); + BC_ASSERT_EQUAL(linphone_presence_model_get_basic_status(linphone_friend_get_presence_model(friend)), LinphonePresenceBasicStatusClosed, int, "%d"); + } + + linphone_friend_unref(friend); + linphone_core_manager_destroy(pauline); +} +static void long_term_presence_existing_friend(void) { + // this friend is not online, but is known from flexisip to be registered (see flexisip/userdb.conf), + // so we expect to get a report that he is currently not online + long_term_presence_base("sip:liblinphone_tester@sip.example.org", TRUE); +} +static void long_term_presence_inexistent_friend(void) { + long_term_presence_base("sip:random_unknown@sip.example.org", FALSE); +} + +static void long_term_presence_list(void) { + LinphoneFriend *f1, *f2; + LinphoneFriendList* friends; + LinphoneCoreManager* pauline = presence_linphone_core_manager_new("pauline"); + linphone_core_set_user_agent(pauline->lc, "full-presence-support", NULL); + enable_deflate_content_encoding(pauline, FALSE); + + friends = linphone_core_create_friend_list(pauline->lc); + linphone_friend_list_set_rls_uri(friends, "sip:rls@sip.example.org"); + f1 = linphone_core_create_friend_with_address(pauline->lc, "sip:liblinphone_tester@sip.example.org"); + linphone_friend_list_add_friend(friends, f1); + linphone_friend_unref(f1); + f2 = linphone_core_create_friend_with_address(pauline->lc, "sip:random_unknown@sip.example.org"); + linphone_friend_list_add_friend(friends, f2); + linphone_friend_unref(f2); + linphone_core_remove_friend_list(pauline->lc, linphone_core_get_default_friend_list(pauline->lc)); + linphone_core_add_friend_list(pauline->lc, friends); + linphone_friend_list_unref(friends); + + BC_ASSERT_TRUE(wait_for(pauline->lc,NULL,&pauline->stat.number_of_NotifyPresenceReceived,2)); + BC_ASSERT_EQUAL(linphone_core_get_default_friend_list(pauline->lc)->expected_notification_version, 1, int, "%d"); + + f1 = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(pauline->lc), "sip:liblinphone_tester@sip.example.org"); + BC_ASSERT_EQUAL(linphone_presence_model_get_basic_status(linphone_friend_get_presence_model(f1)), LinphonePresenceBasicStatusOpen, int, "%d"); + BC_ASSERT_TRUE(f1->presence_received); + + f2 = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(pauline->lc), "sip:random_unknown@sip.example.org"); + BC_ASSERT_EQUAL(linphone_presence_model_get_basic_status(linphone_friend_get_presence_model(f2)), LinphonePresenceBasicStatusClosed, int, "%d"); + BC_ASSERT_FALSE(f2->presence_received); + linphone_core_manager_destroy(pauline); } test_t presence_tests[] = { TEST_ONE_TAG("Simple Subscribe", simple_subscribe,"presence"), - TEST_ONE_TAG("Simple Subscribe with friend from rc", simple_subscribe_with_friend_from_rc,"LeaksMemory"), + TEST_NO_TAG("Simple Subscribe with friend from rc", simple_subscribe_with_friend_from_rc), TEST_ONE_TAG("Simple Publish", simple_publish, "LeaksMemory"), TEST_ONE_TAG("Simple Publish with expires", publish_with_expires, "LeaksMemory"), /*TEST_ONE_TAG("Call with presence", call_with_presence, "LeaksMemory"),*/ @@ -1043,13 +1110,16 @@ test_t presence_tests[] = { TEST_NO_TAG("Presence SUBSCRIBE forked", subscribe_presence_forked), TEST_NO_TAG("Presence SUBSCRIBE expired", subscribe_presence_expired), TEST_ONE_TAG("Subscriber no longer reachable using server",subscriber_no_longer_reachable, "presence"), - TEST_ONE_TAG("Subscribe with late publish", test_subscribe_notify_publish, "LeaksMemory"), + TEST_ONE_TAG("Subscribe with late publish", subscribe_with_late_publish, "LeaksMemory"), TEST_ONE_TAG("Forked subscribe with late publish", test_forked_subscribe_notify_publish, "LeaksMemory"), TEST_ONE_TAG("Presence list", test_presence_list, "LeaksMemory"), TEST_ONE_TAG("Presence list without compression", test_presence_list_without_compression, "LeaksMemory"), TEST_ONE_TAG("Presence list, subscription expiration for unknown contact",test_presence_list_subscription_expire_for_unknown, "LeaksMemory"), - TEST_ONE_TAG("Presence list, silent subscription expiration", test_presence_list_subscribe_dialog_expire, "LeaksMemory"), - TEST_ONE_TAG("Presence list, io error",test_presence_list_subscribe_io_error, "LeaksMemory") + TEST_ONE_TAG("Presence list, silent subscription expiration", presence_list_subscribe_dialog_expire, "LeaksMemory"), + TEST_ONE_TAG("Presence list, io error",presence_list_subscribe_io_error, "LeaksMemory"), + TEST_NO_TAG("Long term presence existing friend",long_term_presence_existing_friend), + TEST_NO_TAG("Long term presence inexistent friend",long_term_presence_inexistent_friend), + TEST_NO_TAG("Long term presence list",long_term_presence_list), }; test_suite_t presence_test_suite = {"Presence", NULL, NULL, liblinphone_tester_before_each, liblinphone_tester_after_each, From 0c2619631ce2b633a056902184d9254761f34ed5 Mon Sep 17 00:00:00 2001 From: Gautier Pelloux-Prayer Date: Fri, 1 Apr 2016 15:39:23 +0200 Subject: [PATCH 50/53] tester.c: do not fail if test is not leaking anymore --- tester/tester.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/tester/tester.c b/tester/tester.c index 7a2c47cbd..75a68e098 100644 --- a/tester/tester.c +++ b/tester/tester.c @@ -256,6 +256,7 @@ LinphoneCoreManager *get_manager(LinphoneCore *lc){ } bool_t transport_supported(LinphoneTransportType transport) { + return 0; Sal *sal = sal_init(NULL); bool_t supported = sal_transport_available(sal,(SalTransport)transport); if (!supported) ms_message("TLS transport not supported, falling back to TCP if possible otherwise skipping test."); @@ -542,6 +543,7 @@ void liblinphone_tester_before_each(void) { static char* all_leaks_buffer = NULL; int liblinphone_tester_after_each(void) { + int err = 0; if (!liblinphone_tester_leak_detector_disabled){ int leaked_objects = belle_sip_object_get_object_count() - leaked_objects_count; if (leaked_objects > 0) { @@ -564,11 +566,11 @@ int liblinphone_tester_after_each(void) { // if the test is NOT marked as leaking memory and it actually is, we should make it fail if (!leaks_expected && leaked_objects > 0) { BC_FAIL("This test is leaking memory!"); - return 1; + err = 1; // and reciprocally } else if (leaks_expected && leaked_objects == 0) { BC_FAIL("This test is not leaking anymore, please remove LeaksMemory tag!"); - return 1; + // err = 1; // do not force fail actually, because it can be some false positive warning } } } @@ -576,7 +578,7 @@ int liblinphone_tester_after_each(void) { if (manager_count != 0) { ms_fatal("%d Linphone core managers are still alive!", manager_count); } - return 0; + return err; } void liblinphone_tester_uninit(void) { From 24cbc11a7a301f0e34da87114a8dfabb485af778 Mon Sep 17 00:00:00 2001 From: Gautier Pelloux-Prayer Date: Mon, 4 Apr 2016 09:34:26 +0200 Subject: [PATCH 51/53] tester.c: revert debug code --- tester/tester.c | 1 - 1 file changed, 1 deletion(-) diff --git a/tester/tester.c b/tester/tester.c index 75a68e098..b5b1f49bf 100644 --- a/tester/tester.c +++ b/tester/tester.c @@ -256,7 +256,6 @@ LinphoneCoreManager *get_manager(LinphoneCore *lc){ } bool_t transport_supported(LinphoneTransportType transport) { - return 0; Sal *sal = sal_init(NULL); bool_t supported = sal_transport_available(sal,(SalTransport)transport); if (!supported) ms_message("TLS transport not supported, falling back to TCP if possible otherwise skipping test."); From 3f495448e11a973f7d5c7cadebd646f9ae76dde2 Mon Sep 17 00:00:00 2001 From: Gautier Pelloux-Prayer Date: Mon, 4 Apr 2016 13:35:06 +0200 Subject: [PATCH 52/53] proxy.c: replace + with most generic icp if none set --- coreapi/proxy.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/coreapi/proxy.c b/coreapi/proxy.c index 6743f93c1..3e0a7cefb 100644 --- a/coreapi/proxy.c +++ b/coreapi/proxy.c @@ -939,6 +939,9 @@ char* linphone_proxy_config_normalize_phone_number(LinphoneProxyConfig *proxy, c , flatten_start); ms_debug("Prepended prefix resulted in %s", result); } + }else if (tmpproxy->dial_escape_plus){ + /* user did not provide dial prefix, so we'll take the most generic one */ + result = replace_plus_with_icp(flatten,most_common_dialplan.icp); } if (result==NULL) { result = flatten; From e2609f96a4b04dcd5b5963e17ded26795d99a199 Mon Sep 17 00:00:00 2001 From: Gautier Pelloux-Prayer Date: Mon, 4 Apr 2016 15:13:11 +0200 Subject: [PATCH 53/53] Revert "presence_tester.c: add some long term tests" This reverts commit 9eca8962694be69de3b82c60909362f63edf7250. --- coreapi/bellesip_sal/sal_op_registration.c | 10 +- coreapi/friendlist.c | 27 ++- tester/accountmanager.c | 26 +-- tester/presence_tester.c | 198 +++++++-------------- 4 files changed, 95 insertions(+), 166 deletions(-) diff --git a/coreapi/bellesip_sal/sal_op_registration.c b/coreapi/bellesip_sal/sal_op_registration.c index 5ae75722f..961ba4a34 100644 --- a/coreapi/bellesip_sal/sal_op_registration.c +++ b/coreapi/bellesip_sal/sal_op_registration.c @@ -25,8 +25,8 @@ static void register_refresher_listener (belle_sip_refresher_t* refresher ,const char* reason_phrase) { SalOp* op = (SalOp*)user_pointer; belle_sip_response_t* response=belle_sip_transaction_get_response(BELLE_SIP_TRANSACTION(belle_sip_refresher_get_transaction(refresher))); - ms_message("Register refresher [%i] reason [%s] for proxy [%s]",status_code,reason_phrase,sal_op_get_proxy(op)); - + ms_message("Register refresher [%i] reason [%s] for proxy [%s]",status_code,reason_phrase,sal_op_get_proxy(op)); + if (belle_sip_refresher_get_auth_events(refresher)) { if (op->auth_info) sal_auth_info_delete(op->auth_info); /*only take first one for now*/ @@ -46,7 +46,7 @@ static void register_refresher_listener (belle_sip_refresher_t* refresher } sal_op_set_service_route(op,(const SalAddress*)service_route_address); if (service_route_address) belle_sip_object_unref(service_route_address); - + sal_remove_pending_auth(op->base.root,op); /*just in case*/ if (contact) { sal_op_set_contact_address(op,(SalAddress*)(BELLE_SIP_HEADER_ADDRESS(contact))); /*update contact with real value*/ @@ -79,13 +79,13 @@ int sal_register(SalOp *op, const char *proxy, const char *from, int expires,Sal belle_sip_request_t *req; belle_sip_uri_t* req_uri; belle_sip_header_t* accept_header; - + if (op->refresher){ belle_sip_refresher_stop(op->refresher); belle_sip_object_unref(op->refresher); op->refresher=NULL; } - + op->type=SalOpRegister; sal_op_set_from(op,from); sal_op_set_to(op,from); diff --git a/coreapi/friendlist.c b/coreapi/friendlist.c index 32db7b6ee..1ab02b5a5 100644 --- a/coreapi/friendlist.c +++ b/coreapi/friendlist.c @@ -296,7 +296,6 @@ static void linphone_friend_list_destroy(LinphoneFriendList *list) { if (list->event != NULL) { linphone_event_terminate(list->event); linphone_event_unref(list->event); - list->event = NULL; } if (list->uri != NULL) ms_free(list->uri); if (list->cbs) linphone_friend_list_cbs_unref(list->cbs); @@ -437,7 +436,7 @@ LinphoneFriendListStatus linphone_friend_list_import_friend(LinphoneFriendList * return LinphoneFriendListOK; } -static void carddav_done(LinphoneCardDavContext *cdc, bool_t success, const char *msg) { +static void carddav_done(LinphoneCardDavContext *cdc, bool_t success, const char *msg) { if (cdc && cdc->friend_list->cbs->sync_state_changed_cb) { cdc->friend_list->cbs->sync_state_changed_cb(cdc->friend_list, success ? LinphoneFriendListSyncSuccessful : LinphoneFriendListSyncFailure, msg); } @@ -466,7 +465,7 @@ static LinphoneFriendListStatus _linphone_friend_list_remove_friend(LinphoneFrie } } } - + lf->friend_list = NULL; linphone_friend_unref(lf); list->friends = ms_list_remove_link(list->friends, elem); @@ -484,7 +483,7 @@ const MSList * linphone_friend_list_get_friends(const LinphoneFriendList *list) void linphone_friend_list_update_dirty_friends(LinphoneFriendList *list) { LinphoneCardDavContext *cdc = linphone_carddav_context_new(list); MSList *dirty_friends = list->dirty_friends_to_update; - + if (cdc) { cdc->sync_done_cb = carddav_done; while (dirty_friends) { @@ -529,7 +528,7 @@ static void carddav_updated(LinphoneCardDavContext *cdc, LinphoneFriend *lf_new, elem->data = linphone_friend_ref(lf_new); } linphone_core_store_friend_in_db(lf_new->lc, lf_new); - + if (cdc->friend_list->cbs->contact_updated_cb) { cdc->friend_list->cbs->contact_updated_cb(lfl, lf_new, lf_old); } @@ -539,7 +538,7 @@ static void carddav_updated(LinphoneCardDavContext *cdc, LinphoneFriend *lf_new, void linphone_friend_list_synchronize_friends_from_server(LinphoneFriendList *list) { LinphoneCardDavContext *cdc = linphone_carddav_context_new(list); - + if (cdc) { cdc->contact_created_cb = carddav_created; cdc->contact_removed_cb = carddav_removed; @@ -735,7 +734,7 @@ void linphone_friend_list_subscription_state_changed(LinphoneCore *lc, LinphoneE , linphone_subscription_state_to_string(state) , lev , list); - + if (state == LinphoneSubscriptionOutgoingProgress && linphone_event_get_reason(lev) == LinphoneReasonNoMatch) { ms_message("Resseting version count for friend list [%p]",list); list->expected_notification_version = 0; @@ -750,7 +749,7 @@ LinphoneCore* linphone_friend_list_get_core(LinphoneFriendList *list) { int linphone_friend_list_import_friends_from_vcard4_file(LinphoneFriendList *list, const char *vcard_file) { MSList *vcards = linphone_vcard_list_from_vcard4_file(vcard_file); int count = 0; - + #ifndef VCARD_ENABLED ms_error("vCard support wasn't enabled at compilation time"); return -1; @@ -763,7 +762,7 @@ int linphone_friend_list_import_friends_from_vcard4_file(LinphoneFriendList *lis ms_error("Can't import into a NULL list"); return -1; } - + while (vcards != NULL && vcards->data != NULL) { LinphoneVcard *vcard = (LinphoneVcard *)vcards->data; LinphoneFriend *lf = linphone_friend_new_from_vcard(vcard); @@ -786,7 +785,7 @@ int linphone_friend_list_import_friends_from_vcard4_file(LinphoneFriendList *lis int linphone_friend_list_import_friends_from_vcard4_buffer(LinphoneFriendList *list, const char *vcard_buffer) { MSList *vcards = linphone_vcard_list_from_vcard4_buffer(vcard_buffer); int count = 0; - + #ifndef VCARD_ENABLED ms_error("vCard support wasn't enabled at compilation time"); return -1; @@ -799,7 +798,7 @@ int linphone_friend_list_import_friends_from_vcard4_buffer(LinphoneFriendList *l ms_error("Can't import into a NULL list"); return -1; } - + while (vcards != NULL && vcards->data != NULL) { LinphoneVcard *vcard = (LinphoneVcard *)vcards->data; LinphoneFriend *lf = linphone_friend_new_from_vcard(vcard); @@ -822,13 +821,13 @@ int linphone_friend_list_import_friends_from_vcard4_buffer(LinphoneFriendList *l void linphone_friend_list_export_friends_as_vcard4_file(LinphoneFriendList *list, const char *vcard_file) { FILE *file = NULL; const MSList *friends = linphone_friend_list_get_friends(list); - + file = fopen(vcard_file, "wb"); if (file == NULL) { ms_warning("Could not write %s ! Maybe it is read-only. Contacts will not be saved.", vcard_file); return; } - + #ifndef VCARD_ENABLED ms_error("vCard support wasn't enabled at compilation time"); #endif @@ -843,6 +842,6 @@ void linphone_friend_list_export_friends_as_vcard4_file(LinphoneFriendList *list } friends = ms_list_next(friends); } - + fclose(file); } diff --git a/tester/accountmanager.c b/tester/accountmanager.c index 8de7b9854..543384bc7 100644 --- a/tester/accountmanager.c +++ b/tester/accountmanager.c @@ -23,9 +23,9 @@ struct _Account{ LinphoneAddress *identity; LinphoneAddress *modified_identity; char *password; - int registered; - int done; int created; + int done; + int auth_requested; }; typedef struct _Account Account; @@ -95,15 +95,9 @@ Account *account_manager_get_account(AccountManager *m, const LinphoneAddress *i static void account_created_on_server_cb(LinphoneCore *lc, LinphoneProxyConfig *cfg, LinphoneRegistrationState state, const char *info){ Account *account=(Account*)linphone_core_get_user_data(lc); switch(state){ - case LinphoneRegistrationOk: { - char * phrase = sal_op_get_error_info((SalOp*)cfg->op)->full_string; - if (phrase && strcasecmp("Test account created", phrase) == 0) { - account->created=1; - } else { - account->registered=1; - } - break; - } + case LinphoneRegistrationOk: + account->created=1; + break; case LinphoneRegistrationCleared: account->done=1; break; @@ -112,6 +106,11 @@ static void account_created_on_server_cb(LinphoneCore *lc, LinphoneProxyConfig * } } +static void account_created_auth_requested_cb(LinphoneCore *lc, const char *username, const char *realm, const char *domain){ + Account *account=(Account*)linphone_core_get_user_data(lc); + account->auth_requested=1; +} + void account_create_on_server(Account *account, const LinphoneProxyConfig *refcfg){ LinphoneCoreVTable vtable={0}; LinphoneCore *lc; @@ -123,6 +122,7 @@ void account_create_on_server(Account *account, const LinphoneProxyConfig *refcf LCSipTransports tr; vtable.registration_state_changed=account_created_on_server_cb; + vtable.auth_info_requested=account_created_auth_requested_cb; lc=configure_lc_from(&vtable,bc_tester_get_resource_dir_prefix(),NULL,account); tr.udp_port=LC_SIP_TRANSPORT_RANDOM; tr.tcp_port=LC_SIP_TRANSPORT_RANDOM; @@ -150,7 +150,7 @@ void account_create_on_server(Account *account, const LinphoneProxyConfig *refcf linphone_core_add_proxy_config(lc,cfg); - if (wait_for_until(lc,NULL,&account->created,1,10000)==FALSE){ + if (wait_for_until(lc,NULL,&account->auth_requested,1,10000)==FALSE){ ms_fatal("Account for %s could not be created on server.", linphone_proxy_config_get_identity(refcfg)); } linphone_proxy_config_edit(cfg); @@ -168,7 +168,7 @@ void account_create_on_server(Account *account, const LinphoneProxyConfig *refcf linphone_core_add_auth_info(lc,ai); linphone_auth_info_destroy(ai); - if (wait_for_until(lc,NULL,&account->registered,1,3000)==FALSE){ + if (wait_for_until(lc,NULL,&account->created,1,3000)==FALSE){ ms_fatal("Account for %s is not working on server.", linphone_proxy_config_get_identity(refcfg)); } linphone_core_remove_proxy_config(lc,cfg); diff --git a/tester/presence_tester.c b/tester/presence_tester.c index 52f554049..c2aa82b5b 100644 --- a/tester/presence_tester.c +++ b/tester/presence_tester.c @@ -501,7 +501,7 @@ static void subscriber_no_longer_reachable(void){ /*make sure marie subscribe is not reset by accident because of code below located in linphone_core_iterate if (lc->sip_network_reachable && lc->netup_time!=0 && (current_real_time-lc->netup_time)>3){ - + linphone_core_send_initial_subscribes(lc); } */ @@ -532,10 +532,10 @@ static void subscriber_no_longer_reachable(void){ } -static void subscribe_with_late_publish(void) { +static void test_subscribe_notify_publish(void) { LinphoneCoreManager* marie = linphone_core_manager_new( "marie_rc"); - LinphoneCoreManager* pauline = linphone_core_manager_new(transport_supported(LinphoneTransportTls) ? "pauline_rc" : "pauline_tcp_rc"); + LinphoneCoreManager* pauline = linphone_core_manager_new( "pauline_rc"); LinphoneProxyConfig* proxy; LinphonePresenceModel* presence; LpConfig *pauline_lp; @@ -611,7 +611,7 @@ static void test_forked_subscribe_notify_publish(void) { LinphoneCoreManager* marie = linphone_core_manager_new( "marie_rc"); LinphoneCoreManager* marie2 = linphone_core_manager_new( "marie_rc"); - LinphoneCoreManager* pauline = linphone_core_manager_new(transport_supported(LinphoneTransportTls) ? "pauline_rc" : "pauline_tcp_rc"); + LinphoneCoreManager* pauline = linphone_core_manager_new( "pauline_rc"); LinphoneProxyConfig* proxy; LinphonePresenceModel* presence; LpConfig *pauline_lp; @@ -701,7 +701,7 @@ static void enable_deflate_content_encoding(LinphoneCoreManager *mgr, bool_t ena static void test_presence_list_base(bool_t enable_compression) { LinphoneCoreManager *laure = linphone_core_manager_new("laure_tcp_rc"); LinphoneCoreManager *marie = linphone_core_manager_new("marie_rc"); - LinphoneCoreManager *pauline = linphone_core_manager_new(transport_supported(LinphoneTransportTls) ? "pauline_rc" : "pauline_tcp_rc"); + LinphoneCoreManager *pauline = linphone_core_manager_new("pauline_rc"); const char *rls_uri = "sip:rls@sip.example.org"; LinphoneFriendList *lfl; LinphoneFriend *lf; @@ -744,20 +744,20 @@ static void test_presence_list_base(bool_t enable_compression) { lcs = ms_list_append(lcs, pauline->lc); wait_for_list(lcs, &laure->stat.number_of_NotifyPresenceReceived, 2, 2000); - BC_ASSERT_EQUAL_FATAL(laure->stat.number_of_NotifyPresenceReceived, 2, int, "%d"); - BC_ASSERT_EQUAL_FATAL(linphone_core_get_default_friend_list(laure->lc)->expected_notification_version, 1, int, "%d"); + BC_ASSERT_EQUAL(laure->stat.number_of_NotifyPresenceReceived, 2, int, "%d"); + BC_ASSERT_EQUAL(linphone_core_get_default_friend_list(laure->lc)->expected_notification_version, 1, int, "%d"); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(laure->lc), marie_identity); - BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusBusy, int, "%d"); - BC_ASSERT_TRUE_FATAL(lf->presence_received); - BC_ASSERT_TRUE_FATAL(lf->subscribe_active); + BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusBusy, int, "%d"); + BC_ASSERT_EQUAL(lf->presence_received, TRUE, int, "%d"); + BC_ASSERT_EQUAL(lf->subscribe_active, TRUE, int, "%d"); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(laure->lc), pauline_identity); - BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusVacation, int, "%d"); - BC_ASSERT_TRUE_FATAL(lf->presence_received); - BC_ASSERT_TRUE_FATAL(lf->subscribe_active); + BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusVacation, int, "%d"); + BC_ASSERT_EQUAL(lf->presence_received, TRUE, int, "%d"); + BC_ASSERT_EQUAL(lf->subscribe_active, TRUE, int, "%d"); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(laure->lc), "sip:michelle@sip.inexistentdomain.com"); - BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); - BC_ASSERT_FALSE_FATAL(lf->presence_received); - BC_ASSERT_TRUE_FATAL(lf->subscribe_active); + BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); + BC_ASSERT_EQUAL(lf->presence_received, FALSE, int, "%d"); + BC_ASSERT_EQUAL(lf->subscribe_active, TRUE, int, "%d"); lfl = linphone_core_create_friend_list(marie->lc); linphone_friend_list_set_rls_uri(lfl, rls_uri); @@ -770,12 +770,12 @@ static void test_presence_list_base(bool_t enable_compression) { linphone_friend_list_update_subscriptions(linphone_core_get_default_friend_list(marie->lc), NULL, FALSE); wait_for_list(lcs, &marie->stat.number_of_NotifyPresenceReceived, 1, 2000); - BC_ASSERT_EQUAL_FATAL(marie->stat.number_of_NotifyPresenceReceived, 1, int, "%d"); - BC_ASSERT_EQUAL_FATAL(linphone_core_get_default_friend_list(marie->lc)->expected_notification_version, 1, int, "%d"); + BC_ASSERT_EQUAL(marie->stat.number_of_NotifyPresenceReceived, 1, int, "%d"); + BC_ASSERT_EQUAL(linphone_core_get_default_friend_list(marie->lc)->expected_notification_version, 1, int, "%d"); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(marie->lc), laure_identity); - BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusOnline, int, "%d"); - BC_ASSERT_TRUE_FATAL(lf->presence_received); - BC_ASSERT_TRUE_FATAL(lf->subscribe_active); + BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusOnline, int, "%d"); + BC_ASSERT_EQUAL(lf->presence_received, TRUE, int, "%d"); + BC_ASSERT_EQUAL(lf->subscribe_active, TRUE, int, "%d"); lfl = linphone_core_create_friend_list(pauline->lc); linphone_friend_list_set_rls_uri(lfl, rls_uri); @@ -788,12 +788,12 @@ static void test_presence_list_base(bool_t enable_compression) { linphone_friend_list_update_subscriptions(linphone_core_get_default_friend_list(pauline->lc), NULL, FALSE); wait_for_list(lcs, &pauline->stat.number_of_NotifyPresenceReceived, 1, 2000); - BC_ASSERT_EQUAL_FATAL(pauline->stat.number_of_NotifyPresenceReceived, 1, int, "%d"); - BC_ASSERT_EQUAL_FATAL(linphone_core_get_default_friend_list(pauline->lc)->expected_notification_version, 1, int, "%d"); + BC_ASSERT_EQUAL(pauline->stat.number_of_NotifyPresenceReceived, 1, int, "%d"); + BC_ASSERT_EQUAL(linphone_core_get_default_friend_list(pauline->lc)->expected_notification_version, 1, int, "%d"); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(pauline->lc), marie_identity); - BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusBusy, int, "%d"); - BC_ASSERT_TRUE_FATAL(lf->presence_received); - BC_ASSERT_TRUE_FATAL(lf->subscribe_active); + BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusBusy, int, "%d"); + BC_ASSERT_EQUAL(lf->presence_received, TRUE, int, "%d"); + BC_ASSERT_EQUAL(lf->subscribe_active, TRUE, int, "%d"); linphone_core_set_presence_model(marie->lc, linphone_core_create_presence_model_with_activity(marie->lc, LinphonePresenceActivityOnThePhone, NULL)); @@ -801,40 +801,40 @@ static void test_presence_list_base(bool_t enable_compression) { /* The number of PresenceReceived events can be 3 or 4 here. TODO: ideally it should always be 3. */ BC_ASSERT_GREATER(laure->stat.number_of_NotifyPresenceReceived, 3, int, "%d"); BC_ASSERT_LOWER(laure->stat.number_of_NotifyPresenceReceived, 4, int, "%d"); - BC_ASSERT_EQUAL_FATAL(linphone_core_get_default_friend_list(laure->lc)->expected_notification_version, 2, int, "%d"); + BC_ASSERT_EQUAL(linphone_core_get_default_friend_list(laure->lc)->expected_notification_version, 2, int, "%d"); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(laure->lc), marie_identity); - BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusOnThePhone, int, "%d"); + BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusOnThePhone, int, "%d"); wait_for_list(lcs, &pauline->stat.number_of_NotifyPresenceReceived, 2, 2000); - BC_ASSERT_EQUAL_FATAL(pauline->stat.number_of_NotifyPresenceReceived, 2, int, "%d"); - BC_ASSERT_EQUAL_FATAL(linphone_core_get_default_friend_list(pauline->lc)->expected_notification_version, 2, int, "%d"); + BC_ASSERT_EQUAL(pauline->stat.number_of_NotifyPresenceReceived, 2, int, "%d"); + BC_ASSERT_EQUAL(linphone_core_get_default_friend_list(pauline->lc)->expected_notification_version, 2, int, "%d"); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(pauline->lc), marie_identity); - BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusOnThePhone, int, "%d"); + BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusOnThePhone, int, "%d"); ms_message("Disabling publish"); enable_publish(laure, FALSE); enable_publish(marie, FALSE); enable_publish(pauline, FALSE); - + reset_counters(&pauline->stat); reset_counters(&laure->stat); reset_counters(&marie->stat); - - BC_ASSERT_TRUE_FATAL(wait_for_list(lcs, &pauline->stat.number_of_LinphonePresenceActivityOffline, 1, 2000)); + + BC_ASSERT_TRUE(wait_for_list(lcs, &pauline->stat.number_of_LinphonePresenceActivityOffline, 1, 2000)); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(pauline->lc), marie_identity); - BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); + BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); - BC_ASSERT_TRUE_FATAL(wait_for_list(lcs, &laure->stat.number_of_LinphonePresenceActivityOffline, 2, 2000)); + BC_ASSERT_TRUE(wait_for_list(lcs, &laure->stat.number_of_LinphonePresenceActivityOffline, 2, 2000)); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(laure->lc), pauline_identity); - BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); + BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(laure->lc), marie_identity); - BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); - - - BC_ASSERT_TRUE_FATAL(wait_for_list(lcs, &marie->stat.number_of_LinphonePresenceActivityOffline, 1, 2000)); + BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); + + + BC_ASSERT_TRUE(wait_for_list(lcs, &marie->stat.number_of_LinphonePresenceActivityOffline, 1, 2000)); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(marie->lc), laure_identity); - BC_ASSERT_EQUAL_FATAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); + BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); linphone_core_manager_destroy(laure); linphone_core_manager_destroy(marie); @@ -852,7 +852,7 @@ static void test_presence_list_without_compression(void) { #if 0 static void test_presence_list_subscribe_before_publish(void) { LinphoneCoreManager *laure = linphone_core_manager_new("laure_tcp_rc"); - LinphoneCoreManager *pauline = linphone_core_manager_new(transport_supported(LinphoneTransportTls) ? "pauline_rc" : "pauline_tcp_rc"); + LinphoneCoreManager *pauline = linphone_core_manager_new("pauline_rc"); const char *rls_uri = "sip:rls@sip.example.org"; LinphoneFriendList *lfl; LinphoneFriend *lf; @@ -887,12 +887,12 @@ static void test_presence_list_subscribe_before_publish(void) { BC_ASSERT_GREATER(linphone_core_get_default_friend_list(laure->lc)->expected_notification_version, 1, int, "%d"); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(laure->lc), pauline_identity); BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusVacation, int, "%d"); - BC_ASSERT_TRUE(lf->presence_received); - BC_ASSERT_TRUE(lf->subscribe_active); + BC_ASSERT_EQUAL(lf->presence_received, TRUE, int, "%d"); + BC_ASSERT_EQUAL(lf->subscribe_active, TRUE, int, "%d"); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(laure->lc), "sip:michelle@sip.inexistentdomain.com"); BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); - BC_ASSERT_FALSE(lf->presence_received); - BC_ASSERT_TRUE(lf->subscribe_active); + BC_ASSERT_EQUAL(lf->presence_received, FALSE, int, "%d"); + BC_ASSERT_EQUAL(lf->subscribe_active, TRUE, int, "%d"); enable_publish(laure, FALSE); enable_publish(pauline, FALSE); @@ -927,7 +927,7 @@ static void test_presence_list_subscription_expire_for_unknown(void) { static void test_presence_list_subscribe_with_error(bool_t io_error) { LinphoneCoreManager *laure = linphone_core_manager_new("laure_tcp_rc"); - LinphoneCoreManager *pauline = linphone_core_manager_new(transport_supported(LinphoneTransportTls) ? "pauline_rc" : "pauline_tcp_rc"); + LinphoneCoreManager *pauline = linphone_core_manager_new("pauline_rc"); const char *rls_uri = "sip:rls@sip.example.org"; LinphoneFriendList *lfl; LinphoneFriend *lf; @@ -963,12 +963,12 @@ static void test_presence_list_subscribe_with_error(bool_t io_error) { BC_ASSERT_GREATER(linphone_core_get_default_friend_list(laure->lc)->expected_notification_version, 1, int, "%d"); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(laure->lc), pauline_identity); BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusVacation, int, "%d"); - BC_ASSERT_TRUE(lf->presence_received); - BC_ASSERT_TRUE(lf->subscribe_active); + BC_ASSERT_EQUAL(lf->presence_received, TRUE, int, "%d"); + BC_ASSERT_EQUAL(lf->subscribe_active, TRUE, int, "%d"); lf = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(laure->lc), "sip:michelle@sip.inexistentdomain.com"); BC_ASSERT_EQUAL(linphone_friend_get_status(lf), LinphoneStatusOffline, int, "%d"); - BC_ASSERT_FALSE(lf->presence_received); - BC_ASSERT_TRUE(lf->subscribe_active); + BC_ASSERT_EQUAL(lf->presence_received, FALSE, int, "%d"); + BC_ASSERT_EQUAL(lf->subscribe_active, TRUE, int, "%d"); BC_ASSERT_TRUE(wait_for_until(laure->lc, pauline->lc, &laure->stat.number_of_LinphonePresenceActivityVacation, 2, 6000)); if (io_error) { @@ -997,11 +997,11 @@ static void test_presence_list_subscribe_with_error(bool_t io_error) { linphone_core_manager_destroy(pauline); } -static void presence_list_subscribe_dialog_expire(void) { +static void test_presence_list_subscribe_dialog_expire(void) { test_presence_list_subscribe_with_error(FALSE); } -static void presence_list_subscribe_io_error(void) { +static void test_presence_list_subscribe_io_error(void) { test_presence_list_subscribe_with_error(TRUE); } @@ -1010,97 +1010,30 @@ static void simple_subscribe_with_friend_from_rc(void) { LinphoneCoreManager* pauline = presence_linphone_core_manager_new("pauline"); LinphoneCoreManager *marie = presence_linphone_core_manager_new_with_rc_name("marie", "pauline_as_friend_rc"); LinphoneFriend *pauline_as_friend; - + BC_ASSERT_EQUAL(ms_list_size(linphone_core_get_friend_list(marie->lc)), 1, int , "%i"); - + if (ms_list_size(linphone_core_get_friend_list(marie->lc))>0) { pauline_as_friend = (LinphoneFriend*)linphone_core_get_friend_list(marie->lc)->data; linphone_friend_set_address(pauline_as_friend, pauline->identity); /*hack to update addr with port number*/ } - + BC_ASSERT_TRUE (wait_for(marie->lc,pauline->lc,&marie->stat.number_of_LinphonePresenceActivityOnline,1)); - + BC_ASSERT_EQUAL(pauline->stat.number_of_NewSubscriptionRequest,1, int, "%d"); BC_ASSERT_EQUAL(marie->stat.number_of_NotifyPresenceReceived,1, int, "%d"); - + linphone_core_manager_destroy(marie); /*unsubscribe is not reported ?*/ BC_ASSERT_FALSE(wait_for(NULL,pauline->lc,&pauline->stat.number_of_NewSubscriptionRequest,2)); /*just to wait for unsubscription even if not notified*/ - - linphone_core_manager_destroy(pauline); -} - -static void long_term_presence_base(const char* addr, bool_t exist) { - LinphoneFriend* friend; - LinphoneCoreManager* pauline = presence_linphone_core_manager_new("pauline"); - linphone_core_set_user_agent(pauline->lc, "full-presence-support", NULL); - - friend=linphone_core_create_friend_with_address(pauline->lc,addr); - linphone_friend_edit(friend); - linphone_friend_enable_subscribes(friend,TRUE); - linphone_friend_done(friend); - linphone_core_add_friend(pauline->lc,friend); - - - if (exist) { - BC_ASSERT_TRUE(wait_for(pauline->lc,NULL,&pauline->stat.number_of_LinphonePresenceActivityOnline,1)); - BC_ASSERT_EQUAL(pauline->stat.number_of_LinphonePresenceActivityOnline, 1, int, "%d"); - BC_ASSERT_EQUAL(linphone_presence_model_get_basic_status(linphone_friend_get_presence_model(friend)), LinphonePresenceBasicStatusOpen, int, "%d"); - } else { - BC_ASSERT_TRUE(wait_for(pauline->lc,NULL,&pauline->stat.number_of_LinphonePresenceActivityOffline,1)); - BC_ASSERT_EQUAL(pauline->stat.number_of_LinphonePresenceActivityOffline, 1, int, "%d"); - BC_ASSERT_EQUAL(linphone_presence_model_get_basic_status(linphone_friend_get_presence_model(friend)), LinphonePresenceBasicStatusClosed, int, "%d"); - } - - linphone_friend_unref(friend); - linphone_core_manager_destroy(pauline); -} -static void long_term_presence_existing_friend(void) { - // this friend is not online, but is known from flexisip to be registered (see flexisip/userdb.conf), - // so we expect to get a report that he is currently not online - long_term_presence_base("sip:liblinphone_tester@sip.example.org", TRUE); -} -static void long_term_presence_inexistent_friend(void) { - long_term_presence_base("sip:random_unknown@sip.example.org", FALSE); -} - -static void long_term_presence_list(void) { - LinphoneFriend *f1, *f2; - LinphoneFriendList* friends; - LinphoneCoreManager* pauline = presence_linphone_core_manager_new("pauline"); - linphone_core_set_user_agent(pauline->lc, "full-presence-support", NULL); - enable_deflate_content_encoding(pauline, FALSE); - - friends = linphone_core_create_friend_list(pauline->lc); - linphone_friend_list_set_rls_uri(friends, "sip:rls@sip.example.org"); - f1 = linphone_core_create_friend_with_address(pauline->lc, "sip:liblinphone_tester@sip.example.org"); - linphone_friend_list_add_friend(friends, f1); - linphone_friend_unref(f1); - f2 = linphone_core_create_friend_with_address(pauline->lc, "sip:random_unknown@sip.example.org"); - linphone_friend_list_add_friend(friends, f2); - linphone_friend_unref(f2); - linphone_core_remove_friend_list(pauline->lc, linphone_core_get_default_friend_list(pauline->lc)); - linphone_core_add_friend_list(pauline->lc, friends); - linphone_friend_list_unref(friends); - - BC_ASSERT_TRUE(wait_for(pauline->lc,NULL,&pauline->stat.number_of_NotifyPresenceReceived,2)); - BC_ASSERT_EQUAL(linphone_core_get_default_friend_list(pauline->lc)->expected_notification_version, 1, int, "%d"); - - f1 = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(pauline->lc), "sip:liblinphone_tester@sip.example.org"); - BC_ASSERT_EQUAL(linphone_presence_model_get_basic_status(linphone_friend_get_presence_model(f1)), LinphonePresenceBasicStatusOpen, int, "%d"); - BC_ASSERT_TRUE(f1->presence_received); - - f2 = linphone_friend_list_find_friend_by_uri(linphone_core_get_default_friend_list(pauline->lc), "sip:random_unknown@sip.example.org"); - BC_ASSERT_EQUAL(linphone_presence_model_get_basic_status(linphone_friend_get_presence_model(f2)), LinphonePresenceBasicStatusClosed, int, "%d"); - BC_ASSERT_FALSE(f2->presence_received); - + linphone_core_manager_destroy(pauline); } test_t presence_tests[] = { TEST_ONE_TAG("Simple Subscribe", simple_subscribe,"presence"), - TEST_NO_TAG("Simple Subscribe with friend from rc", simple_subscribe_with_friend_from_rc), + TEST_ONE_TAG("Simple Subscribe with friend from rc", simple_subscribe_with_friend_from_rc,"LeaksMemory"), TEST_ONE_TAG("Simple Publish", simple_publish, "LeaksMemory"), TEST_ONE_TAG("Simple Publish with expires", publish_with_expires, "LeaksMemory"), /*TEST_ONE_TAG("Call with presence", call_with_presence, "LeaksMemory"),*/ @@ -1110,16 +1043,13 @@ test_t presence_tests[] = { TEST_NO_TAG("Presence SUBSCRIBE forked", subscribe_presence_forked), TEST_NO_TAG("Presence SUBSCRIBE expired", subscribe_presence_expired), TEST_ONE_TAG("Subscriber no longer reachable using server",subscriber_no_longer_reachable, "presence"), - TEST_ONE_TAG("Subscribe with late publish", subscribe_with_late_publish, "LeaksMemory"), + TEST_ONE_TAG("Subscribe with late publish", test_subscribe_notify_publish, "LeaksMemory"), TEST_ONE_TAG("Forked subscribe with late publish", test_forked_subscribe_notify_publish, "LeaksMemory"), TEST_ONE_TAG("Presence list", test_presence_list, "LeaksMemory"), TEST_ONE_TAG("Presence list without compression", test_presence_list_without_compression, "LeaksMemory"), TEST_ONE_TAG("Presence list, subscription expiration for unknown contact",test_presence_list_subscription_expire_for_unknown, "LeaksMemory"), - TEST_ONE_TAG("Presence list, silent subscription expiration", presence_list_subscribe_dialog_expire, "LeaksMemory"), - TEST_ONE_TAG("Presence list, io error",presence_list_subscribe_io_error, "LeaksMemory"), - TEST_NO_TAG("Long term presence existing friend",long_term_presence_existing_friend), - TEST_NO_TAG("Long term presence inexistent friend",long_term_presence_inexistent_friend), - TEST_NO_TAG("Long term presence list",long_term_presence_list), + TEST_ONE_TAG("Presence list, silent subscription expiration", test_presence_list_subscribe_dialog_expire, "LeaksMemory"), + TEST_ONE_TAG("Presence list, io error",test_presence_list_subscribe_io_error, "LeaksMemory") }; test_suite_t presence_test_suite = {"Presence", NULL, NULL, liblinphone_tester_before_each, liblinphone_tester_after_each,