Closed happy-berry closed 5 months ago
What is an external plugin?
Which ejabberd version? Which OTP version? OS? How did you install ejabberd?
Link to your plugin?
Do add more details...
ejabberd version : new os : ubantu(amd 64) Is a golang external program . my config:
I used the user's token as the password to complete the login process, but I found that when the user's password changed, I couldn't log in again using the plugin. There was no problem printing my plugin logs, and I had completed the plugin process completely. However, it seems that the plugin will not be used again to process my login process in ejabberd. Is my external program code :
ejabberd version : new
Is that 20.01-new or 23.10-new or self compiled ejabberd from HEAD, or from ejabberd.im .run installer or .deb
os : ubantu(amd 64),
which one? 20.04 LTS or 23.10? Maybe in between
23.10
my ubantu version : 20.04
when the user's password changed, I couldn't log in again using the plugin
It seems ejabberd has stored in its cache the password used in the first login. You try to disable caching with this option:
extauth_cache: 0
Do you get a warning message like this one?
2024-01-18 16:56:48.507762+01:00 [warning] Option 'extauth_cache' is deprecated and has no effect, use authentication or global cache configuration options: auth_use_cache, auth_cache_life_time, use_cache, cache_life_time, and so on
The option you are using to disable caching does not exist anymore. And caching is enabled by default.
Please use auth_use_cache, as explained in the External Script documentation:
auth_use_cache: false
ah..... which API should I call to remove users from the chat room ? I have already tried muc_unregister_nick、kick_user。
which API should I call to remove users from the chat room ?
It depends on what you mean by "remove user". How did you add the users?
I use send_direct_invitation
I want I want to invite all users to one room and remove, is my step 1、 create_room 2、send_direct_invitation 3、muc_unregister_nick/kick_user 4、 destroy_room but I found it can't remove user
But there is only one API that can remove users from chat rooms(kick_user), but it will disconnect the user's session, may I ask what I should do?
My externale plugin already passed verify, but when the password changes, logging in again can be done through the plugin, but it will not be done through ejabberd. Why is this?