I find a new and easier way to obtain Token & IP by using only the log file of Mi Home App on Android (I use the latest version on Play Store, currently: 5.4.54). This doesn’t involve third-party apps, except for a file manager and a text-viewer, any will do. And you can do it easily on Android.
First, use any file manager to access folder SMARTHOME/LOGS on INTERNAL MEMORY of your Android phone. Look for a log file with format yyyy-MM-dd.txt (for ex: 2019-02-01), choose the most recent file (today date).
Open that file with a text editor of your choice and search for the name of Xiaomi Robot (default: Mi Robot Vacuum), you will find something like this:
{"did":"117383849","token":"90557f13732y2494h278314a74d547b5","longitude":"x","latitude":"y","name":"Mi Robot Vacuum","pid":"0","localip":"192.168.88.68","mac":"40:31:3C:AA:BB:CC","ssid":"Your AP Name","bssid":"E4:8D:8C:EE:FF:GG","parent_id":"","parent_model":"","show_mode":1,"model":"rockrobo.vacuum.v1","adminFlag":1,"shareFlag":0,"permitLevel":16,"isOnline":true,"desc":"Zoned cleanup","extra":{"isSetPincode":0,"fw_version":"3.3.9_003460","needVerifyCode":0,"isPasswordEncrypt":0},"event":{"event.back_to_dock":"{\"timestamp\":1548817566,\"value\":[0]}
From here you can extract Token and Ip of the robot (“token”:“90557f13732y2494h278314a74d547b5”, “localip”:“192.168.88.68”
Can somebody confirm this method is working?