|
|
|
This is probably actually a problem with the SubscriptoinMgr; assigning to Dale to check that out.
Priority reduced to Minor. An interesting case -- the RFC requires the notifier to send a final NOTIFY, but I'm not sure that the subscriber is required to return a 200 to the NOTIFY. In any case, the notifier is in the process of destroying the subscription, and the only result of receiving a 481 can be the destruction of the subscription, so I doubt there's any functional problem. But I suppose we really should clean this up, at least to avoid something that people will be distracted by when debugging problems.
Just my 2 cents in addition:
May be there is no functional problem indeed. But the "signalling procedure" is not completed. Also some phones or fxs gw's may get stuck with this. And also this "481" leads to unneeded signalling - resending of the final NOTIFY. I think we should go ahead with this fix, but I will note that in regard to:
"And also this "481" leads to unneeded signalling - resending of the final NOTIFY." This resending is an error -- the notifier is *required* to delete the subscription upon receiving the 481 and *required* to not send any further NOTIFYs. See RFC 3265 section 3.2.2: If the NOTIFY request fails (as defined above) due to an error response, and the subscription was installed using a soft-state mechanism, the notifier MUST remove the corresponding subscription. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
The easyest way to reproduce, i belive, is:
Create ACD with at least one agent with "monitor presence". Activate ACD server.
"Sign in" the agent (trough the web interface, for example). ACD starts monitoring the agent.
"Sign out" the agent. ACD will terminate the subscription as described above.