www.label.pl | LAB-EL Elektronika Laboratoryjna
Elektronika Laboratoryjna

Strona pochodzi z pomocy programu LBX do nadzoru klimatu - temperatury, wilgotności, co2, wiatru, ...
Producent urządzeń (termometry, higrometry, barometry, mierniki, rejestratory) oraz oprogramowania do monitoringu parametrów klimatu.

Do pobrania: Program LBX

LBX - wyjście alarmowe - telefon

Program lbx jako jednym z wyjść alarmowych może posłużyć się modemem zainstalowanym w komputerze w celu zadzwonienia na zadany numer i odtworzenia komunikatu powiadamiającego o wystąpieniu sytuacji alarmowej. Do tego celu wymagany jest modem typu voice, który potrafi na drodze programowej odtwarzać dźwięk. Możliwe jest również użycie modemu bez funkcji voice, w takim wypadku program lbx potrafi wyłącznie wykonać połączenie telefoniczne bez odtworzenia komunikatu powiadomienia. Pomimo braku komunikatu takie powiadomienie może być użyteczne, np. w przypadku identyfikacji numeru dzwoniącego - daje to sygnał o tym że wystąpiła sytuacja alarmowa, nawet bez potrzeby odbierania takiego połączenia.

Właściwa instalacja modemu w systemie windows

Program lbx żeby móc skorzystać z możliwości odtworzenia komunikatu przez modem musi mieć możliwość dostępu do wyjścia audio modemu. W tym celu takie wyjście audio musi być w ogóle zarejestrowane w systemie, co się dzieje na etapie instalacji modemu. Istnieje możliwość instalacji modemu która pominie niektóre cechy modemu, jak właśnie wejście/wyjście audio (voice) - w przypadku np. rozpoznania modemu przez sam system windows i instalacji sterowników z windows. W takim wypadku należy pomimo działania modemu zainstalować właściwe sterowniki od producenta aby uzyskać dostęp do wszystkich funkcji modemu.
Obecność zarejestrowanego wyjścia voice modemu można stwierdzić np. w panelu właściwości dźwięku (start - ustawienia - panel sterowania - dźwięki i urządzenia audio - zakładka audio): na liście dostępnych urządzeń oprócz właściwej karty dźwiękowej komputera powinno pojawić się wyjście odpowiadające wyjściu voice modemu.

Wykrycie wyjścia voice modemu w programie lbx

Skojarzenie wyjścia audio (voice) modemu z samym modemem nie jest oczywiste - są one widziane w systemie jako dwa niezależne urządzenia. Program lbx próbuje sam skojarzyć wyjście voice z modemem - w pierwszej kolejności sprawdzając cechy modemu zarejestrowane w systemie (ale to nie jest pewna metoda ze względów pozostających w gestii producenta systemu windows albo drivera od modemu), zaś w drugiej kolejności wybierając pierwsze wyjście modemowe typu wave out. Obydwie metody powinny dać odpowiednią skuteczność detekcji wyjścia voice, ale jest możliwość pomyłki - w takim wypadku należy na chwilę obecną ratunkowo dopisać do pliku konfiguracyjnego serwera w sekcji /alarm/out odpowiadającej danemu wyjściu alarmowemu linię postaci:

wave_out "nazwa wyjścia"
Nazwa wyjścia to taka nazwa jak wyświetlana jest na liście wyjść audio w panelu właściwości audio.

Detekcja stanu połączenia

Ze względu na brak sygnalizacji stanu połączenia w typowych liniach telefonicznych w sposób detekowalny dla modemu, program niestety nie ma świadomości momentu w którym odbierający telefon rzeczywiście to połączenie odbiera, oraz podobnie przy rozłączaniu połączenia - nie ma sygnalizacji rozłączenia połączenia przez odbierającego. Połączenia modemowe dla transmisji danych np. nie mają tego problemu, gdyż polegają one na obecności odpowiedniej nośnej na linii, której pojawienie się i zanik są wystarczającą sygnalizacją. W przypadku połączeń głosowych nie ma takich możliwości. Niektóre systemy telefonii zapewniają taką sygnalizację (jak np. ISDN), ale na okoliczność zwykłej analogowej telefonii program ma dodatkowe ustawienia:

  • Brak poprawnej detekcji stanu połączenia - włączając tą opcję aktywujemy możliwość ustawienia dwóch czasów które próbują zapewnić możliwość odtworzenia powiadomienia w taki sposób aby pozwolić odbiorcy odsłuchać komunikat. Wyłączając tą opcję polegamy na właściwej sygnalizacji w połączeniu telefonicznym.
  • Opóźnienie przed rozpoczęciem odtwarzania komunikatu - czas jaki program ma odczekać od momentu wykonania połączenia do rozpoczęcia odtwarzania komunikatu. Czas ten powinien zostać dobrany eksperymentalnie, na wartość nie mniejszą niż tyle co potrzeba od momentu wybrania numeru do sygnalizacji połączenia u odbiorcy, krótszy czas spowoduje rozpoczęcie odtwarzania powiadomienia zanim odbiorca będzie w ogóle powiadomiony o połączeniu, co jest niewłaściwe. Ten czas może być natomiast dłuższy, biorąc pod uwagę przewidywany czas który może minąć od zasygnalizowania połączenia do jego odebrania. Zwiększanie tego opóźnienia spowoduje jedynie w przypadku szybszego odebrania połączenia chwilę ciszy, którą należy przeczekać - to wymaga świadomości stanu rzeczy u odbierającego.
  • Odtwarzanie komunikatu przez czas co najmniej - ten parametr określa jak długo ma być odtwarzany komunikat. Niezależnie od ustawienia tego parametru komunikat odtwarzany jest przynajmniej jeden raz. Ustawienie tego parametru na czas większy niż czasy trwania pojedynczych komunikatów pozwala na wielokrotne odtwarzanie komunikatu. Nie należy jednak ustawiać tego parametru na wartość zbyt wielką, gdyż przy braku sygnalizacji rozłączenia połączenia przez odbierającego (co jest podobnie typowe jak brak sygnalizacji momentu odbioru połączenia) program będzie zbyt długo blokował linię powtarzając komunikat którego już nikt nie słucha. Dopiero po tym czasie program będzie mógł ewentualnie wykonać następne połączenie.