standardbots 2.20241120.1__py3-none-any.whl → 2.20250128.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of standardbots might be problematic. Click here for more details.

@@ -76,6 +76,55 @@ class RequestManager:
76
76
 
77
77
  class Default:
78
78
  _request_manager: RequestManager
79
+ class Calibration:
80
+ def __init__(self, request_manager: RequestManager):
81
+ self._request_manager = request_manager
82
+
83
+
84
+ def get_active_calibration(
85
+ self,
86
+ ) -> Response[
87
+ Union[
88
+ models.ActiveCalibrationResponse,
89
+ models.ErrorResponse,
90
+ None
91
+ ],
92
+ models.ActiveCalibrationResponse
93
+ ]:
94
+ """
95
+ Get the active calibration for the robot.
96
+
97
+ """
98
+ path = "/api/v1/calibration/active"
99
+ try:
100
+ response = self._request_manager.request(
101
+ "GET",
102
+ path,
103
+ headers=self._request_manager.json_headers(),
104
+ )
105
+ parsed = None
106
+ if response.status == 200:
107
+ parsed = models.parse_active_calibration_response(json.loads(response.data))
108
+
109
+ is_user_error = response.status >= 400 and response.status <= 500
110
+ is_unavailable = response.status == 503
111
+ if parsed is None and (is_user_error or is_unavailable):
112
+ parsed = models.parse_error_response(json.loads(response.data))
113
+
114
+ return Response(
115
+ parsed,
116
+ response.status,
117
+ response
118
+ )
119
+ except urllib3.exceptions.MaxRetryError:
120
+ return Response(
121
+ models.ErrorResponse(
122
+ error=models.ErrorEnum.InternalServerError,
123
+ message="Connection Refused"
124
+ ),
125
+ 503,
126
+ None
127
+ )
79
128
  class Equipment:
80
129
  def __init__(self, request_manager: RequestManager):
81
130
  self._request_manager = request_manager
@@ -188,7 +237,7 @@ class Default:
188
237
  return self.control_gripper(
189
238
  body=models.GripperCommandRequest(
190
239
  kind=models.GripperKindEnum.DhCgi,
191
- dh_pgc=models.DHCGIGripperCommandRequest(
240
+ dh_cgi=models.DHCGIGripperCommandRequest(
192
241
  target_diameter, target_force, target_speed
193
242
  ),
194
243
  ),
@@ -382,12 +431,14 @@ class Default:
382
431
  None
383
432
  )
384
433
 
434
+ calibration: Calibration
385
435
  equipment: Equipment
386
436
  sensors: Sensors
387
437
  space: Space
388
438
 
389
439
  def __init__(self, request_manager: RequestManager):
390
440
  self._request_manager = request_manager
441
+ self.calibration = Default.Calibration(request_manager)
391
442
  self.equipment = Default.Equipment(request_manager)
392
443
  self.sensors = Default.Sensors(request_manager)
393
444
  self.space = Default.Space(request_manager)
@@ -713,7 +764,7 @@ class Camera:
713
764
  None
714
765
  ]:
715
766
  """
716
- Retrieve the latest RGB frame from the camera.
767
+ Retrieve the latest RGB frame from the camera. In JPEG format.
717
768
  """
718
769
  path = "/api/v1/camera/frame/rgb"
719
770
  try:
@@ -932,6 +983,113 @@ class Faults:
932
983
  self._request_manager = request_manager
933
984
  self.user_faults = Faults.UserFaults(request_manager)
934
985
 
986
+ class General:
987
+ _request_manager: RequestManager
988
+ class BotIdentity:
989
+ def __init__(self, request_manager: RequestManager):
990
+ self._request_manager = request_manager
991
+
992
+
993
+ def bot_identity(
994
+ self,
995
+ ) -> Response[
996
+ Union[
997
+ models.BotIdentityData,
998
+ models.ErrorResponse,
999
+ None
1000
+ ],
1001
+ models.BotIdentityData
1002
+ ]:
1003
+ """
1004
+ Get information about the robot&#x27;s identity.
1005
+ """
1006
+ path = "/api/v1/identity/bot_identity"
1007
+ try:
1008
+ response = self._request_manager.request(
1009
+ "GET",
1010
+ path,
1011
+ headers=self._request_manager.json_headers(),
1012
+ )
1013
+ parsed = None
1014
+ if response.status == 200:
1015
+ parsed = models.parse_bot_identity_data(json.loads(response.data))
1016
+
1017
+ is_user_error = response.status >= 400 and response.status <= 500
1018
+ is_unavailable = response.status == 503
1019
+ if parsed is None and (is_user_error or is_unavailable):
1020
+ parsed = models.parse_error_response(json.loads(response.data))
1021
+
1022
+ return Response(
1023
+ parsed,
1024
+ response.status,
1025
+ response
1026
+ )
1027
+ except urllib3.exceptions.MaxRetryError:
1028
+ return Response(
1029
+ models.ErrorResponse(
1030
+ error=models.ErrorEnum.InternalServerError,
1031
+ message="Connection Refused"
1032
+ ),
1033
+ 503,
1034
+ None
1035
+ )
1036
+ class Joints:
1037
+ def __init__(self, request_manager: RequestManager):
1038
+ self._request_manager = request_manager
1039
+
1040
+
1041
+ def get_joints_state(
1042
+ self,
1043
+ ) -> Response[
1044
+ Union[
1045
+ models.JointsStateResponse,
1046
+ models.ErrorResponse,
1047
+ None
1048
+ ],
1049
+ models.JointsStateResponse
1050
+ ]:
1051
+ """
1052
+ Retrieves information about the state of each joint
1053
+ """
1054
+ path = "/api/v1/joints"
1055
+ try:
1056
+ response = self._request_manager.request(
1057
+ "GET",
1058
+ path,
1059
+ headers=self._request_manager.json_headers(),
1060
+ )
1061
+ parsed = None
1062
+ if response.status == 200:
1063
+ parsed = models.parse_joints_state_response(json.loads(response.data))
1064
+
1065
+ is_user_error = response.status >= 400 and response.status <= 500
1066
+ is_unavailable = response.status == 503
1067
+ if parsed is None and (is_user_error or is_unavailable):
1068
+ parsed = models.parse_error_response(json.loads(response.data))
1069
+
1070
+ return Response(
1071
+ parsed,
1072
+ response.status,
1073
+ response
1074
+ )
1075
+ except urllib3.exceptions.MaxRetryError:
1076
+ return Response(
1077
+ models.ErrorResponse(
1078
+ error=models.ErrorEnum.InternalServerError,
1079
+ message="Connection Refused"
1080
+ ),
1081
+ 503,
1082
+ None
1083
+ )
1084
+
1085
+ bot_identity: BotIdentity
1086
+ joints: Joints
1087
+
1088
+ def __init__(self, request_manager: RequestManager):
1089
+ self._request_manager = request_manager
1090
+ self.bot_identity = General.BotIdentity(request_manager)
1091
+ self.joints = General.Joints(request_manager)
1092
+
935
1093
  class ChatGPT:
936
1094
  _request_manager: RequestManager
937
1095
  class Data:
@@ -1136,63 +1294,6 @@ class IO:
1136
1294
  self.control = IO.Control(request_manager)
1137
1295
  self.status = IO.Status(request_manager)
1138
1296
 
1139
- class General:
1140
- _request_manager: RequestManager
1141
- class Joints:
1142
- def __init__(self, request_manager: RequestManager):
1143
- self._request_manager = request_manager
1144
-
1145
-
1146
- def get_joints_state(
1147
- self,
1148
- ) -> Response[
1149
- Union[
1150
- models.JointsStateResponse,
1151
- models.ErrorResponse,
1152
- None
1153
- ],
1154
- models.JointsStateResponse
1155
- ]:
1156
- """
1157
- Retrieves information about the state of each joint
1158
- """
1159
- path = "/api/v1/joints"
1160
- try:
1161
- response = self._request_manager.request(
1162
- "GET",
1163
- path,
1164
- headers=self._request_manager.json_headers(),
1165
- )
1166
- parsed = None
1167
- if response.status == 200:
1168
- parsed = models.parse_joints_state_response(json.loads(response.data))
1169
-
1170
- is_user_error = response.status >= 400 and response.status <= 500
1171
- is_unavailable = response.status == 503
1172
- if parsed is None and (is_user_error or is_unavailable):
1173
- parsed = models.parse_error_response(json.loads(response.data))
1174
-
1175
- return Response(
1176
- parsed,
1177
- response.status,
1178
- response
1179
- )
1180
- except urllib3.exceptions.MaxRetryError:
1181
- return Response(
1182
- models.ErrorResponse(
1183
- error=models.ErrorEnum.InternalServerError,
1184
- message="Connection Refused"
1185
- ),
1186
- 503,
1187
- None
1188
- )
1189
-
1190
- joints: Joints
1191
-
1192
- def __init__(self, request_manager: RequestManager):
1193
- self._request_manager = request_manager
1194
- self.joints = General.Joints(request_manager)
1195
-
1196
1297
  class Poses:
1197
1298
  _request_manager: RequestManager
1198
1299
  class ConstructPose:
@@ -1662,15 +1763,15 @@ class Recovery:
1662
1763
  self,
1663
1764
  ) -> Response[
1664
1765
  Union[
1665
- models.RecoveryStatusResponse,
1766
+ models.FailureStateResponse,
1666
1767
  models.ErrorResponse,
1667
1768
  models.ErrorResponse,
1668
1769
  None
1669
1770
  ],
1670
- models.RecoveryStatusResponse
1771
+ models.FailureStateResponse
1671
1772
  ]:
1672
1773
  """
1673
- Recovers the robot from a fault state.
1774
+ Attempts to recover the robot from a fault state. Inspect the response to determine if additional recovery actions are required.
1674
1775
 
1675
1776
  """
1676
1777
  path = "/api/v1/recovery/recover"
@@ -1682,7 +1783,7 @@ class Recovery:
1682
1783
  )
1683
1784
  parsed = None
1684
1785
  if response.status == 200:
1685
- parsed = models.parse_recovery_status_response(json.loads(response.data))
1786
+ parsed = models.parse_failure_state_response(json.loads(response.data))
1686
1787
  if response.status == 400:
1687
1788
  parsed = models.parse_error_response(json.loads(response.data))
1688
1789
 
@@ -2493,9 +2594,9 @@ class StandardBotsRobot(Default):
2493
2594
  movement: Movement
2494
2595
  camera: Camera
2495
2596
  faults: Faults
2597
+ general: General
2496
2598
  chat_gpt: ChatGPT
2497
2599
  io: IO
2498
- general: General
2499
2600
  poses: Poses
2500
2601
  recovery: Recovery
2501
2602
  ros: ROS
@@ -2517,9 +2618,9 @@ class StandardBotsRobot(Default):
2517
2618
  self.movement = Movement(self._request_manager)
2518
2619
  self.camera = Camera(self._request_manager)
2519
2620
  self.faults = Faults(self._request_manager)
2621
+ self.general = General(self._request_manager)
2520
2622
  self.chat_gpt = ChatGPT(self._request_manager)
2521
2623
  self.io = IO(self._request_manager)
2522
- self.general = General(self._request_manager)
2523
2624
  self.poses = Poses(self._request_manager)
2524
2625
  self.recovery = Recovery(self._request_manager)
2525
2626
  self.ros = ROS(self._request_manager)