Zastąp /dev/ttyUSB z IMEI/IMSI za pomocą „dongle discovery”

Zastąp /dev/ttyUSB z IMEI/IMSI za pomocą „dongle discovery”

Jeżeli natknąłeś się w Asterisku na problem z określeniem, który modem korzysta z którego portu, to na pewno przyda Ci się polecenie dongle discovery, aby uzyskać informacje o IMEI/IMSI podłączanego sprzętu. Wpisanie tych informacji do pliku dongle.conf na pewno ułatwi życie.

Upewnij się czy Twój modem jest kompatybilny z chan_dongle. Lista modemów znajduje się poniżej:

https://github.com/bg111/asterisk-chan-dongle/wiki/Requirements-and-Limitations

Spis treści

1) Wymagania wstępne

Wydaje się oczywiste, że żeby móc w Asterisku skorzystać z polecenia „dongle discovery”, najpierw musisz posiadać zainstalowany moduł chan_dongle. Jeśli korzystasz z systemu RasPBX i zainstalowałeś obsługę modemów USB za pomocą polecenie install-dongle, system powinien automatycznie wygenerować plik dongle.conf, w którym dokonamy naszej konfiguracji.

Jeśli próbowałeś(aś) kiedyś dodać do chan_dongle więcej niż jedno urządzenie to wiesz, że sprawa może się nieco skomplikować. Dla przykładu, jeśli posiadasz tylko jeden modem to polecenie „ls -l /dev/ttyUSB*” da nam jasny obraz sytuacji i bardzo prosto będziemy mogli dodać porty „audio” i „data” w pliku dongle.conf.

				
					ls -l /dev/ttyUSB*
				
			

Jeśli jednak posiadasz więcej modemów i co gorsza zdarza się je wypinać i ponownie podłączać do portów USB, to określenie który modem korzysta z którego portu już nie jest takie jednoznaczne.

Co gorsza zmiana kolejności podłączenia sprawi, że nasze urządzenia będą miały inne porty ttyUSB niż wstępnie zdefiniowaliśmy. W takim przypadku zalecamy połączenie z wykorzystaniem numerów IMEI oraz IMSI zamiast portów „audio” i „data”. Żeby określić te dane możemy użyć polecenia dongle discovery.

Warto pamiętać, że najlepiej wybrać jedno z dwóch rozwiązań: albo para zmiennych audio+data albo imei+imsi.

2) „dongle discovery”

Po podłączeniu naszych modemów USB możemy zalogować sie do konsoli Asteriska (asterisk -r), a następnie wykonac polecenie:

				
					dongle discovery
				
			

Polecenie powinno wyświetlić wykryte urządzenia, a wynik możemy od razu wkleić do naszego pliku dongle.conf.

Alternatywnie, możemy wynik od razu wrzucić do pliku konfiguracyjnego za pomocą polecenia:

				
					asterisk -rx 'dongle discovery' >> /etc/asterisk/dongle.conf
				
			

Jak widać, polecenie generuje wpisy w następującym formacie:

  • ; discovered device – zakomentowana informacja, że urządzenie wykryto za pomocą dongle discovery
  • [dc_1234_5678] – nazwa urządzenia, gdzie 124 to ostatnie 4 cyfry IMEI, a 5678 to ostatnie 4 cyfry IMSI
  • ;audio=/dev/ttyUSB1 – wykryty port audio (zakomentowany)
  • ;data=/dev/ttyUSB2 – wykryty port data (zakomentowany)
  • imei=123456789012345 – wykryty 15-cyfrowy numer IMEI
  • imsi=123456789012345 – wykryty 15-cyfrowy numer IMSI

Następnie w konsoli Asteriska (asterisk -r) przeładuj moduł chan_dongle, żeby móc w pełni zacząć korzystać z nowych urządzeń. Informacje o urządzeniach powinny pojawić się konsoli.

				
					dongle reload now
dongle show devices
				
			

Oczywiście możesz zmienić nazwy urządzeń z formatu [dc_1234_5678] do np. [dongle0]. To już jest kwestia osobistych preferencji.

Z drugiej strony, jeśli korzystasz z systemów z graficznym interfejsem (np. FreePBX lub Issabel), podgląd numerów seryjnych urządzenia, które wykonywało połączenie, też ma swoje plusy.

Podpowiedź
Instrukcję zawierającą opis jak skonfigurować Niestandarowego Trunka, na potrzeby wykonywania połączeń za pomocą chan_dongle, znajdziesz w poniższym artykule.

Masz pytania lub potrzebujesz oferty?

Skontaktuj się z naszym doradcą.

Popularne wpisy

Powiązane posty