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;
64 string automationId = 9;
69 bool isCheckable = 13;
70 bool isClickable = 14;
73 bool isFocusable = 17;
74 bool isScrollable = 18;
79 bool isSelectable = 23;
99 // ------------------------------------ //
101 message ReqFindElement {
103 string elementId = 1;
106 oneof _automationid {
107 string automationId = 2;
111 string textField = 3;
115 string widgetType = 4;
119 string widgetStyle = 5;
131 bool isClickable = 8;
143 bool isFocusable = 11;
146 oneof _isscrollable {
147 bool isScrollable = 12;
151 bool isSelected = 13;
170 string packageName = 18;
173 oneof _textpartialmatch {
174 string textPartialMatch = 19;
177 repeated ReqFindElement children = 20;
179 message RspFindElement {
180 RspStatus status = 1;
181 repeated Element elements = 2;
184 // ------------------------------------ //
186 message ReqGetValue {
187 string elementId = 1;
188 // TODO : text, widgetstyle, widgettype, automationid
190 message RspGetValue {
191 RspStatus status = 1;
194 string stringValue = 3;
196 double doubleValue = 5;
201 message ReqSetValue {
202 string elementId = 1;
205 string stringValue = 3;
207 double doubleValue = 5;
211 message RspSetValue {
212 RspStatus status = 1;
221 string elementId = 2;
225 RspStatus status = 1;
230 string elementId = 1;
233 RspStatus status = 1;
236 message ReqGetAttribute {
251 string elementId = 1;
252 RequestType attribute = 2;
254 message RspGetAttribute {
255 RspStatus status = 1;
259 // ------------------------------------ //
267 RequestType type = 1;
269 string elementId = 2;
270 Point coordination = 3;
274 RspStatus status = 1;
278 Point startPoint = 1;
280 int32 durationMs = 3;
283 RspStatus status = 1;
286 message ReqTouchDown{
287 Point coordination = 1;
289 message RspTouchDown{
290 RspStatus status = 1;
294 message ReqTouchMove{
296 Point coordination = 2;
298 message RspTouchMove{
299 RspStatus status = 1;
304 Point coordination = 2;
307 RspStatus status = 1;
310 // ------------------------------------ //
312 message ReqInstallApp{
315 message RspInstallApp{
316 RspStatus status = 1;
319 message ReqRemoveApp{
320 string packageName = 1;
322 message RspRemoveApp{
323 RspStatus status = 1;
326 message ReqGetAppInfo{
327 string packageName = 1;
329 message RspGetAppInfo {
330 RspStatus status = 1;
331 bool isInstalled = 2;
336 message ReqLaunchApp{
337 string packageName = 1;
338 repeated LaunchData data = 2;
340 message RspLaunchApp{
341 RspStatus status = 1;
345 string packageName = 1;
348 RspStatus status = 1;
351 // ------------------------------------ //
353 message ReqGetDeviceTime{
360 message RspGetDeviceTime{
361 RspStatus status = 1;
362 int64 timestampUTC = 2;
363 string localeDatetime = 3;
366 message ReqGetLocation{
368 message RspGetLocation{
369 RspStatus status = 1;
394 KeyActionType actionType = 2;
396 //uint32 keyCode = 3;
397 string XF86keyCode = 4;
401 RspStatus status = 1;
404 message ReqTakeScreenshot{
406 message RspTakeScreenshot{
410 // ------------------------------------ //
417 // ------------------------------------ //
419 message ReqDumpObjectTree {
420 string elementId = 1;
423 message RspDumpObjectTree {
424 RspStatus status = 1;
425 repeated Element roots = 2;
428 message ReqGetScreenSize {
431 message RspGetScreenSize {
432 RspStatus status = 1;
436 message ReqActionAndWaitEvent {
442 EVENT_WINDOW_ACTIVATE = 0;
443 EVENT_WINDOW_DEACTIVATE = 1;
444 EVENT_STATE_CHANGED_FOCUSED = 2;
448 string elementId = 2;
449 string XF86keyCode = 3;
451 EventType eventType = 4;
455 message RspActionAndWaitEvent {
456 RspStatus status = 1;
459 message ReqSetFocus {
460 string elementId = 1;
463 message RspSetFocus {
464 RspStatus status = 1;