7. Definizione del parametro di apparizione Alert-Info
Questa specifica estende [RFC3261] per aggiungere un parametro 'appearance' al campo di intestazione Alert-Info e anche per consentire ai proxy di modificare o eliminare il campo di intestazione Alert-Info.
Le modifiche all'ABNF [RFC5234] nella RFC 3261 sono:
alert-param = LAQUOT absoluteURI RAQUOT *( SEMI
(generic-param / appearance-param) )
appearance-param = "appearance" EQUAL 1*DIGIT
Un proxy che inserisce un parametro Alert-Info 'appearance' segue le normali politiche Alert-Info. Per indicare il numero di apparizione per questo dialogo, il proxy aggiunge il campo di intestazione Alert-Info con il parametro 'appearance' all'INVITE. Se un Alert-Info è già presente, il proxy aggiunge il parametro 'appearance' al campo di intestazione Alert-Info. Se un parametro del numero di apparizione è già presente (associato a un altro AOR o per errore), il valore viene riscritto aggiungendo il nuovo numero di apparizione. NON DEVE esserci più di un parametro di apparizione in un campo di intestazione Alert-Info.
Se non è desiderata una suoneria speciale, una suoneria normale DOVREBBE essere indicata utilizzando urn:alert:service:normal in Alert-Info, come da [RFC7462]. Il numero di apparizione presente in un campo di intestazione Alert-Info DOVREBBE essere reso dall'UA all'utente, seguendo le linee guida nella sezione 5.3. Se l'INVITE viene inoltrato a un altro AOR, il parametro di apparizione in Alert-Info DOVREBBE essere rimosso prima dell'inoltro al di fuori del gruppo.
La determinazione del valore da utilizzare nel parametro di apparizione può essere effettuata presso il proxy che biforca la richiesta in arrivo a tutti gli UA registrati.
Ci sono vari modi in cui il proxy può determinare quale valore dovrebbe utilizzare per popolare questo parametro. Ad esempio, il proxy potrebbe recuperare queste informazioni avviando una richiesta SUBSCRIBE con Expires: 0 all'agente di apparizione per l'AOR per recuperare l'elenco delle linee in uso. In alternativa, potrebbe agire come un UA che fa parte del gruppo di apparizioni condivise e SUBSCRIBE all'agente di stato come qualsiasi altro UA. Ciò garantirebbe che le informazioni sul dialogo attivo siano disponibili senza dover effettuare il polling su base necessaria. Potrebbe tenere traccia dell'elenco delle chiamate attive per l'AOR di apparizione in base a quante richieste INVITE univoche ha biforcato verso o ricevuto dall'AOR di apparizione. Un altro approccio sarebbe per il proxy inviare prima l'INVITE in arrivo all'agente di apparizione, che reindirizzerebbe all'URI del gruppo di apparizioni condivise ed eseguirebbe l'escape del campo di intestazione Alert-Info appropriato affinché il proxy ricorsi e distribuisca agli altri UA nel gruppo.
L'agente di apparizione deve conoscere tutte le richieste in arrivo all'AOR al fine di occupare il numero di apparizione. Un modo in cui ciò potrebbe essere fatto è che l'agente di apparizione si registri all'AOR con un valore q più alto. Ciò comporterà l'invio dell'INVITE prima all'agente di apparizione, quindi l'offerta agli UA nel gruppo.