- Szycy
- 26 kwietnia 2026 22:47 UTC
- Autor
- kamo
- Pochęt się
- 33ab822
Obudowa samocalna pozostawiła sesję wycieknącą: wybierając własne rozszerzenie Tworzy sesję wychodzącą, a następnie Asterisk zapętla oddzwonienie jako sekundę Sesja przychodząca, więc dwie sesje istnieją naraz. Pojedynczy singiel activeSessionRef śledził tylko najnowsze (inbound), więc: 1. Odrzuceni (zawieś nakładkę z pętlą) - odrzucone, ref nulled. 2. Wyjazd trwa bez nadzoru; Asterisk prowadzi go do poczty głosowej. 3. UI przewraca się do End Call, ponieważ wyjazd idzie na miejsce. 4. Kliknij przycisk „Zakończenie rozmowy” - hangup() odczytuje ref, znajduje null, no-op. 5. Dźwięk poczty głosowej wciąż się odtwarza; tylko odświeżanie strony go wyczyści. Utrzymuj allSessionsRef Set obok głównego ref: - Dresja dodaje każdą sesję. - zdarzenia zakończone / nieudane usuwają z zestawu, tylko resetuj stan połączenia, jeśli Ta sesja była pierwotna i promuj ocalałego do prawyborów Nieme/trzymaj/transfer nadal celuje w rozmowę na żywo. - reject() usuwa odrzuconą sesję z zestawu i promuje a Ocalały (więc UI nie wskazuje krótko na nic). - hangup() itetrazy zestaw i wywołuje hangup() na każdego członka, a następnie Wyczyści zestaw i główny sędzia. - Słuchacze na sesji (przyjmowani / trzymają / trzymają / nieciemne / niemute) teraz Zwarcie, gdy sesja zwalniająca nie jest bieżącą pierwotną, więc Nieświeże wydarzenia z sesji w tle nie mogą zmienić stanu UI dla Różne aktywne wezwanie.