Cỏc kỹ thuật và giao thức hỗ trợ truyền tớn hƯu thoại qua mạng IP
2.3.5.2. Truy vấn khả năng (Querying for Capabilities)
Phương thức OPTIONS cho phộp một UA truy vấn tới một UA khỏc hay một proxy server để nhận được thụng tin về cỏc phương thức được hỗ trợ, cỏc kiểu nội dung và cỏc thuộc tớnh mở rộng mà khụng cần phải thực hiện cuộc gọi tới phớa bờn kia. Vớ dụ, trước khi một client chốn một trường tiờu đề "Require" chứa danh sỏch cỏc tuỳ chọn mà nú khụng chắc chắn rằng UAS cú thể hỗ trợ vào một bản tin INVITE, nú cú thể truy vấn tới UAS đớch bằng một bản tin OPTIONS để hỏi xem tuỳ chọn này cú được hỗ trợ hay khụng. Kết quả cỏc tuỳ chọn được hỗ trợ sẽ được lưu trong trường "Supported" của bản tin trả lời. Tất cả cỏc UA phải hỗ trợ phương thức OPTIONS này.
Khi cú nhu cầu biết được cỏc khả năng của một tỏc nhõn khỏc, UA sẽ tạo ra một bản tin OPTIONS và gửi tới tỏc nhõn đú. Một yờu cầu OPTIONS cũng được cấu trỳc theo chuẩn chung của cỏc yờu cầu SIP.
Đỏp ứng của một OPTIONS cũng được cÂu trỳc theo cỏc quy tắc chuẩn của một đỏp ứng SIP. Trong đú, mó của đỏp ứng được chọn giống với mó của đỏp ứng khi trả lời một bản tin INVITE. Đú là đỏp ứng 200
(OK) khi UAS sẵn sàng chấp nhận cuộc gọi, 486 (Busy Here) khi UAS bận… Điều đú cho phộp một yờu cầu OPTIONS cú thể được sử dụng để xỏc định trạng thỏi cơ bản của một UAS rằng liệu UAS sẽ chấp nhận yờu cầu INVITE hay khụng.
Khi một yờu cầu OPTIONS được nhận ở bờn trong một dialog thỡ một bản tin đỏp ứng 200 (OK) cũng được tạo ra giống nh khi nú được nhận ở bờn ngoài dialog và khụng cú bất kỳ một tỏc động nào tới dialog. Cú một sự khỏc nhau giữa INVITE và OPTIONS trong cỏch điều khiển của proxy. Đú là trong khi INVITE cú thể nhận được nhiều đỏp ứng 200 (OK) thỡ OPTIONS chỉ cú nhận được một đỏp ứng 200 (OK).
Nếu như đỏp ứng của một bản tin OPTIONS được tạo ra bởi một proxy server, thỡ bản tin đỏp ứng 200 (OK) sẽ mang một danh sỏch cho biết cỏc khả năng của server này, và đỏp ứng sẽ khụng cú phần thõn bản tin.