Opened 8 years ago

Closed 7 years ago

#223 closed улучшение (fixed)

TDM маппер -> Групповые каналы. Улучшение интерфейса работы с групповыми каналами

Reported by: san Owned by: alx
Priority: высокий Milestone: 1 очередь
Component: web-интерфейс (sw) Keywords:
Cc: andrei

Description (last modified by san)

Предложение от Вани:
В таблице коммутации на вкладке "Групповые каналы" нужен механизм быстрого "удаления"/очищения каналов.
Под удалением/очищением группового канала понимается перевод всех его слагаемых в режим <ничего>.
Сейчас чтобы очистить один из каналов, нужно вручную по очереди перевести все слагаемые в режим <ничего>

Предлагаются варианты:

  1. Кнопка "Очистить все групповые каналы"
  2. Кнопка "Очистить" в строке каждого канала
  3. И то и другое

Attachments (2)

1.png (25.2 KB ) - added by san 8 years ago.
2.jpg (11.9 KB ) - added by alx 8 years ago.

Download all attachments as: .zip

Change History (34)

in reply to:  description comment:1 by alx, 8 years ago

В чем смысл такого "удаления"/очищения? Лично я никакого смысла в этом не вижу...

comment:2 by san, 8 years ago

Ну скажем было у меня 5 групповых каналов, а теперь мне их не надо, а нужно 2 и с другими слагаемыми. Конечно можно оставить оставшиеся 3 канала, но тогда они будут "мусором". И портить восприятие картины коммутации.

Ваня несколько последних выездов занимался коммутацией/перекоммутацией групповых каналов и ему показалось неудобным отсутствие возможности очистить канал. Я согласен, что такая возможность не будет лишней, из предложенного вариант 2 мне кажется наиболее логичным и достаточным.

in reply to:  2 ; comment:3 by alx, 8 years ago

Replying to san:

Ну скажем было у меня 5 групповых каналов, а теперь мне их не надо,

Логика подсказывает, что если какой-то групповой канал не нужен, то он не используется в таблице коммутации (TDM-маппере) в качестве источника сигнала. А если групповой канал не используется, то совершенно безразлично, как сконфигурированы его слагаемые...

а нужно 2 и с другими слагаемыми.

Вот эти 2 и надо настроить в соответствии с потребностью. Опять же, логика подсказывает, что если есть потребность в групповом канале, значит требуется суммирование, и, следовательно, в требуемом канале никогда не будут все слагаемые выключены - обязательно будет два или больше слагаемых включено. Трудно представить, как описанная функция поможет в настройке такого канала. Разве что если в нем включены все семь слагаемых, а нам надо только два - тогда выключить все и включить два будет несколько проще чем выключать пять ненужных...

Но, с другой стороны, выключение всех слагаемых - очень частный, узко-специфический случай, как в приведенном мной выше примере. Если уж мы зададимся целью упростить конфигурирование группового канала, то, наверное, можно придумать кучу куда более эффективных и удобных методов. Например (что сходу пришло в голову) - вводить конфигурацию в строке ввода в форме "A1:4+1:5+12:30+12:31" или "L15:7+15:8". Думаю, пояснение смысла этих строк не требуется...

Конечно можно оставить оставшиеся 3 канала, но тогда они будут "мусором". И портить восприятие картины коммутации.

Иными словами, "неаккуратненько как-то"? :) Мне кажется, что только ради этого что-либо менять не имеет смысла. Слишком уж малозначительное будет улучшение. Гора родит мышь...

Ваня несколько последних выездов занимался коммутацией/перекоммутацией групповых каналов и ему показалось неудобным отсутствие возможности очистить канал. Я согласен, что такая возможность не будет лишней, из предложенного вариант 2 мне кажется наиболее логичным и достаточным.

См. выше - достаточным для чего? Как раз в перекоммутации это бы ему мало помогло. Что ему помогло бы с перекоммутацией (переконфигурацией), так это изменение именно способа конфигурирования канала, который в результате будет использоваться в работе аппаратуры - например (второе что сходу пришло мне в голову, первое - см. выше) создание группового канала путем перетаскиванием мышью ячеек из TDM-маппера, чтобы не надо было вообще переключаться на вкладку "групповые каналы"... Я предлагаю подумать в этом, более продуктивном направлении...

comment:4 by san, 8 years ago

Иными словами, "неаккуратненько как-то"

В общем да, суть такая. Тот же Ваня, конфигурируя аппаратуру для заказчика, не может позволить себе оставить мусор в таблице.

Но думаю ты прав, настраивать групповые каналы сейчас неудобно, и добавлять костыли в этот интерфейс неразумно и стоит смотреть шире.

1.

вводить конфигурацию в строке ввода в форме "A1:4+1:5+12:30+12:31" или "L15:7+15:8".

Подобные элементы интерфейса, обычно критикуют (МВтел, директор). Объяснение что-то типа: нужно знать синтаксис выражения -> интерфейс сложнее и неинтуитивнее.

2.

создание группового канала путем перетаскиванием мышью ячеек из TDM-маппера, чтобы не надо было вообще переключаться на вкладку "групповые каналы"

Это просто Ванина мечта. И мне нравится.

Вот, первое что придумалось:

Создать строку с ячейками соответствующими настроенным групповым каналам, перетаскивая канал таблицы в ячейку группового, он, после диалога подтверждения, добавляется в групповой. Но тут нужен будет интерфейс, изменения/удаления слагаемых... По клику на ячейку группового канала должно открываться окно его настройки.

by san, 8 years ago

Attachment: 1.png added

comment:5 by san, 8 years ago

Description: modified (diff)
Summary: TDM маппер -> Групповые каналы. Удаление/очищение каналовTDM маппер -> Групповые каналы. Улучшение интерфейса работы с групповыми каналами

by alx, 8 years ago

Attachment: 2.jpg added

in reply to:  4 comment:6 by alx, 8 years ago

Replying to san:

1.

вводить конфигурацию в строке ввода в форме "A1:4+1:5+12:30+12:31" или "L15:7+15:8".

Подобные элементы интерфейса, обычно критикуют (МВтел, директор). Объяснение что-то типа: нужно знать синтаксис выражения

ИМХО ерунда. Синтаксис выражения a+b+c+d каждый знает со школы (если досидел хотя бы до 4 класса). :)
Буквы "A" и "L" из этого выражения можно убрать, и всегда считать суммирование арифметическим. Логическое суммирование - это экзотика и, если оно требуется, можно изменить режим суммирования позже.

-> интерфейс сложнее и неинтуитивнее.

А это субъективно. Так ведь этот интерфейс не заменит существующий сейчас, а дополнит его! Текущий интерфейс никто убирать не предлагает. Таким образом, кому такой интерфейс сложнее, может им просто не пользоваться, а продолжать использовать старый. Кому кажется проще - тот может использовать. У пользователя появляется выбор. Таким образом, хуже от наличия такого интерфейса точно не станет, и я не вижу предмета для критики.

2.

создание группового канала путем перетаскиванием мышью ячеек из TDM-маппера, чтобы не надо было вообще переключаться на вкладку "групповые каналы"

Это просто Ванина мечта. И мне нравится.

Вот, первое что придумалось:

В-общем, да, в нулевом приближении - это именно то, что я предложил. Ты понял меня правильно. Здесь уже можно додумывать детали...

По поводу деталей (раз уж начали). Специальную строку на странице я бы создавать не хотел, так как таблица большая, вся на экран не помещается, таскать каналы из конца в конец страницы неудобно. Мне видился примерно такой сценарий:

  • "захватили" ячейку таблицы (нажали левую кнопку мыши);
  • нажали "G" - рядом с курсором поверх таблицы появилась панелька группового канала с 7-ю (изначально пустыми) клеточками.
  • Перетаскиваем и "бросаем" канал на одну из этих клеточек. Клеточка "запоминает" канал.
  • Повторяем нужное число раз (перетаскиваем другие каналы на другие клеточки):


То есть эта панелька является этаким "виртуальным" групповым каналом. В той же панельке рядом с этими 7-ю клеточками (над ними) должны быть элементы выбора номера группового канала: select'ом, из последних редактированных или автоматически поиском первого свободного. Здесь же можно добавить "удалить/очистить" и тому подобные вспомогательные кнопки...

comment:7 by san, 8 years ago

нажали "G"

Использование своих хоткеев на странице, мне интуитивно не нравится. Интуитивно потому что не могу объяснить пока чем конкретно не нравится.

По поводу деталей

Обдумывая детали, мне всё меньше нравится этот вариант :)
Новые графические интерфейсы, новая механика...
Слишком большие усилия для реализации не так уж часто используемой функции.

ИМХО ерунда

Ну а ихнему имхе не нравится

этот интерфейс не заменит существующий сейчас, а дополнит его

А я думал ты замену предлагаешь. Как дополнение думаю возражений не будет.
Может быть, попробуем обсудить этот вариант, как дополнение к существующей таблице.
Допустим при клике в ячейку столбца "Номер канала", появится диалог с строкой ввода в форме "A1:4+1:5+12:30+12:31" или "L15:7+15:8". И для "удаления" канала Ване нужно будет удалить содержимое строки ввода.

Last edited 8 years ago by san (previous) (diff)

comment:8 by san, 7 years ago

Cc: andrei added

comment:9 by san, 7 years ago

Добавил Андрея

in reply to:  3 comment:10 by san, 7 years ago

Milestone: 2 очередь1 очередь
Priority: среднийвысокий

Алексей, а можешь реализовать упрощеный вариант улучшения ?

Если уж мы зададимся целью упростить конфигурирование группового канала, то, наверное, можно придумать кучу куда более эффективных и удобных методов. Например (что сходу пришло в голову) - вводить конфигурацию в строке ввода в форме "A1:4+1:5+12:30+12:31" или "L15:7+15:8". Думаю, пояснение смысла этих строк не требуется...

Групповых каналов в проектах всё больше и больше (благодаря Толе и его резервированию), теперь срочно требуется хоть что-то упрощающее их настройку, а на полноценную реализацию точнее на её обсуждение уйдёт, похоже ещё куча времени.

comment:11 by alx, 7 years ago

Черновой вариант реализован в "Нижнем самурае". Краткое описание:

  • Когда на экране отображается таблица коммутации, нажатие g показывает/скрывает панель групповых каналов. Панель "приклеена" к левой верхней части окна.
  • Можно выбрать групповой канал с помощью select'а.
  • Нажатие "Новый" в панели групповых каналов выбирает первый неиспользуемый канал. Заодно он очищается.
  • Можно перетаскивать каналы из таблицы коммутации в ячейки слагаемых выбранного группового канала. Можно перетаскивать группу каналов.
  • При добавлении/изменении любого слагаемого групповой канал появляется в панели "Недавние". Из этой панели групповые каналы можно перетаскивать в таблицу коммутации.

Предлагаю потыкать палочкой и высказать замечания/предложения по концепции в целом. Имя пользователя tester, пароль tester.

Last edited 7 years ago by alx (previous) (diff)

comment:12 by andrei, 7 years ago

А не удобнее приклеить к правой верхней части экрана, чтобы она не закрывала элементы интерфейса?
Группа каналов это выделенные с Shift? Тогда не работает функция.
При выборе группового канала из списка не показываются слагаемые, неудобно если хочется дополнить.

comment:13 by san, 7 years ago

Потыкал
предложения:

  1. Добавить в окно кнопку закрытия окна групповых каналов(хотя бы для тех кто случайно нажал G)
  2. Тыком в первую ячейку менять тип суммирования A/L
  3. Тыком в одну из ячеек недавних каналов открывать этот канал в панели
  4. Перетаскивать текущий открытый канал в таблицу(например взявшись прямо за элемент выпадающий список)
  5. добавить в маппер кнопку вызова панели(туда где все кнопки)

in reply to:  12 comment:14 by alx, 7 years ago

Replying to andrei:

А не удобнее приклеить к правой верхней части экрана, чтобы она не закрывала элементы интерфейса?

Нет, не удобнее. Во-первых, я не вижу логической связи между расположением панели и закрыванием/незакрыванием ей элементов интерфейса. Панель располагается сверху, "над" традиционными элементами интерфейса, поэтому она их и закрывает. Если расположить ее слева - будет закрывать элементы интерфейса слева. Если расположить справа - будет закрывать элементы интерфейса справа...

Во-вторых, если панель закрывает какие-то нужные интерфейсы - нажми g - панель пропадет и не будет ничего закрывать. Поэтому никакой проблемы не вижу...

В-третьих, я пока хотел бы услышать более "концептуальные" пожелания, касающиеся функционирования панели в целом. Детали оформления (расположение и размер панели, цвет кнопок, размер слова "Новый" и т.п.) можно обсудить и потом, когда и если примем решение, что сам функционал в принципе нас устраивает.

При выборе группового канала из списка не показываются слагаемые, неудобно если хочется дополнить.

У меня показываются...

Replying to andrei:

Добавить в окно кнопку закрытия окна групповых каналов(хотя бы для тех кто случайно нажал G)

Не возражаю. Хотя ничто не мешает в случае случайного нажатия g нажать g еще раз, уже специально...

Тыком в первую ячейку менять тип суммирования A/L

ИМХО лучше сделать отдельный значок для этого.

Тыком в одну из ячеек недавних каналов открывать этот канал в панели

Согласен. Так вообще-то и было задумано.

Перетаскивать текущий открытый канал в таблицу(например взявшись прямо за элемент выпадающий список)

Думаю, это будет неудобно, так как при клике выпадающего списка он выпадает... :)

добавить в маппер кнопку вызова панели(туда где все кнопки)

Не возражаю.

comment:15 by san, 7 years ago

Добавить в окно кнопку закрытия окна групповых каналов(хотя бы для тех кто случайно нажал G)

Не возражаю. Хотя ничто не мешает в случае случайного нажатия g нажать g еще раз, уже специально...

Для этого, как минимум, надо знать, что g открывает/закрывает этот диалог. Некоторые пользователи вообще не пользуются групповыми каналами, зачем им это знать...

Перетаскивать текущий открытый канал в таблицу(например взявшись прямо за элемент выпадающий список)

Думаю, это будет неудобно, так как при клике выпадающего списка он выпадает... :)

Ну тогда дублировать где-то в панели значок выбранного группового канала, или в "Недавние" заносить при выборе из выпадающего списка. А то получается открыл канал, а перетащить в маппер его не можешь, пока он не попадёт в недавние.

in reply to:  15 comment:16 by alx, 7 years ago

Replying to san:

ничто не мешает в случае случайного нажатия g нажать g еще раз, уже специально...

Для этого, как минимум, надо знать, что g открывает/закрывает этот диалог. Некоторые пользователи вообще не пользуются групповыми каналами, зачем им это знать...

Разумный аргумент. Согласен.

Думаю, это будет неудобно, так как при клике выпадающего списка он выпадает... :)

Ну тогда дублировать где-то в панели значок выбранного группового канала, или в "Недавние" заносить при выборе из выпадающего списка. А то получается открыл канал, а перетащить в маппер его не можешь, пока он не попадёт в недавние.

Так ведь он попадает в "Недавние", как только в него добавляется хотя бы одно слагаемое! Вот типичный сценарий действий пользователя, который мне видится:

  • открыли панель нажатием g;
  • нажали "Новый канал" (в этот момент он уже появился в "Недавних"!) или выбрали существующий из списка;
  • добавили нужные слагаемые (по одному или группой), в этот момент выбранный канал уже точно есть в "Недавних"!);
  • перетащили канал из "Недавних" в таблицу маппера.

Сценарий же, в котором выбирают групповой канал и, не делая в нем никаких модификаций, добавляют его в таблицу коммутации, мне кажется довольно редким и экзотическим. При необхоидмости просто добавить существующий групповой канал в маппер это можно сделать как сейчас, "по-старинке", открыв и заполнив форму канала...

В варианте помещать канал в "Недавние" по факту его выбора я вижу тот недостаток, что простое перемещение по списку каналов полностью "вытрет" из списка недавних те каналы, с которыми действительно что-то делали, а не просто мимо проходили...

Как вам вариант заносить канал в "Недавние", если он был выбран не менее 10 секунд?

comment:17 by san, 7 years ago

Сценарий же, в котором выбирают групповой канал и, не делая в нем никаких модификаций, добавляют его в таблицу коммутации, мне кажется довольно редким и экзотическим. При необхоидмости просто добавить существующий групповой канал в маппер это можно сделать как сейчас, "по-старинке", открыв и заполнив форму канала...

Согласен что сценарий достаточно редкий, но всё-же мне кажется отсутствие возможности кинуть выбранный канал в маппер некоторым недостатком интерфейса. Давай спросим что думает Андрей.

Как вам вариант заносить канал в "Недавние", если он был выбран не менее 10 секунд?

Мне кажется это "ни то ни сё" :)

Ещё вспомнил: предлагаю предусмотреть отображение/редактирование комментария для группового канала в новом интерфейсе.

in reply to:  17 comment:18 by alx, 7 years ago

Replying to san:

предлагаю предусмотреть отображение/редактирование комментария для группового канала в новом интерфейсе.

Поддерживаю.

in reply to:  17 comment:19 by andrei, 7 years ago

Replying to san:

Давай спросим что думает Андрей.

Я "за" возможность утащить пустой групповой в маппер. Вроде об этом диспут.
Добавлять канал в недавние по времени слишком субъективно, не договоримся о секундах.

comment:20 by san, 7 years ago

Я "за" возможность утащить пустой групповой в маппер

Про пустой никто не говорил, речь о канале который был выбран из выпадающего списка, но не был редактирован, поэтому не попал в "недавние".
Мой редкий сценарий такой: Допустим я хочу прослушать групповой канал диспетчерской, на предмет шумов например. Нажимаю g в выпадающем списке выбираю нужный г.канал(если там будут комментарии будет легко его найти) и тащу его в ячейку прослушивания.

Тыком в первую ячейку менять тип суммирования A/L

ИМХО лучше сделать отдельный значок для этого.

Согласен.

in reply to:  20 comment:21 by andrei, 7 years ago

Про пустой никто не говорил, речь о канале который был выбран из выпадающего списка, но не был редактирован, поэтому не попал в "недавние".

Вообще тогда у меня никаких сомнений не осталось.
Кстати, не нашел где это реализовано, чтобы потыкать. В самурае g не вызывает окно.

comment:22 by san, 7 years ago

При переносе выделенной группы каналов в панель они всегда приземляются начиная с первого канала панели, выглядит это немного не интуитивно, т.к. когда перетаскиваешь группу каналов в маппере каналы приземляются начиная с той ячейки в которую перенёс.

in reply to:  22 comment:23 by alx, 7 years ago

Replying to san:

При переносе выделенной группы каналов в панель они всегда приземляются начиная с первого канала панели, выглядит это немного не интуитивно,

Идея в том, что новая группа каналов заменяет старую. Можно размещать новую группу начиная с ячейки под курсором, но тогда:

  • что делать, если перетаскиваем три канала, и бросили их на последнюю ячейку?
  • признак типа суммирования (арифметическое или логическое) присутствует только в первом слагаемом и, следовательно, первая ячейка должна быть занята. Об этом всегда придется думать, бросая группу каналов. Поэтому бросать все равно придется именно в первую ячейку.
  • в групповом канале уже есть слагаемые 1, 2, 3. Бросили новую группу слагаемых в ячейки 4,5,6. При этом ячейки 1, 2 и 3 очистились. Эта очистка обпять же будет выглядеть как-то "не интуитивно". :)
Version 1, edited 7 years ago by alx (previous) (next) (diff)

comment:24 by san, 7 years ago

Предлагаю просто подсвечивать зону приземления, как в маппере, сам алгоритм переноса не менять.

comment:25 by alx, 7 years ago

Сделано:

  • кнопка "Закрыть панель" в правом верхнем углу;
  • выбор группового канала добавляем его в "Недавние";
  • режим суммирования отображается символом 'L' или 'A';
  • клик на символе режима суммирования меняет режим;
  • клик ячейки недавних каналов выбирает соответствующий канал;
  • добавлена кнопка "Показать/скрыть панель групповых каналов" рядом с остальными кнопками.

Что еще осталось?

Replying to san:

предлагаю предусмотреть отображение/редактирование комментария для группового канала в новом интерфейсе

??? У нас групповые каналы вроде бы не имеют никаких комментариев, только индивидуальные...

comment:26 by alx, 7 years ago

  • При наведении курсора на слагаемые группового канала в панели групповых каналов при перетаскивании группы каналов выделяются ячейки, в которые будут "приземляться" слагаемые каналы. Уффф! :)

comment:27 by andrei, 7 years ago

А как подсветятся непоместившиеся каналы?
Появится уведомление по аналогии с перетаскиванием каналов в маппере?

Last edited 7 years ago by andrei (previous) (diff)

in reply to:  27 comment:28 by alx, 7 years ago

Replying to andrei:

А как подсветятся непоместившиеся каналы?

Никак не подсветятся.

in reply to:  27 comment:29 by alx, 7 years ago

Replying to andrei:

Появится уведомление по аналогии с перетаскиванием каналов в маппере?

Появится.

Last edited 7 years ago by alx (previous) (diff)

comment:30 by san, 7 years ago

У нас групповые каналы вроде бы не имеют никаких комментариев, только индивидуальные...

В старом интерфейсе не было комментов, но пожелания такие были, создал тикет #314
Я предлагал "предусмотреть" место для комментария, чтобы потом не впихивать его мучительно.

comment:31 by alx, 7 years ago

Ну раз больше комментариев нет, я сейчас закоммичу текущий вариант. Будем считать это экспериментальной фичей.

comment:32 by alx, 7 years ago

Resolution: fixed
Status: newclosed

In 1655/sw:

В веб-интерфейсе реализована панель групповых каналов,
упрощающая конфигурацию функции суммирования каналов.
Closes #223.

Note: See TracTickets for help on using tickets.