Released on August 10, 2022.
Compatibile with temi 129 Launcher, minimum version 16892.
129 temi Launcher and 1.129.0 SDK introduce the following changes.
Important changes
- 129 version only applies to temi V3 robot.
- temi V3 robot under 129 version must be paid as PRO plan to use 3rd party application integrated with temi SDK.
- Update the versioning format from 0.10.xx to 1.129.0, aligning with temi software 129 version.
- Update gradle script to include source and javadoc. Integration with SDK becomes easier, you can read method doc inside the package from IDE.
- Kiosk permission change requires 129 launcher and works with apps complied with previous SDK. All the rest changes will require both 129 launcher and SDK to be used.
New API
setTtsVoice()andgetTtsVoice(), for the 129 new feature to change TTS voice gender, speech and pitch. Settings permision required. (Ths feature is not available for Chinese Version temi)isStandByOn(),setStandBy()andstopStandBy(), to control standBy state of temi. Settings permision required.- Multi-Floor support
setMultiFloorEnabled(enabled: Boolean)to turn ON/OFF multi-floor feature, requires Settings and Map permission.isMultiFloorEnabled()to check multi-floor feature status.getCurrentFloor(), return Floor object with floor id, name, map id, and locations, requires Map permission.getAllFloors()return all floors, requires Map permission.loadFloor()load a floor with floorId and postion of target floor. This floor id must come fromgetAllFloors()API, requires Map permission.OnLoadFloorStatusChangedListenerwill provide floor switching callbacks.
Permission changes
Most APIs will no longer require Kiosk permission. i.e. Your app doesn't need to be the selected home page application to call the method.
APIs that still require Kiosk permission are
- shutdown()
- restart()
- publishTtsStatus()
- startDefaultNlu()
All the rest won't require Kiosk permission, but still need permissions like Sequence, Face if appliable.
New return value
- Return an UUID String for
loadMap()andloadMapWithPosition(), which will be received inonLoadMapStatusChangedduring map loading. - Under greet mode,
ContactModelinOnFaceRecognizedListenerandOnContinuousFaceRecognizedListenerwill return tracked visitors, with infomation of UUID, age, gender, and similarity. It will benefit when tracking unregistered user, as the UUID for the same person is expected to identical across multiple greet mode recognition sessions. The stranger pool size is up to 200, will be cleared on robot boot, or midnight if greet mode is OFF. onGoToLocationStatusChangedwill provide more information aboutAbortstatus in the field of description, giving more explain to descriptionId 1003, 1004, 1005 and 1006.
The full list of abort and calculating is
| ID | Description |
|---|---|
| 500 | "Complete" |
| 0 | "Abort General" |
| 1003 | "Abort no movement" |
| 1004 | "Abort timeout" |
| 1005 | "Abort by user" |
| 1006 | "Abort out of map bounds" |
| 1060 | "Path Plan" |
| 2000 | "Obstacle" |
| 2001 | "Ground Obstacle" |
| 2002 | "Hight Obstacle" |
| 2003 | "Lidar Obstacle" |
| 2004 | "Front Obstacle" |
| 2005 | "Back Obstacle" |
| 2006 | "Abyss Obstacle" |
| 2007 | "Virtual Wall Obstacle" |
| 2008 | "Cliff Detected" |
| 2009 | "Stuck Wheel" |
| 1020- 1050 | "Calculating" |
| 5000- 5021 | "Calculating" |
| 10007 | "Going" |
| - | "Unknown" |
New overload parameter
loadMap()andloadMapWithPosition()can take the parametersoffline: BooleanandwithoutUI: Boolean.- set
offline = truewill skip the network request for pending map update check from temi cloud service, and load local cached map directly, default as false - set
withoutUI = truewill not show the blocking UI while loading map, it is then the responsibility of app to protect unwanted operations during loading map, default as false.
- set
TtsRequestcan take new constructor parametercached, ifcached = true, the synthesized TTS will be saved in an LruCache and can be used offline when requested next time, the cache size is 10MB for each package, one short TTS is about 100KB in size. This will benefit if there are constantly spoken sentences, e.g. fromstrings.xml, further tts requests can be used offline, and immediately spoken. The default value for cached is false.
Bug fix
- Fix robot would go to coordinate (0, 0) when location sent in Robot.goTo() is invalid.
- Fix navigation safety value medium is returned as high from Robot.navigationSafety.
Sample
- SDK sample app is updated to better show frequently changed callback data.