Konversation/Скрипти/Ghosttrick

From KDE UserBase Wiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
This page is a translated version of the page Konversation/Scripts/Ghosttrick and the translation is 100% complete.
Other languages:

У параметрах мережі є пункт «Команди», за допомогою якого можна наказати програмі виконати команди у разі встановлення з’єднання з мережею. У цьому полі можна скористатися особливою змінною "%nick", яка розгортається до поточного псевдоніма. Цю змінну можна поєднати з командою /exec з метою запуску зовнішнього скрипту, який визначатиме, чи є поточний псевдонім бажаним, і, якщо це не так, використати командний інтерфейс Konversation для надсилання команди ghost до сервера псевдонімів.

Отже вам слід зберегти один з наведених нижче скриптів до теки скриптів користувача (KDE3 & KDE4:~/.kde/share/apps/konversation/scripts, KF5: ~/.local/share/konversation/scripts) під назвою "getnickback" і позначити файл для виконання:

У KDE 3.5 використовуйте такий скрипт
#!/bin/sh

nick=********           # бажаний псевдонім
pass=********           # відповідний пароль

# текст нижче не змінюйте #

PORT=$1
SERVER=$2
NICK=$4

# якщо ваш поточний псевдонім не збігається з бажаним, приховатися і змінити псевдонім
if [ "$NICK" != "$nick" ]
then
  dcop $PORT default raw $SERVER "PRIVMSG nickserv :GHOST $nick $pass"
  dcop $PORT default raw $SERVER "/nick $nick"
fi

# ідентифікувати себе на сервері
dcop $PORT default raw $SERVER "PRIVMSG nickserv :IDENTIFY $pass"
Оскільки у KDE 4 і пізніших версіях D-Bus замінив собою DCOP, у версіях для kdelibs4 або KF5 слід користуватися цією версією
#!/bin/sh

nick=********          # бажаний псевдонім
pass=********          # відповідний пароль

# текст нижче не змінюйте #

CONNECTION=$1
NICK=$3

# якщо ваш поточний псевдонім не збігається з бажаним, приховатися і змінити псевдонім
if [ "$NICK" != "$nick" ]
then
  qdbus org.kde.konversation /irc raw $CONNECTION "PRIVMSG nickserv :GHOST $nick $pass"
  qdbus org.kde.konversation /irc raw $CONNECTION "NICK $nick"
fi

# ідентифікувати себе на сервері
qdbus org.kde.konversation /irc raw $CONNECTION "PRIVMSG nickserv :IDENTIFY $pass"

Зауважте, що значення параметрів псевдоніма і пароля слід вказати явним чином. Потім у поле «Команди» мережі слід вказати /exec getnickback %nick