Merge repeater-admin: repeater and room server admin app

# Conflicts:
#	deploy/apps/lang/bg.lang
#	deploy/apps/lang/cs.lang
#	deploy/apps/lang/de.lang
#	deploy/apps/lang/el.lang
#	deploy/apps/lang/es.lang
#	deploy/apps/lang/fr.lang
#	deploy/apps/lang/hu.lang
#	deploy/apps/lang/it.lang
#	deploy/apps/lang/nl.lang
#	deploy/apps/lang/pt-br.lang
#	deploy/apps/lang/ro.lang
#	deploy/apps/lang/ru.lang
#	deploy/apps/lang/sr.lang
#	deploy/apps/lang/uk.lang
#	src/ui-touch/i18n_builtin.h
This commit is contained in:
Kaj Schittecat committed 2026-10-18 15:34:38 +02:00
commit 8954fe06df
23 files changed
+19530 -13266

No files matched your search

+151
View File
@@ -2009,3 +2009,154 @@ Antenna Антена
On-board Вградена
Glass tiles Стъклени плочки
Widgets, cards and panel tiles let the background show through. Off: solid tiles. Джаджите, картите и плочките в панела пропускат фона. Изключено: плътни плочки.
# repeater admin app
0 to 9. Higher waits longer between sends. От 0 до 9. По-високо чака по-дълго между изпращанията.
A name is required Нужно е име
A node clock only moves forward: syncing cannot set it back. Часовникът на възел върви само напред: синхронизирането не може да го върне назад.
A room server lists only its admins here. Room сървър показва тук само своите администратори.
Access Достъп
Access changed Достъпът е променен
Actions Действия
Admin password Парола на администратор
Admin password changed. Паролата на администратора е променена.
Admin password for full control, or the room password. Парола на администратор за пълен контрол, или паролата на стаята.
Admin password for full control. A guest sees status and neighbours. Парола на администратор за пълен контрол. Гост вижда състоянието и съседите.
Advanced Разширени
Advert hop limit Лимит на скоковете за обяви
Advert intervals Интервали на обявите
Adverts Обяви
Again Отново
Airtime factor Коефициент на ефирно време
Bandwidth Честотна лента
Change Промени
Change radio settings Промяна на радионастройките
Change the admin password? If you lose it you can no longer manage this node over the mesh. Да се промени ли паролата на администратора? Ако я загубите, вече няма да можете да управлявате този възел през мрежата.
Clients Клиенти
Coding rate Кодова скорост
Console Конзола
Current Текущи
Decimal degrees, for example 4.4025 Десетични градуси, например 4.4025
Decimal degrees, for example 51.2194 Десетични градуси, например 51.2194
Direct send delay Закъснение при директно изпращане
Discover neighbours Търсене на съседи
Duplicates Дубликати
Enter a number Въведете число
Enter a password Въведете парола
Error Грешка
Errors Грешки
Firmware update: the node opens a Wi-Fi access point; join it and upload the new firmware in a browser, as the node's own instructions say. Обновяване: възелът отваря Wi-Fi точка за достъп; свържете се с нея и качете новия фърмуер в браузър, както казват инструкциите на възела.
Flood advert Flood обява
Flood hop limit Лимит на скоковете за flood
Flood send delay Закъснение при flood изпращане
Floods with more hops are not repeated. 0 to 64. Flood с повече скокове не се повтаря. От 0 до 64.
Frequency: 150 to 2500 MHz Честота: от 150 до 2500 MHz
Guest Гост
Guest password Парола за гост
Hours between flood adverts: 0 (off) or 3 to 168. Часове между flood обявите: 0 (изкл.) или от 3 до 168.
How hard to drop packets that came back around. Колко строго да се изхвърлят пакети, върнали се в кръг.
Identity Идентичност
Identity & location Идентичност и местоположение
Last reply Последен отговор
Last signal Последен сигнал
Lets a wrong or blank password in to read, not to post. Пуска с грешна или празна парола за четене, не за публикуване.
Load more (%d of %u) Зареди още (%d от %u)
Local advert Локална обява
Location Местоположение
Log in Вход
Log in as admin Вход като администратор
Log in as guest Вход като гост
Logged in as a guest: you can read the status and neighbours. Log in with the admin password to change settings. Влезли сте като гост: можете да четете състоянието и съседите. Влезте с паролата на администратора, за да променяте настройки.
Logged in without admin rights. Log in with the admin password to change settings. Влезли сте без права на администратор. Влезте с паролата на администратора, за да променяте настройки.
Logging in... Влизане...
Login refused. Входът е отказан.
Logs in as a guest. Blank lets anyone in as a guest. Up to 15 characters. Влиза като гост. Празна пуска всеки като гост. До 15 знака.
Loop detection Откриване на цикли
Manage Управление
Members log in with it to post. Up to 15 characters. Членовете влизат с нея, за да публикуват. До 15 знака.
Minutes between zero-hop adverts: 0 (off) or 60 to 240. Минути между обявите без скок: 0 (изкл.) или от 60 до 240.
Moderate Умерено
Neighbours Съседи
New password Нова парола
Newest Най-нови
No neighbours heard yet. Още не са чути съседи.
No reply Няма отговор
No reply from the node Възелът не отговаря
No reply. Check the password, that the node is in range, and this device's clock. Няма отговор. Проверете паролата, дали възелът е в обхват, и часовника на това устройство.
No reply. It may or may not have been applied: read it again. Няма отговор. Може да е приложено, а може и да не е: прочетете отново.
No spaces Без интервали
Nobody on the list. Няма никой в списъка.
Node clock Часовник на възела
Noise floor Ниво на шума
Not in your contacts Не е в контактите ви
Not in your contacts, so only removing is possible here. Не е в контактите ви, затова тук може само да се премахне.
Not saved Не е запазено
Off: this node stops forwarding anything. Изкл.: този възел спира да препраща каквото и да е.
Order Ред
Owner Собственик
Owner info Информация за собственика
Password Парола
Passwords Пароли
Passwords & access Пароли и достъп
Posts Публикации
Prefers stronger copies of a flood. 0 to 20. Предпочита по-силните копия на flood. От 0 до 20.
Queue Опашка
Random delay factor before repeating a flood. 0 to 2. Случаен коефициент на закъснение преди повтаряне на flood. От 0 до 2.
Read again Прочети отново
Read-only Само четене
Read-only access Достъп само за четене
Read-write Четене и запис
Reading... Четене...
Reboot sent. The node is back in about 10 s. Рестартът е изпратен. Възелът се връща след около 10 s.
Reboot the node? It is off the air for about 10 s and forgets guest logins. Да се рестартира ли възелът? Той е извън ефир около 10 s и забравя входовете на гостите.
Receive delay Закъснение при приемане
Received Получени
Refresh Опресни
Regions Региони
Remove access Премахни достъпа
Remove this client's access? Да се премахне ли достъпът на този клиент?
Repeat packets Повтаряй пакети
Repeaters this node hears directly, with the signal it hears them at. Ретранслатори, които този възел чува директно, със сигнала, с който ги чува.
Repeating Повтаряне
Repeating & limits Повтаряне и ограничения
Reset counters Нулиране на броячите
Reset the node's packet counters? Да се нулират ли броячите на пакети на възела?
Room password Парола на стаята
Save (after a reboot) Запази (след рестарт)
Save new radio settings?\nNow: %s\nNew: %s\nThey apply after a reboot. Wrong values can cut this node off for good. Да се запазят ли новите радионастройки?\nСега: %s\nНови: %s\nВлизат в сила след рестарт. Грешни стойности могат завинаги да откъснат този възел.
Saved. Applies after a reboot. Запазено. Влиза в сила след рестарт.
Saved. The node uses the new radio settings after a reboot. Reboot it now? Запазено. Възелът ползва новите радионастройки след рестарт. Да се рестартира ли сега?
Saving... Запазване...
Send flood advert Изпрати flood обява
Send now Изпрати сега
Send zero-hop advert Изпрати обява без скок
Set the node's position to this device's position? Да се зададе ли позицията на възела като тази на това устройство?
Shown to anyone who asks this node. Up to 119 characters. Показва се на всеки, който попита този възел. До 119 знака.
Spreading factor Фактор на разпръскване
Start a firmware update on the node? It opens its own Wi-Fi access point until it is updated or rebooted, and stops repeating meanwhile. Да се стартира ли обновяване на фърмуера на възела? Той отваря своя Wi-Fi точка за достъп, докато не бъде обновен или рестартиран, и междувременно не повтаря нищо.
Start firmware update Стартирай обновяване на фърмуера
Strict Строго
Strongest Най-силни
Sync clock to this device Синхронизирай часовника с това устройство
The node's region tree: ^ marks its home region, F that it repeats floods for that region. Edit regions in the Console. Дървото с региони на възела: ^ отбелязва домашния му регион, F че повтаря flood за този регион. Регионите се редактират в Конзолата.
The passwords do not match Паролите не съвпадат
The position goes out in the node's adverts. Позицията се изпраща в обявите на възела.
The same for direct packets. 0 to 2. Същото за директни пакети. От 0 до 2.
The same limit for adverts. 0 to 64. Същият лимит за обяви. От 0 до 64.
This device Това устройство
This device has no position Това устройство няма позиция
Transmit power Мощност на предаване
Try Опитай
Try for 10 minutes Опитай за 10 минути
Try new radio settings for %u minutes?\nNow: %s\nTry: %s\nThe node goes back by itself. Until then you reach it only on the new settings. Да се опитат ли нови радионастройки за %u минути?\nСега: %s\nОпит: %s\nВъзелът се връща сам. Дотогава го достигате само с новите настройки.
Up to 31 characters, without [ ] \\ : , ? * До 31 знака, без [ ] \\ : , ? *
Updated %s ago Обновено преди %s
Uptime Време на работа
Use my position Използвай моята позиция
Use this device's settings Използвай настройките на това устройство
Wrong radio settings can cut this node off: you then reach it only on the new settings, or not at all. Try them first; the node goes back by itself. Грешни радионастройки могат да откъснат този възел: тогава го достигате само с новите настройки, или изобщо не. Първо ги опитайте; възелът се връща сам.
dBm, -9 to 30. Applies at once. dBm, от -9 до 30. Важи веднага.
pushed изпратени
you вие
Flood in / out Flood вход / изход
Direct in / out Директни вход / изход
Airtime TX / RX Ефирно време TX / RX
+151
View File
@@ -2025,3 +2025,154 @@ Antenna Anténa
On-board Vestavěná
Glass tiles Skleněné dlaždice
Widgets, cards and panel tiles let the background show through. Off: solid tiles. Widgety, karty a dlaždice panelu nechají prosvítat pozadí. Vypnuto: plné dlaždice.
# repeater admin app
0 to 9. Higher waits longer between sends. 0 až 9. Vyšší čeká mezi odesláními déle.
A name is required Jméno je povinné
A node clock only moves forward: syncing cannot set it back. Hodiny uzlu jdou jen dopředu: synchronizace je nemůže vrátit.
A room server lists only its admins here. Room server zde uvádí jen své správce.
Access Přístup
Access changed Přístup změněn
Actions Akce
Admin password Heslo správce
Admin password changed. Heslo správce změněno.
Admin password for full control, or the room password. Heslo správce pro plnou kontrolu, nebo heslo místnosti.
Admin password for full control. A guest sees status and neighbours. Heslo správce pro plnou kontrolu. Host vidí stav a sousedy.
Advanced Pokročilé
Advert hop limit Limit skoků pro adverty
Advert intervals Intervaly advertů
Adverts Adverty
Again Znovu
Airtime factor Faktor vysílacího času
Bandwidth Šířka pásma
Change Změnit
Change radio settings Změnit nastavení rádia
Change the admin password? If you lose it you can no longer manage this node over the mesh. Změnit heslo správce? Pokud ho ztratíte, nebudete moci tento uzel spravovat přes síť.
Clients Klienti
Coding rate Kódovací poměr
Console Konzole
Current Aktuální
Decimal degrees, for example 4.4025 Desetinné stupně, například 4.4025
Decimal degrees, for example 51.2194 Desetinné stupně, například 51.2194
Direct send delay Zpoždění přímého odeslání
Discover neighbours Hledat sousedy
Duplicates Duplikáty
Enter a number Zadejte číslo
Enter a password Zadejte heslo
Error Chyba
Errors Chyby
Firmware update: the node opens a Wi-Fi access point; join it and upload the new firmware in a browser, as the node's own instructions say. Aktualizace: uzel otevře přístupový bod Wi-Fi; připojte se k němu a nahrajte nový firmware v prohlížeči podle pokynů uzlu.
Flood advert Flood advert
Flood hop limit Limit skoků pro floody
Flood send delay Zpoždění odeslání floodu
Floods with more hops are not repeated. 0 to 64. Floody s více skoky se neopakují. 0 až 64.
Frequency: 150 to 2500 MHz Frekvence: 150 až 2500 MHz
Guest Host
Guest password Heslo hosta
Hours between flood adverts: 0 (off) or 3 to 168. Hodiny mezi flood adverty: 0 (vypnuto) nebo 3 až 168.
How hard to drop packets that came back around. Jak přísně zahazovat pakety, které se vrátily dokola.
Identity Identita
Identity & location Identita a poloha
Last reply Poslední odpověď
Last signal Poslední signál
Lets a wrong or blank password in to read, not to post. Pustí dovnitř se špatným nebo prázdným heslem ke čtení, ne k psaní.
Load more (%d of %u) Načíst další (%d z %u)
Local advert Místní advert
Location Poloha
Log in Přihlásit
Log in as admin Přihlásit jako správce
Log in as guest Přihlásit jako host
Logged in as a guest: you can read the status and neighbours. Log in with the admin password to change settings. Přihlášeno jako host: můžete číst stav a sousedy. Pro změnu nastavení se přihlaste heslem správce.
Logged in without admin rights. Log in with the admin password to change settings. Přihlášeno bez práv správce. Pro změnu nastavení se přihlaste heslem správce.
Logging in... Přihlašování...
Login refused. Přihlášení odmítnuto.
Logs in as a guest. Blank lets anyone in as a guest. Up to 15 characters. Přihlásí jako hosta. Prázdné pustí kohokoli jako hosta. Až 15 znaků.
Loop detection Detekce smyček
Manage Spravovat
Members log in with it to post. Up to 15 characters. Členové se jím přihlašují, aby mohli psát. Až 15 znaků.
Minutes between zero-hop adverts: 0 (off) or 60 to 240. Minuty mezi adverty bez skoku: 0 (vypnuto) nebo 60 až 240.
Moderate Střední
Neighbours Sousedé
New password Nové heslo
Newest Nejnovější
No neighbours heard yet. Zatím nebyli slyšet žádní sousedé.
No reply Bez odpovědi
No reply from the node Uzel neodpovídá
No reply. Check the password, that the node is in range, and this device's clock. Bez odpovědi. Zkontrolujte heslo, zda je uzel v dosahu, a hodiny tohoto zařízení.
No reply. It may or may not have been applied: read it again. Bez odpovědi. Možná bylo použito, možná ne: načtěte znovu.
No spaces Bez mezer
Nobody on the list. Na seznamu nikdo není.
Node clock Hodiny uzlu
Noise floor Šumové pozadí
Not in your contacts Není ve vašich kontaktech
Not in your contacts, so only removing is possible here. Není ve vašich kontaktech, takže zde lze jen odebrat.
Not saved Neuloženo
Off: this node stops forwarding anything. Vypnuto: tento uzel přestane cokoli přeposílat.
Order Pořadí
Owner Vlastník
Owner info Info vlastníka
Password Heslo
Passwords Hesla
Passwords & access Hesla a přístup
Posts Příspěvky
Prefers stronger copies of a flood. 0 to 20. Dává přednost silnějším kopiím floodu. 0 až 20.
Queue Fronta
Random delay factor before repeating a flood. 0 to 2. Náhodný faktor zpoždění před opakováním floodu. 0 až 2.
Read again Načíst znovu
Read-only Jen čtení
Read-only access Přístup jen pro čtení
Read-write Čtení a zápis
Reading... Načítání...
Reboot sent. The node is back in about 10 s. Restart odeslán. Uzel se vrátí asi za 10 s.
Reboot the node? It is off the air for about 10 s and forgets guest logins. Restartovat uzel? Asi 10 s nebude vysílat a zapomene přihlášení hostů.
Receive delay Zpoždění příjmu
Received Přijato
Refresh Obnovit
Regions Regiony
Remove access Odebrat přístup
Remove this client's access? Odebrat přístup tohoto klienta?
Repeat packets Opakovat pakety
Repeaters this node hears directly, with the signal it hears them at. Opakovače, které tento uzel slyší přímo, se signálem, se kterým je slyší.
Repeating Opakování
Repeating & limits Opakování a limity
Reset counters Vynulovat počítadla
Reset the node's packet counters? Vynulovat počítadla paketů uzlu?
Room password Heslo místnosti
Save (after a reboot) Uložit (po restartu)
Save new radio settings?\nNow: %s\nNew: %s\nThey apply after a reboot. Wrong values can cut this node off for good. Uložit nové nastavení rádia?\nNyní: %s\nNové: %s\nPlatí po restartu. Špatné hodnoty mohou tento uzel navždy odříznout.
Saved. Applies after a reboot. Uloženo. Platí po restartu.
Saved. The node uses the new radio settings after a reboot. Reboot it now? Uloženo. Uzel použije nové nastavení rádia po restartu. Restartovat nyní?
Saving... Ukládání...
Send flood advert Odeslat flood advert
Send now Odeslat nyní
Send zero-hop advert Odeslat advert bez skoku
Set the node's position to this device's position? Nastavit polohu uzlu na polohu tohoto zařízení?
Shown to anyone who asks this node. Up to 119 characters. Zobrazí se každému, kdo se uzlu zeptá. Až 119 znaků.
Spreading factor Rozprostírací faktor
Start a firmware update on the node? It opens its own Wi-Fi access point until it is updated or rebooted, and stops repeating meanwhile. Spustit aktualizaci firmwaru na uzlu? Otevře vlastní přístupový bod Wi-Fi, dokud nebude aktualizován nebo restartován, a mezitím nic neopakuje.
Start firmware update Spustit aktualizaci firmwaru
Strict Přísná
Strongest Nejsilnější
Sync clock to this device Synchronizovat hodiny s tímto zařízením
The node's region tree: ^ marks its home region, F that it repeats floods for that region. Edit regions in the Console. Strom regionů uzlu: ^ označuje jeho domovský region, F že opakuje floody pro tento region. Regiony upravujte v Konzoli.
The passwords do not match Hesla se neshodují
The position goes out in the node's adverts. Poloha se posílá v advertech uzlu.
The same for direct packets. 0 to 2. Totéž pro přímé pakety. 0 až 2.
The same limit for adverts. 0 to 64. Stejný limit pro adverty. 0 až 64.
This device Toto zařízení
This device has no position Toto zařízení nemá polohu
Transmit power Vysílací výkon
Try Zkusit
Try for 10 minutes Zkusit na 10 minut
Try new radio settings for %u minutes?\nNow: %s\nTry: %s\nThe node goes back by itself. Until then you reach it only on the new settings. Zkusit nové nastavení rádia na %u minut?\nNyní: %s\nZkouška: %s\nUzel se vrátí sám. Do té doby ho zastihnete jen na novém nastavení.
Up to 31 characters, without [ ] \\ : , ? * Až 31 znaků, bez [ ] \\ : , ? *
Updated %s ago Aktualizováno před %s
Uptime Doba běhu
Use my position Použít mou polohu
Use this device's settings Použít nastavení tohoto zařízení
Wrong radio settings can cut this node off: you then reach it only on the new settings, or not at all. Try them first; the node goes back by itself. Špatné nastavení rádia může tento uzel odříznout: zastihnete ho pak jen na novém nastavení, nebo vůbec. Nejdřív ho zkuste; uzel se vrátí sám.
dBm, -9 to 30. Applies at once. dBm, -9 až 30. Platí ihned.
pushed odesláno
you vy
Flood in / out Flood příchozí / odchozí
Direct in / out Přímé příchozí / odchozí
Airtime TX / RX Vysílací čas TX / RX
+152
View File
@@ -2006,3 +2006,155 @@ Antenna Antenne
On-board Intern
Glass tiles Glas-Kacheln
Widgets, cards and panel tiles let the background show through. Off: solid tiles. Widgets, Karten und Kacheln im Kontrollfeld lassen den Hintergrund durchscheinen. Aus: deckende Kacheln.
# repeater admin app
0 to 9. Higher waits longer between sends. 0 bis 9. Höher wartet länger zwischen Sendungen.
A name is required Ein Name ist nötig
A node clock only moves forward: syncing cannot set it back. Die Uhr eines Knotens läuft nur vorwärts: Synchronisieren kann sie nicht zurückstellen.
A room server lists only its admins here. Ein Room-Server listet hier nur seine Admins.
Access Zugang
Access changed Zugang geändert
Actions Aktionen
Admin password Admin-Passwort
Admin password changed. Admin-Passwort geändert.
Admin password for full control, or the room password. Admin-Passwort für volle Kontrolle, oder das Raum-Passwort.
Admin password for full control. A guest sees status and neighbours. Admin-Passwort für volle Kontrolle. Ein Gast sieht Status und Nachbarn.
Advanced Erweitert
Advert hop limit Hop-Limit für Adverts
Advert intervals Advert-Intervalle
Adverts Adverts
Again Wiederholen
Airtime factor Sendezeit-Faktor
Bandwidth Bandbreite
Change Ändern
Change radio settings Funkeinstellungen ändern
Change the admin password? If you lose it you can no longer manage this node over the mesh. Admin-Passwort ändern? Geht es verloren, kannst du diesen Knoten nicht mehr über das Mesh verwalten.
Clients Clients
Coding rate Coding-Rate
Console Konsole
Current Aktuell
Decimal degrees, for example 4.4025 Dezimalgrad, zum Beispiel 4.4025
Decimal degrees, for example 51.2194 Dezimalgrad, zum Beispiel 51.2194
Direct send delay Sendeverzögerung direkt
Discover neighbours Nachbarn suchen
Duplicates Duplikate
Enter a number Gib eine Zahl ein
Enter a password Gib ein Passwort ein
Error Fehler
Errors Fehler
Firmware update: the node opens a Wi-Fi access point; join it and upload the new firmware in a browser, as the node's own instructions say. Firmware-Update: Der Knoten öffnet einen WLAN-Zugangspunkt; verbinde dich damit und lade die neue Firmware im Browser hoch, wie es die Anweisungen des Knotens sagen.
Flood advert Flood-Advert
Flood hop limit Hop-Limit für Floods
Flood send delay Sendeverzögerung Flood
Floods with more hops are not repeated. 0 to 64. Floods mit mehr Hops werden nicht wiederholt. 0 bis 64.
Frequency: 150 to 2500 MHz Frequenz: 150 bis 2500 MHz
Guest Gast
Guest password Gast-Passwort
Hours between flood adverts: 0 (off) or 3 to 168. Stunden zwischen Flood-Adverts: 0 (aus) oder 3 bis 168.
How hard to drop packets that came back around. Wie streng Pakete verworfen werden, die im Kreis zurückkamen.
Identity Identität
Identity & location Identität & Standort
Last reply Letzte Antwort
Last signal Letztes Signal
Lets a wrong or blank password in to read, not to post. Lässt ein falsches oder leeres Passwort zum Lesen herein, nicht zum Posten.
Load more (%d of %u) Mehr laden (%d von %u)
Local advert Lokales Advert
Location Standort
Log in Anmelden
Log in as admin Als Admin anmelden
Log in as guest Als Gast anmelden
Logged in as a guest: you can read the status and neighbours. Log in with the admin password to change settings. Als Gast angemeldet: Du kannst Status und Nachbarn lesen. Melde dich mit dem Admin-Passwort an, um Einstellungen zu ändern.
Logged in without admin rights. Log in with the admin password to change settings. Ohne Admin-Rechte angemeldet. Melde dich mit dem Admin-Passwort an, um Einstellungen zu ändern.
Logging in... Anmeldung läuft...
Login refused. Anmeldung abgelehnt.
Logs in as a guest. Blank lets anyone in as a guest. Up to 15 characters. Meldet als Gast an. Leer lässt jeden als Gast herein. Bis zu 15 Zeichen.
Loop detection Schleifenerkennung
Manage Verwalten
Members log in with it to post. Up to 15 characters. Mitglieder melden sich damit an, um zu posten. Bis zu 15 Zeichen.
Minutes between zero-hop adverts: 0 (off) or 60 to 240. Minuten zwischen Zero-Hop-Adverts: 0 (aus) oder 60 bis 240.
Moderate Mittel
Neighbours Nachbarn
New password Neues Passwort
Newest Neueste
No neighbours heard yet. Noch keine Nachbarn gehört.
No reply Keine Antwort
No reply from the node Keine Antwort vom Knoten
No reply. Check the password, that the node is in range, and this device's clock. Keine Antwort. Prüfe das Passwort, ob der Knoten in Reichweite ist, und die Uhr dieses Geräts.
No reply. It may or may not have been applied: read it again. Keine Antwort. Vielleicht wurde es übernommen, vielleicht nicht: lies es erneut.
No spaces Keine Leerzeichen
Nobody on the list. Niemand auf der Liste.
Node clock Uhr des Knotens
Noise floor Grundrauschen
Not in your contacts Nicht in deinen Kontakten
Not in your contacts, so only removing is possible here. Nicht in deinen Kontakten, daher ist hier nur Entfernen möglich.
Not saved Nicht gespeichert
Off: this node stops forwarding anything. Aus: Dieser Knoten leitet nichts mehr weiter.
Order Reihenfolge
Owner Besitzer
Owner info Besitzer-Info
Password Passwort
Passwords Passwörter
Passwords & access Passwörter & Zugang
Posts Beiträge
Prefers stronger copies of a flood. 0 to 20. Bevorzugt stärkere Kopien eines Floods. 0 bis 20.
Queue Warteschlange
Random delay factor before repeating a flood. 0 to 2. Zufälliger Verzögerungsfaktor vor dem Wiederholen eines Floods. 0 bis 2.
Read again Erneut lesen
Read-only Nur lesen
Read-only access Nur-Lese-Zugang
Read-write Lesen und schreiben
Reading... Wird gelesen...
Reboot sent. The node is back in about 10 s. Neustart gesendet. Der Knoten ist in etwa 10 s zurück.
Reboot the node? It is off the air for about 10 s and forgets guest logins. Knoten neu starten? Er ist etwa 10 s nicht erreichbar und vergisst Gast-Anmeldungen.
Receive delay Empfangsverzögerung
Received Empfangen
Refresh Aktualisieren
Regions Regionen
Remove access Zugang entfernen
Remove this client's access? Den Zugang dieses Clients entfernen?
Repeat packets Pakete wiederholen
Repeaters this node hears directly, with the signal it hears them at. Repeater, die dieser Knoten direkt hört, mit dem Signal, mit dem er sie hört.
Repeating Wiederholen
Repeating & limits Wiederholen & Limits
Reset counters Zähler zurücksetzen
Reset the node's packet counters? Die Paketzähler des Knotens zurücksetzen?
Room password Raum-Passwort
Save (after a reboot) Speichern (nach Neustart)
Save new radio settings?\nNow: %s\nNew: %s\nThey apply after a reboot. Wrong values can cut this node off for good. Neue Funkeinstellungen speichern?\nJetzt: %s\nNeu: %s\nSie gelten nach einem Neustart. Falsche Werte können diesen Knoten für immer abschneiden.
Saved. Applies after a reboot. Gespeichert. Gilt nach einem Neustart.
Saved. The node uses the new radio settings after a reboot. Reboot it now? Gespeichert. Der Knoten nutzt die neuen Funkeinstellungen nach einem Neustart. Jetzt neu starten?
Saving... Wird gespeichert...
Send flood advert Flood-Advert senden
Send now Jetzt senden
Send zero-hop advert Zero-Hop-Advert senden
Set the node's position to this device's position? Die Position des Knotens auf die Position dieses Geräts setzen?
Shown to anyone who asks this node. Up to 119 characters. Wird jedem gezeigt, der diesen Knoten fragt. Bis zu 119 Zeichen.
Spreading factor Spreizfaktor
Start a firmware update on the node? It opens its own Wi-Fi access point until it is updated or rebooted, and stops repeating meanwhile. Ein Firmware-Update auf dem Knoten starten? Er öffnet einen eigenen WLAN-Zugangspunkt, bis er aktualisiert oder neu gestartet ist, und wiederholt so lange nichts.
Start firmware update Firmware-Update starten
Status Status
Strict Streng
Strongest Stärkste
Sync clock to this device Uhr mit diesem Gerät abgleichen
The node's region tree: ^ marks its home region, F that it repeats floods for that region. Edit regions in the Console. Der Regionsbaum des Knotens: ^ markiert seine Heimatregion, F dass er Floods für diese Region wiederholt. Regionen bearbeitest du in der Konsole.
The passwords do not match Die Passwörter stimmen nicht überein
The position goes out in the node's adverts. Die Position wird in den Adverts des Knotens gesendet.
The same for direct packets. 0 to 2. Dasselbe für direkte Pakete. 0 bis 2.
The same limit for adverts. 0 to 64. Dasselbe Limit für Adverts. 0 bis 64.
This device Dieses Gerät
This device has no position Dieses Gerät hat keine Position
Transmit power Sendeleistung
Try Testen
Try for 10 minutes 10 Minuten testen
Try new radio settings for %u minutes?\nNow: %s\nTry: %s\nThe node goes back by itself. Until then you reach it only on the new settings. Neue Funkeinstellungen %u Minuten lang testen?\nJetzt: %s\nTest: %s\nDer Knoten wechselt von selbst zurück. Bis dahin erreichst du ihn nur mit den neuen Einstellungen.
Up to 31 characters, without [ ] \\ : , ? * Bis zu 31 Zeichen, ohne [ ] \\ : , ? *
Updated %s ago Vor %s aktualisiert
Uptime Laufzeit
Use my position Meine Position verwenden
Use this device's settings Einstellungen dieses Geräts verwenden
Wrong radio settings can cut this node off: you then reach it only on the new settings, or not at all. Try them first; the node goes back by itself. Falsche Funkeinstellungen können diesen Knoten abschneiden: Dann erreichst du ihn nur mit den neuen Einstellungen oder gar nicht. Teste sie zuerst; der Knoten wechselt von selbst zurück.
dBm, -9 to 30. Applies at once. dBm, -9 bis 30. Gilt sofort.
pushed gepusht
you du
Flood in / out Flood ein / aus
Direct in / out Direkt ein / aus
Airtime TX / RX Sendezeit TX / RX
+151
View File
@@ -2009,3 +2009,154 @@ Antenna Κεραία
On-board Ενσωμ.
Glass tiles Γυάλινα πλακίδια
Widgets, cards and panel tiles let the background show through. Off: solid tiles. Τα widget, οι κάρτες και τα πλακίδια του πίνακα αφήνουν να φαίνεται το φόντο. Ανενεργό: συμπαγή πλακίδια.
# repeater admin app
0 to 9. Higher waits longer between sends. 0 έως 9. Μεγαλύτερο σημαίνει μεγαλύτερη αναμονή μεταξύ αποστολών.
A name is required Απαιτείται όνομα
A node clock only moves forward: syncing cannot set it back. Το ρολόι ενός κόμβου πάει μόνο μπροστά: ο συγχρονισμός δεν μπορεί να το γυρίσει πίσω.
A room server lists only its admins here. Ένας room server εμφανίζει εδώ μόνο τους διαχειριστές του.
Access Πρόσβαση
Access changed Η πρόσβαση άλλαξε
Actions Ενέργειες
Admin password Κωδικός διαχειριστή
Admin password changed. Ο κωδικός διαχειριστή άλλαξε.
Admin password for full control, or the room password. Κωδικός διαχειριστή για πλήρη έλεγχο, ή ο κωδικός του δωματίου.
Admin password for full control. A guest sees status and neighbours. Κωδικός διαχειριστή για πλήρη έλεγχο. Ένας επισκέπτης βλέπει κατάσταση και γείτονες.
Advanced Για προχωρημένους
Advert hop limit Όριο αλμάτων για adverts
Advert intervals Διαστήματα advert
Adverts Adverts
Again Ξανά
Airtime factor Συντελεστής χρόνου εκπομπής
Bandwidth Εύρος ζώνης
Change Αλλαγή
Change radio settings Αλλαγή ρυθμίσεων ραδιοφώνου
Change the admin password? If you lose it you can no longer manage this node over the mesh. Αλλαγή κωδικού διαχειριστή; Αν τον χάσετε, δεν θα μπορείτε πια να διαχειριστείτε αυτόν τον κόμβο μέσω του δικτύου.
Clients Πελάτες
Coding rate Ρυθμός κωδικοποίησης
Console Κονσόλα
Current Τρέχον
Decimal degrees, for example 4.4025 Δεκαδικές μοίρες, για παράδειγμα 4.4025
Decimal degrees, for example 51.2194 Δεκαδικές μοίρες, για παράδειγμα 51.2194
Direct send delay Καθυστέρηση άμεσης αποστολής
Discover neighbours Αναζήτηση γειτόνων
Duplicates Διπλότυπα
Enter a number Εισαγάγετε αριθμό
Enter a password Εισαγάγετε κωδικό
Error Σφάλμα
Errors Σφάλματα
Firmware update: the node opens a Wi-Fi access point; join it and upload the new firmware in a browser, as the node's own instructions say. Ενημέρωση: ο κόμβος ανοίγει σημείο πρόσβασης Wi-Fi· συνδεθείτε και ανεβάστε το νέο υλικολογισμικό από φυλλομετρητή, όπως λένε οι οδηγίες του κόμβου.
Flood advert Flood advert
Flood hop limit Όριο αλμάτων για floods
Flood send delay Καθυστέρηση αποστολής flood
Floods with more hops are not repeated. 0 to 64. Τα floods με περισσότερα άλματα δεν επαναλαμβάνονται. 0 έως 64.
Frequency: 150 to 2500 MHz Συχνότητα: 150 έως 2500 MHz
Guest Επισκέπτης
Guest password Κωδικός επισκέπτη
Hours between flood adverts: 0 (off) or 3 to 168. Ώρες μεταξύ flood adverts: 0 (ανενεργό) ή 3 έως 168.
How hard to drop packets that came back around. Πόσο αυστηρά απορρίπτονται πακέτα που γύρισαν κυκλικά.
Identity Ταυτότητα
Identity & location Ταυτότητα και τοποθεσία
Last reply Τελευταία απάντηση
Last signal Τελευταίο σήμα
Lets a wrong or blank password in to read, not to post. Αφήνει να μπει με λάθος ή κενό κωδικό για ανάγνωση, όχι για δημοσίευση.
Load more (%d of %u) Φόρτωση περισσότερων (%d από %u)
Local advert Τοπικό advert
Location Τοποθεσία
Log in Σύνδεση
Log in as admin Σύνδεση ως διαχειριστής
Log in as guest Σύνδεση ως επισκέπτης
Logged in as a guest: you can read the status and neighbours. Log in with the admin password to change settings. Συνδεθήκατε ως επισκέπτης: βλέπετε κατάσταση και γείτονες. Συνδεθείτε με τον κωδικό διαχειριστή για να αλλάξετε ρυθμίσεις.
Logged in without admin rights. Log in with the admin password to change settings. Συνδεθήκατε χωρίς δικαιώματα διαχειριστή. Συνδεθείτε με τον κωδικό διαχειριστή για να αλλάξετε ρυθμίσεις.
Logging in... Σύνδεση...
Login refused. Η σύνδεση απορρίφθηκε.
Logs in as a guest. Blank lets anyone in as a guest. Up to 15 characters. Σύνδεση ως επισκέπτης. Κενός αφήνει οποιονδήποτε ως επισκέπτη. Έως 15 χαρακτήρες.
Loop detection Ανίχνευση βρόχων
Manage Διαχείριση
Members log in with it to post. Up to 15 characters. Τα μέλη συνδέονται με αυτόν για να δημοσιεύουν. Έως 15 χαρακτήρες.
Minutes between zero-hop adverts: 0 (off) or 60 to 240. Λεπτά μεταξύ zero-hop adverts: 0 (ανενεργό) ή 60 έως 240.
Moderate Μέτρια
Neighbours Γείτονες
New password Νέος κωδικός
Newest Νεότεροι
No neighbours heard yet. Δεν έχουν ακουστεί γείτονες ακόμα.
No reply Καμία απάντηση
No reply from the node Ο κόμβος δεν απαντά
No reply. Check the password, that the node is in range, and this device's clock. Καμία απάντηση. Ελέγξτε τον κωδικό, ότι ο κόμβος είναι εντός εμβέλειας, και το ρολόι αυτής της συσκευής.
No reply. It may or may not have been applied: read it again. Καμία απάντηση. Ίσως εφαρμόστηκε, ίσως όχι: διαβάστε το ξανά.
No spaces Χωρίς κενά
Nobody on the list. Κανείς στη λίστα.
Node clock Ρολόι κόμβου
Noise floor Επίπεδο θορύβου
Not in your contacts Δεν είναι στις επαφές σας
Not in your contacts, so only removing is possible here. Δεν είναι στις επαφές σας, οπότε εδώ μπορεί μόνο να αφαιρεθεί.
Not saved Δεν αποθηκεύτηκε
Off: this node stops forwarding anything. Ανενεργό: ο κόμβος σταματά να προωθεί οτιδήποτε.
Order Σειρά
Owner Ιδιοκτήτης
Owner info Πληροφορίες ιδιοκτήτη
Password Κωδικός
Passwords Κωδικοί
Passwords & access Κωδικοί και πρόσβαση
Posts Αναρτήσεις
Prefers stronger copies of a flood. 0 to 20. Προτιμά τα ισχυρότερα αντίγραφα ενός flood. 0 έως 20.
Queue Ουρά
Random delay factor before repeating a flood. 0 to 2. Τυχαίος συντελεστής καθυστέρησης πριν από επανάληψη flood. 0 έως 2.
Read again Ανάγνωση ξανά
Read-only Μόνο ανάγνωση
Read-only access Πρόσβαση μόνο ανάγνωσης
Read-write Ανάγνωση και εγγραφή
Reading... Ανάγνωση...
Reboot sent. The node is back in about 10 s. Η επανεκκίνηση στάλθηκε. Ο κόμβος επιστρέφει σε περίπου 10 s.
Reboot the node? It is off the air for about 10 s and forgets guest logins. Επανεκκίνηση του κόμβου; Μένει εκτός αέρα περίπου 10 s και ξεχνά τις συνδέσεις επισκεπτών.
Receive delay Καθυστέρηση λήψης
Received Ελήφθησαν
Refresh Ανανέωση
Regions Περιοχές
Remove access Αφαίρεση πρόσβασης
Remove this client's access? Αφαίρεση της πρόσβασης αυτού του πελάτη;
Repeat packets Επανάληψη πακέτων
Repeaters this node hears directly, with the signal it hears them at. Αναμεταδότες που ακούει απευθείας αυτός ο κόμβος, με το σήμα που τους ακούει.
Repeating Επανάληψη
Repeating & limits Επανάληψη και όρια
Reset counters Μηδενισμός μετρητών
Reset the node's packet counters? Μηδενισμός των μετρητών πακέτων του κόμβου;
Room password Κωδικός δωματίου
Save (after a reboot) Αποθήκευση (μετά από επανεκκίνηση)
Save new radio settings?\nNow: %s\nNew: %s\nThey apply after a reboot. Wrong values can cut this node off for good. Αποθήκευση νέων ρυθμίσεων ραδιοφώνου;\nΤώρα: %s\nΝέες: %s\nΙσχύουν μετά από επανεκκίνηση. Λάθος τιμές μπορούν να αποκόψουν οριστικά αυτόν τον κόμβο.
Saved. Applies after a reboot. Αποθηκεύτηκε. Ισχύει μετά από επανεκκίνηση.
Saved. The node uses the new radio settings after a reboot. Reboot it now? Αποθηκεύτηκε. Ο κόμβος χρησιμοποιεί τις νέες ρυθμίσεις μετά από επανεκκίνηση. Επανεκκίνηση τώρα;
Saving... Αποθήκευση...
Send flood advert Αποστολή flood advert
Send now Αποστολή τώρα
Send zero-hop advert Αποστολή zero-hop advert
Set the node's position to this device's position? Ορισμός της θέσης του κόμβου στη θέση αυτής της συσκευής;
Shown to anyone who asks this node. Up to 119 characters. Εμφανίζεται σε όποιον ρωτήσει αυτόν τον κόμβο. Έως 119 χαρακτήρες.
Spreading factor Συντελεστής διασποράς
Start a firmware update on the node? It opens its own Wi-Fi access point until it is updated or rebooted, and stops repeating meanwhile. Έναρξη ενημέρωσης υλικολογισμικού στον κόμβο; Ανοίγει δικό του σημείο πρόσβασης Wi-Fi μέχρι να ενημερωθεί ή να επανεκκινηθεί, και στο μεταξύ δεν επαναλαμβάνει τίποτα.
Start firmware update Έναρξη ενημέρωσης υλικολογισμικού
Strict Αυστηρή
Strongest Ισχυρότεροι
Sync clock to this device Συγχρονισμός ρολογιού με αυτή τη συσκευή
The node's region tree: ^ marks its home region, F that it repeats floods for that region. Edit regions in the Console. Το δέντρο περιοχών του κόμβου: το ^ σημειώνει την οικεία περιοχή του, το F ότι επαναλαμβάνει floods για την περιοχή. Επεξεργαστείτε τις περιοχές στην Κονσόλα.
The passwords do not match Οι κωδικοί δεν ταιριάζουν
The position goes out in the node's adverts. Η θέση στέλνεται στα adverts του κόμβου.
The same for direct packets. 0 to 2. Το ίδιο για άμεσα πακέτα. 0 έως 2.
The same limit for adverts. 0 to 64. Το ίδιο όριο για adverts. 0 έως 64.
This device Αυτή η συσκευή
This device has no position Αυτή η συσκευή δεν έχει θέση
Transmit power Ισχύς εκπομπής
Try Δοκιμή
Try for 10 minutes Δοκιμή για 10 λεπτά
Try new radio settings for %u minutes?\nNow: %s\nTry: %s\nThe node goes back by itself. Until then you reach it only on the new settings. Δοκιμή νέων ρυθμίσεων ραδιοφώνου για %u λεπτά;\nΤώρα: %s\nΔοκιμή: %s\nΟ κόμβος επιστρέφει μόνος του. Ως τότε τον βρίσκετε μόνο με τις νέες ρυθμίσεις.
Up to 31 characters, without [ ] \\ : , ? * Έως 31 χαρακτήρες, χωρίς [ ] \\ : , ? *
Updated %s ago Ενημερώθηκε πριν από %s
Uptime Χρόνος λειτουργίας
Use my position Χρήση της θέσης μου
Use this device's settings Χρήση των ρυθμίσεων αυτής της συσκευής
Wrong radio settings can cut this node off: you then reach it only on the new settings, or not at all. Try them first; the node goes back by itself. Λάθος ρυθμίσεις ραδιοφώνου μπορούν να αποκόψουν τον κόμβο: τότε τον βρίσκετε μόνο με τις νέες ρυθμίσεις, ή καθόλου. Δοκιμάστε τες πρώτα· ο κόμβος επιστρέφει μόνος του.
dBm, -9 to 30. Applies at once. dBm, -9 έως 30. Ισχύει αμέσως.
pushed προωθήθηκαν
you εσείς
Flood in / out Flood εισ. / εξ.
Direct in / out Άμεσα εισ. / εξ.
Airtime TX / RX Χρόνος εκπομπής TX / RX
+151
View File
@@ -2009,3 +2009,154 @@ Antenna Antena
On-board Integrada
Glass tiles Mosaicos de cristal
Widgets, cards and panel tiles let the background show through. Off: solid tiles. Los widgets, tarjetas y mosaicos del panel dejan ver el fondo. Apagado: mosaicos sólidos.
# repeater admin app
0 to 9. Higher waits longer between sends. 0 a 9. Más alto espera más entre envíos.
A name is required Hace falta un nombre
A node clock only moves forward: syncing cannot set it back. El reloj de un nodo solo avanza: sincronizar no puede atrasarlo.
A room server lists only its admins here. Un servidor de sala solo lista aquí a sus administradores.
Access Acceso
Access changed Acceso cambiado
Actions Acciones
Admin password Contraseña de administrador
Admin password changed. Contraseña de administrador cambiada.
Admin password for full control, or the room password. Contraseña de administrador para el control total, o la contraseña de la sala.
Admin password for full control. A guest sees status and neighbours. Contraseña de administrador para el control total. Un invitado ve el estado y los vecinos.
Advanced Avanzado
Advert hop limit Límite de saltos de anuncios
Advert intervals Intervalos de anuncio
Adverts Anuncios
Again Otra vez
Airtime factor Factor de tiempo en el aire
Bandwidth Ancho de banda
Change Cambiar
Change radio settings Cambiar ajustes de radio
Change the admin password? If you lose it you can no longer manage this node over the mesh. ¿Cambiar la contraseña de administrador? Si la pierdes, ya no podrás gestionar este nodo por la malla.
Clients Clientes
Coding rate Tasa de codificación
Console Consola
Current Actual
Decimal degrees, for example 4.4025 Grados decimales, por ejemplo 4.4025
Decimal degrees, for example 51.2194 Grados decimales, por ejemplo 51.2194
Direct send delay Retardo de envío directo
Discover neighbours Buscar vecinos
Duplicates Duplicados
Enter a number Introduce un número
Enter a password Introduce una contraseña
Error Error
Errors Errores
Firmware update: the node opens a Wi-Fi access point; join it and upload the new firmware in a browser, as the node's own instructions say. Actualización: el nodo abre un punto de acceso Wi-Fi; conéctate y sube el nuevo firmware en un navegador, como dicen las instrucciones del nodo.
Flood advert Anuncio flood
Flood hop limit Límite de saltos de floods
Flood send delay Retardo de envío flood
Floods with more hops are not repeated. 0 to 64. Los floods con más saltos no se repiten. 0 a 64.
Frequency: 150 to 2500 MHz Frecuencia: 150 a 2500 MHz
Guest Invitado
Guest password Contraseña de invitado
Hours between flood adverts: 0 (off) or 3 to 168. Horas entre anuncios flood: 0 (apagado) o 3 a 168.
How hard to drop packets that came back around. Con qué rigor se descartan los paquetes que vuelven en bucle.
Identity Identidad
Identity & location Identidad y ubicación
Last reply Última respuesta
Last signal Última señal
Lets a wrong or blank password in to read, not to post. Deja entrar con una contraseña errónea o vacía para leer, no para publicar.
Load more (%d of %u) Cargar más (%d de %u)
Local advert Anuncio local
Location Ubicación
Log in Iniciar sesión
Log in as admin Entrar como administrador
Log in as guest Entrar como invitado
Logged in as a guest: you can read the status and neighbours. Log in with the admin password to change settings. Sesión de invitado: puedes leer el estado y los vecinos. Entra con la contraseña de administrador para cambiar ajustes.
Logged in without admin rights. Log in with the admin password to change settings. Sesión sin derechos de administrador. Entra con la contraseña de administrador para cambiar ajustes.
Logging in... Iniciando sesión...
Login refused. Inicio de sesión rechazado.
Logs in as a guest. Blank lets anyone in as a guest. Up to 15 characters. Entra como invitado. Vacía deja entrar a cualquiera como invitado. Hasta 15 caracteres.
Loop detection Detección de bucles
Manage Gestionar
Members log in with it to post. Up to 15 characters. Los miembros entran con ella para publicar. Hasta 15 caracteres.
Minutes between zero-hop adverts: 0 (off) or 60 to 240. Minutos entre anuncios de cero saltos: 0 (apagado) o 60 a 240.
Moderate Moderada
Neighbours Vecinos
New password Nueva contraseña
Newest Más recientes
No neighbours heard yet. Aún no se ha oído ningún vecino.
No reply Sin respuesta
No reply from the node El nodo no responde
No reply. Check the password, that the node is in range, and this device's clock. Sin respuesta. Comprueba la contraseña, que el nodo esté al alcance y el reloj de este dispositivo.
No reply. It may or may not have been applied: read it again. Sin respuesta. Puede que se haya aplicado o no: vuelve a leerlo.
No spaces Sin espacios
Nobody on the list. Nadie en la lista.
Node clock Reloj del nodo
Noise floor Ruido de fondo
Not in your contacts No está en tus contactos
Not in your contacts, so only removing is possible here. No está en tus contactos, así que aquí solo se puede quitar.
Not saved No guardado
Off: this node stops forwarding anything. Apagado: este nodo deja de reenviar nada.
Order Orden
Owner Propietario
Owner info Info del propietario
Password Contraseña
Passwords Contraseñas
Passwords & access Contraseñas y acceso
Posts Mensajes
Prefers stronger copies of a flood. 0 to 20. Prefiere las copias más fuertes de un flood. 0 a 20.
Queue Cola
Random delay factor before repeating a flood. 0 to 2. Factor de retardo aleatorio antes de repetir un flood. 0 a 2.
Read again Volver a leer
Read-only Solo lectura
Read-only access Acceso de solo lectura
Read-write Lectura y escritura
Reading... Leyendo...
Reboot sent. The node is back in about 10 s. Reinicio enviado. El nodo vuelve en unos 10 s.
Reboot the node? It is off the air for about 10 s and forgets guest logins. ¿Reiniciar el nodo? Queda fuera del aire unos 10 s y olvida las sesiones de invitado.
Receive delay Retardo de recepción
Received Recibidos
Refresh Actualizar
Regions Regiones
Remove access Quitar acceso
Remove this client's access? ¿Quitar el acceso de este cliente?
Repeat packets Repetir paquetes
Repeaters this node hears directly, with the signal it hears them at. Repetidores que este nodo oye directamente, con la señal con que los oye.
Repeating Repetición
Repeating & limits Repetición y límites
Reset counters Poner contadores a cero
Reset the node's packet counters? ¿Poner a cero los contadores de paquetes del nodo?
Room password Contraseña de la sala
Save (after a reboot) Guardar (tras reiniciar)
Save new radio settings?\nNow: %s\nNew: %s\nThey apply after a reboot. Wrong values can cut this node off for good. ¿Guardar los nuevos ajustes de radio?\nAhora: %s\nNuevos: %s\nSe aplican tras un reinicio. Valores erróneos pueden dejar este nodo aislado para siempre.
Saved. Applies after a reboot. Guardado. Se aplica tras un reinicio.
Saved. The node uses the new radio settings after a reboot. Reboot it now? Guardado. El nodo usa los nuevos ajustes de radio tras un reinicio. ¿Reiniciarlo ahora?
Saving... Guardando...
Send flood advert Enviar anuncio flood
Send now Enviar ahora
Send zero-hop advert Enviar anuncio de cero saltos
Set the node's position to this device's position? ¿Poner la posición del nodo en la de este dispositivo?
Shown to anyone who asks this node. Up to 119 characters. Se muestra a quien pregunte a este nodo. Hasta 119 caracteres.
Spreading factor Factor de dispersión
Start a firmware update on the node? It opens its own Wi-Fi access point until it is updated or rebooted, and stops repeating meanwhile. ¿Iniciar una actualización de firmware en el nodo? Abre su propio punto de acceso Wi-Fi hasta que se actualice o reinicie, y mientras tanto no repite nada.
Start firmware update Iniciar actualización de firmware
Strict Estricta
Strongest Más fuertes
Sync clock to this device Sincronizar reloj con este dispositivo
The node's region tree: ^ marks its home region, F that it repeats floods for that region. Edit regions in the Console. El árbol de regiones del nodo: ^ marca su región de origen, F que repite floods de esa región. Edita las regiones en la Consola.
The passwords do not match Las contraseñas no coinciden
The position goes out in the node's adverts. La posición sale en los anuncios del nodo.
The same for direct packets. 0 to 2. Lo mismo para paquetes directos. 0 a 2.
The same limit for adverts. 0 to 64. El mismo límite para anuncios. 0 a 64.
This device Este dispositivo
This device has no position Este dispositivo no tiene posición
Transmit power Potencia de transmisión
Try Probar
Try for 10 minutes Probar 10 minutos
Try new radio settings for %u minutes?\nNow: %s\nTry: %s\nThe node goes back by itself. Until then you reach it only on the new settings. ¿Probar nuevos ajustes de radio durante %u minutos?\nAhora: %s\nPrueba: %s\nEl nodo vuelve solo. Hasta entonces solo lo alcanzas con los nuevos ajustes.
Up to 31 characters, without [ ] \\ : , ? * Hasta 31 caracteres, sin [ ] \\ : , ? *
Updated %s ago Actualizado hace %s
Uptime Tiempo activo
Use my position Usar mi posición
Use this device's settings Usar los ajustes de este dispositivo
Wrong radio settings can cut this node off: you then reach it only on the new settings, or not at all. Try them first; the node goes back by itself. Ajustes de radio erróneos pueden aislar este nodo: entonces solo lo alcanzas con los nuevos ajustes, o nunca. Pruébalos primero; el nodo vuelve solo.
dBm, -9 to 30. Applies at once. dBm, -9 a 30. Se aplica al momento.
pushed enviados
you tú
Flood in / out Flood entrada / salida
Direct in / out Directo entrada / salida
Airtime TX / RX Tiempo en aire TX / RX
+151
View File
@@ -2008,3 +2008,154 @@ Antenna Antenne
On-board Interne
Glass tiles Tuiles en verre
Widgets, cards and panel tiles let the background show through. Off: solid tiles. Les widgets, cartes et tuiles du panneau laissent voir le fond. Désactivé : tuiles opaques.
# repeater admin app
0 to 9. Higher waits longer between sends. 0 à 9. Plus haut attend plus longtemps entre deux envois.
A name is required Un nom est requis
A node clock only moves forward: syncing cannot set it back. L'horloge d'un nœud ne fait qu'avancer : la synchroniser ne peut pas la reculer.
A room server lists only its admins here. Un serveur de salon ne liste ici que ses admins.
Access Accès
Access changed Accès modifié
Actions Actions
Admin password Mot de passe admin
Admin password changed. Mot de passe admin modifié.
Admin password for full control, or the room password. Mot de passe admin pour le contrôle complet, ou le mot de passe du salon.
Admin password for full control. A guest sees status and neighbours. Mot de passe admin pour le contrôle complet. Un invité voit l'état et les voisins.
Advanced Avancé
Advert hop limit Limite de sauts des annonces
Advert intervals Intervalles d'annonce
Adverts Annonces
Again Encore
Airtime factor Facteur de temps d'antenne
Bandwidth Bande passante
Change Changer
Change radio settings Changer les réglages radio
Change the admin password? If you lose it you can no longer manage this node over the mesh. Changer le mot de passe admin ? Si vous le perdez, vous ne pourrez plus gérer ce nœud par le maillage.
Clients Clients
Coding rate Taux de codage
Console Console
Current Actuel
Decimal degrees, for example 4.4025 Degrés décimaux, par exemple 4.4025
Decimal degrees, for example 51.2194 Degrés décimaux, par exemple 51.2194
Direct send delay Délai d'envoi direct
Discover neighbours Chercher des voisins
Duplicates Doublons
Enter a number Entrez un nombre
Enter a password Entrez un mot de passe
Error Erreur
Errors Erreurs
Firmware update: the node opens a Wi-Fi access point; join it and upload the new firmware in a browser, as the node's own instructions say. Mise à jour : le nœud ouvre un point d'accès Wi-Fi ; connectez-vous et envoyez le nouveau firmware dans un navigateur, comme l'indiquent les instructions du nœud.
Flood advert Annonce flood
Flood hop limit Limite de sauts des floods
Flood send delay Délai d'envoi flood
Floods with more hops are not repeated. 0 to 64. Les floods avec plus de sauts ne sont pas répétés. 0 à 64.
Frequency: 150 to 2500 MHz Fréquence : 150 à 2500 MHz
Guest Invité
Guest password Mot de passe invité
Hours between flood adverts: 0 (off) or 3 to 168. Heures entre annonces flood : 0 (arrêt) ou 3 à 168.
How hard to drop packets that came back around. Avec quelle rigueur jeter les paquets revenus en boucle.
Identity Identité
Identity & location Identité et position
Last reply Dernière réponse
Last signal Dernier signal
Lets a wrong or blank password in to read, not to post. Laisse entrer un mot de passe faux ou vide pour lire, pas pour publier.
Load more (%d of %u) Charger plus (%d sur %u)
Local advert Annonce locale
Location Position
Log in Se connecter
Log in as admin Se connecter en admin
Log in as guest Se connecter en invité
Logged in as a guest: you can read the status and neighbours. Log in with the admin password to change settings. Connecté en invité : vous pouvez lire l'état et les voisins. Connectez-vous avec le mot de passe admin pour changer les réglages.
Logged in without admin rights. Log in with the admin password to change settings. Connecté sans droits admin. Connectez-vous avec le mot de passe admin pour changer les réglages.
Logging in... Connexion...
Login refused. Connexion refusée.
Logs in as a guest. Blank lets anyone in as a guest. Up to 15 characters. Connexion en invité. Vide laisse entrer tout le monde en invité. 15 caractères au plus.
Loop detection Détection de boucles
Manage Gérer
Members log in with it to post. Up to 15 characters. Les membres se connectent avec pour publier. 15 caractères au plus.
Minutes between zero-hop adverts: 0 (off) or 60 to 240. Minutes entre annonces zéro saut : 0 (arrêt) ou 60 à 240.
Moderate Modérée
Neighbours Voisins
New password Nouveau mot de passe
Newest Plus récents
No neighbours heard yet. Aucun voisin entendu pour l'instant.
No reply Pas de réponse
No reply from the node Pas de réponse du nœud
No reply. Check the password, that the node is in range, and this device's clock. Pas de réponse. Vérifiez le mot de passe, que le nœud est à portée, et l'horloge de cet appareil.
No reply. It may or may not have been applied: read it again. Pas de réponse. Appliqué ou non, impossible de savoir : relisez la valeur.
No spaces Pas d'espaces
Nobody on the list. Personne dans la liste.
Node clock Horloge du nœud
Noise floor Bruit de fond
Not in your contacts Pas dans vos contacts
Not in your contacts, so only removing is possible here. Pas dans vos contacts : seule la suppression est possible ici.
Not saved Non enregistré
Off: this node stops forwarding anything. Arrêt : ce nœud ne relaie plus rien.
Order Ordre
Owner Propriétaire
Owner info Infos propriétaire
Password Mot de passe
Passwords Mots de passe
Passwords & access Mots de passe et accès
Posts Messages
Prefers stronger copies of a flood. 0 to 20. Préfère les copies plus fortes d'un flood. 0 à 20.
Queue File d'attente
Random delay factor before repeating a flood. 0 to 2. Facteur de délai aléatoire avant de répéter un flood. 0 à 2.
Read again Relire
Read-only Lecture seule
Read-only access Accès en lecture seule
Read-write Lecture et écriture
Reading... Lecture...
Reboot sent. The node is back in about 10 s. Redémarrage envoyé. Le nœud revient dans 10 s environ.
Reboot the node? It is off the air for about 10 s and forgets guest logins. Redémarrer le nœud ? Il est hors antenne 10 s environ et oublie les connexions invité.
Receive delay Délai de réception
Received Reçus
Refresh Actualiser
Regions Régions
Remove access Retirer l'accès
Remove this client's access? Retirer l'accès de ce client ?
Repeat packets Répéter les paquets
Repeaters this node hears directly, with the signal it hears them at. Les répéteurs que ce nœud entend directement, avec le signal reçu.
Repeating Répétition
Repeating & limits Répétition et limites
Reset counters Remettre les compteurs à zéro
Reset the node's packet counters? Remettre à zéro les compteurs de paquets du nœud ?
Room password Mot de passe du salon
Save (after a reboot) Enregistrer (après redémarrage)
Save new radio settings?\nNow: %s\nNew: %s\nThey apply after a reboot. Wrong values can cut this node off for good. Enregistrer les nouveaux réglages radio ?\nActuel : %s\nNouveau : %s\nIls s'appliquent après un redémarrage. De mauvaises valeurs peuvent couper ce nœud pour de bon.
Saved. Applies after a reboot. Enregistré. S'applique après un redémarrage.
Saved. The node uses the new radio settings after a reboot. Reboot it now? Enregistré. Le nœud utilise les nouveaux réglages radio après un redémarrage. Redémarrer maintenant ?
Saving... Enregistrement...
Send flood advert Envoyer une annonce flood
Send now Envoyer maintenant
Send zero-hop advert Envoyer une annonce zéro saut
Set the node's position to this device's position? Mettre la position du nœud à celle de cet appareil ?
Shown to anyone who asks this node. Up to 119 characters. Montré à quiconque interroge ce nœud. 119 caractères au plus.
Spreading factor Facteur d'étalement
Start a firmware update on the node? It opens its own Wi-Fi access point until it is updated or rebooted, and stops repeating meanwhile. Lancer une mise à jour du firmware sur le nœud ? Il ouvre son propre point d'accès Wi-Fi jusqu'à la mise à jour ou un redémarrage, et ne répète plus rien entre-temps.
Start firmware update Lancer la mise à jour
Strict Stricte
Strongest Plus forts
Sync clock to this device Régler l'horloge sur cet appareil
The node's region tree: ^ marks its home region, F that it repeats floods for that region. Edit regions in the Console. L'arbre des régions du nœud : ^ marque sa région d'origine, F qu'il répète les floods de cette région. Modifiez les régions dans la Console.
The passwords do not match Les mots de passe ne correspondent pas
The position goes out in the node's adverts. La position part dans les annonces du nœud.
The same for direct packets. 0 to 2. Pareil pour les paquets directs. 0 à 2.
The same limit for adverts. 0 to 64. La même limite pour les annonces. 0 à 64.
This device Cet appareil
This device has no position Cet appareil n'a pas de position
Transmit power Puissance d'émission
Try Essayer
Try for 10 minutes Essayer 10 minutes
Try new radio settings for %u minutes?\nNow: %s\nTry: %s\nThe node goes back by itself. Until then you reach it only on the new settings. Essayer de nouveaux réglages radio pendant %u minutes ?\nActuel : %s\nEssai : %s\nLe nœud revient seul en arrière. D'ici là, vous ne le joignez qu'avec les nouveaux réglages.
Up to 31 characters, without [ ] \\ : , ? * 31 caractères au plus, sans [ ] \\ : , ? *
Updated %s ago Mis à jour il y a %s
Uptime Temps de fonctionnement
Use my position Utiliser ma position
Use this device's settings Utiliser les réglages de cet appareil
Wrong radio settings can cut this node off: you then reach it only on the new settings, or not at all. Try them first; the node goes back by itself. De mauvais réglages radio peuvent couper ce nœud : vous ne le joignez alors qu'avec les nouveaux réglages, ou plus du tout. Essayez-les d'abord ; le nœud revient seul en arrière.
dBm, -9 to 30. Applies at once. dBm, -9 à 30. S'applique tout de suite.
pushed poussés
you vous
Flood in / out Flood reçus / émis
Direct in / out Direct reçus / émis
Airtime TX / RX Temps d'antenne TX / RX
+151
View File
@@ -2019,3 +2019,154 @@ Antenna Antenna
On-board Beépített
Glass tiles Üveg csempék
Widgets, cards and panel tiles let the background show through. Off: solid tiles. A widgetek, kártyák és a panel csempéi átengedik a hátteret. Ki: tömör csempék.
# repeater admin app
0 to 9. Higher waits longer between sends. 0 és 9 között. Magasabb érték több várakozás a küldések között.
A name is required Név megadása kötelező
A node clock only moves forward: syncing cannot set it back. Egy node órája csak előre jár: a szinkronizálás nem tudja visszaállítani.
A room server lists only its admins here. Egy room szerver itt csak az adminjait listázza.
Access Hozzáférés
Access changed Hozzáférés módosítva
Actions Műveletek
Admin password Admin jelszó
Admin password changed. Admin jelszó megváltoztatva.
Admin password for full control, or the room password. Admin jelszó a teljes irányításhoz, vagy a szoba jelszava.
Admin password for full control. A guest sees status and neighbours. Admin jelszó a teljes irányításhoz. Vendégként az állapot és a szomszédok láthatók.
Advanced Haladó
Advert hop limit Hop korlát advertekhez
Advert intervals Advert időközök
Adverts Advertek
Again Újra
Airtime factor Adásidő szorzó
Bandwidth Sávszélesség
Change Módosítás
Change radio settings Rádióbeállítások módosítása
Change the admin password? If you lose it you can no longer manage this node over the mesh. Megváltoztatod az admin jelszót? Ha elveszíted, többé nem kezelheted ezt a node-ot a hálón keresztül.
Clients Kliensek
Coding rate Kódolási arány
Console Konzol
Current Jelenlegi
Decimal degrees, for example 4.4025 Tizedes fok, például 4.4025
Decimal degrees, for example 51.2194 Tizedes fok, például 51.2194
Direct send delay Direkt küldési késleltetés
Discover neighbours Szomszédok keresése
Duplicates Duplikátumok
Enter a number Adj meg egy számot
Enter a password Adj meg egy jelszót
Error Hiba
Errors Hibák
Firmware update: the node opens a Wi-Fi access point; join it and upload the new firmware in a browser, as the node's own instructions say. Firmware frissítés: a node Wi-Fi hozzáférési pontot nyit; csatlakozz hozzá, és töltsd fel az új firmware-t böngészőben, ahogy a node utasításai mondják.
Flood advert Flood advert
Flood hop limit Hop korlát floodokhoz
Flood send delay Flood küldési késleltetés
Floods with more hops are not repeated. 0 to 64. A több hopos floodokat nem ismétli. 0 és 64 között.
Frequency: 150 to 2500 MHz Frekvencia: 150 és 2500 MHz között
Guest Vendég
Guest password Vendég jelszó
Hours between flood adverts: 0 (off) or 3 to 168. Órák a flood advertek között: 0 (ki) vagy 3 és 168 között.
How hard to drop packets that came back around. Mennyire szigorúan dobja el a körbe visszaért csomagokat.
Identity Azonosító
Identity & location Azonosító és hely
Last reply Utolsó válasz
Last signal Utolsó jel
Lets a wrong or blank password in to read, not to post. Hibás vagy üres jelszóval is beenged olvasni, de írni nem.
Load more (%d of %u) Továbbiak betöltése (%d / %u)
Local advert Helyi advert
Location Hely
Log in Bejelentkezés
Log in as admin Bejelentkezés adminként
Log in as guest Bejelentkezés vendégként
Logged in as a guest: you can read the status and neighbours. Log in with the admin password to change settings. Vendégként bejelentkezve: olvashatod az állapotot és a szomszédokat. A beállítások módosításához jelentkezz be az admin jelszóval.
Logged in without admin rights. Log in with the admin password to change settings. Admin jogok nélkül bejelentkezve. A beállítások módosításához jelentkezz be az admin jelszóval.
Logging in... Bejelentkezés...
Login refused. Bejelentkezés elutasítva.
Logs in as a guest. Blank lets anyone in as a guest. Up to 15 characters. Vendégként jelentkeztet be. Üresen bárkit beenged vendégként. Legfeljebb 15 karakter.
Loop detection Hurokészlelés
Manage Kezelés
Members log in with it to post. Up to 15 characters. A tagok ezzel jelentkeznek be, hogy írhassanak. Legfeljebb 15 karakter.
Minutes between zero-hop adverts: 0 (off) or 60 to 240. Percek a zero-hop advertek között: 0 (ki) vagy 60 és 240 között.
Moderate Mérsékelt
Neighbours Szomszédok
New password Új jelszó
Newest Legújabb
No neighbours heard yet. Még nem hallott szomszédot.
No reply Nincs válasz
No reply from the node A node nem válaszol
No reply. Check the password, that the node is in range, and this device's clock. Nincs válasz. Ellenőrizd a jelszót, hogy a node hatótávon belül van-e, és ennek az eszköznek az óráját.
No reply. It may or may not have been applied: read it again. Nincs válasz. Lehet, hogy érvénybe lépett, lehet, hogy nem: olvasd be újra.
No spaces Szóközök nélkül
Nobody on the list. Senki sincs a listán.
Node clock A node órája
Noise floor Zajszint
Not in your contacts Nincs a névjegyeid között
Not in your contacts, so only removing is possible here. Nincs a névjegyeid között, ezért itt csak eltávolítani lehet.
Not saved Nincs mentve
Off: this node stops forwarding anything. Ki: ez a node semmit sem továbbít.
Order Sorrend
Owner Tulajdonos
Owner info Tulajdonos infó
Password Jelszó
Passwords Jelszavak
Passwords & access Jelszavak és hozzáférés
Posts Bejegyzések
Prefers stronger copies of a flood. 0 to 20. A flood erősebb példányait részesíti előnyben. 0 és 20 között.
Queue Sor
Random delay factor before repeating a flood. 0 to 2. Véletlen késleltetési szorzó egy flood ismétlése előtt. 0 és 2 között.
Read again Újraolvasás
Read-only Csak olvasás
Read-only access Csak olvasási hozzáférés
Read-write Olvasás és írás
Reading... Olvasás...
Reboot sent. The node is back in about 10 s. Újraindítás elküldve. A node kb. 10 mp múlva visszatér.
Reboot the node? It is off the air for about 10 s and forgets guest logins. Újraindítod a node-ot? Kb. 10 mp-ig nem ad, és elfelejti a vendég bejelentkezéseket.
Receive delay Vételi késleltetés
Received Fogadott
Refresh Frissítés
Regions Régiók
Remove access Hozzáférés eltávolítása
Remove this client's access? Eltávolítod ennek a kliensnek a hozzáférését?
Repeat packets Csomagok ismétlése
Repeaters this node hears directly, with the signal it hears them at. Az átjátszók, amelyeket ez a node közvetlenül hall, azzal a jellel, ahogy hallja őket.
Repeating Ismétlés
Repeating & limits Ismétlés és korlátok
Reset counters Számlálók nullázása
Reset the node's packet counters? Nullázod a node csomagszámlálóit?
Room password Szoba jelszó
Save (after a reboot) Mentés (újraindítás után)
Save new radio settings?\nNow: %s\nNew: %s\nThey apply after a reboot. Wrong values can cut this node off for good. Mented az új rádióbeállításokat?\nMost: %s\nÚj: %s\nÚjraindítás után lépnek életbe. Hibás értékek végleg elvághatják ezt a node-ot.
Saved. Applies after a reboot. Mentve. Újraindítás után lép életbe.
Saved. The node uses the new radio settings after a reboot. Reboot it now? Mentve. A node újraindítás után használja az új rádióbeállításokat. Újraindítod most?
Saving... Mentés...
Send flood advert Flood advert küldése
Send now Küldés most
Send zero-hop advert Zero-hop advert küldése
Set the node's position to this device's position? A node helyét ennek az eszköznek a helyére állítod?
Shown to anyone who asks this node. Up to 119 characters. Bárki láthatja, aki megkérdezi a node-ot. Legfeljebb 119 karakter.
Spreading factor Szórási tényező
Start a firmware update on the node? It opens its own Wi-Fi access point until it is updated or rebooted, and stops repeating meanwhile. Firmware frissítést indítasz a node-on? Saját Wi-Fi hozzáférési pontot nyit, amíg frissítik vagy újraindul, és addig semmit sem ismétel.
Start firmware update Firmware frissítés indítása
Strict Szigorú
Strongest Legerősebb
Sync clock to this device Óra szinkronizálása ehhez az eszközhöz
The node's region tree: ^ marks its home region, F that it repeats floods for that region. Edit regions in the Console. A node régiófája: ^ jelöli az otthoni régióját, F azt, hogy ismétli a floodokat abban a régióban. A régiókat a Konzolban szerkesztheted.
The passwords do not match A jelszavak nem egyeznek
The position goes out in the node's adverts. A hely a node advertjeiben megy ki.
The same for direct packets. 0 to 2. Ugyanez a direkt csomagokra. 0 és 2 között.
The same limit for adverts. 0 to 64. Ugyanez a korlát advertekre. 0 és 64 között.
This device Ez az eszköz
This device has no position Ennek az eszköznek nincs helyzete
Transmit power Adóteljesítmény
Try Kipróbálás
Try for 10 minutes Kipróbálás 10 percig
Try new radio settings for %u minutes?\nNow: %s\nTry: %s\nThe node goes back by itself. Until then you reach it only on the new settings. Kipróbálod az új rádióbeállításokat %u percig?\nMost: %s\nPróba: %s\nA node magától visszaáll. Addig csak az új beállításokkal éred el.
Up to 31 characters, without [ ] \\ : , ? * Legfeljebb 31 karakter, ezek nélkül: [ ] \\ : , ? *
Updated %s ago Frissítve %s ezelőtt
Uptime Üzemidő
Use my position Saját helyem használata
Use this device's settings Ennek az eszköznek a beállításai
Wrong radio settings can cut this node off: you then reach it only on the new settings, or not at all. Try them first; the node goes back by itself. A hibás rádióbeállítások elvághatják ezt a node-ot: akkor csak az új beállításokkal éred el, vagy sehogy. Előbb próbáld ki őket; a node magától visszaáll.
dBm, -9 to 30. Applies at once. dBm, -9 és 30 között. Azonnal érvényes.
pushed kiküldve
you te
Flood in / out Flood be / ki
Direct in / out Direkt be / ki
Airtime TX / RX Adásidő TX / RX
+151
View File
@@ -2008,3 +2008,154 @@ Antenna Antenna
On-board Integrata
Glass tiles Riquadri in vetro
Widgets, cards and panel tiles let the background show through. Off: solid tiles. Widget, schede e riquadri del pannello lasciano vedere lo sfondo. Spento: riquadri pieni.
# repeater admin app
0 to 9. Higher waits longer between sends. Da 0 a 9. Più alto attende di più tra un invio e l'altro.
A name is required Serve un nome
A node clock only moves forward: syncing cannot set it back. L'orologio di un nodo va solo avanti: sincronizzarlo non può riportarlo indietro.
A room server lists only its admins here. Un room server qui elenca solo i suoi amministratori.
Access Accesso
Access changed Accesso modificato
Actions Azioni
Admin password Password admin
Admin password changed. Password admin cambiata.
Admin password for full control, or the room password. Password admin per il controllo completo, oppure la password della stanza.
Admin password for full control. A guest sees status and neighbours. Password admin per il controllo completo. Un ospite vede stato e vicini.
Advanced Avanzate
Advert hop limit Limite di salti per gli advert
Advert intervals Intervalli degli advert
Adverts Advert
Again Di nuovo
Airtime factor Fattore tempo di trasmissione
Bandwidth Larghezza di banda
Change Cambia
Change radio settings Cambia impostazioni radio
Change the admin password? If you lose it you can no longer manage this node over the mesh. Cambiare la password admin? Se la perdi non potrai più gestire questo nodo tramite la mesh.
Clients Client
Coding rate Coding rate
Console Console
Current Attuale
Decimal degrees, for example 4.4025 Gradi decimali, per esempio 4.4025
Decimal degrees, for example 51.2194 Gradi decimali, per esempio 51.2194
Direct send delay Ritardo di invio diretto
Discover neighbours Cerca vicini
Duplicates Duplicati
Enter a number Inserisci un numero
Enter a password Inserisci una password
Error Errore
Errors Errori
Firmware update: the node opens a Wi-Fi access point; join it and upload the new firmware in a browser, as the node's own instructions say. Aggiornamento: il nodo apre un access point Wi-Fi; collegati e carica il nuovo firmware in un browser, come dicono le istruzioni del nodo.
Flood advert Advert flood
Flood hop limit Limite di salti per i flood
Flood send delay Ritardo di invio flood
Floods with more hops are not repeated. 0 to 64. I flood con più salti non vengono ripetuti. Da 0 a 64.
Frequency: 150 to 2500 MHz Frequenza: da 150 a 2500 MHz
Guest Ospite
Guest password Password ospite
Hours between flood adverts: 0 (off) or 3 to 168. Ore tra advert flood: 0 (spento) o da 3 a 168.
How hard to drop packets that came back around. Quanto severamente scartare i pacchetti tornati in giro.
Identity Identità
Identity & location Identità e posizione
Last reply Ultima risposta
Last signal Ultimo segnale
Lets a wrong or blank password in to read, not to post. Fa entrare con una password sbagliata o vuota per leggere, non per scrivere.
Load more (%d of %u) Carica altri (%d di %u)
Local advert Advert locale
Location Posizione
Log in Accedi
Log in as admin Accedi come admin
Log in as guest Accedi come ospite
Logged in as a guest: you can read the status and neighbours. Log in with the admin password to change settings. Accesso come ospite: puoi leggere stato e vicini. Accedi con la password admin per cambiare le impostazioni.
Logged in without admin rights. Log in with the admin password to change settings. Accesso senza diritti di admin. Accedi con la password admin per cambiare le impostazioni.
Logging in... Accesso in corso...
Login refused. Accesso rifiutato.
Logs in as a guest. Blank lets anyone in as a guest. Up to 15 characters. Accede come ospite. Vuota fa entrare chiunque come ospite. Fino a 15 caratteri.
Loop detection Rilevamento dei loop
Manage Gestisci
Members log in with it to post. Up to 15 characters. I membri accedono con questa per scrivere. Fino a 15 caratteri.
Minutes between zero-hop adverts: 0 (off) or 60 to 240. Minuti tra advert a zero salti: 0 (spento) o da 60 a 240.
Moderate Moderato
Neighbours Vicini
New password Nuova password
Newest Più recenti
No neighbours heard yet. Nessun vicino sentito finora.
No reply Nessuna risposta
No reply from the node Nessuna risposta dal nodo
No reply. Check the password, that the node is in range, and this device's clock. Nessuna risposta. Controlla la password, che il nodo sia in portata e l'orologio di questo dispositivo.
No reply. It may or may not have been applied: read it again. Nessuna risposta. Potrebbe essere stato applicato o no: rileggilo.
No spaces Niente spazi
Nobody on the list. Nessuno nell'elenco.
Node clock Orologio del nodo
Noise floor Rumore di fondo
Not in your contacts Non è nei tuoi contatti
Not in your contacts, so only removing is possible here. Non è nei tuoi contatti, quindi qui si può solo rimuovere.
Not saved Non salvato
Off: this node stops forwarding anything. Spento: questo nodo smette di inoltrare qualsiasi cosa.
Order Ordine
Owner Proprietario
Owner info Info proprietario
Password Password
Passwords Password
Passwords & access Password e accesso
Posts Messaggi
Prefers stronger copies of a flood. 0 to 20. Preferisce le copie più forti di un flood. Da 0 a 20.
Queue Coda
Random delay factor before repeating a flood. 0 to 2. Fattore di ritardo casuale prima di ripetere un flood. Da 0 a 2.
Read again Rileggi
Read-only Sola lettura
Read-only access Accesso in sola lettura
Read-write Lettura e scrittura
Reading... Lettura...
Reboot sent. The node is back in about 10 s. Riavvio inviato. Il nodo torna tra circa 10 s.
Reboot the node? It is off the air for about 10 s and forgets guest logins. Riavviare il nodo? Resta fuori onda per circa 10 s e dimentica gli accessi degli ospiti.
Receive delay Ritardo di ricezione
Received Ricevuti
Refresh Aggiorna
Regions Regioni
Remove access Rimuovi accesso
Remove this client's access? Rimuovere l'accesso di questo client?
Repeat packets Ripeti pacchetti
Repeaters this node hears directly, with the signal it hears them at. I ripetitori che questo nodo sente direttamente, con il segnale con cui li sente.
Repeating Ripetizione
Repeating & limits Ripetizione e limiti
Reset counters Azzera contatori
Reset the node's packet counters? Azzerare i contatori di pacchetti del nodo?
Room password Password della stanza
Save (after a reboot) Salva (dopo un riavvio)
Save new radio settings?\nNow: %s\nNew: %s\nThey apply after a reboot. Wrong values can cut this node off for good. Salvare le nuove impostazioni radio?\nOra: %s\nNuove: %s\nValgono dopo un riavvio. Valori sbagliati possono isolare questo nodo per sempre.
Saved. Applies after a reboot. Salvato. Vale dopo un riavvio.
Saved. The node uses the new radio settings after a reboot. Reboot it now? Salvato. Il nodo usa le nuove impostazioni radio dopo un riavvio. Riavviarlo ora?
Saving... Salvataggio...
Send flood advert Invia advert flood
Send now Invia ora
Send zero-hop advert Invia advert a zero salti
Set the node's position to this device's position? Impostare la posizione del nodo su quella di questo dispositivo?
Shown to anyone who asks this node. Up to 119 characters. Mostrato a chiunque chieda a questo nodo. Fino a 119 caratteri.
Spreading factor Spreading factor
Start a firmware update on the node? It opens its own Wi-Fi access point until it is updated or rebooted, and stops repeating meanwhile. Avviare un aggiornamento del firmware sul nodo? Apre un suo access point Wi-Fi finché non viene aggiornato o riavviato, e intanto non ripete nulla.
Start firmware update Avvia aggiornamento firmware
Strict Rigoroso
Strongest Più forti
Sync clock to this device Sincronizza l'orologio con questo dispositivo
The node's region tree: ^ marks its home region, F that it repeats floods for that region. Edit regions in the Console. L'albero delle regioni del nodo: ^ indica la sua regione di casa, F che ripete i flood per quella regione. Le regioni si modificano nella Console.
The passwords do not match Le password non corrispondono
The position goes out in the node's adverts. La posizione viene inviata negli advert del nodo.
The same for direct packets. 0 to 2. Lo stesso per i pacchetti diretti. Da 0 a 2.
The same limit for adverts. 0 to 64. Lo stesso limite per gli advert. Da 0 a 64.
This device Questo dispositivo
This device has no position Questo dispositivo non ha una posizione
Transmit power Potenza di trasmissione
Try Prova
Try for 10 minutes Prova per 10 minuti
Try new radio settings for %u minutes?\nNow: %s\nTry: %s\nThe node goes back by itself. Until then you reach it only on the new settings. Provare nuove impostazioni radio per %u minuti?\nOra: %s\nProva: %s\nIl nodo torna indietro da solo. Fino ad allora lo raggiungi solo con le nuove impostazioni.
Up to 31 characters, without [ ] \\ : , ? * Fino a 31 caratteri, senza [ ] \\ : , ? *
Updated %s ago Aggiornato %s fa
Uptime Tempo di attività
Use my position Usa la mia posizione
Use this device's settings Usa le impostazioni di questo dispositivo
Wrong radio settings can cut this node off: you then reach it only on the new settings, or not at all. Try them first; the node goes back by itself. Impostazioni radio sbagliate possono isolare questo nodo: lo raggiungi solo con le nuove impostazioni, o per niente. Provale prima; il nodo torna indietro da solo.
dBm, -9 to 30. Applies at once. dBm, da -9 a 30. Vale subito.
pushed inviati
you tu
Flood in / out Flood in / out
Direct in / out Diretti in / out
Airtime TX / RX Tempo in onda TX / RX
+152
View File
@@ -2006,3 +2006,155 @@ Antenna Antenne
On-board Intern
Glass tiles Glazen tegels
Widgets, cards and panel tiles let the background show through. Off: solid tiles. Widgets, kaarten en tegels in het bedieningspaneel laten de achtergrond doorschijnen. Uit: effen tegels.
# repeater admin app
0 to 9. Higher waits longer between sends. 0 tot 9. Hoger wacht langer tussen verzendingen.
A name is required Een naam is verplicht
A node clock only moves forward: syncing cannot set it back. De klok van een node gaat alleen vooruit: synchroniseren kan hem niet terugzetten.
A room server lists only its admins here. Een room server toont hier alleen zijn admins.
Access Toegang
Access changed Toegang gewijzigd
Actions Acties
Admin password Adminwachtwoord
Admin password changed. Adminwachtwoord gewijzigd.
Admin password for full control, or the room password. Adminwachtwoord voor volledige controle, of het roomwachtwoord.
Admin password for full control. A guest sees status and neighbours. Adminwachtwoord voor volledige controle. Een gast ziet status en buren.
Advanced Geavanceerd
Advert hop limit Hoplimiet voor adverts
Advert intervals Advertintervallen
Adverts Adverts
Again Nogmaals
Airtime factor Zendtijdfactor
Bandwidth Bandbreedte
Change Wijzigen
Change radio settings Radio-instellingen wijzigen
Change the admin password? If you lose it you can no longer manage this node over the mesh. Adminwachtwoord wijzigen? Ben je het kwijt, dan kun je deze node niet meer via het mesh beheren.
Clients Clients
Coding rate Codeersnelheid
Console Console
Current Huidig
Decimal degrees, for example 4.4025 Decimale graden, bijvoorbeeld 4.4025
Decimal degrees, for example 51.2194 Decimale graden, bijvoorbeeld 51.2194
Direct send delay Zendvertraging direct
Discover neighbours Buren zoeken
Duplicates Duplicaten
Enter a number Voer een getal in
Enter a password Voer een wachtwoord in
Error Fout
Errors Fouten
Firmware update: the node opens a Wi-Fi access point; join it and upload the new firmware in a browser, as the node's own instructions say. Firmware-update: de node opent een wifi-toegangspunt; maak er verbinding mee en upload de nieuwe firmware in een browser, zoals de instructies van de node zeggen.
Flood advert Flood-advert
Flood hop limit Hoplimiet voor floods
Flood send delay Zendvertraging flood
Floods with more hops are not repeated. 0 to 64. Floods met meer hops worden niet herhaald. 0 tot 64.
Frequency: 150 to 2500 MHz Frequentie: 150 tot 2500 MHz
Guest Gast
Guest password Gastwachtwoord
Hours between flood adverts: 0 (off) or 3 to 168. Uren tussen flood-adverts: 0 (uit) of 3 tot 168.
How hard to drop packets that came back around. Hoe streng pakketten die rondgingen worden weggegooid.
Identity Identiteit
Identity & location Identiteit & locatie
Last reply Laatste antwoord
Last signal Laatste signaal
Lets a wrong or blank password in to read, not to post. Laat een fout of leeg wachtwoord binnen om te lezen, niet om te posten.
Load more (%d of %u) Meer laden (%d van %u)
Local advert Lokale advert
Location Locatie
Log in Inloggen
Log in as admin Inloggen als admin
Log in as guest Inloggen als gast
Logged in as a guest: you can read the status and neighbours. Log in with the admin password to change settings. Ingelogd als gast: je kunt de status en buren lezen. Log in met het adminwachtwoord om instellingen te wijzigen.
Logged in without admin rights. Log in with the admin password to change settings. Ingelogd zonder adminrechten. Log in met het adminwachtwoord om instellingen te wijzigen.
Logging in... Inloggen...
Login refused. Inloggen geweigerd.
Logs in as a guest. Blank lets anyone in as a guest. Up to 15 characters. Logt in als gast. Leeg laat iedereen als gast binnen. Tot 15 tekens.
Loop detection Lusdetectie
Manage Beheren
Members log in with it to post. Up to 15 characters. Leden loggen hiermee in om te posten. Tot 15 tekens.
Minutes between zero-hop adverts: 0 (off) or 60 to 240. Minuten tussen zero-hop-adverts: 0 (uit) of 60 tot 240.
Moderate Gemiddeld
Neighbours Buren
New password Nieuw wachtwoord
Newest Nieuwste
No neighbours heard yet. Nog geen buren gehoord.
No reply Geen antwoord
No reply from the node Geen antwoord van de node
No reply. Check the password, that the node is in range, and this device's clock. Geen antwoord. Controleer het wachtwoord, of de node in bereik is, en de klok van dit toestel.
No reply. It may or may not have been applied: read it again. Geen antwoord. Misschien is het toegepast, misschien niet: lees het opnieuw.
No spaces Geen spaties
Nobody on the list. Niemand op de lijst.
Node clock Klok van de node
Noise floor Ruisvloer
Not in your contacts Niet in je contacten
Not in your contacts, so only removing is possible here. Niet in je contacten, dus hier is alleen verwijderen mogelijk.
Not saved Niet opgeslagen
Off: this node stops forwarding anything. Uit: deze node stuurt niets meer door.
Order Volgorde
Owner Eigenaar
Owner info Eigenaarsinfo
Password Wachtwoord
Passwords Wachtwoorden
Passwords & access Wachtwoorden & toegang
Posts Berichten
Prefers stronger copies of a flood. 0 to 20. Verkiest sterkere kopieën van een flood. 0 tot 20.
Queue Wachtrij
Random delay factor before repeating a flood. 0 to 2. Willekeurige vertragingsfactor voor het herhalen van een flood. 0 tot 2.
Read again Opnieuw lezen
Read-only Alleen lezen
Read-only access Alleen-lezentoegang
Read-write Lezen en schrijven
Reading... Lezen...
Reboot sent. The node is back in about 10 s. Herstart verstuurd. De node is over ongeveer 10 s terug.
Reboot the node? It is off the air for about 10 s and forgets guest logins. De node herstarten? Hij is ongeveer 10 s uit de lucht en vergeet gastlogins.
Receive delay Ontvangstvertraging
Received Ontvangen
Refresh Vernieuwen
Regions Regio's
Remove access Toegang verwijderen
Remove this client's access? De toegang van deze client verwijderen?
Repeat packets Pakketten herhalen
Repeaters this node hears directly, with the signal it hears them at. Repeaters die deze node rechtstreeks hoort, met het signaal waarmee hij ze hoort.
Repeating Herhalen
Repeating & limits Herhalen & limieten
Reset counters Tellers resetten
Reset the node's packet counters? De pakkettellers van de node resetten?
Room password Roomwachtwoord
Save (after a reboot) Opslaan (na een herstart)
Save new radio settings?\nNow: %s\nNew: %s\nThey apply after a reboot. Wrong values can cut this node off for good. Nieuwe radio-instellingen opslaan?\nNu: %s\nNieuw: %s\nZe gelden na een herstart. Foute waarden kunnen deze node voorgoed afsnijden.
Saved. Applies after a reboot. Opgeslagen. Geldt na een herstart.
Saved. The node uses the new radio settings after a reboot. Reboot it now? Opgeslagen. De node gebruikt de nieuwe radio-instellingen na een herstart. Nu herstarten?
Saving... Opslaan...
Send flood advert Flood-advert versturen
Send now Nu versturen
Send zero-hop advert Zero-hop-advert versturen
Set the node's position to this device's position? De positie van de node instellen op de positie van dit toestel?
Shown to anyone who asks this node. Up to 119 characters. Getoond aan iedereen die deze node vraagt. Tot 119 tekens.
Spreading factor Spreidingsfactor
Start a firmware update on the node? It opens its own Wi-Fi access point until it is updated or rebooted, and stops repeating meanwhile. Een firmware-update op de node starten? Hij opent een eigen wifi-toegangspunt tot hij bijgewerkt of herstart is, en herhaalt intussen niets.
Start firmware update Firmware-update starten
Status Status
Strict Streng
Strongest Sterkste
Sync clock to this device Klok gelijkzetten met dit toestel
The node's region tree: ^ marks its home region, F that it repeats floods for that region. Edit regions in the Console. De regioboom van de node: ^ markeert zijn thuisregio, F dat hij floods voor die regio herhaalt. Regio's bewerk je in de Console.
The passwords do not match De wachtwoorden komen niet overeen
The position goes out in the node's adverts. De positie gaat mee in de adverts van de node.
The same for direct packets. 0 to 2. Hetzelfde voor directe pakketten. 0 tot 2.
The same limit for adverts. 0 to 64. Dezelfde limiet voor adverts. 0 tot 64.
This device Dit toestel
This device has no position Dit toestel heeft geen positie
Transmit power Zendvermogen
Try Proberen
Try for 10 minutes 10 minuten proberen
Try new radio settings for %u minutes?\nNow: %s\nTry: %s\nThe node goes back by itself. Until then you reach it only on the new settings. Nieuwe radio-instellingen %u minuten proberen?\nNu: %s\nProef: %s\nDe node gaat vanzelf terug. Tot dan bereik je hem alleen met de nieuwe instellingen.
Up to 31 characters, without [ ] \\ : , ? * Tot 31 tekens, zonder [ ] \\ : , ? *
Updated %s ago %s geleden bijgewerkt
Uptime Uptime
Use my position Mijn positie gebruiken
Use this device's settings Instellingen van dit toestel gebruiken
Wrong radio settings can cut this node off: you then reach it only on the new settings, or not at all. Try them first; the node goes back by itself. Foute radio-instellingen kunnen deze node afsnijden: je bereikt hem dan alleen met de nieuwe instellingen, of helemaal niet. Probeer ze eerst; de node gaat vanzelf terug.
dBm, -9 to 30. Applies at once. dBm, -9 tot 30. Geldt meteen.
pushed gepusht
you jij
Flood in / out Flood in / uit
Direct in / out Direct in / uit
Airtime TX / RX Zendtijd TX / RX
+152
View File
@@ -2008,3 +2008,155 @@ Antenna Antena
On-board Embutida
Glass tiles Blocos de vidro
Widgets, cards and panel tiles let the background show through. Off: solid tiles. Widgets, cartões e blocos do painel deixam o fundo aparecer. Desligado: blocos sólidos.
# repeater admin app
0 to 9. Higher waits longer between sends. 0 a 9. Mais alto espera mais entre envios.
A name is required É preciso um nome
A node clock only moves forward: syncing cannot set it back. O relógio de um nó só avança: sincronizar não consegue atrasá-lo.
A room server lists only its admins here. Um servidor de sala lista aqui apenas seus administradores.
Access Acesso
Access changed Acesso alterado
Actions Ações
Admin password Senha de administrador
Admin password changed. Senha de administrador alterada.
Admin password for full control, or the room password. Senha de administrador para controle total, ou a senha da sala.
Admin password for full control. A guest sees status and neighbours. Senha de administrador para controle total. Um convidado vê o status e os vizinhos.
Advanced Avançado
Advert hop limit Limite de saltos de anúncios
Advert intervals Intervalos de anúncio
Adverts Anúncios
Again De novo
Airtime factor Fator de tempo no ar
Bandwidth Largura de banda
Change Alterar
Change radio settings Alterar ajustes de rádio
Change the admin password? If you lose it you can no longer manage this node over the mesh. Alterar a senha de administrador? Se você a perder, não poderá mais gerenciar este nó pela malha.
Clients Clientes
Coding rate Taxa de codificação
Console Console
Current Atual
Decimal degrees, for example 4.4025 Graus decimais, por exemplo 4.4025
Decimal degrees, for example 51.2194 Graus decimais, por exemplo 51.2194
Direct send delay Atraso de envio direto
Discover neighbours Procurar vizinhos
Duplicates Duplicados
Enter a number Digite um número
Enter a password Digite uma senha
Error Erro
Errors Erros
Firmware update: the node opens a Wi-Fi access point; join it and upload the new firmware in a browser, as the node's own instructions say. Atualização: o nó abre um ponto de acesso Wi-Fi; conecte-se a ele e envie o novo firmware num navegador, como dizem as instruções do nó.
Flood advert Anúncio flood
Flood hop limit Limite de saltos de floods
Flood send delay Atraso de envio flood
Floods with more hops are not repeated. 0 to 64. Floods com mais saltos não são repetidos. 0 a 64.
Frequency: 150 to 2500 MHz Frequência: 150 a 2500 MHz
Guest Convidado
Guest password Senha de convidado
Hours between flood adverts: 0 (off) or 3 to 168. Horas entre anúncios flood: 0 (desligado) ou 3 a 168.
How hard to drop packets that came back around. Com que rigor descartar pacotes que voltaram em loop.
Identity Identidade
Identity & location Identidade e local
Last reply Última resposta
Last signal Último sinal
Lets a wrong or blank password in to read, not to post. Deixa entrar com senha errada ou vazia para ler, não para postar.
Load more (%d of %u) Carregar mais (%d de %u)
Local advert Anúncio local
Location Local
Log in Entrar
Log in as admin Entrar como administrador
Log in as guest Entrar como convidado
Logged in as a guest: you can read the status and neighbours. Log in with the admin password to change settings. Conectado como convidado: você pode ler o status e os vizinhos. Entre com a senha de administrador para alterar ajustes.
Logged in without admin rights. Log in with the admin password to change settings. Conectado sem direitos de administrador. Entre com a senha de administrador para alterar ajustes.
Logging in... Entrando...
Login refused. Login recusado.
Logs in as a guest. Blank lets anyone in as a guest. Up to 15 characters. Entra como convidado. Vazia deixa qualquer um entrar como convidado. Até 15 caracteres.
Loop detection Detecção de loops
Manage Gerenciar
Members log in with it to post. Up to 15 characters. Os membros entram com ela para postar. Até 15 caracteres.
Minutes between zero-hop adverts: 0 (off) or 60 to 240. Minutos entre anúncios de salto zero: 0 (desligado) ou 60 a 240.
Moderate Moderada
Neighbours Vizinhos
New password Nova senha
Newest Mais recentes
No neighbours heard yet. Nenhum vizinho ouvido ainda.
No reply Sem resposta
No reply from the node O nó não respondeu
No reply. Check the password, that the node is in range, and this device's clock. Sem resposta. Confira a senha, se o nó está ao alcance e o relógio deste aparelho.
No reply. It may or may not have been applied: read it again. Sem resposta. Pode ter sido aplicado ou não: leia de novo.
No spaces Sem espaços
Nobody on the list. Ninguém na lista.
Node clock Relógio do nó
Noise floor Ruído de fundo
Not in your contacts Não está nos seus contatos
Not in your contacts, so only removing is possible here. Não está nos seus contatos, então aqui só é possível remover.
Not saved Não salvo
Off: this node stops forwarding anything. Desligado: este nó para de encaminhar qualquer coisa.
Order Ordem
Owner Dono
Owner info Info do dono
Password Senha
Passwords Senhas
Passwords & access Senhas e acesso
Posts Mensagens
Prefers stronger copies of a flood. 0 to 20. Prefere as cópias mais fortes de um flood. 0 a 20.
Queue Fila
Random delay factor before repeating a flood. 0 to 2. Fator de atraso aleatório antes de repetir um flood. 0 a 2.
Read again Ler de novo
Read-only Somente leitura
Read-only access Acesso somente leitura
Read-write Leitura e escrita
Reading... Lendo...
Reboot sent. The node is back in about 10 s. Reinício enviado. O nó volta em cerca de 10 s.
Reboot the node? It is off the air for about 10 s and forgets guest logins. Reiniciar o nó? Ele fica fora do ar por cerca de 10 s e esquece os logins de convidado.
Receive delay Atraso de recepção
Received Recebidos
Refresh Atualizar
Regions Regiões
Remove access Remover acesso
Remove this client's access? Remover o acesso deste cliente?
Repeat packets Repetir pacotes
Repeaters this node hears directly, with the signal it hears them at. Repetidores que este nó ouve diretamente, com o sinal com que os ouve.
Repeating Repetição
Repeating & limits Repetição e limites
Reset counters Zerar contadores
Reset the node's packet counters? Zerar os contadores de pacotes do nó?
Room password Senha da sala
Save (after a reboot) Salvar (após reiniciar)
Save new radio settings?\nNow: %s\nNew: %s\nThey apply after a reboot. Wrong values can cut this node off for good. Salvar novos ajustes de rádio?\nAgora: %s\nNovos: %s\nEles valem após um reinício. Valores errados podem isolar este nó para sempre.
Saved. Applies after a reboot. Salvo. Vale após um reinício.
Saved. The node uses the new radio settings after a reboot. Reboot it now? Salvo. O nó usa os novos ajustes de rádio após um reinício. Reiniciar agora?
Saving... Salvando...
Send flood advert Enviar anúncio flood
Send now Enviar agora
Send zero-hop advert Enviar anúncio de salto zero
Set the node's position to this device's position? Definir a posição do nó como a posição deste aparelho?
Shown to anyone who asks this node. Up to 119 characters. Mostrado a quem perguntar a este nó. Até 119 caracteres.
Spreading factor Fator de espalhamento
Start a firmware update on the node? It opens its own Wi-Fi access point until it is updated or rebooted, and stops repeating meanwhile. Iniciar uma atualização de firmware no nó? Ele abre seu próprio ponto de acesso Wi-Fi até ser atualizado ou reiniciado, e enquanto isso não repete nada.
Start firmware update Iniciar atualização de firmware
Status Status
Strict Rigorosa
Strongest Mais fortes
Sync clock to this device Sincronizar relógio com este aparelho
The node's region tree: ^ marks its home region, F that it repeats floods for that region. Edit regions in the Console. A árvore de regiões do nó: ^ marca sua região de origem, F que ele repete floods dessa região. Edite as regiões no Console.
The passwords do not match As senhas não coincidem
The position goes out in the node's adverts. A posição vai nos anúncios do nó.
The same for direct packets. 0 to 2. O mesmo para pacotes diretos. 0 a 2.
The same limit for adverts. 0 to 64. O mesmo limite para anúncios. 0 a 64.
This device Este aparelho
This device has no position Este aparelho não tem posição
Transmit power Potência de transmissão
Try Testar
Try for 10 minutes Testar por 10 minutos
Try new radio settings for %u minutes?\nNow: %s\nTry: %s\nThe node goes back by itself. Until then you reach it only on the new settings. Testar novos ajustes de rádio por %u minutos?\nAgora: %s\nTeste: %s\nO nó volta sozinho. Até lá, você só o alcança com os novos ajustes.
Up to 31 characters, without [ ] \\ : , ? * Até 31 caracteres, sem [ ] \\ : , ? *
Updated %s ago Atualizado há %s
Uptime Tempo ligado
Use my position Usar minha posição
Use this device's settings Usar os ajustes deste aparelho
Wrong radio settings can cut this node off: you then reach it only on the new settings, or not at all. Try them first; the node goes back by itself. Ajustes de rádio errados podem isolar este nó: você só o alcança com os novos ajustes, ou nunca mais. Teste-os primeiro; o nó volta sozinho.
dBm, -9 to 30. Applies at once. dBm, -9 a 30. Vale na hora.
pushed enviados
you você
Flood in / out Flood entrada / saída
Direct in / out Direto entrada / saída
Airtime TX / RX Tempo no ar TX / RX
+151
View File
@@ -2010,3 +2010,154 @@ Antenna Antenă
On-board Integrată
Glass tiles Plăci de sticlă
Widgets, cards and panel tiles let the background show through. Off: solid tiles. Widgeturile, cardurile și plăcile din panou lasă fundalul să se vadă. Oprit: plăci opace.
# repeater admin app
0 to 9. Higher waits longer between sends. 0 până la 9. Mai mare așteaptă mai mult între trimiteri.
A name is required Este nevoie de un nume
A node clock only moves forward: syncing cannot set it back. Ceasul unui nod merge doar înainte: sincronizarea nu îl poate da înapoi.
A room server lists only its admins here. Un server de cameră listează aici doar administratorii săi.
Access Acces
Access changed Acces schimbat
Actions Acțiuni
Admin password Parolă de administrator
Admin password changed. Parola de administrator a fost schimbată.
Admin password for full control, or the room password. Parola de administrator pentru control complet, sau parola camerei.
Admin password for full control. A guest sees status and neighbours. Parola de administrator pentru control complet. Un oaspete vede starea și vecinii.
Advanced Avansat
Advert hop limit Limită de salturi pentru anunțuri
Advert intervals Intervale de anunț
Adverts Anunțuri
Again Din nou
Airtime factor Factor de timp în aer
Bandwidth Lățime de bandă
Change Schimbă
Change radio settings Schimbă setările radio
Change the admin password? If you lose it you can no longer manage this node over the mesh. Schimbi parola de administrator? Dacă o pierzi, nu mai poți administra acest nod prin rețea.
Clients Clienți
Coding rate Rată de codare
Console Consolă
Current Actual
Decimal degrees, for example 4.4025 Grade zecimale, de exemplu 4.4025
Decimal degrees, for example 51.2194 Grade zecimale, de exemplu 51.2194
Direct send delay Întârziere trimitere directă
Discover neighbours Caută vecini
Duplicates Duplicate
Enter a number Introdu un număr
Enter a password Introdu o parolă
Error Eroare
Errors Erori
Firmware update: the node opens a Wi-Fi access point; join it and upload the new firmware in a browser, as the node's own instructions say. Actualizare: nodul deschide un punct de acces Wi-Fi; conectează-te la el și încarcă noul firmware într-un browser, cum spun instrucțiunile nodului.
Flood advert Anunț flood
Flood hop limit Limită de salturi pentru flood
Flood send delay Întârziere trimitere flood
Floods with more hops are not repeated. 0 to 64. Floodurile cu mai multe salturi nu sunt repetate. 0 până la 64.
Frequency: 150 to 2500 MHz Frecvență: 150 până la 2500 MHz
Guest Oaspete
Guest password Parolă de oaspete
Hours between flood adverts: 0 (off) or 3 to 168. Ore între anunțuri flood: 0 (oprit) sau 3 până la 168.
How hard to drop packets that came back around. Cât de strict se aruncă pachetele care s-au întors în buclă.
Identity Identitate
Identity & location Identitate și locație
Last reply Ultimul răspuns
Last signal Ultimul semnal
Lets a wrong or blank password in to read, not to post. Lasă să intre cu o parolă greșită sau goală pentru citire, nu pentru postare.
Load more (%d of %u) Încarcă mai mult (%d din %u)
Local advert Anunț local
Location Locație
Log in Autentificare
Log in as admin Autentificare ca administrator
Log in as guest Autentificare ca oaspete
Logged in as a guest: you can read the status and neighbours. Log in with the admin password to change settings. Autentificat ca oaspete: poți citi starea și vecinii. Autentifică-te cu parola de administrator pentru a schimba setările.
Logged in without admin rights. Log in with the admin password to change settings. Autentificat fără drepturi de administrator. Autentifică-te cu parola de administrator pentru a schimba setările.
Logging in... Autentificare...
Login refused. Autentificare refuzată.
Logs in as a guest. Blank lets anyone in as a guest. Up to 15 characters. Autentifică ca oaspete. Goală lasă pe oricine ca oaspete. Până la 15 caractere.
Loop detection Detectare bucle
Manage Administrare
Members log in with it to post. Up to 15 characters. Membrii se autentifică cu ea ca să posteze. Până la 15 caractere.
Minutes between zero-hop adverts: 0 (off) or 60 to 240. Minute între anunțuri zero-hop: 0 (oprit) sau 60 până la 240.
Moderate Moderată
Neighbours Vecini
New password Parolă nouă
Newest Cele mai noi
No neighbours heard yet. Niciun vecin auzit încă.
No reply Niciun răspuns
No reply from the node Nodul nu răspunde
No reply. Check the password, that the node is in range, and this device's clock. Niciun răspuns. Verifică parola, dacă nodul e în rază și ceasul acestui dispozitiv.
No reply. It may or may not have been applied: read it again. Niciun răspuns. Poate s-a aplicat, poate nu: citește din nou.
No spaces Fără spații
Nobody on the list. Nimeni pe listă.
Node clock Ceasul nodului
Noise floor Zgomot de fond
Not in your contacts Nu e în contactele tale
Not in your contacts, so only removing is possible here. Nu e în contactele tale, deci aici se poate doar elimina.
Not saved Nesalvat
Off: this node stops forwarding anything. Oprit: acest nod nu mai retransmite nimic.
Order Ordine
Owner Proprietar
Owner info Info proprietar
Password Parolă
Passwords Parole
Passwords & access Parole și acces
Posts Postări
Prefers stronger copies of a flood. 0 to 20. Preferă copiile mai puternice ale unui flood. 0 până la 20.
Queue Coadă
Random delay factor before repeating a flood. 0 to 2. Factor de întârziere aleator înainte de a repeta un flood. 0 până la 2.
Read again Citește din nou
Read-only Doar citire
Read-only access Acces doar citire
Read-write Citire și scriere
Reading... Se citește...
Reboot sent. The node is back in about 10 s. Repornire trimisă. Nodul revine în circa 10 s.
Reboot the node? It is off the air for about 10 s and forgets guest logins. Repornești nodul? Nu emite circa 10 s și uită autentificările oaspeților.
Receive delay Întârziere recepție
Received Primite
Refresh Reîmprospătează
Regions Regiuni
Remove access Elimină accesul
Remove this client's access? Elimini accesul acestui client?
Repeat packets Repetă pachete
Repeaters this node hears directly, with the signal it hears them at. Repetoarele pe care acest nod le aude direct, cu semnalul cu care le aude.
Repeating Repetare
Repeating & limits Repetare și limite
Reset counters Resetează contoarele
Reset the node's packet counters? Resetezi contoarele de pachete ale nodului?
Room password Parola camerei
Save (after a reboot) Salvează (după repornire)
Save new radio settings?\nNow: %s\nNew: %s\nThey apply after a reboot. Wrong values can cut this node off for good. Salvezi noile setări radio?\nAcum: %s\nNoi: %s\nSe aplică după o repornire. Valori greșite pot izola definitiv acest nod.
Saved. Applies after a reboot. Salvat. Se aplică după o repornire.
Saved. The node uses the new radio settings after a reboot. Reboot it now? Salvat. Nodul folosește noile setări radio după o repornire. Îl repornești acum?
Saving... Se salvează...
Send flood advert Trimite anunț flood
Send now Trimite acum
Send zero-hop advert Trimite anunț zero-hop
Set the node's position to this device's position? Setezi poziția nodului la poziția acestui dispozitiv?
Shown to anyone who asks this node. Up to 119 characters. Afișat oricui întreabă acest nod. Până la 119 caractere.
Spreading factor Factor de împrăștiere
Start a firmware update on the node? It opens its own Wi-Fi access point until it is updated or rebooted, and stops repeating meanwhile. Pornești o actualizare de firmware pe nod? Deschide propriul punct de acces Wi-Fi până e actualizat sau repornit și între timp nu mai repetă nimic.
Start firmware update Pornește actualizarea de firmware
Strict Strictă
Strongest Cele mai puternice
Sync clock to this device Sincronizează ceasul cu acest dispozitiv
The node's region tree: ^ marks its home region, F that it repeats floods for that region. Edit regions in the Console. Arborele de regiuni al nodului: ^ marchează regiunea de bază, F că repetă floodurile pentru acea regiune. Regiunile se editează în Consolă.
The passwords do not match Parolele nu se potrivesc
The position goes out in the node's adverts. Poziția pleacă în anunțurile nodului.
The same for direct packets. 0 to 2. La fel pentru pachetele directe. 0 până la 2.
The same limit for adverts. 0 to 64. Aceeași limită pentru anunțuri. 0 până la 64.
This device Acest dispozitiv
This device has no position Acest dispozitiv nu are poziție
Transmit power Putere de emisie
Try Încearcă
Try for 10 minutes Încearcă 10 minute
Try new radio settings for %u minutes?\nNow: %s\nTry: %s\nThe node goes back by itself. Until then you reach it only on the new settings. Încerci noi setări radio timp de %u minute?\nAcum: %s\nTest: %s\nNodul revine singur. Până atunci îl găsești doar pe noile setări.
Up to 31 characters, without [ ] \\ : , ? * Până la 31 de caractere, fără [ ] \\ : , ? *
Updated %s ago Actualizat acum %s
Uptime Timp de funcționare
Use my position Folosește poziția mea
Use this device's settings Folosește setările acestui dispozitiv
Wrong radio settings can cut this node off: you then reach it only on the new settings, or not at all. Try them first; the node goes back by itself. Setări radio greșite pot izola acest nod: îl găsești apoi doar pe noile setări, sau deloc. Încearcă-le întâi; nodul revine singur.
dBm, -9 to 30. Applies at once. dBm, -9 până la 30. Se aplică imediat.
pushed trimise
you tu
Flood in / out Flood intrare / ieșire
Direct in / out Direct intrare / ieșire
Airtime TX / RX Timp în aer TX / RX
+151
View File
@@ -2009,3 +2009,154 @@ Antenna Антенна
On-board Встроен.
Glass tiles Стеклянные плитки
Widgets, cards and panel tiles let the background show through. Off: solid tiles. Виджеты, карточки и плитки панели пропускают фон. Выкл.: сплошные плитки.
# repeater admin app
0 to 9. Higher waits longer between sends. От 0 до 9. Чем больше, тем дольше пауза между отправками.
A name is required Нужно имя
A node clock only moves forward: syncing cannot set it back. Часы узла идут только вперёд: синхронизация не может их отвести назад.
A room server lists only its admins here. Room-сервер показывает здесь только своих администраторов.
Access Доступ
Access changed Доступ изменён
Actions Действия
Admin password Пароль администратора
Admin password changed. Пароль администратора изменён.
Admin password for full control, or the room password. Пароль администратора для полного управления или пароль комнаты.
Admin password for full control. A guest sees status and neighbours. Пароль администратора для полного управления. Гость видит статус и соседей.
Advanced Дополнительно
Advert hop limit Лимит хопов для объявлений
Advert intervals Интервалы объявлений
Adverts Объявления
Again Ещё раз
Airtime factor Коэффициент эфирного времени
Bandwidth Ширина полосы
Change Изменить
Change radio settings Изменить настройки радио
Change the admin password? If you lose it you can no longer manage this node over the mesh. Изменить пароль администратора? Если вы его потеряете, то больше не сможете управлять этим узлом через сеть.
Clients Клиенты
Coding rate Скорость кодирования
Console Консоль
Current Текущие
Decimal degrees, for example 4.4025 Десятичные градусы, например 4.4025
Decimal degrees, for example 51.2194 Десятичные градусы, например 51.2194
Direct send delay Задержка прямой отправки
Discover neighbours Найти соседей
Duplicates Дубликаты
Enter a number Введите число
Enter a password Введите пароль
Error Ошибка
Errors Ошибки
Firmware update: the node opens a Wi-Fi access point; join it and upload the new firmware in a browser, as the node's own instructions say. Обновление: узел открывает точку доступа Wi-Fi; подключитесь к ней и загрузите новую прошивку в браузере, как сказано в инструкциях узла.
Flood advert Flood-объявление
Flood hop limit Лимит хопов для flood
Flood send delay Задержка отправки flood
Floods with more hops are not repeated. 0 to 64. Flood с большим числом хопов не повторяется. От 0 до 64.
Frequency: 150 to 2500 MHz Частота: от 150 до 2500 МГц
Guest Гость
Guest password Пароль гостя
Hours between flood adverts: 0 (off) or 3 to 168. Часы между flood-объявлениями: 0 (выкл.) или от 3 до 168.
How hard to drop packets that came back around. Насколько строго отбрасывать пакеты, вернувшиеся по кругу.
Identity Идентификация
Identity & location Идентификация и место
Last reply Последний ответ
Last signal Последний сигнал
Lets a wrong or blank password in to read, not to post. Пускает с неверным или пустым паролем для чтения, но не для публикации.
Load more (%d of %u) Загрузить ещё (%d из %u)
Local advert Локальное объявление
Location Местоположение
Log in Войти
Log in as admin Войти как администратор
Log in as guest Войти как гость
Logged in as a guest: you can read the status and neighbours. Log in with the admin password to change settings. Вход как гость: можно читать статус и соседей. Войдите с паролем администратора, чтобы менять настройки.
Logged in without admin rights. Log in with the admin password to change settings. Вход без прав администратора. Войдите с паролем администратора, чтобы менять настройки.
Logging in... Вход...
Login refused. Вход отклонён.
Logs in as a guest. Blank lets anyone in as a guest. Up to 15 characters. Вход как гость. Пустой пускает любого гостем. До 15 символов.
Loop detection Обнаружение петель
Manage Управление
Members log in with it to post. Up to 15 characters. Участники входят с ним, чтобы публиковать. До 15 символов.
Minutes between zero-hop adverts: 0 (off) or 60 to 240. Минуты между объявлениями без хопов: 0 (выкл.) или от 60 до 240.
Moderate Умеренное
Neighbours Соседи
New password Новый пароль
Newest Новые
No neighbours heard yet. Соседи пока не слышны.
No reply Нет ответа
No reply from the node Узел не отвечает
No reply. Check the password, that the node is in range, and this device's clock. Нет ответа. Проверьте пароль, находится ли узел в зоне связи, и часы этого устройства.
No reply. It may or may not have been applied: read it again. Нет ответа. Возможно, применено, а возможно, нет: прочитайте заново.
No spaces Без пробелов
Nobody on the list. В списке никого нет.
Node clock Часы узла
Noise floor Уровень шума
Not in your contacts Нет в ваших контактах
Not in your contacts, so only removing is possible here. Нет в ваших контактах, поэтому здесь можно только удалить.
Not saved Не сохранено
Off: this node stops forwarding anything. Выкл.: этот узел перестаёт что-либо пересылать.
Order Порядок
Owner Владелец
Owner info Информация владельца
Password Пароль
Passwords Пароли
Passwords & access Пароли и доступ
Posts Сообщения
Prefers stronger copies of a flood. 0 to 20. Предпочитает более сильные копии flood. От 0 до 20.
Queue Очередь
Random delay factor before repeating a flood. 0 to 2. Случайный коэффициент задержки перед повтором flood. От 0 до 2.
Read again Прочитать заново
Read-only Только чтение
Read-only access Доступ только для чтения
Read-write Чтение и запись
Reading... Чтение...
Reboot sent. The node is back in about 10 s. Перезагрузка отправлена. Узел вернётся примерно через 10 с.
Reboot the node? It is off the air for about 10 s and forgets guest logins. Перезагрузить узел? Он будет вне эфира около 10 с и забудет входы гостей.
Receive delay Задержка приёма
Received Принято
Refresh Обновить
Regions Регионы
Remove access Удалить доступ
Remove this client's access? Удалить доступ этого клиента?
Repeat packets Повторять пакеты
Repeaters this node hears directly, with the signal it hears them at. Ретрансляторы, которые этот узел слышит напрямую, с сигналом, с которым он их слышит.
Repeating Повтор
Repeating & limits Повтор и ограничения
Reset counters Сбросить счётчики
Reset the node's packet counters? Сбросить счётчики пакетов узла?
Room password Пароль комнаты
Save (after a reboot) Сохранить (после перезагрузки)
Save new radio settings?\nNow: %s\nNew: %s\nThey apply after a reboot. Wrong values can cut this node off for good. Сохранить новые настройки радио?\nСейчас: %s\nНовые: %s\nОни вступят в силу после перезагрузки. Неверные значения могут навсегда отрезать этот узел.
Saved. Applies after a reboot. Сохранено. Вступит в силу после перезагрузки.
Saved. The node uses the new radio settings after a reboot. Reboot it now? Сохранено. Узел использует новые настройки радио после перезагрузки. Перезагрузить сейчас?
Saving... Сохранение...
Send flood advert Отправить flood-объявление
Send now Отправить сейчас
Send zero-hop advert Отправить объявление без хопов
Set the node's position to this device's position? Установить позицию узла по позиции этого устройства?
Shown to anyone who asks this node. Up to 119 characters. Показывается всем, кто запросит этот узел. До 119 символов.
Spreading factor Фактор расширения
Start a firmware update on the node? It opens its own Wi-Fi access point until it is updated or rebooted, and stops repeating meanwhile. Запустить обновление прошивки на узле? Он откроет свою точку доступа Wi-Fi до обновления или перезагрузки и тем временем ничего не повторяет.
Start firmware update Запустить обновление прошивки
Strict Строгое
Strongest Сильнейшие
Sync clock to this device Синхронизировать часы с этим устройством
The node's region tree: ^ marks its home region, F that it repeats floods for that region. Edit regions in the Console. Дерево регионов узла: ^ отмечает его домашний регион, F что он повторяет flood для этого региона. Регионы меняются в Консоли.
The passwords do not match Пароли не совпадают
The position goes out in the node's adverts. Позиция передаётся в объявлениях узла.
The same for direct packets. 0 to 2. То же для прямых пакетов. От 0 до 2.
The same limit for adverts. 0 to 64. Тот же лимит для объявлений. От 0 до 64.
This device Это устройство
This device has no position У этого устройства нет позиции
Transmit power Мощность передачи
Try Попробовать
Try for 10 minutes Попробовать 10 минут
Try new radio settings for %u minutes?\nNow: %s\nTry: %s\nThe node goes back by itself. Until then you reach it only on the new settings. Попробовать новые настройки радио на %u минут?\nСейчас: %s\nПроба: %s\nУзел вернётся сам. До тех пор он доступен только на новых настройках.
Up to 31 characters, without [ ] \\ : , ? * До 31 символа, без [ ] \\ : , ? *
Updated %s ago Обновлено %s назад
Uptime Время работы
Use my position Использовать мою позицию
Use this device's settings Использовать настройки этого устройства
Wrong radio settings can cut this node off: you then reach it only on the new settings, or not at all. Try them first; the node goes back by itself. Неверные настройки радио могут отрезать этот узел: тогда он доступен только на новых настройках или вовсе недоступен. Сначала попробуйте их; узел вернётся сам.
dBm, -9 to 30. Applies at once. дБм, от -9 до 30. Действует сразу.
pushed отправлено
you вы
Flood in / out Flood вход / выход
Direct in / out Прямые вход / выход
Airtime TX / RX Эфирное время TX / RX
+151
View File
@@ -2009,3 +2009,154 @@ Antenna Антена
On-board Уграђена
Glass tiles Стаклене плочице
Widgets, cards and panel tiles let the background show through. Off: solid tiles. Виџети, картице и плочице панела пропуштају позадину. Искључено: пуне плочице.
# repeater admin app
0 to 9. Higher waits longer between sends. Од 0 до 9. Веће чека дуже између слања.
A name is required Име је обавезно
A node clock only moves forward: syncing cannot set it back. Сат чвора иде само унапред: синхронизација не може да га врати уназад.
A room server lists only its admins here. Room сервер овде приказује само своје администраторе.
Access Приступ
Access changed Приступ је промењен
Actions Радње
Admin password Лозинка администратора
Admin password changed. Лозинка администратора је промењена.
Admin password for full control, or the room password. Лозинка администратора за пуну контролу, или лозинка собе.
Admin password for full control. A guest sees status and neighbours. Лозинка администратора за пуну контролу. Гост види стање и суседе.
Advanced Напредно
Advert hop limit Ограничење скокова за огласе
Advert intervals Интервали огласа
Adverts Огласи
Again Поново
Airtime factor Фактор времена емитовања
Bandwidth Ширина опсега
Change Промени
Change radio settings Промени радио подешавања
Change the admin password? If you lose it you can no longer manage this node over the mesh. Променити лозинку администратора? Ако је изгубите, више не можете да управљате овим чвором преко мреже.
Clients Клијенти
Coding rate Брзина кодирања
Console Конзола
Current Тренутно
Decimal degrees, for example 4.4025 Децимални степени, на пример 4.4025
Decimal degrees, for example 51.2194 Децимални степени, на пример 51.2194
Direct send delay Кашњење директног слања
Discover neighbours Тражи суседе
Duplicates Дупликати
Enter a number Унесите број
Enter a password Унесите лозинку
Error Грешка
Errors Грешке
Firmware update: the node opens a Wi-Fi access point; join it and upload the new firmware in a browser, as the node's own instructions say. Ажурирање: чвор отвара Wi-Fi приступну тачку; повежите се на њу и отпремите нови фирмвер у прегледачу, како кажу упутства чвора.
Flood advert Flood оглас
Flood hop limit Ограничење скокова за flood
Flood send delay Кашњење flood слања
Floods with more hops are not repeated. 0 to 64. Flood са више скокова се не понавља. Од 0 до 64.
Frequency: 150 to 2500 MHz Фреквенција: од 150 до 2500 MHz
Guest Гост
Guest password Лозинка госта
Hours between flood adverts: 0 (off) or 3 to 168. Сати између flood огласа: 0 (искључено) или од 3 до 168.
How hard to drop packets that came back around. Колико строго одбацити пакете који су се вратили у круг.
Identity Идентитет
Identity & location Идентитет и локација
Last reply Последњи одговор
Last signal Последњи сигнал
Lets a wrong or blank password in to read, not to post. Пушта са погрешном или празном лозинком ради читања, не објављивања.
Load more (%d of %u) Учитај још (%d од %u)
Local advert Локални оглас
Location Локација
Log in Пријава
Log in as admin Пријава као администратор
Log in as guest Пријава као гост
Logged in as a guest: you can read the status and neighbours. Log in with the admin password to change settings. Пријављени сте као гост: можете да читате стање и суседе. Пријавите се лозинком администратора да бисте мењали подешавања.
Logged in without admin rights. Log in with the admin password to change settings. Пријављени сте без права администратора. Пријавите се лозинком администратора да бисте мењали подешавања.
Logging in... Пријављивање...
Login refused. Пријава је одбијена.
Logs in as a guest. Blank lets anyone in as a guest. Up to 15 characters. Пријављује као госта. Празна пушта свакога као госта. До 15 знакова.
Loop detection Откривање петљи
Manage Управљање
Members log in with it to post. Up to 15 characters. Чланови се њом пријављују да би објављивали. До 15 знакова.
Minutes between zero-hop adverts: 0 (off) or 60 to 240. Минути између огласа без скока: 0 (искључено) или од 60 до 240.
Moderate Умерено
Neighbours Суседи
New password Нова лозинка
Newest Најновији
No neighbours heard yet. Још нису чути суседи.
No reply Нема одговора
No reply from the node Чвор не одговара
No reply. Check the password, that the node is in range, and this device's clock. Нема одговора. Проверите лозинку, да ли је чвор у домету, и сат овог уређаја.
No reply. It may or may not have been applied: read it again. Нема одговора. Можда је примењено, а можда није: прочитајте поново.
No spaces Без размака
Nobody on the list. На листи нема никога.
Node clock Сат чвора
Noise floor Ниво шума
Not in your contacts Није у вашим контактима
Not in your contacts, so only removing is possible here. Није у вашим контактима, па је овде могуће само уклањање.
Not saved Није сачувано
Off: this node stops forwarding anything. Искључено: овај чвор престаје да прослеђује било шта.
Order Редослед
Owner Власник
Owner info Подаци о власнику
Password Лозинка
Passwords Лозинке
Passwords & access Лозинке и приступ
Posts Објаве
Prefers stronger copies of a flood. 0 to 20. Даје предност јачим копијама flood-а. Од 0 до 20.
Queue Ред чекања
Random delay factor before repeating a flood. 0 to 2. Насумични фактор кашњења пре понављања flood-а. Од 0 до 2.
Read again Прочитај поново
Read-only Само читање
Read-only access Приступ само за читање
Read-write Читање и писање
Reading... Читање...
Reboot sent. The node is back in about 10 s. Поновно покретање послато. Чвор се враћа за око 10 s.
Reboot the node? It is off the air for about 10 s and forgets guest logins. Поново покренути чвор? Око 10 s није у етру и заборавља пријаве гостију.
Receive delay Кашњење пријема
Received Примљено
Refresh Освежи
Regions Региони
Remove access Уклони приступ
Remove this client's access? Уклонити приступ овог клијента?
Repeat packets Понављај пакете
Repeaters this node hears directly, with the signal it hears them at. Репетитори које овај чвор чује директно, са сигналом са којим их чује.
Repeating Понављање
Repeating & limits Понављање и ограничења
Reset counters Ресетуј бројаче
Reset the node's packet counters? Ресетовати бројаче пакета чвора?
Room password Лозинка собе
Save (after a reboot) Сачувај (после поновног покретања)
Save new radio settings?\nNow: %s\nNew: %s\nThey apply after a reboot. Wrong values can cut this node off for good. Сачувати нова радио подешавања?\nСада: %s\nНова: %s\nВаже после поновног покретања. Погрешне вредности могу заувек да одсеку овај чвор.
Saved. Applies after a reboot. Сачувано. Важи после поновног покретања.
Saved. The node uses the new radio settings after a reboot. Reboot it now? Сачувано. Чвор користи нова радио подешавања после поновног покретања. Поново покренути сада?
Saving... Чување...
Send flood advert Пошаљи flood оглас
Send now Пошаљи сада
Send zero-hop advert Пошаљи оглас без скока
Set the node's position to this device's position? Поставити позицију чвора на позицију овог уређаја?
Shown to anyone who asks this node. Up to 119 characters. Приказује се свакоме ко пита овај чвор. До 119 знакова.
Spreading factor Фактор ширења
Start a firmware update on the node? It opens its own Wi-Fi access point until it is updated or rebooted, and stops repeating meanwhile. Покренути ажурирање фирмвера на чвору? Отвара сопствену Wi-Fi приступну тачку док не буде ажуриран или поново покренут, и у међувремену ништа не понавља.
Start firmware update Покрени ажурирање фирмвера
Strict Строго
Strongest Најјачи
Sync clock to this device Синхронизуј сат са овим уређајем
The node's region tree: ^ marks its home region, F that it repeats floods for that region. Edit regions in the Console. Стабло региона чвора: ^ означава његов матични регион, F да понавља flood за тај регион. Регионе мењајте у Конзоли.
The passwords do not match Лозинке се не поклапају
The position goes out in the node's adverts. Позиција иде у огласима чвора.
The same for direct packets. 0 to 2. Исто за директне пакете. Од 0 до 2.
The same limit for adverts. 0 to 64. Исто ограничење за огласе. Од 0 до 64.
This device Овај уређај
This device has no position Овај уређај нема позицију
Transmit power Снага предаје
Try Пробај
Try for 10 minutes Пробај 10 минута
Try new radio settings for %u minutes?\nNow: %s\nTry: %s\nThe node goes back by itself. Until then you reach it only on the new settings. Пробати нова радио подешавања %u минута?\nСада: %s\nПроба: %s\nЧвор се сам враћа. Дотле га достижете само на новим подешавањима.
Up to 31 characters, without [ ] \\ : , ? * До 31 знака, без [ ] \\ : , ? *
Updated %s ago Ажурирано пре %s
Uptime Време рада
Use my position Користи моју позицију
Use this device's settings Користи подешавања овог уређаја
Wrong radio settings can cut this node off: you then reach it only on the new settings, or not at all. Try them first; the node goes back by itself. Погрешна радио подешавања могу да одсеку овај чвор: тада га достижете само на новим подешавањима, или никако. Прво их пробајте; чвор се сам враћа.
dBm, -9 to 30. Applies at once. dBm, од -9 до 30. Важи одмах.
pushed послато
you ви
Flood in / out Flood улаз / излаз
Direct in / out Директни улаз / излаз
Airtime TX / RX Време емитовања TX / RX
+151
View File
@@ -2009,3 +2009,154 @@ Antenna Антена
On-board Вбудов.
Glass tiles Скляні плитки
Widgets, cards and panel tiles let the background show through. Off: solid tiles. Віджети, картки й плитки панелі пропускають тло. Вимк.: суцільні плитки.
# repeater admin app
0 to 9. Higher waits longer between sends. Від 0 до 9. Більше значення довше чекає між надсиланнями.
A name is required Потрібне ім'я
A node clock only moves forward: syncing cannot set it back. Годинник вузла йде лише вперед: синхронізація не може повернути його назад.
A room server lists only its admins here. Room-сервер показує тут лише своїх адміністраторів.
Access Доступ
Access changed Доступ змінено
Actions Дії
Admin password Пароль адміністратора
Admin password changed. Пароль адміністратора змінено.
Admin password for full control, or the room password. Пароль адміністратора для повного керування або пароль кімнати.
Admin password for full control. A guest sees status and neighbours. Пароль адміністратора для повного керування. Гість бачить стан і сусідів.
Advanced Додатково
Advert hop limit Ліміт хопів для оголошень
Advert intervals Інтервали оголошень
Adverts Оголошення
Again Ще раз
Airtime factor Коефіцієнт ефірного часу
Bandwidth Ширина смуги
Change Змінити
Change radio settings Змінити налаштування радіо
Change the admin password? If you lose it you can no longer manage this node over the mesh. Змінити пароль адміністратора? Якщо ви його втратите, то більше не зможете керувати цим вузлом через мережу.
Clients Клієнти
Coding rate Швидкість кодування
Console Консоль
Current Поточні
Decimal degrees, for example 4.4025 Десяткові градуси, наприклад 4.4025
Decimal degrees, for example 51.2194 Десяткові градуси, наприклад 51.2194
Direct send delay Затримка прямого надсилання
Discover neighbours Шукати сусідів
Duplicates Дублікати
Enter a number Введіть число
Enter a password Введіть пароль
Error Помилка
Errors Помилки
Firmware update: the node opens a Wi-Fi access point; join it and upload the new firmware in a browser, as the node's own instructions say. Оновлення: вузол відкриває точку доступу Wi-Fi; під'єднайтеся до неї й завантажте нову прошивку в браузері, як сказано в інструкціях вузла.
Flood advert Flood-оголошення
Flood hop limit Ліміт хопів для flood
Flood send delay Затримка надсилання flood
Floods with more hops are not repeated. 0 to 64. Flood з більшою кількістю хопів не повторюється. Від 0 до 64.
Frequency: 150 to 2500 MHz Частота: від 150 до 2500 МГц
Guest Гість
Guest password Пароль гостя
Hours between flood adverts: 0 (off) or 3 to 168. Години між flood-оголошеннями: 0 (вимк.) або від 3 до 168.
How hard to drop packets that came back around. Наскільки суворо відкидати пакети, що повернулися по колу.
Identity Ідентифікація
Identity & location Ідентифікація і місце
Last reply Остання відповідь
Last signal Останній сигнал
Lets a wrong or blank password in to read, not to post. Пускає з неправильним або порожнім паролем для читання, але не для дописів.
Load more (%d of %u) Завантажити ще (%d з %u)
Local advert Локальне оголошення
Location Місцезнаходження
Log in Увійти
Log in as admin Увійти як адміністратор
Log in as guest Увійти як гість
Logged in as a guest: you can read the status and neighbours. Log in with the admin password to change settings. Вхід як гість: можна читати стан і сусідів. Увійдіть із паролем адміністратора, щоб змінювати налаштування.
Logged in without admin rights. Log in with the admin password to change settings. Вхід без прав адміністратора. Увійдіть із паролем адміністратора, щоб змінювати налаштування.
Logging in... Вхід...
Login refused. Вхід відхилено.
Logs in as a guest. Blank lets anyone in as a guest. Up to 15 characters. Вхід як гість. Порожній пускає будь-кого гостем. До 15 символів.
Loop detection Виявлення петель
Manage Керування
Members log in with it to post. Up to 15 characters. Учасники входять із ним, щоб писати. До 15 символів.
Minutes between zero-hop adverts: 0 (off) or 60 to 240. Хвилини між оголошеннями без хопів: 0 (вимк.) або від 60 до 240.
Moderate Помірне
Neighbours Сусіди
New password Новий пароль
Newest Найновіші
No neighbours heard yet. Сусідів ще не чути.
No reply Немає відповіді
No reply from the node Вузол не відповідає
No reply. Check the password, that the node is in range, and this device's clock. Немає відповіді. Перевірте пароль, чи вузол у зоні зв'язку, і годинник цього пристрою.
No reply. It may or may not have been applied: read it again. Немає відповіді. Можливо, застосовано, а можливо, ні: прочитайте знову.
No spaces Без пробілів
Nobody on the list. У списку нікого немає.
Node clock Годинник вузла
Noise floor Рівень шуму
Not in your contacts Немає у ваших контактах
Not in your contacts, so only removing is possible here. Немає у ваших контактах, тож тут можна лише видалити.
Not saved Не збережено
Off: this node stops forwarding anything. Вимк.: цей вузол перестає будь-що пересилати.
Order Порядок
Owner Власник
Owner info Інформація власника
Password Пароль
Passwords Паролі
Passwords & access Паролі й доступ
Posts Дописи
Prefers stronger copies of a flood. 0 to 20. Надає перевагу сильнішим копіям flood. Від 0 до 20.
Queue Черга
Random delay factor before repeating a flood. 0 to 2. Випадковий коефіцієнт затримки перед повтором flood. Від 0 до 2.
Read again Прочитати знову
Read-only Лише читання
Read-only access Доступ лише для читання
Read-write Читання й запис
Reading... Читання...
Reboot sent. The node is back in about 10 s. Перезавантаження надіслано. Вузол повернеться приблизно за 10 с.
Reboot the node? It is off the air for about 10 s and forgets guest logins. Перезавантажити вузол? Він буде поза ефіром близько 10 с і забуде входи гостей.
Receive delay Затримка приймання
Received Отримано
Refresh Оновити
Regions Регіони
Remove access Видалити доступ
Remove this client's access? Видалити доступ цього клієнта?
Repeat packets Повторювати пакети
Repeaters this node hears directly, with the signal it hears them at. Ретранслятори, які цей вузол чує напряму, із сигналом, з яким він їх чує.
Repeating Повтор
Repeating & limits Повтор і обмеження
Reset counters Скинути лічильники
Reset the node's packet counters? Скинути лічильники пакетів вузла?
Room password Пароль кімнати
Save (after a reboot) Зберегти (після перезавантаження)
Save new radio settings?\nNow: %s\nNew: %s\nThey apply after a reboot. Wrong values can cut this node off for good. Зберегти нові налаштування радіо?\nЗараз: %s\nНові: %s\nВони діють після перезавантаження. Неправильні значення можуть назавжди відрізати цей вузол.
Saved. Applies after a reboot. Збережено. Діє після перезавантаження.
Saved. The node uses the new radio settings after a reboot. Reboot it now? Збережено. Вузол використає нові налаштування радіо після перезавантаження. Перезавантажити зараз?
Saving... Збереження...
Send flood advert Надіслати flood-оголошення
Send now Надіслати зараз
Send zero-hop advert Надіслати оголошення без хопів
Set the node's position to this device's position? Встановити позицію вузла за позицією цього пристрою?
Shown to anyone who asks this node. Up to 119 characters. Показується кожному, хто запитає цей вузол. До 119 символів.
Spreading factor Фактор розширення
Start a firmware update on the node? It opens its own Wi-Fi access point until it is updated or rebooted, and stops repeating meanwhile. Почати оновлення прошивки на вузлі? Він відкриє власну точку доступу Wi-Fi до оновлення чи перезавантаження і тим часом нічого не повторює.
Start firmware update Почати оновлення прошивки
Strict Суворе
Strongest Найсильніші
Sync clock to this device Синхронізувати годинник із цим пристроєм
The node's region tree: ^ marks its home region, F that it repeats floods for that region. Edit regions in the Console. Дерево регіонів вузла: ^ позначає його домашній регіон, F що він повторює flood для цього регіону. Регіони змінюються в Консолі.
The passwords do not match Паролі не збігаються
The position goes out in the node's adverts. Позиція передається в оголошеннях вузла.
The same for direct packets. 0 to 2. Те саме для прямих пакетів. Від 0 до 2.
The same limit for adverts. 0 to 64. Той самий ліміт для оголошень. Від 0 до 64.
This device Цей пристрій
This device has no position Цей пристрій не має позиції
Transmit power Потужність передавання
Try Спробувати
Try for 10 minutes Спробувати 10 хвилин
Try new radio settings for %u minutes?\nNow: %s\nTry: %s\nThe node goes back by itself. Until then you reach it only on the new settings. Спробувати нові налаштування радіо на %u хвилин?\nЗараз: %s\nПроба: %s\nВузол повернеться сам. До того він доступний лише на нових налаштуваннях.
Up to 31 characters, without [ ] \\ : , ? * До 31 символу, без [ ] \\ : , ? *
Updated %s ago Оновлено %s тому
Uptime Час роботи
Use my position Використати мою позицію
Use this device's settings Використати налаштування цього пристрою
Wrong radio settings can cut this node off: you then reach it only on the new settings, or not at all. Try them first; the node goes back by itself. Неправильні налаштування радіо можуть відрізати цей вузол: тоді він доступний лише на нових налаштуваннях або зовсім недоступний. Спершу спробуйте їх; вузол повернеться сам.
dBm, -9 to 30. Applies at once. дБм, від -9 до 30. Діє одразу.
pushed надіслано
you ви
Flood in / out Flood вхід / вихід
Direct in / out Прямі вхід / вихід
Airtime TX / RX Ефірний час TX / RX
+6
View File
@@ -141,6 +141,12 @@ public:
(void)data;
(void)len;
}
/** Reply to MyMesh::uiSendBinaryRequest (repeater admin app: neighbours,
* access list, owner info). `data` is the reply after its 4-byte reflected
* tag. Default no-op. */
virtual void onBinaryReply(const ContactInfo& contact, const uint8_t* data, size_t len) {
(void)contact; (void)data; (void)len;
}
/** Admin-login finished. `success=true` means the repeater accepted the
* password and added us to its ACL; `perms` is the granted permission
* bitmask (e.g. PERM_ACL_ADMIN | PERM_ACL_GUEST). On `success=false` the
+8
View File
@@ -3662,6 +3662,8 @@ void MyMesh::onContactResponse(const ContactInfo &contact, const uint8_t *data,
_ui->onTelemetryReply(contact, &data[4], (size_t)(len - 4));
} else if (kind == UiReqKind::Regions) {
_ui->onRegionListReply(contact, data, len);
} else if (kind == UiReqKind::Binary) {
_ui->onBinaryReply(contact, &data[4], (size_t)(len - 4));
} else {
// STATUS or unknown — let the UI fall through its RepeaterStats /
// JSON parser path.
@@ -3748,6 +3750,12 @@ void MyMesh::onContactResponse(const ContactInfo &contact, const uint8_t *data,
out_frame[i++] = data[12]; // FIRMWARE_VER_LEVEL
ok = true;
perms = data[6];
#ifdef DISPLAY_CLASS
memcpy(_ui_last_login.pub4, contact.id.pub_key, 4);
_ui_last_login.acl = data[7];
_ui_last_login.fw_level = data[12];
_ui_last_login.valid = true;
#endif
} else {
out_frame[i++] = PUSH_CODE_LOGIN_FAIL;
out_frame[i++] = 0; // reserved
+27 -1
View File
@@ -366,7 +366,7 @@ protected:
public:
/** Which kind of touch-UI request is currently in flight, so the response
* matcher in onContactResponse routes to the right callback. */
enum class UiReqKind : uint8_t { None = 0, Status = 1, Telemetry = 2, Regions = 3 };
enum class UiReqKind : uint8_t { None = 0, Status = 1, Telemetry = 2, Regions = 3, Binary = 4 };
/** Fire a REQ_TYPE_GET_STATUS from the touch UI side. Result is delivered
* via AbstractUITask::onPingReply when the reply arrives.
@@ -1009,6 +1009,31 @@ public:
return r;
}
/** Repeater admin app: send a binary REQ (first byte = REQ_TYPE_*, then its
* parameters, e.g. GET_NEIGHBOURS' count/offset/order/prefix) to a repeater or
* room server we are logged in to. The reply (minus its 4-byte reflected tag)
* lands in AbstractUITask::onBinaryReply. Same single-flight slot as the
* status/telemetry helpers above, so the caller serialises its requests. */
int uiSendBinaryRequest(ContactInfo& recipient, const uint8_t* payload, uint8_t len) {
if (!payload || len == 0) return MSG_SEND_FAILED;
uint32_t tag = 0, est = 0;
pending_req = 0;
int r = sendRequest(recipient, payload, len, tag, est);
if (r == MSG_SEND_SENT_FLOOD || r == MSG_SEND_SENT_DIRECT) {
memcpy(&_ui_pending_status, recipient.id.pub_key, 4);
_ui_pending_kind = UiReqKind::Binary;
_ui_pending_tag = tag;
}
return r;
}
/** What the last LOGIN_OK said beyond "admin or not" (repeater admin app): the
* ACL permission byte (data[7], PERM_ACL_* in the low two bits) and the
* server's firmware version level (data[12]). `valid` is false until a
* LOGIN_OK of the new format has been seen for `pub4`. */
struct UiLoginInfo { uint8_t pub4[4]; uint8_t acl; uint8_t fw_level; bool valid; };
const UiLoginInfo& uiLastLoginInfo() const { return _ui_last_login; }
/** Ask a directly-heard repeater for the public regions it allows. Region
* discovery is direct-only in MeshCore, so this deliberately sends zero-hop
* and requests a zero-hop reply even when the contact has a saved flood path.
@@ -1427,6 +1452,7 @@ private:
* matching by pubkey alone misroutes the login OK as the REQ reply.
* Compare tag in onContactResponse to keep the two streams separate. */
uint32_t _ui_pending_tag = 0;
UiLoginInfo _ui_last_login = {}; // uiLastLoginInfo()
/** Deferred guest-login-then-request arm: holds the first 4 bytes of the
* recipient pub_key (0 = none) plus which REQ to send, set by
* uiSendRequestAfterGuestLogin(). onContactResponse fires the REQ when the
File diff suppressed because it is too large. Load diff
+221
View File
@@ -0,0 +1,221 @@
// SPDX-License-Identifier: GPL-3.0-or-later
#pragma once
#include <stddef.h>
#include <stdint.h>
#include <stdio.h>
#include <string.h>
// Wire formats the repeater admin app reads (MeshCore 1.18 simple_repeater /
// simple_room_server). Pure functions, no LVGL and no mesh, so the parsing is
// host-tested (test/test_repeater_admin_proto.cpp). See dev-docs/REPEATER_ADMIN.md
// for where each layout comes from.
namespace RepeaterAdminProto {
// Binary request types (first payload byte of a PAYLOAD_TYPE_REQ).
enum : uint8_t {
REQ_GET_STATUS = 0x01, // guests too
REQ_GET_TELEMETRY = 0x03,
REQ_GET_ACCESS_LIST = 0x05, // admin only
REQ_GET_NEIGHBOURS = 0x06, // repeaters only, guests too
REQ_GET_OWNER_INFO = 0x07, // repeaters only (FIRMWARE_VER_LEVEL >= 2), guests too
};
static inline uint16_t rdU16(const uint8_t* p) { return (uint16_t)(p[0] | (p[1] << 8)); }
static inline int16_t rdI16(const uint8_t* p) { return (int16_t)rdU16(p); }
static inline uint32_t rdU32(const uint8_t* p) {
return (uint32_t)p[0] | ((uint32_t)p[1] << 8) | ((uint32_t)p[2] << 16) | ((uint32_t)p[3] << 24);
}
// REQ_TYPE_GET_STATUS reply (after the 4-byte tag). Both servers send the same
// first 48 bytes; a repeater adds rx airtime + receive errors (56 bytes), a room
// server adds its post counters (52 bytes).
struct Status {
uint16_t batt_mv;
uint16_t queue_len;
int16_t noise_floor;
int16_t last_rssi;
uint32_t recv, sent;
uint32_t air_secs, uptime_secs;
uint32_t sent_flood, sent_direct, recv_flood, recv_direct;
uint16_t err_events;
int16_t last_snr_q4;
uint16_t direct_dups, flood_dups;
// repeater extras (has_rx = true)
bool has_rx;
uint32_t rx_air_secs, recv_errors;
// room server extras (has_posts = true)
bool has_posts;
uint16_t posted, post_push;
};
inline bool parseStatus(const uint8_t* d, size_t len, bool is_room, Status& s) {
memset(&s, 0, sizeof s);
if (!d || len < 48) return false;
s.batt_mv = rdU16(d + 0);
s.queue_len = rdU16(d + 2);
s.noise_floor = rdI16(d + 4);
s.last_rssi = rdI16(d + 6);
s.recv = rdU32(d + 8);
s.sent = rdU32(d + 12);
s.air_secs = rdU32(d + 16);
s.uptime_secs = rdU32(d + 20);
s.sent_flood = rdU32(d + 24);
s.sent_direct = rdU32(d + 28);
s.recv_flood = rdU32(d + 32);
s.recv_direct = rdU32(d + 36);
s.err_events = rdU16(d + 40);
s.last_snr_q4 = rdI16(d + 42);
s.direct_dups = rdU16(d + 44);
s.flood_dups = rdU16(d + 46);
if (is_room) {
if (len >= 52) { s.has_posts = true; s.posted = rdU16(d + 48); s.post_push = rdU16(d + 50); }
} else if (len >= 56) {
s.has_rx = true; s.rx_air_secs = rdU32(d + 48); s.recv_errors = rdU32(d + 52);
}
return true;
}
// REQ_TYPE_GET_NEIGHBOURS request (version 0): count, offset, order, prefix
// length, then 4 random bytes so two identical requests hash differently.
enum : uint8_t { NB_NEWEST = 0, NB_OLDEST = 1, NB_STRONGEST = 2, NB_WEAKEST = 3 };
inline uint8_t buildNeighboursReq(uint8_t* out, uint8_t count, uint16_t offset, uint8_t order,
uint8_t prefix_len, uint32_t nonce) {
out[0] = REQ_GET_NEIGHBOURS;
out[1] = 0; // request version
out[2] = count;
out[3] = (uint8_t)(offset & 0xFF);
out[4] = (uint8_t)(offset >> 8);
out[5] = order;
out[6] = prefix_len;
memcpy(out + 7, &nonce, 4);
return 11;
}
// Reply: u16 total neighbours, u16 entries here, then per entry
// prefix_len bytes of public key, u32 heard-seconds-ago, i8 SNR x4.
struct Neighbour { uint8_t prefix[8]; uint32_t heard_ago; int8_t snr_q4; };
inline int parseNeighbours(const uint8_t* d, size_t len, uint8_t prefix_len,
Neighbour* out, int max_out, uint16_t* total) {
if (total) *total = 0;
if (!d || len < 4 || prefix_len == 0 || prefix_len > 8) return -1;
if (total) *total = rdU16(d);
const int n = rdU16(d + 2);
const size_t entry = (size_t)prefix_len + 5;
int got = 0;
size_t o = 4;
for (int i = 0; i < n && o + entry <= len && got < max_out; ++i, o += entry) {
Neighbour& nb = out[got++];
memset(&nb, 0, sizeof nb);
memcpy(nb.prefix, d + o, prefix_len);
nb.heard_ago = rdU32(d + o + prefix_len);
nb.snr_q4 = (int8_t)d[o + prefix_len + 4];
}
return got;
}
// REQ_TYPE_GET_ACCESS_LIST reply: 7-byte entries (6-byte key prefix + permission
// byte). Request payload is { 0x05, 0, 0 } (two reserved bytes must be zero).
struct AclEntry { uint8_t prefix[6]; uint8_t perms; };
inline int parseAcl(const uint8_t* d, size_t len, AclEntry* out, int max_out) {
if (!d) return -1;
int got = 0;
for (size_t o = 0; o + 7 <= len && got < max_out; o += 7) {
memcpy(out[got].prefix, d + o, 6);
out[got].perms = d[o + 6];
++got;
}
return got;
}
// PERM_ACL_* role in the low two bits.
enum : uint8_t { ROLE_GUEST = 0, ROLE_READ_ONLY = 1, ROLE_READ_WRITE = 2, ROLE_ADMIN = 3 };
static inline uint8_t aclRole(uint8_t perms) { return perms & 3; }
// REQ_TYPE_GET_OWNER_INFO reply: "<firmware version>\n<node name>\n<owner info>".
// Splits in place into three pointers (owner may itself hold newlines: the rest).
inline bool splitOwnerInfo(char* text, const char** ver, const char** name, const char** owner) {
*ver = *name = *owner = "";
if (!text) return false;
char* a = strchr(text, '\n');
if (!a) { *ver = text; return false; }
*a = 0; *ver = text;
char* b = strchr(a + 1, '\n');
if (!b) { *name = a + 1; return true; }
*b = 0; *name = a + 1; *owner = b + 1;
return true;
}
// ---- CLI replies --------------------------------------------------------------
// "get <key>" answers "> <value>"; a "set" answers "OK" (some add text after it,
// e.g. "OK - reboot to apply"); failures start "Error" / "ERR" or say "unknown".
// Returns the value part of a get reply, or nullptr when the reply is not one.
inline const char* cliGetValue(const char* reply) {
if (!reply) return nullptr;
while (*reply == ' ' || *reply == '\r' || *reply == '\n') ++reply;
if (reply[0] != '>') return nullptr;
++reply;
while (*reply == ' ') ++reply;
return reply;
}
inline bool startsWithNoCase(const char* s, const char* pfx) {
for (; *pfx; ++s, ++pfx) {
char a = *s, b = *pfx;
if (a >= 'A' && a <= 'Z') a = (char)(a - 'A' + 'a');
if (b >= 'A' && b <= 'Z') b = (char)(b - 'A' + 'a');
if (a != b) return false;
}
return true;
}
enum class CliResult : uint8_t { Ok, Error, Other };
inline CliResult cliClassify(const char* reply) {
if (!reply) return CliResult::Error;
while (*reply == ' ' || *reply == '\r' || *reply == '\n') ++reply;
if (startsWithNoCase(reply, "ok")) return CliResult::Ok;
if (startsWithNoCase(reply, "err") || startsWithNoCase(reply, "unknown") ||
startsWithNoCase(reply, "invalid") || strstr(reply, "rror") != nullptr ||
strstr(reply, "not supported") != nullptr || strstr(reply, "not found") != nullptr)
return CliResult::Error;
return CliResult::Other;
}
// Did an OK reply say the change waits for a reboot?
inline bool cliNeedsReboot(const char* reply) {
if (!reply) return false;
return strstr(reply, "reboot") != nullptr || strstr(reply, "Reboot") != nullptr;
}
// "on"/"off" style values, as the CLI prints them.
inline int cliBool(const char* v) {
if (!v) return -1;
if (startsWithNoCase(v, "on") || startsWithNoCase(v, "1") || startsWithNoCase(v, "true") ||
startsWithNoCase(v, "yes") || startsWithNoCase(v, "enabled")) return 1;
if (startsWithNoCase(v, "off") || startsWithNoCase(v, "0") || startsWithNoCase(v, "false") ||
startsWithNoCase(v, "no") || startsWithNoCase(v, "disabled")) return 0;
return -1;
}
// "get radio" -> "freq,bw,sf,cr" (e.g. "869.525,250.0,11,5").
struct Radio { float freq, bw; int sf, cr; };
inline bool parseRadio(const char* v, Radio& r) {
if (!v) return false;
float f = 0, bw = 0; int sf = 0, cr = 0;
if (sscanf(v, "%f,%f,%d,%d", &f, &bw, &sf, &cr) != 4) return false;
if (f < 100.0f || f > 3000.0f || bw <= 0 || sf < 5 || sf > 12 || cr < 5 || cr > 8) return false;
r.freq = f; r.bw = bw; r.sf = sf; r.cr = cr;
return true;
}
// The bandwidths the SX126x/LR11xx accept, in kHz (what "set radio" validates against).
static const float kBandwidths[] = { 7.8f, 10.4f, 15.6f, 20.8f, 31.25f, 41.7f, 62.5f, 125.0f, 250.0f, 500.0f };
inline bool validBandwidth(float bw) {
for (float b : kBandwidths) if (bw > b - 0.05f && bw < b + 0.05f) return true;
return false;
}
// Seconds as "3d 4h", "5h 12m", "7m", "42s".
inline void fmtDuration(uint32_t s, char* out, size_t cap) {
if (s >= 86400u) snprintf(out, cap, "%lud %luh", (unsigned long)(s / 86400u), (unsigned long)((s % 86400u) / 3600u));
else if (s >= 3600u) snprintf(out, cap, "%luh %lum", (unsigned long)(s / 3600u), (unsigned long)((s % 3600u) / 60u));
else if (s >= 60u) snprintf(out, cap, "%lum", (unsigned long)(s / 60u));
else snprintf(out, cap, "%lus", (unsigned long)s);
}
} // namespace RepeaterAdminProto
+144 -6
View File
@@ -21651,14 +21651,15 @@ static void openRoomJoinPrompt(const uint8_t pub[32], bool after_relogin_failed)
openAdminLoginPrompt(*c);
}
static void openRepeaterAdmin(const ContactInfo& c); // RepeaterAdminApp.h, included below
static void actionSheetAdminCb(lv_event_t* e) {
if (lv_event_get_code(e) != LV_EVENT_CLICKED || !g_lv.task) return;
ContactInfo c;
bool ok = the_mesh.getContactByIdx(s_action_sheet_mesh_idx, c);
closeActionSheet();
if (!ok) { g_lv.task->showAlert(TR("Contact gone"), 1200); return; }
s_room_join_idx = -1; // repeater admin login, not a room join
openAdminLoginPrompt(c);
s_room_join_idx = -1; // repeater admin, not a room join
openRepeaterAdmin(c); // the admin app (login, status, settings, console)
}
// "Join" a room server: same login mechanism as repeater admin (sendLogin is
@@ -21675,6 +21676,14 @@ static void actionSheetJoinRoomCb(lv_event_t* e) {
openAdminLoginPrompt(c);
}
// ---- Repeater / room server admin app (RepeaterAdminApp.h) ---------------------
// Shares this translation unit: it builds on the settings kit, the confirm popup and
// the console above. These are defined further down.
static inline void setLabelIfChanged(lv_obj_t* lbl, const char* txt);
static void openContactActionSheet(uint32_t mesh_idx, bool is_repeater, const char* name, bool from_map);
static bool raOverlayAboveClose(); // closes a popup opened over the app (defined by the popup registry)
#include "RepeaterAdminApp.h"
// Toggle a contact's favorite state. Persists in NVS via TouchPrefsStore (the
// star marker + favorites filter) AND mirrors into the firmware contact
// table's flags bit 0 — the bit the core's overwrite-oldest eviction skips
@@ -22477,7 +22486,7 @@ static void openContactActionSheet(uint32_t mesh_idx, bool is_repeater, const ch
// block + share contact (7), + trace/admin for repeaters (2), + Join for
// rooms (1), + line-of-sight (1), + Show on map (1 when contact has GPS and
// !from_map).
const int grid_items = (from_map ? 5 : 8) + (is_repeater ? 2 : 0) + (is_room ? 1 : 0) + (has_los ? 1 : 0) + (has_map_btn ? 1 : 0);
const int grid_items = (from_map ? 5 : 8) + (is_repeater ? 2 : 0) + (is_room ? 2 : 0) + (has_los ? 1 : 0) + (has_map_btn ? 1 : 0);
// P4 portrait: the 2-column grid cut most labels off with "..." on the narrow
// panel, so every action gets its own full-width row. The card grows to fit and
// the body scrolls past the screen height like any tall sheet. Landscape and the
@@ -22627,6 +22636,7 @@ static void openContactActionSheet(uint32_t mesh_idx, bool is_repeater, const ch
if (is_room) {
mk_btn(TR(LV_SYMBOL_LOOP " Join"), actionSheetJoinRoomCb, COLOR_STATUS_OK);
mk_btn(TR(LV_SYMBOL_ENVELOPE " Open chat"), actionSheetSendMsgCb, 0);
mk_btn(TR(LV_SYMBOL_SETTINGS " Admin"), actionSheetAdminCb, 0); // the admin app, room flavour
} else if (is_repeater) {
mk_btn(TR(LV_SYMBOL_REFRESH " Ping"), actionSheetPingCb, 0);
} else {
@@ -67756,6 +67766,10 @@ void UITask::onThreadsChanged() {
#endif
}
void UITask::onBinaryReply(const ContactInfo& contact, const uint8_t* data, size_t len) {
raOnBinaryReply(contact, data, len); // only the repeater admin app sends these
}
void UITask::onRegionListReply(const ContactInfo& contact, const uint8_t* data, size_t len) {
if (s_region_scan_phase != RegionScanPhase::Querying || !s_region_scan_waiting ||
s_region_scan_next >= s_region_scan_count ||
@@ -67768,6 +67782,7 @@ void UITask::onRegionListReply(const ContactInfo& contact, const uint8_t* data,
}
void UITask::onPingReply(const ContactInfo& contact, const uint8_t* data, size_t len) {
if (raOnStatusReply(contact, data, len)) return; // the repeater admin app asked
s_ui_ping_deadline_ms = 0; // reply arrived, cancel timeout
unsigned batt_mv = 0;
@@ -67780,12 +67795,12 @@ void UITask::onPingReply(const ContactInfo& contact, const uint8_t* data, size_t
* u16 batt_mv, u16 queue_len, i16 noise_floor, i16 last_rssi,
* u32 n_recv, u32 n_sent, u32 air_secs, u32 uptime_secs, ...
* Room servers and sensors reply with a JSON blob via StatsFormatHelper. */
if (len >= 20) {
if (len >= 24) {
batt_mv = (unsigned)(data[0] | (data[1] << 8));
queue_len = (unsigned)(data[2] | (data[3] << 8));
last_rssi = (int16_t)(data[6] | (data[7] << 8));
// uptime_secs is at offset 16 (after 2+2+2+2 + 4+4 = 16)
uptime_s = (unsigned)(data[16] | (data[17] << 8) | (data[18] << 16) | (data[19] << 24));
// uptime_secs is at offset 20 (2+2+2+2 + recv 4 + sent 4 + airtime 4); 16 is the TX airtime
uptime_s = (unsigned)(data[20] | (data[21] << 8) | (data[22] << 16) | (data[23] << 24));
if (batt_mv >= 2000 && batt_mv <= 5500) parsed = true;
}
if (!parsed) {
@@ -68634,6 +68649,7 @@ void UITask::onServerClock(const ContactInfo& contact, uint32_t server_epoch) {
}
void UITask::onAdminLoginResult(const ContactInfo& contact, bool success, uint8_t perms) {
if (raOnLoginResult(contact, success, perms)) return; // the repeater admin app's login
// Which pending attempt, if any, is this the reply to? Disarming the watchdog
// used to be unconditional, which was harmless while it only drove a toast —
// but it means the once-a-minute background room self-heal, logging in to some
@@ -68726,6 +68742,7 @@ void UITask::onAdminCommandReply(const ContactInfo& contact, const char* text) {
// Only append if the reply is from the contact we're currently logged
// into. Replies from a different repeater would be confusing — the
// companion-serial side handles those separately via queueMessage.
if (raOnCliReply(contact, text)) return; // a "wX|" reply to the admin app
if (memcmp(contact.id.pub_key, s_admin_pub32, 32) != 0) return;
adminLogAppend("", text ? text : "");
}
@@ -79762,6 +79779,7 @@ static constexpr uint8_t PF_BASE = 4;
#define P_OPEN(root) []{ return (root) != nullptr; }
static const PopupEnt k_popup_registry[] = {
{ P_OPEN(s_chat_link_picker), []{ closeChatLinkPicker(); }, PF_COUNT }, // keyboard navigation: choose a link from the bubble
{ P_OPEN(s_ra_edit_root), []{ raCloseEditSheet(); }, PF_COUNT }, // repeater admin: edit sheet
{ P_OPEN(s_actlist_root), []{ actListClose(); }, PF_COUNT }, // action-list menu sheet
{ P_OPEN(s_hw_pick_root), []{ hwPickClose(); }, PF_COUNT }, // a Home widget's choices
{ P_OPEN(s_urlqr_root), []{ closeUrlQr(); }, PF_COUNT }, // chat URL -> QR
@@ -79846,6 +79864,7 @@ static const PopupEnt k_popup_registry[] = {
{ P_OPEN(s_los_root), []{ closeLosModal(); }, PF_COUNT },
#endif
{ P_OPEN(s_admin_root), []{ closeAdminConsole(); }, PF_COUNT },
{ P_OPEN(s_ra_root), []{ raBack(); }, PF_COUNT }, // repeater admin app (Back = one page up)
#if CAP_LUA_APPS
// The Store page (also where Settings -> Language lands, see luaStoreOpenLanguages)
// was never registered, so backspace/Esc did nothing on it and the ONLY way out was
@@ -79868,6 +79887,23 @@ static const PopupEnt k_popup_registry[] = {
};
#undef P_OPEN
// The repeater admin app is an app page, and Back reaches an app page's close hook
// before the popup ladder, so the popups that open OVER it (console, telemetry
// window) are closed here first, by the same registry rows.
static bool raOverlayAboveClose() {
struct Over { bool (*is_open)(); void (*close)(); };
static const Over k_over[] = {
{ []{ return s_admin_picker_root != nullptr; }, []{ closeAdminCmdPicker(); } },
{ []{ return s_admin_root != nullptr; }, []{ closeAdminConsole(); } },
#if CAP_SD || defined(TLORA_PAGER)
{ []{ return s_telem_config_root != nullptr; }, []{ telemetryConfigClose(); } },
{ []{ return s_telemetry_root != nullptr; }, []{ telemetryClose(); } },
#endif
};
for (const Over& o : k_over) if (o.is_open()) { o.close(); return true; }
return false;
}
static bool popupRegistryAny() {
for (const auto& e : k_popup_registry)
if ((e.flags & PF_COUNT) && e.is_open()) return true;
@@ -81470,7 +81506,109 @@ static void docAppsAudit() {
}
#endif
#if defined(DOC_ADMIN_AUDIT)
// The repeater admin app against a real node in range, as a GUEST only (a blank
// login; never a password, never a set/reboot/OTA). The tour holds the loop, so the
// mesh is pumped here while replies come in. -DDOC_ADMIN_NAME='"..."' picks the node.
#ifndef DOC_ADMIN_NAME
#define DOC_ADMIN_NAME "ALLFATHER Yagi"
#endif
static void docMeshWait(uint32_t ms, bool (*done)() = nullptr) {
const uint32_t t0 = millis();
while ((uint32_t)(millis() - t0) < ms) {
the_mesh.loop();
lv_timer_handler();
delay(5);
esp_task_wdt_reset();
if (done && done()) break;
}
}
static bool docRaIdle() { return s_ra && !s_ra->busy && s_ra->q_len == 0 && !s_ra->logging_in; }
static void docRaShotPages(const char* base) {
char nm[40];
for (int part = 1; part <= 4 && s_ra_page; ++part) {
snprintf(nm, sizeof nm, part > 1 ? "%s_%d" : "%s", base, part);
auditShot(nm);
lv_obj_update_layout(s_ra_page);
if (lv_obj_get_scroll_bottom(s_ra_page) <= 0) break;
lv_obj_scroll_by(s_ra_page, 0, -(lv_obj_get_height(s_ra_page) - 60), LV_ANIM_OFF);
}
}
static void docAdminAudit() {
ContactInfo c; bool found = false;
for (uint32_t i = 0; i < the_mesh.getNumContacts(); ++i)
if (the_mesh.getContactByIdx(i, c) && strstr(c.name, DOC_ADMIN_NAME) &&
(c.type == ADV_TYPE_REPEATER || c.type == ADV_TYPE_ROOM)) { found = true; break; }
if (!found) { Serial.printf("DBG: ADMIN no contact '%s'\n", DOC_ADMIN_NAME); return; }
Serial.printf("DBG: ADMIN node '%s' type=%u path=%d\n", c.name, (unsigned)c.type, (int)c.out_path_len);
openRepeaterAdmin(c); docSettle(12);
auditShot("admin_login");
if (s_ra->role < 0) {
if (s_ra->logging_in) docMeshWait(25000, []{ return !s_ra->logging_in; }); // (no auto-login in this build)
raLoginSubmit(true); // guest: blank password
docMeshWait(25000, []{ return s_ra->role >= 0 || !s_ra->logging_in; });
}
Serial.printf("DBG: ADMIN login role=%d\n", (int)s_ra->role);
if (s_ra->role < 0) { auditShot("admin_login_failed"); raClose(); return; }
docMeshWait(40000, docRaIdle);
const RAP::Status& st = s_ra->status;
Serial.printf("DBG: ADMIN status=%d batt=%u up=%lu noise=%d rssi=%d snr4=%d recv=%lu sent=%lu air=%lu rxair=%lu q=%u\n",
(int)s_ra->has_status, st.batt_mv, (unsigned long)st.uptime_secs, st.noise_floor, st.last_rssi, st.last_snr_q4,
(unsigned long)st.recv, (unsigned long)st.sent, (unsigned long)st.air_secs, (unsigned long)st.rx_air_secs, st.queue_len);
Serial.printf("DBG: ADMIN owner=%d fw='%s'\n", (int)s_ra->has_owner, s_ra->fw);
docSettle(8);
docRaShotPages("admin_overview");
if (!s_ra->is_room) {
raBuildView(RA_V_NEIGHBOURS); docSettle(6);
docMeshWait(40000, docRaIdle);
Serial.printf("DBG: ADMIN neighbours %d of %u\n", s_ra->nb_n, (unsigned)s_ra->nb_total);
for (int i = 0; i < s_ra->nb_n && i < 20; ++i)
Serial.printf("DBG: ADMIN nb %02X%02X%02X snr4=%d ago=%lu\n", s_ra->nb[i].prefix[0], s_ra->nb[i].prefix[1],
s_ra->nb[i].prefix[2], (int)s_ra->nb[i].snr_q4, (unsigned long)s_ra->nb[i].heard_ago);
docSettle(8);
docRaShotPages("admin_neighbours");
s_ra->nb_order = RAP::NB_STRONGEST; s_ra->nb_n = 0; s_ra->nb_total = 0; s_ra->nb_loaded = false;
raBuildView(RA_V_NEIGHBOURS); docMeshWait(40000, docRaIdle); docSettle(8);
auditShot("admin_neighbours_strongest");
}
// The admin pages' LAYOUT, with nothing read: the role is faked locally and every
// queued request is dropped before the pump runs, so not one CLI line goes out.
{
const int8_t real_role = s_ra->role;
s_ra->role = RAP::ROLE_ADMIN;
static const struct { uint8_t v; const char* n; } k_pages[] = {
{ RA_V_OVERVIEW, "admin_x_overview" }, { RA_V_IDENTITY, "admin_x_identity" }, { RA_V_RADIO, "admin_x_radio" },
{ RA_V_FORWARD, "admin_x_repeating" }, { RA_V_ADVERTS, "admin_x_adverts" }, { RA_V_ACCESS, "admin_x_access" },
{ RA_V_REGIONS, "admin_x_regions" }, { RA_V_ACTIONS, "admin_x_actions" }, { RA_V_CLIENTS, "admin_x_clients" },
};
for (const auto& pg : k_pages) {
raBuildView(pg.v);
raQueueClear();
for (int f = 0; f < RA_F_COUNT; ++f) if (s_ra->fst[f] == RA_FS_LOADING) { s_ra->fst[f] = RA_FS_UNKNOWN; raRenderField(f); }
docSettle(8);
docRaShotPages(pg.n);
if (pg.v == RA_V_FORWARD) {
raOpenEdit(RA_F_FLOODMAX); docSettle(8); auditShot("admin_x_edit_number");
raOpenEdit(RA_F_LOOP); docSettle(8); auditShot("admin_x_edit_choice");
raCloseEditSheet(); docSettle(4);
}
}
s_ra->role = real_role;
raQueueClear();
}
raBuildView(RA_V_OVERVIEW); raQueueClear(); docSettle(8);
s_ra->role = -1; // the next real open logs in afresh
raBack(); // Back from the overview closes the app
docSettle(8);
Serial.printf("DBG: ADMIN closed root=%d bar=%d\n", (int)(s_ra_root != nullptr), (int)(s_apppage_close != nullptr));
auditShot("admin_after_close");
}
#endif
static void docAuditFocus() {
#if defined(DOC_ADMIN_AUDIT)
docAdminAudit();
return;
#endif
#if defined(DOC_APPS_AUDIT) && CAP_MICROSD
docAppsAudit();
return;
+1
View File
@@ -624,6 +624,7 @@ public:
void onPingReply(const ContactInfo& contact, const uint8_t* data, size_t len) override;
void onTelemetryReply(const ContactInfo& contact, const uint8_t* data, size_t len) override;
void onRegionListReply(const ContactInfo& contact, const uint8_t* data, size_t len) override;
void onBinaryReply(const ContactInfo& contact, const uint8_t* data, size_t len) override;
void onAdminLoginResult(const ContactInfo& contact, bool success, uint8_t perms) override;
void onServerClock(const ContactInfo& contact, uint32_t server_epoch) override;
void onAdminCommandReply(const ContactInfo& contact, const char* text) override;
+15360 -13259
View File
File diff suppressed because it is too large. Load diff
+89
View File
@@ -0,0 +1,89 @@
// SPDX-License-Identifier: GPL-3.0-or-later
//
// Host test for the repeater admin app's wire parsing (RepeaterAdminProto.h):
// MeshCore 1.18 RepeaterStats / room ServerStats, GET_NEIGHBOURS, GET_ACCESS_LIST,
// owner info and the CLI reply shapes.
//
// c++ -std=c++17 -Wall -Wextra -I src test/test_repeater_admin_proto.cpp -o /tmp/rap && /tmp/rap
#include <assert.h>
#include <math.h>
#include <stdio.h>
#include <string.h>
#include "ui-touch/RepeaterAdminProto.h"
using namespace RepeaterAdminProto;
static void put16(uint8_t* p, uint16_t v) { p[0] = v & 0xFF; p[1] = v >> 8; }
static void put32(uint8_t* p, uint32_t v) { for (int i = 0; i < 4; ++i) p[i] = (v >> (8 * i)) & 0xFF; }
int main() {
// RepeaterStats, 56 bytes, as simple_repeater packs it.
uint8_t d[56] = {0};
put16(d + 0, 4012); put16(d + 2, 3); put16(d + 4, (uint16_t)-112); put16(d + 6, (uint16_t)-87);
put32(d + 8, 1000); put32(d + 12, 500); put32(d + 16, 77); put32(d + 20, 90061);
put32(d + 24, 400); put32(d + 28, 100); put32(d + 32, 800); put32(d + 36, 200);
put16(d + 40, 2); put16(d + 42, (uint16_t)(int16_t)-26); put16(d + 44, 5); put16(d + 46, 9);
put32(d + 48, 1234); put32(d + 52, 17);
Status s;
assert(parseStatus(d, sizeof d, false, s));
assert(s.batt_mv == 4012 && s.queue_len == 3 && s.noise_floor == -112 && s.last_rssi == -87);
assert(s.air_secs == 77 && s.uptime_secs == 90061); // uptime is at 20, not 16
assert(s.recv_flood == 800 && s.recv_direct == 200 && s.last_snr_q4 == -26);
assert(s.has_rx && s.rx_air_secs == 1234 && s.recv_errors == 17 && !s.has_posts);
// Room ServerStats: 52 bytes, the post counters where the repeater keeps rx airtime.
put16(d + 48, 42); put16(d + 50, 40);
assert(parseStatus(d, 52, true, s));
assert(s.has_posts && s.posted == 42 && s.post_push == 40 && !s.has_rx);
assert(!parseStatus(d, 47, false, s));
// GET_NEIGHBOURS request + reply.
uint8_t req[12];
assert(buildNeighboursReq(req, 11, 300, NB_STRONGEST, 6, 0xAABBCCDD) == 11);
assert(req[0] == 0x06 && req[1] == 0 && req[2] == 11 && req[3] == 44 && req[4] == 1 && req[5] == 2 && req[6] == 6);
uint8_t nb[4 + 2 * 11] = {0};
put16(nb, 5); put16(nb + 2, 2);
memcpy(nb + 4, "\x01\x02\x03\x04\x05\x06", 6); put32(nb + 10, 342); nb[14] = 38;
memcpy(nb + 15, "\xA1\xA2\xA3\xA4\xA5\xA6", 6); put32(nb + 21, 7); nb[25] = (uint8_t)(int8_t)-20;
Neighbour out[4]; uint16_t total = 0;
assert(parseNeighbours(nb, sizeof nb, 6, out, 4, &total) == 2 && total == 5);
assert(out[0].heard_ago == 342 && out[0].snr_q4 == 38 && out[0].prefix[5] == 6);
assert(out[1].snr_q4 == -20 && out[1].prefix[0] == 0xA1);
assert(parseNeighbours(nb, 20, 6, out, 4, &total) == 1); // a cut-off second entry is dropped
// ACL: 7-byte entries.
uint8_t acl[14] = { 1, 2, 3, 4, 5, 6, 3, 9, 9, 9, 9, 9, 9, 2 };
AclEntry ae[4];
assert(parseAcl(acl, sizeof acl, ae, 4) == 2 && aclRole(ae[0].perms) == ROLE_ADMIN && aclRole(ae[1].perms) == ROLE_READ_WRITE);
// Owner info.
char own[] = "v1.18.0 (Build: 15 Oct 2026)\nYagi\nKaj\nline two";
const char *v, *n, *o;
assert(splitOwnerInfo(own, &v, &n, &o));
assert(!strcmp(v, "v1.18.0 (Build: 15 Oct 2026)") && !strcmp(n, "Yagi") && !strcmp(o, "Kaj\nline two"));
// CLI replies.
assert(!strcmp(cliGetValue("> 869.525,250.000,11,5"), "869.525,250.000,11,5"));
assert(cliGetValue("OK") == nullptr);
assert(!strcmp(cliGetValue("> x"), "x"));
assert(cliClassify("OK - reboot to apply") == CliResult::Ok);
assert(cliNeedsReboot("OK - reboot to apply"));
assert(cliClassify("Error, invalid radio params") == CliResult::Error);
assert(cliClassify("ERROR: af must be 0-9") == CliResult::Error);
assert(cliClassify("Err - not found") == CliResult::Error);
assert(cliClassify("unknown config: foo") == CliResult::Error);
assert(cliClassify("??: foo") == CliResult::Other);
assert(cliClassify("password now: abc") == CliResult::Other);
assert(cliBool("on") == 1 && cliBool("off") == 0 && cliBool("maybe") == -1);
Radio r;
assert(parseRadio("869.525,250.000,11,5", r) && fabsf(r.freq - 869.525f) < 0.001f && r.sf == 11 && r.cr == 5);
assert(validBandwidth(r.bw) && validBandwidth(62.5f) && !validBandwidth(100.0f));
assert(!parseRadio("869.5,250,13,5", r));
char b[16];
fmtDuration(90061, b, sizeof b); assert(!strcmp(b, "1d 1h"));
fmtDuration(3725, b, sizeof b); assert(!strcmp(b, "1h 2m"));
fmtDuration(42, b, sizeof b); assert(!strcmp(b, "42s"));
printf("test_repeater_admin_proto: all assertions passed\n");
return 0;
}