Consider the below scenarios:
There is one user "A" registered with the ejabberd server and is inactive for past 2 or 3 months. There is another user "B" registered with the ejabberd server and has "A" in his/contact. User "B" not able to see the status of the "A". The user "A" is getting "auth-forbidden" in response of status query of user "A".
In the roster of user "B", the subscription of user "A" is coming none and in the roster of user "A" the subscription of all users under it are coming none.
Refer the attached screenshot for the user "A" roster.
Now my question is why the subscription of all contacts in user "A" roster is changed to none. User "A" is not active for couple of months, is there any configuration from which ejabberd marks the subscriptions of all contacts of inactive user to "none" ? How to change this configuration if such setting or configuration exists or there is some other issue in it?
I am not aware of such
I am not aware of such "feature" to be implemented in ejabberd. The most similar feature is the command "delete_old_users" that is implemented in mod_admin_extra. But in ejabberd this is not execute automatically: the admin must execute it. Maybe your operating system installed ejabberd and automatically executes that command?
I doubt that's the case, but, could it be the client who asks the server the contact's "last activity" and rejects if it's too old?