{"id":555,"date":"2023-03-30T17:49:27","date_gmt":"2023-03-30T09:49:27","guid":{"rendered":"https:\/\/doc.orionstar.com\/en\/?post_type=lsvr_kba&#038;p=555"},"modified":"2023-03-30T17:49:59","modified_gmt":"2023-03-30T09:49:59","slug":"system-functions","status":"publish","type":"lsvr_kba","link":"https:\/\/doc.orionstar.com\/en\/knowledge-base\/system-functions\/","title":{"rendered":"System Functions"},"content":{"rendered":"\n<h3 id=\"api-reference-system-functions-set-lighting-effect\"><strong>Set lighting effect<\/strong><a href=\"https:\/\/ainirobot.gatsbyjs.io\/docs\/apk\/apk-development\/#api-reference-system-functions-set-lighting-effect\"><\/a><\/h3>\n\n\n\n<p>Method name:&nbsp;<code>setLight<\/code><\/p>\n\n\n\n<p>Calling method:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">JSONObject params = new JSONObject();\ntry {    \n    params.put(Definition.JSON_LAMB_TYPE, type);    \n    params.put(Definition.JSON_LAMB_TARGET, 0);    \n    params.put(Definition.JSON_LAMB_RGB_START, startColor);    \n    params.put(Definition.JSON_LAMB_RGB_END, endColor);    \n    params.put(Definition.JSON_LAMB_START_TIME, startTime);    \n    params.put(Definition.JSON_LAMB_END_TIME, endTime);    \n    params.put(Definition.JSON_LAMB_REPEAT, loopTime);    \n    params.put(Definition.JSON_LAMB_ON_TIME, duration);    \n    params.put(Definition.JSON_LAMB_RGB_FREEZE, finalColor);\n} catch (JSONException e) {    \n    e.printStackTrace();\n}\nRobotApi.getInstance().setLight(0, params.toString(), null);<\/pre>\n\n\n\n<p>Parameter Description:<\/p>\n\n\n\n<ul>\n<li>reqId: int type command id<\/li>\n\n\n\n<li>params: String type, can contain the following parameters: type-Lighting effect type start-Start color end-End color startTime-Start time endTime-End time repeat-Loop times onTime-Duration freese-end lighting color<\/li>\n\n\n\n<li>type: Is 0<\/li>\n\n\n\n<li>startColor: Starting color value of lighting effect<\/li>\n\n\n\n<li>endColor: End color value of lighting effect<\/li>\n\n\n\n<li>startTime: The color stays at the beginning of the gradient<\/li>\n\n\n\n<li>endTime: The time that the color stays at the end of the gradient<\/li>\n\n\n\n<li>loopTime: Light effect gradual repetition times<\/li>\n\n\n\n<li>duration: Time spent in the gradual change process<\/li>\n\n\n\n<li>finalColor: Gradient transition color<\/li>\n\n\n\n<li>listener: ActionListener type message callback<\/li>\n\n\n\n<li>Color value: 16-bit string in RGB arrangement, such as &#8220;F3F3F3&#8221; or &#8220;00FF00&#8221;.<\/li>\n<\/ul>\n\n\n\n<p>Return Value:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">int result 0 command executed \/ -1 not executed<\/pre>\n\n\n\n<p>Applicable Platform:<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-regular\"><table><thead><tr><th>Greetbot<\/th><th>Mini<\/th><th>Lucki<\/th><th>Baoxiaodi MAX<\/th><th>Baodaping<\/th><\/tr><\/thead><tbody><tr><td>Yes<\/td><td>No<\/td><td>Yes<\/td><td>Yes<\/td><td>No<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Setting up the lighting effect code demo can be found here (the code is suitable for Greetbot, please replace the robot jar package for other robots):<a href=\"https:\/\/orion-base-test-1256573505.cos.ap-beijing.myqcloud.com\/cn_docs_file\/2021-12-21_11%3A32%3A54_RobotLight.zip\" target=\"_blank\" rel=\"noreferrer noopener\">Download<\/a><\/p>\n\n\n\n<h3 id=\"api-reference-system-functions-control-lucki-robot-lights\"><strong>Control lucki robot lights<\/strong><a href=\"https:\/\/ainirobot.gatsbyjs.io\/docs\/apk\/apk-development\/#api-reference-system-functions-control-lucki-robot-lights\"><\/a><\/h3>\n\n\n\n<p>Method name:&nbsp;<code>playMultipleColor<\/code>&nbsp;Only can work with lucki<\/p>\n\n\n\n<p>Calling method:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">public class LightMultipleColor extends LedLightBean {    \n    \/\/[0xFFFFFF,0xFFFFFF,0xFFFFFF,0xFFFFFF,0xFFFFFF,0xFFFFFF,0xFFFFFF,0xFFFFFF,0,0,0,0,0,0,0]    \n    public LightMultipleColor(int[] rgbSet) {        \n        this.rgbSet = rgbSet;        \n        this.type = 6;        \n        this.target = Definition.LAMP_TARGET_FOOT;    \n    }\n}\npublic void playMultipleColor(LightMultipleColor color) {    \n    Log.d(\"123\", \"playMultipleColor color: \" + color);    \n    if (color == null) {        \n        return;    \n    }    \n    color.setTarget(Definition.LAMP_TARGET_FOOT);    \n    color.setType(6);    \n    RobotApi.getInstance().setLedLight(reqID, color);\n}<\/pre>\n\n\n\n<p>Parameter Description:<\/p>\n\n\n\n<ul>\n<li><code>LightMultipleColor<\/code>: control 15 lights in the lucki robot.<\/li>\n<\/ul>\n\n\n\n<p>Return Value:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">int result 1 command executed \/ -1 not executed<\/pre>\n\n\n\n<figure class=\"wp-block-table is-style-regular\"><table><thead><tr><th>Greetbot<\/th><th>Mini<\/th><th>Lucki<\/th><th>Baoxiaodi MAX<\/th><th>Baodaping<\/th><\/tr><\/thead><tbody><tr><td>No<\/td><td>No<\/td><td>Yes<\/td><td>No<\/td><td>No<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 id=\"api-reference-system-functions-get-local-sn\"><strong>Get local SN<\/strong><a href=\"https:\/\/ainirobot.gatsbyjs.io\/docs\/apk\/apk-development\/#api-reference-system-functions-get-local-sn\"><\/a><\/h3>\n\n\n\n<p>Method name:&nbsp;<code>getRobotSn<\/code><\/p>\n\n\n\n<p>Calling method:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">boolean status = RobotApi.getInstance().getRobotSn(    \n    new CommandListener() {        \n        @Override        \n        public void onResult(int result, String message) {            \n            if (Definition.RESULT_OK == result) {                \n                String serialNum = message;            \n            } else {            \n            }        \n        }    \n    });<\/pre>\n\n\n\n<p>Parameter Description:<\/p>\n\n\n\n<ul>\n<li><code>listener<\/code>:&nbsp;<code>CommandListener<\/code>&nbsp;message callback&nbsp;<code>{\"code\":0, \"message\":\"err msg\"}<\/code><\/li>\n<\/ul>\n\n\n\n<p>Return Value:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">int result 1 command executed \/ -1 not executed<\/pre>\n\n\n\n<p>Applicable Platform:<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-regular\"><table><thead><tr><th>Greetbot<\/th><th>Mini<\/th><th>Lucki<\/th><th>Baoxiaodi MAX<\/th><th>Baodaping<\/th><\/tr><\/thead><tbody><tr><td>Yes<\/td><td>Yes<\/td><td>Yes<\/td><td>Yes<\/td><td>Yes<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 id=\"api-reference-system-functions-get-the-system-version\"><strong>Get the system version<\/strong><a href=\"https:\/\/ainirobot.gatsbyjs.io\/docs\/apk\/apk-development\/#api-reference-system-functions-get-the-system-version\"><\/a><\/h3>\n\n\n\n<p>Method name: getVersion<\/p>\n\n\n\n<p>Calling method:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">String version = RobotApi.getInstance().getVersion();<\/pre>\n\n\n\n<p>Applicable Platform:<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-regular\"><table><thead><tr><th>Greetbot<\/th><th>Mini<\/th><th>Lucki<\/th><th>Baoxiaodi MAX<\/th><th>Baodaping<\/th><\/tr><\/thead><tbody><tr><td>Yes<\/td><td>Yes<\/td><td>Yes<\/td><td>Yes<\/td><td>Yes<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 id=\"api-reference-system-functions-prohibit-system-functions\"><strong>Prohibit system functions<\/strong><a href=\"https:\/\/ainirobot.gatsbyjs.io\/docs\/apk\/apk-development\/#api-reference-system-functions-prohibit-system-functions\"><\/a><\/h3>\n\n\n\n<h3 id=\"api-reference-system-functions-the-system-no-longer-takes-over-the-emergency-stop-event-there-is-no-emergency-stop-screen-but-the-robot-cannot-use-the-motion-function-other-abilities-can-be-used\">The system no longer takes over the emergency stop event, there is no emergency stop screen, but the robot cannot use the motion function, other abilities can be used<a href=\"https:\/\/ainirobot.gatsbyjs.io\/docs\/apk\/apk-development\/#api-reference-system-functions-the-system-no-longer-takes-over-the-emergency-stop-event-there-is-no-emergency-stop-screen-but-the-robot-cannot-use-the-motion-function-other-abilities-can-be-used\"><\/a><\/h3>\n\n\n\n<p>Method name: disableEmergency<\/p>\n\n\n\n<p>Calling method:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">RobotApi.getInstance.disableEmergency();<\/pre>\n\n\n\n<p>API for obtaining emergency status, or rigister listener:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">RobotApi.getInstance().getRobotStatus(Definition.STATUS_EMERGENCY,new StatusListener(){            \n    @Override            \n    public void onStatusUpdate(String type, String data) throws RemoteException {                        \n        Log.d(\"onStatusUpdate\",\"Status:\"+data);            \n    }        \n});\nRobotApi.getInstance().registerStatusListener(Definition.STATUS_EMERGENCY,new StatusListener(){    \n    @Override    \n    public void onStatusUpdate(String type, String data) throws RemoteException {            \n        Log.d(\"onStatusUpdate\",\"status:\"+type+\";value:\"+data);    \n    }\n});<\/pre>\n\n\n\n<p>Applicable Platform:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Greetbot<\/th><th>Mini<\/th><th>Lucki<\/th><th>Baoxiaodi MAX<\/th><th>Baodaping<\/th><\/tr><\/thead><tbody><tr><td>Yes<\/td><td>Yes<\/td><td>Yes<\/td><td>Yes<\/td><td>Yes<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 id=\"api-reference-system-functions-disable-the-current-battery-interface-you-can-use-any-ability-of-the-client-app-except-the-chassis-when-charging\">Disable the current battery interface, you can use any ability of the client app except the chassis when charging<a href=\"https:\/\/ainirobot.gatsbyjs.io\/docs\/apk\/apk-development\/#api-reference-system-functions-disable-the-current-battery-interface-you-can-use-any-ability-of-the-client-app-except-the-chassis-when-charging\"><\/a><\/h3>\n\n\n\n<p>Method name: disableBattery<\/p>\n\n\n\n<p>Calling method:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">RobotApi.getInstance().disableBattery();<\/pre>\n\n\n\n<p>API for obtaining battery status:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">RobotSettingApi.getInstance().getRobotString(Definition.ROBOT_SETTINGS_BATTERY_INFO);<\/pre>\n\n\n\n<p>Applicable Platform:<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-regular\"><table><thead><tr><th>Greetbot<\/th><th>Mini<\/th><th>Lucki<\/th><th>Baoxiaodi MAX<\/th><th>Baodaping<\/th><\/tr><\/thead><tbody><tr><td>Yes<\/td><td>Yes<\/td><td>Yes<\/td><td>Yes<\/td><td>Yes<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 id=\"api-reference-system-functions-disable-function-keys-the-button-behind-the-head-of-lucky-leopard-used-to-terminate-the-current-task\">Disable function keys, the button behind the head of Lucky Leopard, used to terminate the current task<a href=\"https:\/\/ainirobot.gatsbyjs.io\/docs\/apk\/apk-development\/#api-reference-system-functions-disable-function-keys-the-button-behind-the-head-of-lucky-leopard-used-to-terminate-the-current-task\"><\/a><\/h3>\n\n\n\n<p>Method name: disableFunctionKey<\/p>\n\n\n\n<p>Calling method:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">RobotApi.getInstance().disableFunctionKey();<\/pre>\n\n\n\n<p>Applicable Platform:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Greetbot<\/th><th>Mini<\/th><th>Lucki<\/th><th>Baoxiaodi MAX<\/th><th>Baodaping<\/th><\/tr><\/thead><tbody><tr><td>No<\/td><td>No<\/td><td>Yes<\/td><td>No<\/td><td>No<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 id=\"api-reference-system-functions-dormant\"><strong>Dormant<\/strong><a href=\"https:\/\/ainirobot.gatsbyjs.io\/docs\/apk\/apk-development\/#api-reference-system-functions-dormant\"><\/a><\/h3>\n\n\n\n<p>Scene introduction:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">Hibernation is a mode that allows the robot to keep running at low power consumption when there is no task or when the battery is low. To use this function , you need to add this to your project.\n&lt;uses-permission android:name=\"com.ainirobot.coreservice.robotSettingProvider\" \/><\/pre>\n\n\n\n<p>Applicable Platform:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Greetbot<\/th><th>Mini<\/th><th>Lucki<\/th><th>Baoxiaodi MAX<\/th><th>Baodaping<\/th><\/tr><\/thead><tbody><tr><td>No<\/td><td>No<\/td><td>Yes<\/td><td>No<\/td><td>No<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 id=\"api-reference-system-functions-hibernate\"><strong>Hibernate<\/strong><a href=\"https:\/\/ainirobot.gatsbyjs.io\/docs\/apk\/apk-development\/#api-reference-system-functions-hibernate\"><\/a><\/h3>\n\n\n\n<p>Method name: robotStandby<\/p>\n\n\n\n<p>Calling method:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">RobotApi.getInstance().robotStandby(0, new CommandListener() {    \n    @Override    \n    public void onStatusUpdate(int status, String data, String extraData) {                \n        super.onStatusUpdate(status, data, extraData);    \n    }\n});<\/pre>\n\n\n\n<h3 id=\"api-reference-system-functions-stop-hibernation\"><strong>Stop hibernation<\/strong><a href=\"https:\/\/ainirobot.gatsbyjs.io\/docs\/apk\/apk-development\/#api-reference-system-functions-stop-hibernation\"><\/a><\/h3>\n\n\n\n<p>Method name: robotStandbyEnd<\/p>\n\n\n\n<p>Calling method:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">RobotApi.getInstance().robotStandbyEnd(reqId);<\/pre>\n\n\n\n<h2 id=\"api-reference-big-screen-bot-development\"><strong>BigScreenBot Development<\/strong><a href=\"https:\/\/ainirobot.gatsbyjs.io\/docs\/apk\/apk-development\/#api-reference-big-screen-bot-development\"><\/a><\/h2>\n\n\n\n<h3 id=\"api-reference-big-screen-bot-development-introduction\"><strong>Introduction<\/strong><a href=\"https:\/\/ainirobot.gatsbyjs.io\/docs\/apk\/apk-development\/#api-reference-big-screen-bot-development-introduction\"><\/a><\/h3>\n\n\n\n<p>BigScreenBot is a large-screen version of GreetBot, which supports large-screen display content.<\/p>\n\n\n\n<h3 id=\"api-reference-big-screen-bot-development-1-permission-issues\"><strong>1. Permission issues<\/strong><a href=\"https:\/\/ainirobot.gatsbyjs.io\/docs\/apk\/apk-development\/#api-reference-big-screen-bot-development-1-permission-issues\"><\/a><\/h3>\n\n\n\n<p>BigScreenBot display content must apply for the SYSTEM_ALERT_WINDOW permission of the global pop-up dialog box.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">&lt;uses-permission android:name=\"android.permission.SYSTEM_ALERT_WINDOW\" \/><\/pre>\n\n\n\n<h3 id=\"api-reference-big-screen-bot-development-2-the-picture-is-not-full-screen-problem\"><strong>2. The picture is not full screen problem<\/strong><a href=\"https:\/\/ainirobot.gatsbyjs.io\/docs\/apk\/apk-development\/#api-reference-big-screen-bot-development-2-the-picture-is-not-full-screen-problem\"><\/a><\/h3>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">&lt;ImageView    \n    android:id=\"@+id\/bs_image\"    \n    android:layout_width=\"match_parent\"    \n    android:layout_height=\"match_parent\"    \n    android:layout_weight=\"1\"    \n    android:scaleType=\"fitXY\"\/><\/pre>\n\n\n\n<p><a href=\"https:\/\/orion-base-test-1256573505.cos.ap-beijing.myqcloud.com\/cn_docs_file\/2022-01-13_17%3A53%3A33_DoubleScreen.zip\" target=\"_blank\" rel=\"noreferrer noopener\">Sample code<\/a><\/p>\n\n\n\n<h2 id=\"api-reference-multi-robots-info\"><strong>Multi Robots Info<\/strong><a href=\"https:\/\/ainirobot.gatsbyjs.io\/docs\/apk\/apk-development\/#api-reference-multi-robots-info\"><\/a><\/h2>\n\n\n\n<h3 id=\"api-reference-multi-robots-info-get-multi-robots-info\"><strong>Get multi robots info<\/strong><a href=\"https:\/\/ainirobot.gatsbyjs.io\/docs\/apk\/apk-development\/#api-reference-multi-robots-info-get-multi-robots-info\"><\/a><\/h3>\n\n\n\n<p>If the robot have ESP32 multi-robot hardware, use this code get receive multi-robot info.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">JRobotApi.getInstance().registerStatusListener(Definition.STATUS_MULTIPLE_ROBOT_WORKING, mStatusListener);\nprivate StatusListener mStatusListener = new StatusListener() {    \n    @Override    \n    public void onStatusUpdate(String type, String data) {        \n        try {            \n            Type dataType = new TypeToken&lt;List&lt;MultiRobotStatus>>(){}.getType();                \n            List&lt;MultiRobotStatus> curRobotStatus = mGson.fromJson(data, dataType);        \n        }catch(Exception ex){        \n        }    \n    }\n}<\/pre>\n\n\n\n<p>If the robot does not have ESP32 multi-robot hardware, this will not work. And about the structure of MultiRobotStatus, just like this:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">public class MultiRobotStatus {    \n    private BasePoseBean pose;    \n    private BasePoseBean goal;    \n    private int id;    \n    private int priority;    \n    private boolean mapMatch;    \n    private long time;    \n    private int status;    \n    private boolean curRobot = false;    \n    private int errorStatus = 0;\n}<\/pre>\n\n\n\n<figure class=\"wp-block-table is-style-regular\"><table><thead><tr><th>Greetbot<\/th><th>Mini<\/th><th>Lucki<\/th><th>Baoxiaodi MAX<\/th><th>Baodaping<\/th><\/tr><\/thead><tbody><tr><td>No<\/td><td>No<\/td><td>Yes<\/td><td>No<\/td><td>No<\/td><\/tr><\/tbody><\/table><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Set lighting effect Method name:&nbsp;setLight Calling method: Parameter Description: Return Value: Applicable Platform: Greetbot Mini Lucki Baoxiaodi MAX Baodaping Yes No Yes Yes No Setting up the lighting effect code demo can be found here (the code is suitable for Greetbot, please replace the robot jar package for other robots):Download Control lucki robot lights Method [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":[],"lsvr_kba_cat":[6],"lsvr_kba_tag":[],"_links":{"self":[{"href":"https:\/\/doc.orionstar.com\/en\/wp-json\/wp\/v2\/lsvr_kba\/555"}],"collection":[{"href":"https:\/\/doc.orionstar.com\/en\/wp-json\/wp\/v2\/lsvr_kba"}],"about":[{"href":"https:\/\/doc.orionstar.com\/en\/wp-json\/wp\/v2\/types\/lsvr_kba"}],"author":[{"embeddable":true,"href":"https:\/\/doc.orionstar.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/doc.orionstar.com\/en\/wp-json\/wp\/v2\/comments?post=555"}],"version-history":[{"count":2,"href":"https:\/\/doc.orionstar.com\/en\/wp-json\/wp\/v2\/lsvr_kba\/555\/revisions"}],"predecessor-version":[{"id":557,"href":"https:\/\/doc.orionstar.com\/en\/wp-json\/wp\/v2\/lsvr_kba\/555\/revisions\/557"}],"wp:attachment":[{"href":"https:\/\/doc.orionstar.com\/en\/wp-json\/wp\/v2\/media?parent=555"}],"wp:term":[{"taxonomy":"lsvr_kba_cat","embeddable":true,"href":"https:\/\/doc.orionstar.com\/en\/wp-json\/wp\/v2\/lsvr_kba_cat?post=555"},{"taxonomy":"lsvr_kba_tag","embeddable":true,"href":"https:\/\/doc.orionstar.com\/en\/wp-json\/wp\/v2\/lsvr_kba_tag?post=555"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}