5 * @page protocol Protocol
6 * Here is a page with some descriptions about protocol explained
9 rpc killServer(ReqEmpty) returns (RspEmpty) {}
10 rpc findElement(ReqFindElement) returns (RspFindElement) {}
11 rpc getValue(ReqGetValue) returns (RspGetValue) {}
12 rpc setValue(ReqSetValue) returns (RspSetValue) {}
13 rpc getSize(ReqGetSize) returns (RspGetSize) {}
14 rpc clear(ReqClear) returns (RspClear) {}
15 rpc getAttribute(ReqGetAttribute) returns (RspGetAttribute) {}
16 rpc click(ReqClick) returns (RspClick) {}
17 rpc longClick(ReqClick) returns (RspClick) {}
18 rpc flick(ReqFlick) returns (RspFlick) {}
19 rpc touchDown(ReqTouchDown) returns (RspTouchDown) {}
20 rpc touchMove(ReqTouchMove) returns (RspTouchMove) {}
21 rpc touchUp(ReqTouchUp) returns (RspTouchUp) {}
22 rpc installApp(stream ReqInstallApp) returns (RspInstallApp) {}
23 rpc removeApp(ReqRemoveApp) returns (RspRemoveApp) {}
24 rpc getAppInfo(ReqGetAppInfo) returns (RspGetAppInfo) {}
25 rpc launchApp(ReqLaunchApp) returns (RspLaunchApp) {}
26 rpc closeApp(ReqCloseApp) returns (RspCloseApp) {}
27 rpc getDeviceTime(ReqGetDeviceTime) returns (RspGetDeviceTime) {}
28 rpc getLocation(ReqGetLocation) returns (RspGetLocation) {}
29 rpc sendKey(ReqKey) returns (RspKey) {}
30 rpc takeScreenshot(ReqTakeScreenshot) returns (stream RspTakeScreenshot) {}
31 rpc dumpObjectTree(ReqDumpObjectTree) returns (RspDumpObjectTree) {}
32 rpc getScreenSize(ReqGetScreenSize) returns (RspGetScreenSize) {}
33 rpc actionAndWaitEvent(ReqActionAndWaitEvent) returns (RspActionAndWaitEvent) {}
34 rpc setFocus(ReqSetFocus) returns (RspSetFocus) {}
37 // ------------------------------------ //
54 repeated Element child = 2;
57 Rect window_relative_geometry = 4;
59 string widget_type = 5;
60 string widget_style = 6;
63 string automationId = 9;
68 bool isCheckable = 13;
69 bool isClickable = 14;
72 bool isFocusable = 17;
73 bool isScrollable = 18;
78 bool isSelectable = 23;
98 // ------------------------------------ //
100 message ReqFindElement {
102 string elementId = 1;
105 oneof _automationid {
106 string automationId = 2;
110 string textField = 3;
114 string widgetType = 4;
118 string widgetStyle = 5;
130 bool isClickable = 8;
142 bool isFocusable = 11;
145 oneof _isscrollable {
146 bool isScrollable = 12;
150 bool isSelected = 13;
169 string packageName = 18;
172 oneof _textpartialmatch {
173 string textPartialMatch = 19;
176 repeated ReqFindElement children = 20;
178 message RspFindElement {
179 RspStatus status = 1;
180 repeated Element elements = 2;
183 // ------------------------------------ //
185 message ReqGetValue {
186 string elementId = 1;
187 // TODO : text, widgetstyle, widgettype, automationid
189 message RspGetValue {
190 RspStatus status = 1;
193 string stringValue = 3;
195 double doubleValue = 5;
200 message ReqSetValue {
201 string elementId = 1;
204 string stringValue = 3;
206 double doubleValue = 5;
210 message RspSetValue {
211 RspStatus status = 1;
220 string elementId = 2;
224 RspStatus status = 1;
229 string elementId = 1;
232 RspStatus status = 1;
235 message ReqGetAttribute {
250 string elementId = 1;
251 RequestType attribute = 2;
253 message RspGetAttribute {
254 RspStatus status = 1;
258 // ------------------------------------ //
266 RequestType type = 1;
268 string elementId = 2;
269 Point coordination = 3;
273 RspStatus status = 1;
277 Point startPoint = 1;
279 int32 durationMs = 3;
282 RspStatus status = 1;
285 message ReqTouchDown{
286 Point coordination = 1;
288 message RspTouchDown{
289 RspStatus status = 1;
293 message ReqTouchMove{
295 Point coordination = 2;
297 message RspTouchMove{
298 RspStatus status = 1;
303 Point coordination = 2;
306 RspStatus status = 1;
309 // ------------------------------------ //
311 message ReqInstallApp{
314 message RspInstallApp{
315 RspStatus status = 1;
318 message ReqRemoveApp{
319 string packageName = 1;
321 message RspRemoveApp{
322 RspStatus status = 1;
325 message ReqGetAppInfo{
326 string packageName = 1;
328 message RspGetAppInfo {
329 RspStatus status = 1;
330 bool isInstalled = 2;
335 message ReqLaunchApp{
336 string packageName = 1;
337 repeated LaunchData data = 2;
339 message RspLaunchApp{
340 RspStatus status = 1;
344 string packageName = 1;
347 RspStatus status = 1;
350 // ------------------------------------ //
352 message ReqGetDeviceTime{
359 message RspGetDeviceTime{
360 RspStatus status = 1;
361 int64 timestampUTC = 2;
362 string localeDatetime = 3;
365 message ReqGetLocation{
367 message RspGetLocation{
368 RspStatus status = 1;
393 KeyActionType actionType = 2;
395 //uint32 keyCode = 3;
396 string XF86keyCode = 4;
400 RspStatus status = 1;
403 message ReqTakeScreenshot{
405 message RspTakeScreenshot{
409 // ------------------------------------ //
416 // ------------------------------------ //
418 message ReqDumpObjectTree {
419 string elementId = 1;
422 message RspDumpObjectTree {
423 RspStatus status = 1;
424 repeated Element roots = 2;
427 message ReqGetScreenSize {
430 message RspGetScreenSize {
431 RspStatus status = 1;
435 message ReqActionAndWaitEvent {
441 EVENT_WINDOW_ACTIVATE = 0;
442 EVENT_WINDOW_DEACTIVATE = 1;
443 EVENT_STATE_CHANGED_FOCUSED = 2;
447 string elementId = 2;
448 string XF86keyCode = 3;
450 EventType eventType = 4;
454 message RspActionAndWaitEvent {
455 RspStatus status = 1;
458 message ReqSetFocus {
459 string elementId = 1;
462 message RspSetFocus {
463 RspStatus status = 1;