Здравствуйте, давайте вернемся к Skype API. А рассмотрим мы в этой статье то, как можно из стороннего приложения управлять приложением Skype и производить какие-то настройки. Мы уже рассмотрели как можно получать список ников, отправлять им сообщения, смотреть подробную информацию. Ну, а теперь, посмотрим, как можно из Вашего приложения производить небольшое управление Skype, а чего не попробовать, раз разработчики нам это предоставляют.

В настройках самого Skype я не смотрел, можно ли там по «горячим» клавишам сворачивать в трей, проверять запущен ли он, открывать профиль пользователя и так далее, если нету такого, то можно сделать к Skype дополнение и все выполнять по «горячим» клавишам, что очень удобно.

Ну, что поехали, в нашем проекте я еще создал одну форму и на ней уже размещал кнопки, и на обработчик их писал код. Я код здесь возможно весь писать не буду, но некоторое покажу и расскажу. У объектов TSkype есть свойство Client, а у данного свойства имеются разные процедуры и функции, так вот они и подразумевают работу с самим приложением Skype.

Итак, начнем, чтобы свернуть само приложение Skype, необходимо написать следующий код:

  • Skype.Client.Minimize;

Таким образом наше приложение Skype свернется в трей. В данном случае, за это отвечает процедура Minimize.

Идем дальше, для того, чтобы полностью закрыть приложение Skype необходимо написать следующий код:

  • Skype.Client.Shutdown;

Тут, уже как понятно отвечает за это процедура Shutdown.

Идем дальше и для того, чтобы запустить само приложение Skype, необходимо написать следующий код:

  • Skype.Client.Start(True,True);

Ну, а для того, чтобы проверить запущено ли наше приложение Skype воспользуемся следующим кодом

  • Skype.Client.IsRunning

Как Вы уже поняли, данная функция возвратит результат False или True, соответственно будет запущено или нет.

Идем дальше, для того, чтобы открыть окно профиля Вашего аккаунта, необходимо написать следующий код:

  • Skype.Client.OpenProfileDialog;

Как Вы уже поняли, в окне приложения Skype открывается профиль вашего аккаунта и за это отвечает процедура OpenProfileDialog.

Ну а теперь, для того, чтобы открыть окно профиля друга необходимо воспользоваться процедурой OpenUserInfoDialog и написать следующий код:

  • Skype.Client.OpenUserInfoDialog(‘ник пользователя’);

**Ник пользователя — подразумевается логин Skype, под которым авторитизируется Ваш друг, либо еще кто-то.

Итак, идем дальше, для того, чтобы вызвать диалог для конференции, необходимо написать следующий код:

  • Skype.Client.OpenConferenceDialog;

За это отвечает метод OpenConferenceDialog, который вызывается диалог конференции, где Вы ее сможете создать, пригласив нужных Вам людей.

Для, того, чтобы Вам вызвать диалог поиска/добавления нового контакта, необходимо написать следующий код:

  • Skype.Client.OpenSearchDialog;

За это отвечает процедура OpenSearchDialog

Для того, чтобы открыть необходимую ветку настроек Skype нужно воспользоваться методом OpenOptionsDialog и написать следующий код:

  • Skype.Client.OpenOptionsDialog(‘GENERAL’);

Этот код откроет главную вкладку настроек (общие настройки), для того, чтобы открыть нужную Вам, а Вы не знаете какой именно параметр передавать, то если у Вас стоит русский язык в приложении Skype, переключитесь на английский и смотрите как там называются все вкладки, такие и перечисляйте.

А мы идем дальше. Для того, чтобы открыть историю всех звонков необходимо написать следующий код:

  • Skype.Client.OpenCallHistoryTab;

За это отвечает процедура OpenCallHistoryTab

Для того, чтобы открыть вкладку с Вашими контактами необходимо написать следующий код:

  • Skype.Client.OpenContactsTab;

Для того, чтобы открыть окно для набора номера на телефон, необходимо написать следующий код:

  • Skype.Client.OpenDialpadTab;

Для того, чтобы открыть диалог для передачи контактных данных воспользуемся следующим кодом:

  • Skype.Client.OpenSendContactsDialog(‘ник пользователя’);

Как Вы уже поняли, параметром здесь выступает логин пользователя Skype для которого, необходимо передать контактные данные.

Для того, чтобы открыть диалог, где находятся список заблокированных пользователей необходимо воспользоваться следующим кодом:

  • Skype.Client.OpenBlockedUsersDialog;

Данный диалог находится во вкладке настроек, так что его также еще можно открыть с помощью процедуры OpenOptionsDialog

Идем дальше. Для того, чтобы открыть диалог, через который можно осуществить импорт контактов, необходимо написать следующий код:

  • Skype.Client.OpenImportContactsWizard;

Для того, чтобы открыть диалог, который появляется при старте приложения Skype (старторвый диалог) напишем следующий код:

  • Skype.Client.OpenGettingStartedWizard;

Для того, чтобы открыть диалог, где можно произвести авторитизацию пользователя необходимо воспользоваться следующим кодом:

  • Skype.Client.OpenAuthorizationDialog(‘ник пользователя’);

В качестве параметра здесь выступает логин пользователя Skype, у которого Вы хотите запросить авторизацию, причем данный диалог уже заполняется нужными Вам данными.

Если Вы попытаетесь в качестве параметра передата логин пользователя, который у Вас уже авторизованный, то естественно тут будет сообщение об ошибке

Для того, чтобы открыть конкретный диалог, можно воспользоваться следующим кодом:

  • Skype.Client.OpenDialog(‘PROFILE’,’ ‘);

Как видите, здесь одним из параметров являются название диалога, данным методом можно заменить почти все процедуры и функции, которые мы рассматривали выше.

Для того, чтобы открыть окно видеокамеры предварительного просмотра, то можно воспользоваться следующим кодом:

  • Skype.Client.OpenVideoTestDialog;

Для того, чтобы открыть диалог добавления контактов необходимо воспользоваться следующим кодом:

  • Skype.Client.OpenAddContactDialog(‘ник пользователя’);

Как видите, здесь параметром выступает логин пользователя Skype, которого необходимо добавить в Ваш список, причем форма данная заполняется уже нужными данными, а если пользователь уже будет в Вашем списке, то об этом Вам будет сообщено.

Для того, чтобы открыть диалог отправки сообщения, необходимо написать следующий код:

  • Skype.Client.OpenMessageDialog(‘ник пользователя’,’текст сообщения’);

Как видите, здесь мы перечисляем два параметра. 1-й — ник пользователя для которого открывать диалог сообщений, а 2-й — текст сообщения, таким образом поле для отправки текста сообщения в приложении Skype заполняется 2-м параметром данной процедуры.

Для того, чтобы вызвать диалог для отправки файла воспользуемся следующим кодом:

  • Skype.Client.OpenFileTransferDialog(‘ник пользователя’,’C:\’);

Тут первый параметр — ник пользователя, для которого отправлять файл, а второй параметр директория - откуда отправлять файл. Таким образом, открывается диалог выбора файла, из указанной директории, выбираете файл и отправляете его. Все просто.

Для того, чтобы установить фокус нашему приложению Skype, то воспользуемся следующим кодом:

  • Skype.Client.Focus;

Тут без комментариев, все итак понятно, я думаю.

Для того, чтобы нажать какую-то клавишу в приложении Skype необходимо воспользоваться следующим кодом:

  • Skype.Client.ButtonPressed(‘key’);

Тут key может применять следующее значение:

[0-9, A-Z, #, \*, UP, DOWN, YES, NO, SKYPE, PAGEUP, PAGEDOWN]

Идем дальше. Для того, чтобы открыть диалог конкретного sms-сообщения, воспользуемся следующим методом:

  • Skype.Client.OpenSmsDialog(‘идентификатор сообщения’);

Где параметром здесь выступает идентификатор sms-сообщения.

Ну вот немного рассказал про настройки приложения Skype, теперь можно спокойно устанавливать на форму компонент TActionList и делать для себя удобный вызов диалогов приложения Skype. Исходник выкладывать не буду, так как тут и так все понятно, весь код здесь и привел.

Не забывайте, что переменная Skype в приведенных методах — является объектом класса TSkype. То есть Skype:TSkype


Растения против зомби 2 является очень интересной и красивой игрой. Все события разворачиваются на заднем дворе, который необходимо будет охранять о зомби и сражаться с их лидером.


Метки: , , , ,




К записи “Skype API. Библиотека Skype4COM. Работа с приложением Skype” оставлено комментариев: 6.

  1. Mohamed Ali:

    Hello,
    nice article. I have learned allot from your blog, specially the delphi hints. I wish you could create an English version of your blog.

  2. newrom:

    А как организовать процедуру звонка на обычный телефон? Очень интересно!

  3. cubosup:

    Блин какой коммандой сетевой статус сменить сделай пример полный.Например с В сети на Не Беспокоить..

  4. kris:

    Здравствуйте, не подскажете как подключить библиотеку Skype4Com к Delphi, надеюсь на помощь, заранее спасибо!

Оставить комментарий на Mohamed Ali

Вы можете использовать следующие теги:

*