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;
161 string packageName = 18;
164 repeated ReqFindElement children = 19;
166 message RspFindElement {
167 RspStatus status = 1;
168 repeated Element elements = 2;
171 // ------------------------------------ //
173 message ReqGetValue {
174 string elementId = 1;
175 // TODO : text, widgetstyle, widgettype, automationid
177 message RspGetValue {
178 RspStatus status = 1;
181 string stringValue = 3;
183 double doubleValue = 5;
188 message ReqSetValue {
189 string elementId = 1;
192 string stringValue = 3;
194 double doubleValue = 5;
198 message RspSetValue {
199 RspStatus status = 1;
203 string elementId = 1;
206 RspStatus status = 1;
211 string elementId = 1;
214 RspStatus status = 1;
217 message ReqGetAttribute {
232 string elementId = 1;
233 RequestType attribute = 2;
235 message RspGetAttribute {
236 RspStatus status = 1;
239 string stringValue = 3;
241 double doubleValue = 5;
246 // ------------------------------------ //
254 RequestType type = 1;
256 string elementId = 2;
257 Point coordination = 3;
261 RspStatus status = 1;
265 Point startPoint = 1;
267 int32 durationMs = 3;
270 RspStatus status = 1;
273 message ReqTouchDown{
274 Point coordination = 1;
276 message RspTouchDown{
277 RspStatus status = 1;
281 message ReqTouchMove{
283 Point coordination = 2;
285 message RspTouchMove{
286 RspStatus status = 1;
291 Point coordination = 2;
294 RspStatus status = 1;
297 // ------------------------------------ //
299 message ReqInstallApp{
302 message RspInstallApp{
303 RspStatus status = 1;
306 message ReqRemoveApp{
307 string packageName = 1;
309 message RspRemoveApp{
310 RspStatus status = 1;
313 message ReqGetAppInfo{
314 string packageName = 1;
316 message RspGetAppInfo {
317 RspStatus status = 1;
318 bool isInstalled = 2;
323 message ReqLaunchApp{
324 string packageName = 1;
326 message RspLaunchApp{
327 RspStatus status = 1;
331 string packageName = 1;
334 RspStatus status = 1;
337 // ------------------------------------ //
339 message ReqGetDeviceTime{
346 message RspGetDeviceTime{
347 RspStatus status = 1;
348 int64 timestampUTC = 2;
349 string localeDatetime = 3;
352 message ReqGetLocation{
354 message RspGetLocation{
355 RspStatus status = 1;
380 KeyActionType actionType = 2;
382 //uint32 keyCode = 3;
383 string XF86keyCode = 4;
387 RspStatus status = 1;
390 message ReqTakeScreenshot{
392 message RspTakeScreenshot{
396 // ------------------------------------ //
403 // ------------------------------------ //
405 message ReqDumpObjectTree {
406 string elementId = 1;
409 message RspDumpObjectTree {
410 RspStatus status = 1;
411 repeated Element roots = 2;