Newbie questions

Hello. I have "ejabberd 14.07 is running in that node"
I want to user command like this: ejabberdctl set_nickname admin domain.ru "Administrator"
gor error: Error: command "set_nickname" not known.
Ok, go to page https://www.ejabberd.im/ejabberd-contrib for instructions.
First step is ok. Go into directory and look:
# cd ejabberd-contrib/
# ls
atom_pubsub ircd mod_grafite mod_logxml mod_muc_log_http mod_pottymouth mod_s2s_log mod_webpresence
ejabberd_auth_http mod_archive mod_log_chat mod_mam_mnesia mod_openid mod_profile mod_shcommands README-broken.md
extra mod_cron mod_logsession mod_message_log mod_post_log mod_rest mod_statsdx README.md

there is no folder "mod_admin_extra" which I should open in step 2.
1) What do I do wrong ?
2) where can I see full command list of module ? I see just description and some examples in documentation.
Thanks!

From what I remember,

From what I remember, mod_admin_extra.erl is included in ejabberd since 2013, so it should be included in ejabberd 14.07.

Try this: in your ejabberd configuration file, enable mod_admin_extra like any other module, then start ejabberd. Does it start correctly, or shows some error or warning in the ejabberd log files?

If it starts correctly, then try to call that command help:

$ ejabberdctl help set_nickname

The mod part of cfg file, I

The mod part of cfg file, I add mod_admin_extra:

% Used modules:
{modules,
 [
  {mod_register,   [{access, register}]},
  {mod_roster,     []},
  {mod_privacy,    []},
  {mod_adhoc,      []},
  {mod_configure,  []}, % Depends on mod_adhoc
  {mod_configure2, []},
  {mod_disco,      []},
  {mod_stats,      []},
  {mod_vcard,      []},
  {mod_offline,    []},
  {mod_announce,   [{access, announce}]}, % Depends on mod_adhoc
  {mod_echo,       [{host, "echo.localhost"}]},
  {mod_private,    []},
  {mod_admin_extra,[]},
  {mod_irc,        []},
% Default options for mod_muc:
%   host: "conference." ++ ?MYNAME
%   access: all
%   access_create: all
%   access_admin: none (only room creator has owner privileges)
  {mod_muc,        [{access, muc},
                    {access_create, muc},
                    {access_admin, muc_admin}]},
%  {mod_muc_log,    []},
  {mod_shared_roster, []},
  {mod_pubsub,     [{access_createnode, pubsub_createnode}]},
  {mod_time,       []},
  {mod_last,       []},
  {mod_version,    []}
 ]}.

then restart throught /etc/init.d/ejabberd restart
It starts correctly
Next I check /var/log/ejabberd

crash.log ejabberd.log error.log
Crash and error files are empty. ejabberd.log has no errors inside.
The command ypu sad "ejabberdctl help set_nickname" gets

Error: not command found that match: "set_nickname"

What should I do any else? Thx.

Ahh, I was confused.

Ahh, I was confused. mod_admin_extra was included in ejabberd 15.04, so you don't yet have it in ejabberd 14.07

You have three options:
A) The easiest now is to get an old version of ejabberd-contrib, which is compatible with your ejabberd 14.07
B) Get a newer version of ejabberd which includes mod_admin_extra, for example ejabberd 15.04
C) Get the most recent ejabberd, which includes many changes.

If you want the easiest, A), do this:

cd ejabberd-contrib/
git checkout 6a4e88d8d74432c2520fe8743099bf77fca2b266
ls

There should be a mod_admin_extra/ directory there.

I do you say for A case. Go

I do you say for A case. Go to mod_admin_extra directory and run ./build.sh

Recompile: ../ejabberd-dev/src/gen_mod
Recompile: src/mod_admin_extra
src/mod_admin_extra.erl:611: Warning: crypto:md5/1 is deprecated and will be removed in in a fut ure release; use crypto:hash/2
src/mod_admin_extra.erl:614: Warning: crypto:sha/1 is deprecated and will be removed in in a fut ure release; use crypto:hash/2

There is appeared mod_admin_extra.beam in ebin folder. I copy it to /usr/lib/i386-linux-gnu/ejabberd/ebin/ couz there is beam files are. Restart ejabberd, but it still unknown command set_nickname =\
In log folder appear file erl_crash_20170523-094715.dump It looks some erlang error, but file is too huge and I cant understand content there.
May be will it easy to isntall 15.04 or newer ?

You did it correctly. The

You did it correctly. The first lines in that dump file may give some clue about the problem. Can you show here the first 20 lines?

Also, you can try to delete the dump and log files, then try to start ejabberd again. This way you ensure the errors are related to your new attempt to start ejabberd.

Hm, I delete all log files

Hm, I delete all log files and restart - there is no more erl crash-dump file.
But it still:
ejabberdctl help set_nickname
Error: not command found that match: "set_nickname"

I have debian 8.8 jessie, if it important. I have no idea, what is wrong here.

Make sure mod_admin_extra is

Make sure mod_admin_extra is enabled in the configuration file. Read the module source code: it provides other commands, do the other commands work, or all are missing?

If none of those command appear, the module is not enabled correctly. Check the ejabberd log files, do they report any error or warning when ejabberd starts?

I read erl file for commands

I read erl file for commands and no one works. (commands.png)
I delete all log files and restart ejabberd - crash.log and error.log are empty, ejabberd.log has some information, but it looks without erros inside (ejabberd-log.png)
I get status of ejabberd (restart.png)
I put also my ejabberd.cfg file and pictures in google drive.
https://drive.google.com/open?id=0BxcqdqEDhgrdWGUyVDlNS1Bvc1U

It's strange that you enable

It's strange that you enable the module in the config, ejabberd doesn't complain about missing module, but later the commands do not appear.

If you enable other dummy module in the configuration file, like mod_dummy666, does ejabberd complain? If you disable some important module, like mod_roster, does the Roster feature disappear from ejabberd?

Nothing is change. I enable

Nothing is change. I enable some fake mod "mod_dummy666" (fake-mod.png) and restart (log files deleted before) and again: error and crush are empty, jabberd log on the pick (ejabberd-log-dummy-mod.png). Yes, it is very strange.
Yes, when I added roster mod the roster features appeared in web-interface.

The best explanation I can

The best explanation I can think: you have two ejabberd installations in the system, you are running one that you aren't aware, and you are modifying the configuration of the other that isn't used at all.

So. I deleted all ejabberd

So. I deleted all ejabberd mention in the system. Check it with whereis command.
Try to install: but there is no ejabberd.cfg file in place. It is can not even to install well.
Here is screenshots :
https://drive.google.com/drive/folders/0BxcqdqEDhgrdWGUyVDlNS1Bvc1U?usp=...
Any more advoces?

In recent versions, the

In recent versions, the configuration file is named ejabberd.yml, and has YAML file format (with spaces, not { } characters). Also, the debian package you use maybe installs a script called ejabberdctl, and a systemctl script to start it

Syndicate content