xmpp_user_rooms_count() { sudo -u ejabberd ejabberdctl get_user_rooms ${1} chalec.org | wc -l } xmpp_user_contacts_count() { sudo -u ejabberd ejabberdctl get_roster ${1} chalec.org | wc -l } xmpp_user_info() { echo "${1}:$(xmpp_user_contacts_count ${1}):$(xmpp_user_rooms_count ${1})" } xmpp_users() { for user in $(sudo -u ejabberd ejabberdctl registered_users chalec.org); do xmpp_user_info "${user}" done } xmpp_ban_user_by_patern() { LIST=$(sudo -u ejabberd ejabberdctl registered_users chalec.org | grep ${1} | uniq) for ADDRESS in $LIST do sudo -u ejabberd ejabberdctl kick_user $ADDRESS chalec.org sudo -u ejabberd ejabberdctl unregister $ADDRESS chalec.org echo Done with $ADDRESS done } xmpp_send_server_notice() { sudo -u ejabberd ejabberdctl send_message headline xmpp-admin@chalec.org \ chalec.org/announce/online "Annonce du Serveur" "${1}" } xmpp_send_server_notice_to_connected() { LIST=$(sudo -u ejabberd ejabberdctl connected_users_info | cut -f 1 | cut -d "/" -f 1 | uniq) for ADDRESS in $LIST do sudo -u ejabberd ejabberdctl send_message headline chalec.org "$ADDRESS" "Annonce du Serveur" "${2}" echo Done with $ADDRESS done } xmpp_send_server_notice_by_pattern() { LIST=$(sudo -u ejabberd ejabberdctl registered_users chalec.org | grep ${1} | uniq) for ADDRESS in $LIST do sudo -u ejabberd ejabberdctl send_message headline chalec.org "$ADDRESS" "Annonce du Serveur" "${2}" echo Done with $ADDRESS done }