Akhirnya aku menemukan script untuk mengirimkan pesan ke client.
http://www.mail-archive.com/ltsp-discuss@lists.sourceforge.net/msg32597.htm
installasi :
login sebagari root
$ sudo -i
buat file send_message.sh dengan text editor (vi, vim, gedit atau mousepad) dan copy paste scripnya
# mousepad send_message.sh
#!/bin/bash # ============================= # Memberikan nama pada argument # ============================= # $* artinya semua argument # 'shift' diperlukan untuk memastikan semua argument di ambil # stelah argument pertama username=$1 shift message=$* # gmessage jika pakai gnome, kmessage untuk kde atau pakai xmessage msgprg="gmessage -buttons \"GTK_STOCK_CLOSE\" -center -timeout 60 -wrap -geometry 400x200 -title \"Message from the Administrator\"" # Fungsi untuk merespon error dalam penggunaan baris perintah (commond line) function usage () { echo " " echo " SRCIPT HARUS DI JALANKAN SEBAGAI ROOT!!!" echo " SRCIPT HARUS DI JALANKAN SEBAGAI ROOT!!!" echo " SRCIPT HARUS DI JALANKAN SEBAGAI ROOT!!!" echo " " echo " usage: $0 [USERNAME] [MESSAGE]" echo " dimana USERNAME adalah 1 user spesifik" echo " atau jika USERNAME=all maka pesan akan diterima oleh semua user yang login" echo " " echo " semua text setelah USERNAME menjadi bagian dari pesan/MESSAGE" } # Fungsi untuk memastikan user benar-benar login ke server function user_check () { check=$(who | awk '{print $1}' | grep ^"$username" | uniq ) if [ -f $check ]; then echo " Maaf, username $username tidak login ke server" exit fi } # Fungsi untuk mengirim pesan ke semua user function msg_all () { users=$(who | awk '{print $1}' | sort | uniq ) for user in $users do display=$(who | grep ^"$user" | awk '{print $2}' | grep -e ":" ) # jika display bernilai ":0" maka user telah login ke server if [ "$display" = :0 ]; then display="`hostname -f`:0.0" fi # gunakan ini untuk access_control su 2>/dev/null 1>&2 -c "$msgprg -display $display $message" - $user & # gunakan baris ini jika "disable_access_control=y" ada pada file lts.conf # $msgprg -display $display $message 2>/dev/null & done } # Fungsi untuk mengirim pesan pada satu user function msg_one () { # diperlukan untuk mendapatkan display hanya untuk satu user display=$(who | grep ^"$username" | awk '{print $2}' | grep -e ":" ) # jika display bernilai ":0" maka user telah login ke server if [ "$display" = :0 ]; then display="`hostname -f`:0.0" fi su 2>/dev/null 1>&2 -c "$msgprg -display $display $message" - $username & } # ==================================== # Script untuk memastikan semuanya OK # ==================================== # Memastikan sedikitnya ada 2 argument if [ $# -lt 2 ]; then usage exit fi # Memastikan user telah login sebagai root if [ $USER != "root" ]; then usage exit fi # =================================== # Jika semuanya OK, saatnya bekerja # =================================== if [ "$username" = all ]; then msg_all exit else user_check msg_one exit fi exit #end script
simpan dan chmod +x supaya bisa di execute# chmod +x send_message.shInstall gmessage
# apt-get install gmessage
Jalankan dengan perintah
# ./send_message.sh [username] [pesan]
usage: “./send_message.sh [USERNAME] [MESSAGE]”
dimana USERNAME adalah 1 user spesifik”
atau jika USERNAME=all maka pesan akan diterima oleh semua user yang login”
semua text setelah USERNAME menjadi bagian dari pesan/MESSAGE”
have fun 😀