Czym są odpowiedzi SIP?

Odpowiedzi SIP to kody używane przez protokół inicjowania sesji (Session Initiation Protocol) do komunikacji. Oto lista wszystkich znanych odpowiedzi SIP:

1xx = Odpowiedzi informacyjne SIP

  • 100 Trying (Sprawdzenie dostępności) – Przeprowadzane jest rozszerzone wyszukiwanie, dlatego serwer proxy przekazuje odpowiedź 100 Trying.
  • 180 Ringing (Dzwonienie) – Docelowy użytkownik otrzymał wiadomość INVITE i jest powiadamiany o połączeniu.
  • 181 Call Is Being Forwarded (Połączenie jest przełączone) – Opcjonalne, wysyłane przez serwer w celu poinformowania o przekierowaniu połączenia.
  • 182 Queued (Kolejkownie) – Cel był tymczasowo niedostępny, serwer umieścił połączenie w kolejce do momentu jego dostępności.
  • 183 Session Progress (Przebieg sesji) – Odpowiedź ta może być używana do przesłania dodatkowych informacji dla połączenia w trakcie jego zestawiania.
  • 199 Early Dialog Terminated (Wczesny dialog zakończony) – Wysyłane przez User Agent Server w celu poinformowania, że wczesny dialog został zakończony.

2xx = Odpowiedzi pozytywne

  • 200 OK – Wskazuje, że żądanie zakończyło się pomyślnie.
  • 202 Accepted (Zaakceptowane)– Wskazuje, że żądanie zostało zaakceptowane do przetworzenia, głównie stosowane w przypadku przekierowań.
  • 204 No Notification (Brak powiadomienia) – Wskazuje, że żądanie zakończyło się pomyślnie, ale nie zostanie otrzymana żadna odpowiedź.

3xx = Odpowiedzi przekierowania

  • 300 Multiple Choices (Wiele wyborów) – Adres został rozwiązany do jednej z kilku opcji, spośród których użytkownik lub klient może wybrać.
  • 301 Moved Permanently (Przeniesiony na stałe) – Oryginalny URI żądania nie jest już ważny, nowy adres znajduje się w nagłówku Kontakt.
  • 302 Moved Temporarily (Przeniesiony tymczasowo) – Klient powinien spróbować pod adresem podanym w polu Kontakt.
  • 305 Use Proxy (Użyj Proxy) – Pole Kontakt zawiera szczegóły proxy, które muszą zostać użyte do uzyskania dostępu do żądanego miejsca docelowego.
  • 380 Alternative Service (Usługa zastępcza) – Połączenie nie powiodło się, ale alternatywne opcje są podane w treści wiadomości.

4xx = Odpowiedzi błędnych żądań

  • 400 Bad Request (Błędne żądanie) – Żądanie nie mogło zostać zrozumiane z powodu błędnej składni.
  • 401 Unauthorized (Nieautoryzowane) – Żądanie wymaga uwierzytelnienia użytkownika. Ta odpowiedź jest wydawana przez serwery UAS i rejestratory.
  • 402 Payment Required (Wymagana opłata) – (Zarezerwowane do użycia w przyszłości)
  • 403 Forbidden (Niedozwolone) – Serwer zrozumiał żądanie, ale odmawia jego realizacji.
  • 404 Not Found (Nie znaleziony) – Serwer ma pewność, że użytkownik nie istnieje pod danym adresem (Nie odnaleziono użytkownika).
  • 405 Method Not Allowed (Metoda nie jest dozwolona) – Metoda określona w Request-Line jest zrozumiała, ale niedozwolona.
  • 406 Not Acceptable (Nieakceptowalne) – Zasób może generować tylko odpowiedzi o nieakceptowalnej treści.
  • 407 Proxy Authentication Required (Konieczna autentyfikacja pośrednika) – Żądanie wymaga uwierzytelnienia użytkownika.
  • 408 Request Timeout (Żądanie przekroczyło limit czasu) – Nie udało się odnaleźć użytkownika na czas.
  • 409 Conflict (Konflikt)– Użytkownik jest już zarejestrowany (przestarzałe).
  • 410 Gone (Nieobecny) – Użytkownik istniał, ale nie jest już dostępny w tym miejscu.
  • 411 Length Required (Wymagana długość) – Serwer nie zaakceptuje żądania bez podanej prawidłowej długości treści (przestarzałe).
  • 412 Conditional Request Failed (Nieudane żądanie warunkowe) – Podany warunek wstępny nie został spełniony.
  • 413 Request Entity Too Large (Jednostka żądania zbyt duża) – Treść żądania jest zbyt duża.
  • 414 Request-URI Too Long (URI żądania zbyt długie) – Serwer odmawia obsługi żądania, ponieważ URI żądania jest dłuższe, niż serwer może obsłużyć.
  • 415 Unsupported Media Type (Nie obsługiwany typ nośnika) – Treść żądania jest w nieobsługiwanym formacie.
  • 416 Unsupported URI Scheme (Nie obsługiwany schemat URI) – Request-URI jest nieznany serwerowi.
  • 417 Unknown Resource-Priority (Nieznany priorytet zasobu) – Znaleziono znacznik opcji priorytetu zasobu, ale brak nagłówka Resource-Priority
  • 420 Bad Extension (Niewłaściwe rozszerzenie) – Użyto nieprawidłowego rozszerzenia protokołu SIP, niezrozumiałego dla serwera.
  • 421 Extension Required (Rozszerzenie konieczne) – Serwer wymaga określonego rozszerzenia, które nie zostało wymienione w nagłówku Supported.
  • 422 Session Interval Too Small (Za mały interwał sesji) – Żądanie zawiera nagłówek Session-Expires z czasem trwania poniżej minimalnej wartości.
  • 423 Interval Too Brief (Przerwa zbyt krótka) – Czas wygaśnięcia zasobu jest zbyt krótki.
  • 424 Bad Location Information (Złe informacje o lokalizacji) – Treść lokalizacji w żądaniu była niepoprawnie sformułowana lub w inny sposób niewłaściwa.
  • 428 Use Identity Header (Użyj nagłówka identyfikacji) – Polityka serwera wymaga nagłówka Identity, ale nie został on dostarczony.
  • 429 Provide Referrer Identity (Podaj identyfikację odsyłającego) – Serwer nie otrzymał poprawnego tokena Referred-By w żądaniu.
  • 430 Flow Failed (Nieudany przepływ) – Określony przepływ do agenta użytkownika nie powiódł się, chociaż inne mogą być skuteczne.
  • 433 Anonymity Disallowed (Anonimowość niedozwolona) – Żądanie zostało odrzucone, ponieważ było anonimowe.
  • 436 Bad Identity Info (Nieprawidłowe dane identyfikacyjne) – Żądanie zawiera nagłówek Identity-Info, ale nie można odwołać się do schematu URI w nim zawartego.
  • 437 Unsupported Certificate (Nieobsługiwany certyfikat) – Serwer nie mógł zweryfikować certyfikatu dla domeny, która podpisała żądanie.
  • 438 Invalid Identity Header (Nieprawidłowy nagłówek tożsamości) – Serwer uzyskał ważny certyfikat użyty do podpisania żądania, ale nie mógł zweryfikować podpisu.
  • 439 First Hop Lacks Outbound Support – Pierwszy serwer proxy wychodzący nie obsługuje funkcji „outbound”.
  • 440 Max-Breadth Exceeded (Przekroczona maksymalna szerokość) – Jeśli serwer proxy SIP stwierdzi, że kontekst odpowiedzi ma niewystarczający Incoming Max-Breadth do przeprowadzenia równoczesnego rozwidlania, a serwer nie chce lub nie może tego skompensować poprzez rozwidlanie szeregowe lub przekierowanie, musi zwrócić odpowiedź 440. Klient otrzymujący odpowiedź 440 może wywnioskować, że jego żądanie nie dotarło do wszystkich możliwych miejsc docelowych.
  • 469 Bad Info Package (Zły pakiet informacyjny) – Jeśli agent użytkownika SIP (UA) otrzyma żądanie INFO powiązane z pakietem Info, którego nie zadeklarował jako akceptowalny, musi wysłać odpowiedź 469 zawierającą nagłówek Recv-Info z pakietami Info, które UA jest gotowe przyjąć.
  • 470 Consent Needed (Wymagana zgoda) – Źródło żądania nie miało zgody odbiorcy na jego wysłanie.
  • 480 Temporarily Unavailable (Czasowo niedostępny) – Adresat połączenia jest chwilowo niedostępny.
  • 481 Call/Transaction Does Not Exist (Połączenie / transakcja nie istnieje) – Serwer otrzymał żądanie, które nie pasuje do żadnego istniejącego dialogu ani transakcji.
  • 482 Loop Detected (Wykryta pętla) – Serwer wykrył pętlę.
  • 483 Too Many Hops (Zbyt wiele przeskoków) – Nagłówek Max-Forwards osiągnął wartość „0”.
  • 484 Address Incomplete (Niekompletny adres) – Request-URI jest niekompletny.
  • 485 Ambiguous (Niejednoznaczne) – Request-URI jest niejednoznaczny.
  • 486 Busy Here (Zajęte) – Adresat połączenia jest zajęty.
  • 487 Request Terminated (Żądanie sfinalizowane) – Żądanie zostało zakończone przez „bye” lub „cancel”.
  • 488 Not Acceptable Here (Nieakceptowalne tutaj) – Niektóre aspekty opisu sesji w Request-URI są nieakceptowalne.
  • 489 Bad Event (Nieudane zdarzenie) – Serwer nie rozumie pakietu zdarzeń określonego w nagłówku Event.
  • 491 Request Pending (Żądanie oczekujące na obsługę) – Serwer ma oczekujące żądanie z tego samego dialogu.
  • 493 Undecipherable (Nie można rozszyfrować) – Żądanie zawiera zaszyfrowane treści MIME, których odbiorca nie może odszyfrować.
  • 494 Security Agreement Required (Wymagane warunki bezpieczeństwa) – Serwer otrzymał żądanie wymagające uzgodnionego mechanizmu zabezpieczeń.

5xx = Odpowiedzi błędu serwera

  • 500 Server Internal Error (Wewnętrzny błąd serwera) – Serwer nie mógł spełnić żądania z powodu nieoczekiwanego błędu.
  • 501 Not Implemented (Nie zrealizowane) – Metoda żądania SIP nie jest tutaj zaimplementowana.
  • 502 Bad Gateway (Niewłaściwa bramka) – Serwer otrzymał nieprawidłową odpowiedź od innego serwera podczas próby przetworzenia żądania.
  • 503 Service Unavailable (Usługa nie jest dostępna) – Serwer jest w trakcie konserwacji lub jest tymczasowo przeciążony i nie może przetworzyć żądania.
  • 504 Server Time-out (Przeterminowanie serwera) – Serwer próbował uzyskać dostęp do innego serwera podczas przetwarzania żądania, ale nie otrzymał odpowiedzi na czas.
  • 505 Version Not Supported (Wersja nie obsługiwana) – Wersja protokołu SIP w żądaniu nie jest obsługiwana przez serwer.
  • 513 Message Too Large (Zbyt duża wiadomość) – Długość wiadomości żądania przekracza limit przetwarzania serwera.
  • 555 Push Notification Service Not Supported (Usługa powiadomień push nie jest obsługiwana) – Serwer nie obsługuje usługi powiadomień push określonej w parametrze pn-provider SIP URI.
  • 580 Precondition Failure (Błąd warunku wstępnego) – Serwer nie jest w stanie lub nie chce spełnić pewnych ograniczeń określonych w ofercie.

6xx = Odpowiedzi błędów globalnych

  • 600 Busy Everywhere (Zajęte wszędzie) – Wszystkie możliwe miejsca docelowe są zajęte.
  • 603 Decline (Odrzuć) – Miejsce docelowe nie może/nie chce uczestniczyć w połączeniu, brak alternatywnych miejsc docelowych.
  • 604 Does Not Exist Anywhere (Nigdzie nie istnieje) – Serwer posiada wiążącą informację, że żądany użytkownik nigdzie nie istnieje.
  • 606 Not Acceptable (Nie do przyjęcia) – Agent użytkownika został pomyślnie skontaktowany, ale niektóre aspekty opisu sesji były nieakceptowalne.
  • 607 Unwanted (Niechciane) – Wywołana strona nie chciała połączenia od strony dzwoniącej. Przyszłe próby od strony dzwoniącej będą prawdopodobnie odrzucane w podobny sposób.

Więcej informacji