Перейти к содержимому
CloudClick iOS

CloudClick iOS Облачное управление парком iOS-устройств

Консоль работает в облаке — откройте браузер, и она уже там. Подключите устройство, и оно появится в списке: ничего не нужно ставить, настраивать и обслуживать. Сделайте задачу один раз на живом экране — и получите скрипт, или напишите его сами: найти элемент, картинку или текст — это одна строка. Затем отправьте его на всю группу устройств.

  • В облаке · без установки
  • Запись без кода
  • Картинки, цвета и текст
  • Живой экран по P2P
  • Нажатия и свайпы как у человека
  • Планирование на много устройств
  • Оповещения и состояние устройств
  • 10 языков
daily_task.js
function main() {
  client.session('com.zhiliaoapp.musically');   // открыть приложение

  // необязательное окно: ждать не больше 1 секунды
  clickElement('labelContains', 'Позже', 1);

  // картинка: дождаться кнопки «Нравится» и нажать
  if (!clickImage('btn_like.png', 5)) {
    return false;
  }

  // текст: прочитать полосу сверху
  var lines = ocr([0.05, 0.1, 0.9, 0.12]);
  logi(lines.text);

  client.swipeUp();   // свайп как у человека
  return true;
}
Устройство подключеноJavaScript · UTF-8

Всё за одну минуту

Настоящая консоль и два реальных iPhone: синхронное управление, запись без кода, песочница для кода и расписание.

Облако, работает сразу

Консоль в облаке: откройте браузер — и она уже там. Подключите устройство, и оно появится в списке. Ничего не надо ставить, настраивать и обслуживать.

Запись без кода

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

Одна строка — одно действие

API скриптов принимает аргументы по порядку: найти элемент, нажать на картинку или прочитать текст — одна строка, например clickElement('label', 'Войти'). Если ошибиться, сообщение об ошибке покажет исправленную строку.

Картинки, цвета и текст

Находит то, чего не видно в дереве элементов: поиск изображений по шаблону, поиск цвета в одной или нескольких точках и распознавание текста через Apple Vision — всё прямо на телефоне, без сети и без выгрузки скриншотов.

Как живой человек

Нажатия в случайной точке области, случайные паузы и чистое состояние приложения в каждом круге; свайпы идут по траектории руки — с лёгким изгибом, сначала медленно, потом быстрее, с мелкой дрожью. Два запуска никогда не совпадают.

Живой экран

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

Синхронно, при любом разрешении

Включите синхронизацию — и одно действие уходит на всю группу. Координаты передаются долями от 0 до 1, а не пикселями, поэтому устройства с разным разрешением работают вместе.

Планирование, которое не падает

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

Оповещения и состояние устройств

Устройство ушло в офлайн, WDA не отвечает, задачи падают подряд, мало заряда или памяти — оповещение сразу уходит в WeCom, Telegram или ваш собственный webhook, а заряд, память и температура видны с первого взгляда.

Начать за три шага

Не нужно ставить сервер и что-то настраивать — для начала хватит одного iPhone.

  1. Заведите аккаунт

    Войдите в консоль и начинайте. Если данные должны оставаться в вашем дата-центре, весь сервис можно развернуть на ваших серверах.

  2. Подключите устройства

    Установите на iPhone приложение CloudClick iOS и WebDriverAgent и войдите — устройство появится в консоли. Сопутствующая утилита для Windows подписывает и устанавливает IPA и монтирует образ диска разработчика.

  3. Запишите или напишите и разошлите

    Запишите один раз на живом экране или пишите в песочнице кода, проверяя каждую строку на настоящем устройстве; когда всё работает, опубликуйте как задачу по группе устройств и окну времени — журналы приходят в реальном времени.

Отвечаем на то, что спрашивают чаще всего

Остались вопросы? Напишите — отвечает инженер.

Telegram@WTScriptQQ3252528962
Действительно не нужно писать код?+

Не нужно. Подключите экран устройства и выполните задачу один раз: нажатия, свайпы и ввод сами станут шагами. Там, где шаг должен идти по элементу, а не по координате, откройте инспектор и щёлкните узел — выражение локатора подставится само. На выходе читаемый JavaScript, так что при желании его можно править дальше.

Сложно ли писать скрипты самому?+

Нет. Аргументы идут по порядку, а каждое действие — одна строка: clickElement('label', 'Войти'), findImage('btn.png', 5), ocr(). В песочнице кода в консоли есть краткий справочник API, автодополнение и инспектор элементов, так что каждую строку можно сразу запустить на настоящем устройстве.

Как это снижает вероятность обнаружения?+

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

Может ли он читать текст на картинках?+

Да. Он использует встроенный в систему фреймворк Apple Vision прямо на телефоне — без сети и без выгрузки скриншотов — и читает китайский, английский, японский, корейский и другие языки (для китайского нужна iOS 14 или новее). Поиск изображений и цветов тоже выполняется на телефоне.

Можно развернуть на наших серверах?+

Да. Управляющий узел — статически слинкованный бинарник на Go без привязки к версии glibc. Дайте ему MongoDB, поднимите через supervisor, поставьте впереди nginx — данные и устройства остаются у вас.

Можно поделиться скриптом с командой?+

Да. Доступ к скрипту выдаёт другому аккаунту право его запускать, при желании со сроком действия. Параметры при этом раздельные, поэтому один и тот же скрипт работает у каждого со своим набором.

Есть ли поддержка Android?+

Сейчас нет. Всё работает на реальных устройствах iOS через WebDriverAgent, и рантайм скриптов построен вокруг него. Android в текущую версию не входит.

Хотите увидеть, как это работает на ваших устройствах?

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

Telegram@WTScriptQQ3252528962