1

Тема: AHK: Взаимодействие с элементами приложений в фоновом режиме

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

SMS_Label:
{
BlockInput, MouseMove
WinActivate, ahk_class tSkMainForm

    WinWaitActive, ahk_class tSkMainForm
    if ErrorLevel = 0
    {
    MouseGetPos, MouseX, MouseY
    MouseClick,, 30, 217                                                ; Набрать номер
    sleep, 250
    SendInput %BoxSMS%
    sleep, 250
    MouseClick,, 1225, 94                                                ; Написать СМС
    sleep, 250
    
    if monitor1_sms = yes
        Send %BoxMonitor1_SMS% 

    if monitor2_sms = yes
        Send %BoxMonitor2_SMS%

    if monitor3_sms = yes
        Send %BoxMonitor3_SMS%

    if monitor4_sms = yes
        Send %BoxMonitor4_SMS%

    MouseMove, %MouseX%, %MouseY%
    }

    sleep, 250
    SendInput {Enter}

    sleep, 250

WinActivate, ahk_exe Test.exe

    monitor1_sms = no
    monitor2_sms = no
    monitor3_sms = no
    monitor4_sms = no

BlockInput, MouseMoveOff
}
Return

Это кусок кода, переменные не обозначены, за что они отвечают итак понятно. Через AhkSpy не могу выделить элементы скайпа, чтобы осуществить задачу, не знаю даже в каком направлении копать. Насколько известно клики в фоновом режиме не работают, а ControlSend вовсе некорректно отсылает текст.

2

Re: AHK: Взаимодействие с элементами приложений в фоновом режиме

Странникх пишет:

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

А зачем это вообще нужно? Ведь сообщение, перед тем, как его отправить, всё равно нужно где-то написать. Так какая разница, где вы его будете писать — в окне скайпа или в скрипте? Или вы спам через скайп рассылать хотите?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

3

Re: AHK: Взаимодействие с элементами приложений в фоновом режиме

Получать уведомление с одного инструментария для себя хочу, чтобы он каждый раз не открывал окно скайпа и сам не наводил на все. Это дико нервирует, когда работаешь за компьютером в данный момент, поэтому возникла потребность оптимизировать в фоновом режиме свою задачу.

4

Re: AHK: Взаимодействие с элементами приложений в фоновом режиме

Ну не знаю, на AHK вряд ли что-то внятное написать можно. Вам может что-нибудь типа этого искать нужно.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

5 (изменено: Странникх, 2015-07-06 04:20:57)

Re: AHK: Взаимодействие с элементами приложений в фоновом режиме

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

6

Re: AHK: Взаимодействие с элементами приложений в фоновом режиме

Странникх пишет:

Получать уведомление с одного инструментария для себя хочу

Если нужно получать информацию от другого компьютера по сети, существует множество других чатов, кроме Skype.

7

Re: AHK: Взаимодействие с элементами приложений в фоновом режиме

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

8

Re: AHK: Взаимодействие с элементами приложений в фоновом режиме

Интерфейс Skype в принципе не поддерживает управление контролами в неактивном окне. Тут только вариант через его API, но его прикрыли ещё в 4 версии насколько помню. Можно получить от окна список сообщений и контактов, но вот управлять не получается.

По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

9

Re: AHK: Взаимодействие с элементами приложений в фоновом режиме

Говорят, что работает:
http://community.skype.com/t5/Mac/Skype … -p/3864429
Правда не понимаю, как его прикрутить к AHK?

10 (изменено: Malcev, 2015-07-07 18:59:05)

Re: AHK: Взаимодействие с элементами приложений в фоновом режиме

Вот так у меня работает:

SkypeName := "XXXXXX"
While WinExist("ahk_class TConversationForm")
   WinClose, ahk_class TConversationForm
run, skype:%SkypeName%?chat
WinWait, ahk_class TConversationForm
ControlSend, TChatRichEdit1, Привет{enter}, ahk_class TConversationForm