Как из терминала определить наличие двух симок и их параметы? Например имя оператора и ID сим.
mmcli -m 0 выводит для текущей, не хотелось бы переключаться на другую сим только ради получения информации о симке. Это же приведет к подключению к другой сети?
Модем не может одновременно работать с двумя картами. Собственно у модема такой функции вообще нет, это внешний по отношению к нему мультиплексор переключает линии данных к разъемам карт. Так что переключение на вторую для получения каких-то параметров обязательно, без этого работа с другой sim невозможна.
А разве недостаточно получить параметры один раз?
Я понимаю, что контроллер стоит неподвижно, но может же быть технический сбой у оператора и уровень сети может упасть, тогда выгоднее переключаться на другую сим?
Возник еще вопрос по ходу дела.
Можно ли помимо встроенного механизма переключения сим, переключать вручную, ориентируясь на информацию о типе сети и уровне сигнала?
Например, выбирать предпочтение LTE? Не сломает ли это встроенный механизм работы с сим и выбора сети?
К сожалению, сейчас нет механизма выбора симкарты по уровню сигнала и т.п. В вашем варианте настроек выбирается первая попавшаяся, которая сможет зарегистрироваться и получить доступ в интернет. Если более приоритетные соединения не имеют выхода в интернет, ручное переключение карт может конфликтовать с логикой нашего сервиса. В этом случае вам надо остановить wb-connection-manager, переключить карту, активировать соединение и снова запустить wb-connection-manager. Если доступ в интернет будет, то наш сервис не переключит карту. Решение не очень элегантное.
Изначально стоит задача отправлять на сервер информацию о SIM картах (imei, оператор и качество сигнала).
Было бы неплохо, если бы софт WB кешировал эту информацию где-то в топиках.
Если правильно понимаю, сейчас можно получить все данные, но только по одной симке через mmcli -m wbc. При этом вмешиваться в wb-connection-manager просто чтобы определить imei второй выглядит костильно, а ждать когда симка переключится можно вечно.
Андрей уже писал выше. У нас стоит мультиплексор, и в каждый момент времени физически работает только одна симка. Чтобы проверить, что во втором слоте, надо отключить текущую симку, переключить мультиплексор и активировать вторую. В этот момент, соединение через первую симку будет разорвано. Если надо периодически отправлять информацию об обеих симках, вероятно, лучше сделать свой сервис вместо нашего wb-connection-manager.
Нет, периодически отправлять не надо. Речь о том, чтобы на старте контроллера (сервиса) проверить обе сим и закешировать их ID, оператора и уровень сигнала.
Можно даже без уровня сигнала.
Всё же это лучше через wb-rules сделать. При старте отключить wb-connection-manager, попереключать симки, запомнить всё в виртуальном устройстве и снова включить wb-connection-manager.