MassMsg
Kadu
Spis treści |
Opis
Skrypt massMsg, przeznaczony jest do awaryjnego wysyłania wiadomości do wszystkich osób z którymi aktualnie rozmawiamy (mamy włączone ich okno rozmowy). Po wpisaniu jednego krótkiego słowa w którymkolwiek oknie rozmowy np "/tel" do wszystkich otwartych okien zostanie wysłana wiadomość o treści "Wiadomość automatyczna: Zadzownił telefon i pobiegłem go odebrać, czekaj cierpliwie, może wrócę ;)". Dodatkowo we wszystkich oknach rozmowy, zostanie wklejona wiadomość o tym, że takowa informacja została wysłana, razem z treścią tej informacji i listą osób do których ona trafiła.
Użytkowanie
Skrypt ten ma zdefiniowanych 5 sytuacji na które może zareagować, są nimi:
</li>
</li>
</li>
</li>
</li>
Są to sytuacje, które według mnie mogą być przydatne w takim skrypcie, ale język Tcl pozwala w bardzo prosty sposoby edytować je i dostosować do własny potrzeb.
Dodatkowo umieściłem komendę /mass, powoduje ona na zdefniowanie własnej wiadomości, bez ingerencji w kod skryptu, wszystko co znajdzie sie po słowie "/mass", zostanie wysłane jako wiadomość do wszystkich otwartych okien rozmowy.
Skrypt
on sendmsg2 massMsg
proc massMsg {uin txt} {
set opis "Autostatus: Chwilowo nie ma mnie przy komputerze"
set ret 0
if {$txt == "/tel"} {
set wiad "Wiadomość automatyczna: Zadzownił telefon i pobiegłem go odebrać, czekaj cierpliwie, może wrócę ;)"
set stat busy+description
set ret 1
}
if {$txt == "/gosc"} {
set wiad "Wiadomość automatyczna: Mam niespodziewanego gościa, muszę się nim zająć, jak się go pozbędę, to odezwę się ;)"
set stat busy+description
set ret 1
}
if {$txt == "/wazne"} {
set wiad "Wiadomość automatyczna: Natychmiast muszę załatwić bardzo ważną sprawę, nie będzie mnie przez dłuższą chwilę, jak wrócę to się odezwę, cześć"
set stat invisible+description
set ret 1
}
if {$txt == "/pilne"} {
set wiad "Wiadomość automatyczna: Wyskoczyło mi coś bardzo pilnego, muszę odejść od komputera, niedługo wracam"
set stat busy+description
set ret 1
}
if {$txt == "/pies"} {
set wiad "Wiadomość automatyczna: Mój pies domaga się spaceru, muszę z nim wyjść, niedługo będę z powrotem"
set stat busy+description
set ret 1
}
if {[string first /mass $txt] == 0} {
set wiad [string range $txt 6 end]
set ret 1
}
if {$ret} {
set lista [list]
foreach userlist [chat list] {
lappend lista [user get $userlist -altname]
}
chat input $uin ""
foreach uiny [chat list] {
hist append -type msg -text $wiad -from $::gg(uin) -uins $uiny
msg $uiny $wiad
chat addtext $uiny -color "white" -bgcolor "darkgreen" -formatted massMsg "Wiadomość o treści:\n\"$wiad\"\nZostała wysłana do: [join $lista {, }]"
if {[info exists stat]} {
status $stat $opis
}
}
}
return $ret
}

