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) {}
34 // ------------------------------------ //
51 repeated Element child = 2;
55 string widget_type = 4;
56 string widget_style = 5;
60 string automationId = 8;
65 bool isCheckable = 12;
66 bool isClickable = 13;
69 bool isFocusable = 16;
70 bool isScrollable = 17;
75 bool isSelectable = 22;
90 // ------------------------------------ //
92 message ReqFindElement {
98 string automationId = 2;
102 string textField = 3;
106 string widgetType = 4;
110 string widgetStyle = 5;
122 bool isClickable = 8;
134 bool isFocusable = 11;
137 oneof _isscrollable {
138 bool isScrollable = 12;
142 bool isSelected = 13;
160 repeated ReqFindElement children = 18;
162 message RspFindElement {
163 RspStatus status = 1;
164 repeated Element elements = 2;
167 // ------------------------------------ //
169 message ReqGetValue {
170 string elementId = 1;
171 // TODO : text, widgetstyle, widgettype, automationid
173 message RspGetValue {
174 RspStatus status = 1;
177 string stringValue = 3;
179 double doubleValue = 5;
184 message ReqSetValue {
185 string elementId = 1;
188 string stringValue = 3;
190 double doubleValue = 5;
194 message RspSetValue {
195 RspStatus status = 1;
199 string elementId = 1;
202 RspStatus status = 1;
207 string elementId = 1;
210 RspStatus status = 1;
213 message ReqGetAttribute {
228 string elementId = 1;
229 RequestType attribute = 2;
231 message RspGetAttribute {
232 RspStatus status = 1;
235 string stringValue = 3;
237 double doubleValue = 5;
242 // ------------------------------------ //
250 RequestType type = 1;
252 string elementId = 2;
253 Point coordination = 3;
257 RspStatus status = 1;
261 Point startPoint = 1;
263 int32 durationMs = 3;
266 RspStatus status = 1;
269 message ReqTouchDown{
270 Point coordination = 1;
272 message RspTouchDown{
273 RspStatus status = 1;
277 message ReqTouchMove{
279 Point coordination = 2;
281 message RspTouchMove{
282 RspStatus status = 1;
287 Point coordination = 2;
290 RspStatus status = 1;
293 // ------------------------------------ //
295 message ReqInstallApp{
298 message RspInstallApp{
299 RspStatus status = 1;
302 message ReqRemoveApp{
303 string packageName = 1;
305 message RspRemoveApp{
306 RspStatus status = 1;
309 message ReqGetAppInfo{
310 string packageName = 1;
312 message RspGetAppInfo {
313 RspStatus status = 1;
314 bool isInstalled = 2;
319 message ReqLaunchApp{
320 string packageName = 1;
322 message RspLaunchApp{
323 RspStatus status = 1;
327 string packageName = 1;
330 RspStatus status = 1;
333 // ------------------------------------ //
335 message ReqGetDeviceTime{
342 message RspGetDeviceTime{
343 RspStatus status = 1;
344 int64 timestampUTC = 2;
345 string localeDatetime = 3;
348 message ReqGetLocation{
350 message RspGetLocation{
351 RspStatus status = 1;
376 KeyActionType actionType = 2;
378 //uint32 keyCode = 3;
379 string XF86keyCode = 4;
383 RspStatus status = 1;
386 message ReqTakeScreenshot{
388 message RspTakeScreenshot{
392 // ------------------------------------ //
399 // ------------------------------------ //
401 message ReqDumpObjectTree {
402 string elementId = 1;
405 message RspDumpObjectTree {
406 RspStatus status = 1;
407 repeated Element roots = 2;