Что такое Twinkle и где ее взять?
Как
уже было сказано выше, Twinkle - это SIP-программа. SIP - это протокол
для поддержки IP-телефонии. Говоря простым языком, он позволяет
пользователям звонить друг другу со своих компьютеров, и вести разговор
через микрофон. SIP - это открытый протокол; поэтому, в отличие от
закрытого протокола (к примеру, Skype), вы можете пользоваться каким
угодно SIP-клиентом.
Twinkle -
достаточно популярная программа, поэтому ее можно найти в репозиториях
основных дистрибутивов. Пользователи Debian и Ubuntu могут установить
пакет twinkle из своих репозиториев, а у пользователей DVD-версии
openSuSE Twinkle уже установлен. Еще можно скомпилировать Twinkle из
исходников, для этого потребуются заголовочные файлы Qt и
соответствующие библиотеки (не используйте Qt 4.4, нужна версия 3.3.0
или более ранняя). Подробнее об этом методе можно узнать на домашней страничке Twinkle.
Установка Twinkle
Первое
дело, которое нужно сделать - это получить аккаунт SIP, нечто похожее
на адрес электронной почты. В этой статье я получу аккаунт на сайте sipphone.com,
но можно воспользоваться и другим SIP-провайдером. Сервис SIPphone
предлагает несколько приятных функций, о которых я расскажу ниже.
Сначала создайте аккаунт на соответствующей странице. Затем запустите Twinkle. При первом запуске программы откроется мастер. Если же это не в первый раз, выберите пункт меню File -> Change User, и нажмите Wizard. В любом случае, в открывшемся окне введите имя своего профиля (к примеру, SIPphone) и нажмите Next. На следующем шаге выберите SIPphone!в
качестве провайдера. Введите свое имя пользователя (к
примеру, andrewmin) и пароль, который вы вводили на странице
регистрации, после чего нажмите OK. На последнем шаге проверьте, что
отмечен именно ваш профиль, после чего должно появиться соединение.

Рисунок 1: Настройка SIPphoneПробуем Twinkle
Итак,
установили Twinkle. Пришло время кому-нибудь позвонить. Вместо того,
чтобы отвлекать случайного человека, можно просто позвонить в
эхо-службу. Чтобы сделать звонок, наберите sip:logincard@sip2.luxorcom.net в поле Call и нажмите Dial (хорошие
эхо-сервисы - sip:echo@proxy01.sipphone.com от SIPphone
и sip:enum-echo-test@sip.nemox.net). Все, что вы будете говорить в
микрофон, будет незамедлительно перенаправлено обратно вам. Если этого
нет, проверьте свои аудионастройки в меню Edit -> System Settings -> Audio (попробуйте сменить звуковую систему с OSS на ALSA).

Рисунок 2: Звонок эхо-ботуТонкости Twinkle
Одна
из наиболее полезных функций для пользователей KDE является интеграция
с KAddressBook (это часть программы Kontact, отвечающая сугубо за
информацию о людях, т.е. контактах). Все, что нужно сделать - это
добавить SIP-адрес в поле Телефон (к
примеру, sip:andrewmin@proxy01.sipphone.com). Twinkle автоматически
запустит KAddressBook при нажатии на кнопке адресной книги (справа от
поля Call).
Но что если вы не
пользуетесь KAddressBook (или совсем не пользуетесь KDE)? В любом
случае, в Twinkle есть достаточно удобная адресная книга. Для ее
открытия нажмите соответствующую кнопку справа от поля Call и выберите вкладку Local address book. Затем нажмите кнопку Add для добавления человека в свой список. Позвонить ему можно двойным щелчком мышки - имя человека поместится в поле Call, и останется лишь нажать кнопку Dial.

Рисунок 3: Мой контакт-лист (очень короткий)Иногда
при разговоре с роботом на другом конце линии вас попросят набрать
что-либо на цифровой клавиатуре. Однако, как вы могли заметить, у
Twinkle ее нет. К счастью, это легко исправить. Просто щелкните мышью в
текстовом поле Display и набирайте требуемые цифры. Каждая цифра в отдельности будет отослана адресату.
Еще
одной удобной функцией является возможность запуска скриптов по
определенным событиям. К примеру, при входящем звонке можно выводить
диалоговое окно KDE с какой-нибудь надписью. Это делается просто:
создайте bash-скрипт наподобие
kdialog --title "Входящий звонок" --msgbox "Парень, тебя к телефону!"
сохраните
его с расширением (например, twinklecall.sh) в каком-нибудь удобном
месте (например, ~/twinklescripts/) и дайте право выполнения (chmod +x
twinklecall.sh). Затем откройте окно скриптов в Twinkle (Edit -> User Profile -> Scripts) и введите полный путь с именем файла скрипта (к примеру, ~/twinklescripts/twinklecall.sh) в соответствующем поле (например, Incoming call - Входящий звонок). Теперь при каждом событии будет запускаться ваш скрипт.

Рисунок 4: Для GTK-диалога использован скрипт Zenity
(http://fosswire.com/2007/12/23/gtk-dialog-boxes-from-shell-scripts/)Иногда
имеет смысл, чтобы линия была зашифрована. Для этих целей Twinkle
предоставляет шифрование ZRTP/SRTP (David Sugar написал на эту тему хорошую статью). Для включения шифрования откройте окно Security (Edit -> User Profile -> Security) и отметьтеEnable ZRTP/SRTP encryption. Но учтите, что если клиент на той стороне не поддерживает шифрование, то канал так и останется незашифрованным.
Тонкости SIPphone
Twinkle
не достает одной важной функции, а именно голосовой почты. К счастью,
если вы пользуетесь сервисом SIPphone, то это недоразумение легко
устраняется. Просто позвоните на sip:record@proxy01.sipphone.com и
следуйте инструкциям на экране.
Еще
одной приятной функцией является создание голосовых конференций через
SIPphone (в самой Twinkle пока нет такой возможности). За подробностями
обращайтесь на эту страницу