Каталог Поиск 0 Сравнить 0 Закладки 0 Корзина Войти
Каталог
105082, Москва, ул. Фридриха Энгельса, 75с21, БЦ Бауманский ИТКОЛ
Пн - Пт: с 09-00 до 18-00 Сб: с 10-00 до 18-00 Вс: выходной
Страницы: 1
RSS
Эмодзи в названиях Wi-Fi!, UniFi Network
 
Мне очень нравится линейка продуктов Unifi, но так как я тоже большой фанат эмодзи в SSID, меня немного расстроило, что их не поддерживают. Однако, учитывая другие упоминания, что сам стандарт должен это поддерживать, раз уж я смог заставить это работать на всех остальных роутерах, что только находил, и зная, что хотя бы в какой-то предыдущей версии это частично работало, я решил разобраться.

Кратко: работает! Но потребуется немного усилий.

Сначала:

Добавляем эмодзи в интерфейс  
Хотя интерфейс контроллера не позволяет вводить эмодзи из-за валидации, сама конфигурация хранится в MongoDB, поэтому через SSH-туннель к MongoDB на контроллере (127.0.0.1:27117) можно напрямую изменить конфиг. Меняя имя в документах в коллекции wlanconf, после обновления в контроллере появится ваш крутой новый SSID с эмодзи. Учтите: нельзя менять настройки, не вернув имя обратно, поэтому любые изменения сети требуют временно вернуть SSID в обычный вид, сохранить остальные изменения, а потом поменять имя напрямую в MongoDB.

Если код эмодзи (проверяется, например, на emojipedia.org) ниже U+FFFF — этого достаточно. Принудительно обновите настройки WLAN на своих точках доступа — и всё будет работать.

Если же хотите использовать 🍆, 🚀 или 🤓 — у них код выше U+FFFF, и в SSID получается странный набор символов, к которому не подключиться. Значит:

Как исправить «сложные» эмодзи:  
Hex-код 🍆 — 'F0 9F 8D 86', но есть альтернативный, не UTF-совместимый вариант: 'ed a0 bc ed bd 86'. Хотя system.cfg для AP в /var/lib/unify/ap/[mac] содержит правильный бинарный код эмодзи, на самом AP стоит альтернативный шестибайтный код. Значит, что-то идёт не так при передаче. Если же «починить» system.cfg на устройстве и заново запустить все скрипты настроек, эмодзи заработают!

Идеальный вариант — чтобы Ubnt исправили эту ошибку передачи и просто убрали фильтр из интерфейса. А пока я добавил небольшой скрипт в /usr/etc/rc.d/rc, который заменяет неправильный код эмодзи на правильный. Команда сводится к такому виду:  
LC_ALL='C' sed 's/old/new/g' system.cfg > tmp.fixemoji; mv tmp.fixemoji system.cfg

Далее через hex-редактор я заменил «old» и «new» соответственно на неправильный шестибайтный код и правильный четырёхбайтный. Сейчас это выдержало несколько (тестовых) обновлений, сети работают отлично.

Надеюсь, это кому-то поможет или даст достаточно информации, чтобы Ubnt исправили это в будущих релизах.

P.S. Сделал небольшой скрипт, который берёт несколько эмодзи, проверяет, нужен ли фикс, и если да — создаёт файл с исправлением: https://gitlab.com/kazdegroot/unifi-emoji
 
Вы можете проверить, работает ли эмодзи, посмотрев кодовую точку на emojipedia; если часть после 0x состоит из четырёх символов, то всё будет работать.
 
После множества тестов... перезаписал разные SSID и скопировал отсюда ❤️ =OK☕ =OK
 
Я удалил свои SSID с эмодзи после синих экранов Windows при поиске Wi-Fi. Очень забавно было это отлаживать. Не знаю, починили ли это в MS.
 
Серьёзно? Прямо вот так, серьёзно?
 
Где эмодзи «отвратительно до тошноты», и как он выглядит на устройствах только с текстом? Фу.
 
Итак, есть гораздо проще способ сделать это, если ваш Unicode-символ более старой версии, как выяснил kazdegroot. Вместо того чтобы напрямую менять базу данных или вручную обновлять настройки на каждом UAP, можно просто добавить символ через приложение UniFi. Я проверял это на iOS, и хотя флаг страны в SSID использовать не получилось (получалось кракозябра), кофе-эмодзи ☕ сработал без проблем. Лучше всего тестировать это, если у вас есть другой SSID для подключения — тогда можно менять и пробовать разные эмодзи, пока не найдёте тот, который нравится и работает без лишних заморочек. Очень жду полноценной поддержки Unicode!
 
Запрос на функцию находится по ссылке: https://community.ui.com/feature-requests/787333af-a0b0-4aee-81d8-eda8994786ae
 
Определённо тоже ищу именно это. 😭
 
Я думаю так же, но... выглядит классно! Смеюсь в голос!
 
Честно говоря, это слишком большая работа для того, что в основном просто украшение, но особенно учитывая, что исправления делают на самом деле, кажется, что это заняло бы совсем немного времени, если бы был доступ к самому коду provision. Было бы здорово, если бы кто-то из UBNT мог этим заняться.
 
Я искал это пару недель назад. Попробую и потом дам тебе обратную связь.
 
Привет! Я нашёл руководство от kazdegroot полезным, но немного устаревшим, поэтому сделал быстрый и простой туториал. Теперь можно вставлять эмодзи через Unifi Controller, но при передаче из mongodb на каждую точку доступа (AP) возникают проблемы во время конфигурации.

В следующих шагах мы настроим вторую Wi-Fi сеть, скачиваем конфигурационный файл каждой AP, вручную заменим SSID на эмодзи и загрузим изменённый файл обратно на точки доступа.

Мой Unifi Controller работает на Debian (raspberrypi). Тестировал на сборке: atag_5.3.11_8935

- Создайте вторую Wi-Fi сеть в настройках контроллера с названием «TEST123»  
- Подключитесь по SSH к Linux-машине в той же подсети (у меня это Unifi Controller)  
- Оттуда скачайте конфиг каждой Unifi AP:  
```scp admin@192.168.100.115:/tmp/system.cfg system.cfg```

- Отредактируйте файл system.cfg в любом удобном редакторе. Я лично использовал Notepad++ на Windows. Найдите строку «TEST123» и замените её на эмодзи (можно скопировать с http://getemoji.com/). Финальный результат будет выглядеть примерно так:

- Загрузите изменённый конфиг обратно на Unifi AP:  
```scp system.cfg admin@192.168.100.115:/tmp/system.cfg```

- Подключитесь по SSH к Unifi AP и сохраните конфигурацию во флеш с помощью команды «save»:  
```ssh admin@192.168.100.115```

```  
BZ.v3.7.37# save  
Found Active on[1] ...
Found Backup1 on[2] ...
Storing Active[2] ... [%100]
Active->Backup[1] ... [%100]
```

- Перезагрузите Unifi AP через веб-интерфейс контроллера

Готово!
Страницы: 1
Читают тему (гостей: 1)