Hi Min, Klaus,
I followed your suggestions and added a module parameter -
xcapauth_userdel_reason in presence_xml module. It has default value
"probation". The retry-after parameter can be added easily by just
attaching it also to the end of the reason when setting this parameter.
3.10. xcapauth_userdel_reason(str)
This parameter represents the reason that will be included in the
Subscription-State header of the Notify when a rule is no longer found
in the XCAP pres-auth document for a user that was previously allowed.
The Subscription state in this case switches to "terminated". Because
it is not clear which reason is most appropriate in this case from the
ones defined by the RFC 3265, this parameter offers the possibility for
the admin to decide which one he wishes to use.
Default value: “probation” . Since probation also accepts a retry-after
parameter to specify after at least how may seconds the client should
reattempt to resubscribe, you can include this in the parameter also.
Example 1.10. Set xcapauth_userdel_reason parameter
...
modparam("presence_xml", "xcapauth_userdel_reason",
"probation;retry-after=30")
modparam("presence_xml", "xcapauth_userdel_reason",
"rejected")
Min, I would appreciate if you could test this and let me know.
Regards,
Anca
On 06/26/2012 08:03 PM, Min Wang wrote:
HI Klaus , Anca:
http://docs.oracle.com/cd/E17667_01/doc.50/e17669/cpt_concepts.htm#
in the Changing Presence Rules section:
5. Because Alice's updated policy does not authorize Bob
as a watcher, the presence server sends a NOTIFY request to Bob's
client, notifying him that his subscription is terminated. In the NOTIFY
request, the Subscription-State header specifies terminated and the
reason is set to probation. This ends Bob's subscription with the
presence server and also ends the underlying SIP dialog. Bob's client
responds with a 200 OK message.
It uses **probation** as the reason for updated xcap policy.
Not sure if it is OMA standard or not or just Oracle interpretation.
What about adding a module parameter (string) with "probation" as
default?
I guess it is a good solution from practical point of view.
Also how about adding another parameter as well: retry_after ,
something default 10 or 30 minutes?
thanks
min