From 05465f45173d17aa2039582fe0bf6c28fac6fad1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafa=C5=82=20Wabik?= <4rafal@gmail.com> Date: Sun, 19 May 2024 16:13:57 +0200 Subject: [PATCH] Up to 1.0.72-20240519 --- luci-app-3ginfo-lite/Makefile | 2 +- .../resources/view/modem/3gdebug.js | 170 +- .../po/pl/luci-app-3ginfo-lite.po | 247 ++ luci-app-3ginfo-lite/root/etc/config/3ginfo | 4 + .../root/etc/uci-defaults/set_3ginfo_port.sh | 17 + .../root/usr/share/3ginfo-lite/3ginfo.sh | 505 +++ .../root/usr/share/3ginfo-lite/check.gcom | 13 + .../root/usr/share/3ginfo-lite/detect.sh | 104 + .../root/usr/share/3ginfo-lite/info.gcom | 51 + .../root/usr/share/3ginfo-lite/mccmnc.dat | 2970 +++++++++++++++++ .../modem/hilink/alcatel_hilink.sh | 63 + .../3ginfo-lite/modem/hilink/huawei_hilink.sh | 248 ++ .../usr/share/3ginfo-lite/modem/hilink/zte.sh | 62 + .../usr/share/3ginfo-lite/modem/pci/105be0b0 | 204 ++ .../usr/share/3ginfo-lite/modem/usb/03f00857 | 128 + .../usr/share/3ginfo-lite/modem/usb/03f00a57 | 128 + .../usr/share/3ginfo-lite/modem/usb/03f0581d | 113 + .../usr/share/3ginfo-lite/modem/usb/05c66000 | 29 + .../usr/share/3ginfo-lite/modem/usb/05c69215 | 117 + .../usr/share/3ginfo-lite/modem/usb/0e8d7126 | 310 ++ .../usr/share/3ginfo-lite/modem/usb/0e8d7127 | 310 ++ .../usr/share/3ginfo-lite/modem/usb/0f3d68aa | 84 + .../usr/share/3ginfo-lite/modem/usb/119968a2 | 39 + .../usr/share/3ginfo-lite/modem/usb/11999041 | 103 + .../usr/share/3ginfo-lite/modem/usb/11999071 | 104 + .../usr/share/3ginfo-lite/modem/usb/119990d3 | 147 + .../usr/share/3ginfo-lite/modem/usb/12d11506 | 122 + .../usr/share/3ginfo-lite/modem/usb/12d1155e | 122 + .../usr/share/3ginfo-lite/modem/usb/12d1156c | 113 + .../usr/share/3ginfo-lite/modem/usb/16907588 | 148 + .../usr/share/3ginfo-lite/modem/usb/19d20167 | 19 + .../usr/share/3ginfo-lite/modem/usb/19d20189 | 62 + .../usr/share/3ginfo-lite/modem/usb/19d21275 | 58 + .../usr/share/3ginfo-lite/modem/usb/19d21432 | 134 + .../usr/share/3ginfo-lite/modem/usb/19d21485 | 202 ++ .../usr/share/3ginfo-lite/modem/usb/19d21489 | 139 + .../usr/share/3ginfo-lite/modem/usb/1bc71040 | 162 + .../usr/share/3ginfo-lite/modem/usb/1bc71201 | 42 + .../usr/share/3ginfo-lite/modem/usb/1bc71900 | 128 + .../usr/share/3ginfo-lite/modem/usb/1bc71901 | 128 + .../usr/share/3ginfo-lite/modem/usb/1e0e9000 | 100 + .../usr/share/3ginfo-lite/modem/usb/1e0e9001 | 100 + .../usr/share/3ginfo-lite/modem/usb/1e0e9003 | 100 + .../usr/share/3ginfo-lite/modem/usb/1e2d00b3 | 225 ++ .../usr/share/3ginfo-lite/modem/usb/1e2d00b7 | 225 ++ .../usr/share/3ginfo-lite/modem/usb/20202033 | 89 + .../usr/share/3ginfo-lite/modem/usb/2c7c0122 | 502 +++ .../usr/share/3ginfo-lite/modem/usb/2c7c0125 | 120 + .../usr/share/3ginfo-lite/modem/usb/2c7c0306 | 149 + .../usr/share/3ginfo-lite/modem/usb/2c7c0512 | 251 ++ .../usr/share/3ginfo-lite/modem/usb/2c7c0620 | 255 ++ .../usr/share/3ginfo-lite/modem/usb/2c7c0800 | 510 +++ .../usr/share/3ginfo-lite/modem/usb/2c7c0801 | 503 +++ .../usr/share/3ginfo-lite/modem/usb/2c7c0900 | 519 +++ .../usr/share/3ginfo-lite/modem/usb/2c7c6026 | 116 + .../usr/share/3ginfo-lite/modem/usb/2cb70104 | 205 ++ .../usr/share/3ginfo-lite/modem/usb/2cb70105 | 176 + .../usr/share/3ginfo-lite/modem/usb/2cd20001 | 88 + .../usr/share/3ginfo-lite/modem/usb/2cd20004 | 101 + .../usr/share/3ginfo-lite/modem/usb/413c81b6 | 103 + .../usr/share/3ginfo-lite/modem/usb/413c81d7 | 221 ++ .../usr/share/3ginfo-lite/modem/usb/808707f9 | 482 +++ .../usr/share/3ginfo-lite/modem/usb/8087095a | 482 +++ .../usr/share/3ginfo-lite/vendorproduct.gcom | 91 + .../luci/menu.d/luci-app-3ginfo-lite.json | 50 + .../rpcd/acl.d/luci-app-3ginfo-lite.json | 29 + 66 files changed, 13625 insertions(+), 18 deletions(-) create mode 100644 luci-app-3ginfo-lite/po/pl/luci-app-3ginfo-lite.po create mode 100644 luci-app-3ginfo-lite/root/etc/config/3ginfo create mode 100644 luci-app-3ginfo-lite/root/etc/uci-defaults/set_3ginfo_port.sh create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/3ginfo.sh create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/check.gcom create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/detect.sh create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/info.gcom create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/mccmnc.dat create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/hilink/alcatel_hilink.sh create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/hilink/huawei_hilink.sh create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/hilink/zte.sh create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/pci/105be0b0 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/03f00857 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/03f00a57 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/03f0581d create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/05c66000 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/05c69215 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/0e8d7126 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/0e8d7127 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/0f3d68aa create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/119968a2 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/11999041 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/11999071 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/119990d3 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/12d11506 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/12d1155e create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/12d1156c create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/16907588 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/19d20167 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/19d20189 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/19d21275 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/19d21432 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/19d21485 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/19d21489 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/1bc71040 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/1bc71201 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/1bc71900 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/1bc71901 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/1e0e9000 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/1e0e9001 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/1e0e9003 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/1e2d00b3 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/1e2d00b7 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/20202033 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/2c7c0122 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/2c7c0125 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/2c7c0306 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/2c7c0512 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/2c7c0620 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/2c7c0800 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/2c7c0801 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/2c7c0900 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/2c7c6026 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/2cb70104 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/2cb70105 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/2cd20001 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/2cd20004 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/413c81b6 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/413c81d7 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/808707f9 create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/modem/usb/8087095a create mode 100644 luci-app-3ginfo-lite/root/usr/share/3ginfo-lite/vendorproduct.gcom create mode 100644 luci-app-3ginfo-lite/root/usr/share/luci/menu.d/luci-app-3ginfo-lite.json create mode 100644 luci-app-3ginfo-lite/root/usr/share/rpcd/acl.d/luci-app-3ginfo-lite.json diff --git a/luci-app-3ginfo-lite/Makefile b/luci-app-3ginfo-lite/Makefile index c130a442..f30900db 100644 --- a/luci-app-3ginfo-lite/Makefile +++ b/luci-app-3ginfo-lite/Makefile @@ -12,7 +12,7 @@ MAINTAINER:=Rafał Wabik <4Rafal@gmail.com> LUCI_DESCRIPTION:=LuCI JS interface for the 3ginfo-lite. The package allows you to view the parameters of the mobile internet connection. LUCI_DEPENDS:=+sms-tool +comgt +kmod-usb-serial-option LUCI_PKGARCH:=all -PKG_VERSION:=1.0.71-20240512 +PKG_VERSION:=1.0.72-20240519 include $(TOPDIR)/feeds/luci/luci.mk diff --git a/luci-app-3ginfo-lite/htdocs/luci-static/resources/view/modem/3gdebug.js b/luci-app-3ginfo-lite/htdocs/luci-static/resources/view/modem/3gdebug.js index b80a02ab..8e3684ec 100644 --- a/luci-app-3ginfo-lite/htdocs/luci-static/resources/view/modem/3gdebug.js +++ b/luci-app-3ginfo-lite/htdocs/luci-static/resources/view/modem/3gdebug.js @@ -1,7 +1,9 @@ 'use strict'; 'require view'; +'require dom'; 'require fs'; 'require ui'; +'require uci'; /* Copyright 2021-2024 Rafał Wabik - IceG - From eko.one.pl forum @@ -10,34 +12,168 @@ */ return view.extend({ - load: function() { - return fs.read_direct('/sys/kernel/debug/usb/devices', [ '-r' ]).catch(function(err) { - ui.addNotification(null, E('p', {}, _('Unable to load data: ' + err.message))); - return ''; + handleCommand: function(exec, args) { + var buttons = document.querySelectorAll('.diag-action > .cbi-button'); + + for (var i = 0; i < buttons.length; i++) + buttons[i].setAttribute('disabled', 'true'); + + return fs.exec(exec, args).then(function(res) { + var out = document.querySelector('textarea'); + out.style.display = ''; + + dom.content(out, [ res.stdout || '', res.stderr || '' ]); + fs.write('/tmp/debug_result.txt', [ res.stdout || '' ]); + }).catch(function(err) { + ui.addNotification(null, E('p', [ err ])) + }).finally(function() { + var viewbc = document.getElementById('clear'); + viewbc.style.display = ''; + var viewbd = document.getElementById('download'); + viewbd.style.display = ''; + + for (var i = 0; i < buttons.length; i++) + buttons[i].removeAttribute('disabled'); }); }, - render: function(data) { - var dlines = data.trim().split(/\n/).map(function(line) { - return line.replace(/^<\d+>/, ''); + handleUSB: function(ev, cmd) { + return this.handleCommand('/bin/cat', ['/sys/kernel/debug/usb/devices']); + }, + + handleTTY: function(ev, cmd) { + return this.handleCommand('/bin/ls', ['/dev']); + }, + + handleDBG: function(ev, cmd) { + return this.handleCommand('/bin/sh', ['-x', '/usr/share/3ginfo-lite/3ginfo.sh']); + }, + + handleClear: function(ev) { + var out = document.getElementById('pre'); + out.style.display = 'none'; + var viewbc = document.getElementById('clear'); + viewbc.style.display = 'none'; + var viewbd = document.getElementById('download'); + viewbd.style.display = 'none'; + fs.write('/tmp/debug_result.txt', ''); + }, + + handleDownload: function(ev) { + return L.resolveDefault(fs.read_direct('/tmp/debug_result.txt'), null).then(function (res) { + if (res) { + var link = E('a', { + 'download': 'debug_result.txt', + 'href': URL.createObjectURL( + new Blob([ res ], { type: 'text/plain' })), + }); + link.click(); + URL.revokeObjectURL(link.href); + } + }).catch(() => { + ui.addNotification(null, E('p', {}, _('Download error') + ': ' + err.message)); }); + }, + + load: function() { + return L.resolveDefault(uci.load('luci')); + }, + + render: function(res) { + + var table = E('table', { 'class': 'table' }, [ + E('tr', { 'class': 'tr' }, [ + E('td', { 'class': 'td left', 'style': 'overflow:initial' }, [ + E('label', { 'class': 'cbi-value-title' }, + _("USB debug information") + ), + E('p'), + E('label', { 'class': 'cbi-value-title' }, + _("cat /sys/kernel/debug/usb/devices.") + ), + E('p'), + E('span', { 'class': 'diag-action' }, [ + E('button', { + 'class': 'cbi-button cbi-button-action', + 'click': ui.createHandlerFn(this, 'handleUSB') + }, [ _('Show devices') ]) + ]) + ]), + + E('td', { 'class': 'td left', 'style': 'overflow:initial' }, [ + E('label', { 'class': 'cbi-value-title' }, + _("Check availability of ttyX ports.") + ), + E('p'), + E('label', { 'class': 'cbi-value-title' }, + _("ls /dev.") + ), + E('p'), + E('span', { 'class': 'diag-action' }, [ + E('button', { + 'class': 'cbi-button cbi-button-action', + 'click': ui.createHandlerFn(this, 'handleTTY') + }, [ _('Show devices') ]) + ]) + ]), + + E('td', { 'class': 'td left' }, [ + E('label', { 'class': 'cbi-value-title' }, + _("Check data read by the 3ginfo scripts.") + ), + E('p'), + E('label', { 'class': 'cbi-value-title' }, + _("sh -x /usr/share/3ginfo-lite/3ginfo.sh.") + ), + E('p'), + E('span', { 'class': 'diag-action' }, [ + E('button', { + 'class': 'cbi-button cbi-button-action', + 'click': ui.createHandlerFn(this, 'handleDBG') + }, [ _('Debug') ]) + ]) + ]), + ]) + ]); + + var info = _('More information about the 3ginfo on the %seko.one.pl forum%s.').format('', ''); - return E([], [ - E('h2', {}, [ _('3ginfo-lite') ]), - E('div', { class: 'cbi-section-descr' }, info), - E('div', { 'id': 'content_syslog' }, [ + var view = E('div', { 'class': 'cbi-map'}, [ + E('h2', {}, [ _('Diagnostics') ]), + E('div', { 'class': 'cbi-map-descr'}, _('Execution of various commands to check the availability of the modem and eliminate errors in the data collected by the scripts.') + '
' + info), + table, + E('hr'), + E('div', {'class': 'cbi-section'}, [ + E('p'), E('textarea', { - 'id': 'syslog', - 'style':'border: 1px solid var(--border-color-medium); border-radius: 5px; font-family: monospace; font-size:12px; white-space:pre; width: 100%; resize: none;', + 'id': 'pre', + 'style':'display:none; border: 1px solid var(--border-color-medium); border-radius: 5px; font-family: monospace; font-size:12px; white-space:pre; width: 100%; resize: none;', 'readonly': true, 'wrap': 'off', - 'rows': dlines.length + 1 - }, [ dlines.join('\n') ]) - ]), - + 'rows': '25' + }, []), + E('p'), + E('div', { 'class': 'right' }, [ + E('button', { + 'class': 'cbi-button cbi-button-remove', + 'id': 'clear', + 'style': 'display:none', + 'click': ui.createHandlerFn(this, 'handleClear') + }, [ _('Clear') ]), + '\xa0\xa0\xa0', + E('button', { + 'class': 'cbi-button cbi-button-apply important', + 'id': 'download', + 'style': 'display:none', + 'click': ui.createHandlerFn(this, 'handleDownload') + }, [ _('Download') ]), + ]), + ]) ]); + + return view; }, handleSaveApply: null, diff --git a/luci-app-3ginfo-lite/po/pl/luci-app-3ginfo-lite.po b/luci-app-3ginfo-lite/po/pl/luci-app-3ginfo-lite.po new file mode 100644 index 00000000..b98d012f --- /dev/null +++ b/luci-app-3ginfo-lite/po/pl/luci-app-3ginfo-lite.po @@ -0,0 +1,247 @@ +msgid "" +msgstr "Content-Type: text/plain; charset=UTF-8" + +msgid "Information about 3G/4G/5G connection" +msgstr "Informacja o statusie połączenia 3G/4G/5G" + +msgid "More information about the 3ginfo on the %seko.one.pl forum%s." +msgstr "Więcej informacji o 3ginfo na %sforum eko.one.pl%s." + +msgid "eko.one.pl forum" +msgstr "forum eko.one.pl" + +msgid "Details" +msgstr "Szczegóły" + +msgid "Configuration" +msgstr "Konfiguracja" + +msgid "General Information" +msgstr "Informacje ogólne" + +msgid "Modem Information" +msgstr "Informacje o modemie" + +msgid "Cell / Signal Information" +msgstr "Informacje o sieci / sygnale" + +msgid "Technology" +msgstr "Technologia" + +msgid "Operator" +msgstr "Operator" + +msgid "Signal strength" +msgstr "Siła sygnału" + +msgid "Connection statistics" +msgstr "Statystyki połączenia" + +msgid "Modem type" +msgstr "Typ modemu" + +msgid "Additional information" +msgstr "Informacje dodatkowe" + +msgid "Revision / Firmware" +msgstr "Rewizja / Wersja firmware" + +msgid "IP adress / Communication Port" +msgstr "Adres IP / Port do komunikacji" + +msgid "Chip Temperature" +msgstr "Temperatura układu" + +msgid "Configuration 3ginfo-lite" +msgstr "Konfiguracja 3ginfo-lite" + +msgid "Configuration panel for the 3ginfo-lite application." +msgstr "Panel konfiguracyjny dla aplikacji 3ginfo-lite." + +msgid "Network" +msgstr "Sieć" + +msgid "IP adress / Port for communication with the modem" +msgstr "Adres IP / Port do komunikacji z modemem" + +msgid "Protocol" +msgstr "Protokół" + +msgid "" +"Select the appropriate settings.

Traditional " +"modem.
Select one of the available ttyUSBX " +"ports.

HiLink modem.
Enter the IP address " +"192.168.X.X under which the modem is available." +msgstr "" +"Wybierz odpowiednie ustawienia.

Tradycyjny " +"modem.
Wybierz jeden z dostępnych portów " +"ttyUSBX.

Modem typu HiLink.
Wprowadź adres IP " +"192.168.X.X pod którym dostępny jest modem." + +msgid "Very good" +msgstr "Bardzo dobry" + +msgid "Good" +msgstr "Dobry" + +msgid "Weak" +msgstr "Słaby" + +msgid "Very weak" +msgstr "Bardzo słaby" + +msgid "Excellent" +msgstr "Doskonały" + +msgid "Good" +msgstr "Dobry" + +msgid "Mid cell" +msgstr "Średni zasięg" + +msgid "Cell edge" +msgstr "Na krawędzi zasięgu" + +msgid "SIM status" +msgstr "Status karty SIM" + +msgid "Not registered" +msgstr "Nie zalogowana do sieci" + +msgid "Registered" +msgstr "Zalogowana do sieci" + +msgid "Registered (roaming)" +msgstr "Zalogowana do sieci (roaming)" + +msgid "Registered, only SMS" +msgstr "Zalogowana do sieci, tylko SMS" + +msgid "Registered (roaming), only SMS" +msgstr "Zalogowana do sieci (roaming), tylko SMS" + +msgid "Searching.." +msgstr "Wyszukiwanie.." + +msgid "Registering denied" +msgstr "Odmowa zalogowana do sieci" + +msgid "Waiting to read data from the modem..." +msgstr "Oczekiwanie na odczyt danych z modemu..." + +msgid "Waiting for connection data..." +msgstr "Oczekiwanie na dane połączenia..." + +msgid "BTS Search" +msgstr "Lokalizacja stacji bazowej" + +msgid "Search" +msgstr "Szukaj" + +msgid "Search BTS using Cell ID" +msgstr "Wyszukaj BTS po Cell ID" + +msgid "Hint: To set up a BTS search engine, all you have to do is select the dedicated website for your location." +msgstr "Wskazówka: Aby skonfigurować wyszukiwarkę BTS, wystarczy wybrać stronę odpowiednią dla swojej lokalizacji." + +msgid "BTS search settings" +msgstr "Ustawienia wyszukiwania stacji bazowej" + +msgid "Website to search for BTS" +msgstr "Strona do wyszukiwania BTS" + +msgid "Select a website for searching." +msgstr "Wybierz stronę internetową służącą do wyszukiwania." + +msgid "SIM Slot" +msgstr "Slot SIM" + +msgid "Problem with registering to the network, check the SIM card." +msgstr "Problem z rejestracją do sieci, sprawdź kartę SIM." + +msgid "SIM PIN required" +msgstr "Wymagany jest kod PIN dla karty SIM" + +msgid "SIM PUK required" +msgstr "Wymagany jest kod PUK dla karty SIM" + +msgid "SIM failure" +msgstr "Awaria karty SIM" + +msgid "SIM busy" +msgstr "Karta SIM jest zajęta" + +msgid "SIM wrong" +msgstr "Nieprawidłowa karta SIM" + +msgid "SIM PIN2 required" +msgstr "Wymagany jest kod PIN2 dla karty SIM" + +msgid "SIM PUK2 required" +msgstr "Wymagany jest kod PUK2 dla karty SIM" + +msgid "" +"There is a problem reading data from the modem.

Please " +"check: