@wandelbots/nova-api 25.7.0-dev.8 → 25.7.0-rc.1

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.
package/v2/api.ts CHANGED
@@ -210,6 +210,12 @@ export interface App {
210
210
  * @memberof App
211
211
  */
212
212
  'storage'?: ContainerStorage;
213
+ /**
214
+ *
215
+ * @type {ContainerResources}
216
+ * @memberof App
217
+ */
218
+ 'resources'?: ContainerResources;
213
219
  /**
214
220
  * Defines the URL path suffix used to check the application\'s health status. The complete health check URL is constructed as `/$cell/$name/$health_path`. When the application is working as expected, the endpoint returns an HTTP 200 status code. If not specified, the system will default to using the application icon path suffix (the value of `app_icon`) as the health check endpoint, resulting in `/$cell/$name/$app_icon`. If the health check fails (no response or non-200 status code), the system will automatically restart the application container to restore service.
215
221
  * @type {string}
@@ -366,6 +372,182 @@ export const BoxBoxTypeEnum = {
366
372
 
367
373
  export type BoxBoxTypeEnum = typeof BoxBoxTypeEnum[keyof typeof BoxBoxTypeEnum];
368
374
 
375
+ /**
376
+ * PROFINET BUS Inputs/Outputs Service configuration.
377
+ * @export
378
+ * @interface BusIOProfinet
379
+ */
380
+ export interface BusIOProfinet {
381
+ /**
382
+ *
383
+ * @type {string}
384
+ * @memberof BusIOProfinet
385
+ */
386
+ 'bus_type'?: BusIOProfinetBusTypeEnum;
387
+ /**
388
+ * Path to the configuration file.
389
+ * @type {string}
390
+ * @memberof BusIOProfinet
391
+ */
392
+ 'config_file_content'?: string;
393
+ /**
394
+ *
395
+ * @type {BusIOProfinetNetwork}
396
+ * @memberof BusIOProfinet
397
+ */
398
+ 'network_config'?: BusIOProfinetNetwork;
399
+ /**
400
+ * MAC address for the PROFINET port, should be get from another NOVA API endpoind?
401
+ * @type {string}
402
+ * @memberof BusIOProfinet
403
+ */
404
+ 'mac': string;
405
+ /**
406
+ *
407
+ * @type {BusIOProfinetDefaultRoute}
408
+ * @memberof BusIOProfinet
409
+ */
410
+ 'default_route': BusIOProfinetDefaultRoute;
411
+ }
412
+
413
+ export const BusIOProfinetBusTypeEnum = {
414
+ Profinet: 'profinet'
415
+ } as const;
416
+
417
+ export type BusIOProfinetBusTypeEnum = typeof BusIOProfinetBusTypeEnum[keyof typeof BusIOProfinetBusTypeEnum];
418
+
419
+ /**
420
+ * Default route configuration for the PROFINET service. Will be removed before release by automatic default route configuration, if possible.
421
+ * @export
422
+ * @interface BusIOProfinetDefaultRoute
423
+ */
424
+ export interface BusIOProfinetDefaultRoute {
425
+ /**
426
+ * Gateway for the default route.
427
+ * @type {string}
428
+ * @memberof BusIOProfinetDefaultRoute
429
+ */
430
+ 'gateway': string;
431
+ /**
432
+ * Interface for the default route.
433
+ * @type {string}
434
+ * @memberof BusIOProfinetDefaultRoute
435
+ */
436
+ 'interface': string;
437
+ }
438
+ /**
439
+ * Network configuration for the PROFINET device
440
+ * @export
441
+ * @interface BusIOProfinetIpConfig
442
+ */
443
+ export interface BusIOProfinetIpConfig {
444
+ /**
445
+ * IP address for the PROFINET device
446
+ * @type {string}
447
+ * @memberof BusIOProfinetIpConfig
448
+ */
449
+ 'ip': string;
450
+ /**
451
+ * Network mask for the PROFINET device.
452
+ * @type {string}
453
+ * @memberof BusIOProfinetIpConfig
454
+ */
455
+ 'netmask': string;
456
+ /**
457
+ * Gateway for the PROFINET device
458
+ * @type {string}
459
+ * @memberof BusIOProfinetIpConfig
460
+ */
461
+ 'gateway': string;
462
+ }
463
+ /**
464
+ *
465
+ * @export
466
+ * @interface BusIOProfinetNetwork
467
+ */
468
+ export interface BusIOProfinetNetwork {
469
+ /**
470
+ * Name of the PROFINET device.
471
+ * @type {string}
472
+ * @memberof BusIOProfinetNetwork
473
+ */
474
+ 'device_name'?: string;
475
+ /**
476
+ *
477
+ * @type {BusIOProfinetIpConfig}
478
+ * @memberof BusIOProfinetNetwork
479
+ */
480
+ 'ip_config'?: BusIOProfinetIpConfig;
481
+ /**
482
+ * Content of the PROFINET REMA XML file.
483
+ * @type {string}
484
+ * @memberof BusIOProfinetNetwork
485
+ */
486
+ 'rema_xml_content'?: string;
487
+ }
488
+ /**
489
+ * Virtual PROFINET BUS Inputs/Outputs Service configuration.
490
+ * @export
491
+ * @interface BusIOProfinetVirtual
492
+ */
493
+ export interface BusIOProfinetVirtual {
494
+ /**
495
+ *
496
+ * @type {string}
497
+ * @memberof BusIOProfinetVirtual
498
+ */
499
+ 'bus_type'?: BusIOProfinetVirtualBusTypeEnum;
500
+ }
501
+
502
+ export const BusIOProfinetVirtualBusTypeEnum = {
503
+ VirtualProfinet: 'virtual_profinet'
504
+ } as const;
505
+
506
+ export type BusIOProfinetVirtualBusTypeEnum = typeof BusIOProfinetVirtualBusTypeEnum[keyof typeof BusIOProfinetVirtualBusTypeEnum];
507
+
508
+ /**
509
+ * @type BusIOType
510
+ * @export
511
+ */
512
+ export type BusIOType = { bus_type: 'profinet' } & BusIOProfinet | { bus_type: 'profinet_virtual' } & BusIOProfinetVirtual;
513
+
514
+ /**
515
+ *
516
+ * @export
517
+ * @interface BusIOsState
518
+ */
519
+ export interface BusIOsState {
520
+ /**
521
+ *
522
+ * @type {BusIOsStateEnum}
523
+ * @memberof BusIOsState
524
+ */
525
+ 'state': BusIOsStateEnum;
526
+ /**
527
+ * A message providing additional information on the input/output, e.g. BUS service status, encountered errors. May be empty if no additional information is available.
528
+ * @type {string}
529
+ * @memberof BusIOsState
530
+ */
531
+ 'message'?: string;
532
+ }
533
+
534
+
535
+ /**
536
+ * Current state of the BUS input/output service.
537
+ * @export
538
+ * @enum {string}
539
+ */
540
+
541
+ export const BusIOsStateEnum = {
542
+ BusIosStateUnknown: 'BUS_IOS_STATE_UNKNOWN',
543
+ BusIosStateInitializing: 'BUS_IOS_STATE_INITIALIZING',
544
+ BusIosStateConnected: 'BUS_IOS_STATE_CONNECTED',
545
+ BusIosStateDisconnected: 'BUS_IOS_STATE_DISCONNECTED'
546
+ } as const;
547
+
548
+ export type BusIOsStateEnum = typeof BusIOsStateEnum[keyof typeof BusIOsStateEnum];
549
+
550
+
369
551
  /**
370
552
  * Defines a cylindrical shape with 2 semi-spheres on the top and bottom. Centred around origin, symmetric around z-axis.
371
553
  * @export
@@ -514,13 +696,13 @@ export interface Collision {
514
696
  * @type {string}
515
697
  * @memberof Collision
516
698
  */
517
- 'id_of_world'?: string;
699
+ 'id_of_layer'?: string;
518
700
  /**
519
701
  * A three-dimensional vector [x, y, z] with double precision.
520
702
  * @type {Array<number>}
521
703
  * @memberof Collision
522
704
  */
523
- 'normal_world_on_b'?: Array<number>;
705
+ 'normal_root_on_b'?: Array<number>;
524
706
  /**
525
707
  *
526
708
  * @type {CollisionContact}
@@ -551,7 +733,7 @@ export interface CollisionContact {
551
733
  * @type {Array<number>}
552
734
  * @memberof CollisionContact
553
735
  */
554
- 'world'?: Array<number>;
736
+ 'root'?: Array<number>;
555
737
  }
556
738
  /**
557
739
  *
@@ -567,110 +749,42 @@ export interface CollisionError {
567
749
  'collision'?: FeedbackCollision;
568
750
  }
569
751
  /**
570
- *
752
+ * @type CollisionFreeAlgorithm
753
+ * Configuration for collision-free path planning algorithms. Different algorithms may have different parameters and behavior.
571
754
  * @export
572
- * @interface CollisionMotionGroup
573
755
  */
574
- export interface CollisionMotionGroup {
575
- /**
576
- * A link chain is a kinematic chain of links that is connected via joints. A motion group can be used to control the motion of the joints in a link chain. A link is a group of colliders that is attached to the link reference frame. The reference frame of a link is obtained after applying all sets of Denavit-Hartenberg-parameters from base to (including) the link index. This means that the reference frame of the link is on the rotation axis of the next joint in the kinematic chain. Example: For a motion group with 2 joints, the collider reference frame (CRF) for link 1 is on the rotation axis of joint 2. The chain looks like: - Origin >> Mounting >> Base >> (CRF Base) Joint 0 >> Link 0 >> (CRF Link 0) Joint 1 >> Link 1 >> (CRF Link 1) Flange (CRF Tool) >> TCP Adjacent links in the kinematic chain of the motion group are not checked for mutual collision.
577
- * @type {Array<{ [key: string]: Collider; }>}
578
- * @memberof CollisionMotionGroup
579
- */
580
- 'link_chain'?: Array<{ [key: string]: Collider; }>;
581
- /**
582
- * Defines the shape of a tool. A tool is a dictionary of colliders. All colliders that make up a tool are attached to the flange frame of the motion group.
583
- * @type {{ [key: string]: Collider; }}
584
- * @memberof CollisionMotionGroup
585
- */
586
- 'tool'?: { [key: string]: Collider; };
587
- }
756
+ export type CollisionFreeAlgorithm = MidpointInsertionAlgorithm | RRTConnectAlgorithm;
757
+
588
758
  /**
589
759
  *
590
760
  * @export
591
- * @interface CollisionMotionGroupAssembly
761
+ * @interface CollisionSetup
592
762
  */
593
- export interface CollisionMotionGroupAssembly {
594
- /**
595
- * References a stored link chain.
596
- * @type {string}
597
- * @memberof CollisionMotionGroupAssembly
598
- */
599
- 'stored_link_chain'?: string;
763
+ export interface CollisionSetup {
600
764
  /**
601
- * References a stored tool.
602
- * @type {string}
603
- * @memberof CollisionMotionGroupAssembly
765
+ * A collection of identifiable colliders.
766
+ * @type {{ [key: string]: Collider; }}
767
+ * @memberof CollisionSetup
604
768
  */
605
- 'stored_tool'?: string;
769
+ 'colliders'?: { [key: string]: Collider; };
606
770
  /**
607
771
  * A link chain is a kinematic chain of links that is connected via joints. A motion group can be used to control the motion of the joints in a link chain. A link is a group of colliders that is attached to the link reference frame. The reference frame of a link is obtained after applying all sets of Denavit-Hartenberg-parameters from base to (including) the link index. This means that the reference frame of the link is on the rotation axis of the next joint in the kinematic chain. Example: For a motion group with 2 joints, the collider reference frame (CRF) for link 1 is on the rotation axis of joint 2. The chain looks like: - Origin >> Mounting >> Base >> (CRF Base) Joint 0 >> Link 0 >> (CRF Link 0) Joint 1 >> Link 1 >> (CRF Link 1) Flange (CRF Tool) >> TCP Adjacent links in the kinematic chain of the motion group are not checked for mutual collision.
608
772
  * @type {Array<{ [key: string]: Collider; }>}
609
- * @memberof CollisionMotionGroupAssembly
773
+ * @memberof CollisionSetup
610
774
  */
611
775
  'link_chain'?: Array<{ [key: string]: Collider; }>;
612
776
  /**
613
777
  * Defines the shape of a tool. A tool is a dictionary of colliders. All colliders that make up a tool are attached to the flange frame of the motion group.
614
778
  * @type {{ [key: string]: Collider; }}
615
- * @memberof CollisionMotionGroupAssembly
779
+ * @memberof CollisionSetup
616
780
  */
617
781
  'tool'?: { [key: string]: Collider; };
618
- }
619
- /**
620
- * Defines the collision scene. There are two types of objects in the scene: - `colliders`: Each collider is attached directly to the origin of the scene: Origin >> Collider - `motion-groups`: Each motion group is assigned a kinematic chain of links with a special collider, called tool, attached to the last element. The motion group is attached to the origin of the scene via its mounting: Origin >> Mounting >> Motion Group Base >> […]
621
- * @export
622
- * @interface CollisionScene
623
- */
624
- export interface CollisionScene {
625
- /**
626
- * A collection of identifiable colliders.
627
- * @type {{ [key: string]: Collider; }}
628
- * @memberof CollisionScene
629
- */
630
- 'colliders'?: { [key: string]: Collider; };
631
- /**
632
- * Maps a Wandelbots NOVA motion group to its configuration in the collision scene. Key must be a motion group identifier. Values are collision motion group objects. A collision motion group defines a motion group in the collision scene. The motion group is attached to the origin of the scene. To relocate the motion group, configure its mounting offset on the physical controller. This ensures that the definition of motion commands and collision scenes use the same coordinate system. The kinematic chain looks like this: - Origin >> Mounting >> Base >> Joint 0 >> Link 0 >> Joint 1 >> […] >> TCP A `tool` is treated like another link attached to the end (flange) of the kinematic chain. All tool colliders are described in the flange frame.
633
- * @type {{ [key: string]: CollisionMotionGroup; }}
634
- * @memberof CollisionScene
635
- */
636
- 'motion_groups'?: { [key: string]: CollisionMotionGroup; };
637
- }
638
- /**
639
- * Defines the collision scene assembly. Merges all referenced and new scene components into a single scene. Previously added components with identical identifiers are overwritten within the same group. There is one group for each of the following components: - Colliders attached to the origin of the scene, - Tool per motion group, and - For each link per motion group. The scene is assembled by adding components in the following order. 1. stored_scenes 2. scene 3. stored_colliders 4. colliders 5. stored_link_chains and stored_tools (per motion group) 6. link_chains and tools (per motion group)
640
- * @export
641
- * @interface CollisionSceneAssembly
642
- */
643
- export interface CollisionSceneAssembly {
644
- /**
645
- * Add stored scenes to the scene via their identifiers. The scenes are merged based on their order in the array. The scene at index zero serves as base. Following scenes overwrite components with identical identifiers, see [Collision Scene Assembly](Collision Scene Assembly).
646
- * @type {Array<string>}
647
- * @memberof CollisionSceneAssembly
648
- */
649
- 'stored_scenes'?: Array<string>;
650
- /**
651
- *
652
- * @type {CollisionScene}
653
- * @memberof CollisionSceneAssembly
654
- */
655
- 'scene'?: CollisionScene;
656
- /**
657
- * Add stored colliders to the scene via their identifiers. The colliders are added to the the origin of the scene.
658
- * @type {Array<string>}
659
- * @memberof CollisionSceneAssembly
660
- */
661
- 'stored_colliders'?: Array<string>;
662
- /**
663
- * A collection of identifiable colliders.
664
- * @type {{ [key: string]: Collider; }}
665
- * @memberof CollisionSceneAssembly
666
- */
667
- 'colliders'?: { [key: string]: Collider; };
668
782
  /**
669
- * Maps a Wandelbots NOVA motion group to its assembly configuration in the collision scene. Key must be a motion group identifier. A collision motion group defines a motion group in the collision scene. The motion group is attached to the origin of the scene. To relocate the motion group, configure its mounting offset on the physical controller. This ensures that the definition of motion commands and collision scenes use the same coordinate system. The kinematic chain looks like this: - Origin >> Mounting >> Base >> Joint 0 >> Link 0 >> Joint 1 >> […] >> TCP A `tool` is treated like another link attached to the end (flange) of the kinematic chain. All tool colliders are described in the flange frame.
670
- * @type {{ [key: string]: CollisionMotionGroupAssembly; }}
671
- * @memberof CollisionSceneAssembly
783
+ * If true, self-collision detection is enabled for the motion group. Self-collision detection checks if links in the kinematic chain of the motion group collide with each other. Adjacent links in the kinematic chain of the motion group are not checked for mutual collision. The tool is treated like a link at the end of the kinematic chain. It is checked against all links except the last one. Default is true.
784
+ * @type {boolean}
785
+ * @memberof CollisionSetup
672
786
  */
673
- 'motion_groups'?: { [key: string]: CollisionMotionGroupAssembly; };
787
+ 'self_collision_detection'?: boolean;
674
788
  }
675
789
  /**
676
790
  * Comparator for the comparison of two values. The comparator is used to compare two values and return a boolean result. The default comparator is unknown.
@@ -851,6 +965,25 @@ export interface ContainerImageSecretsInner {
851
965
  */
852
966
  'name': string;
853
967
  }
968
+ /**
969
+ * Additional resources that the application requires.
970
+ * @export
971
+ * @interface ContainerResources
972
+ */
973
+ export interface ContainerResources {
974
+ /**
975
+ * Number of GPUs the application requires.
976
+ * @type {number}
977
+ * @memberof ContainerResources
978
+ */
979
+ 'intel_gpu'?: number;
980
+ /**
981
+ * The maximum memory allocated to this application.
982
+ * @type {string}
983
+ * @memberof ContainerResources
984
+ */
985
+ 'memory_limit'?: string;
986
+ }
854
987
  /**
855
988
  * The path and capacity of a volume that retains data across application restarts. The maximal requestable capacity is 300Mi. If you need more capacity consider using [storeObject](storeObject).
856
989
  * @export
@@ -1127,24 +1260,126 @@ export type Direction = typeof Direction[keyof typeof Direction];
1127
1260
 
1128
1261
 
1129
1262
  /**
1130
- *
1263
+ * The provided joint data does not match the expected number of joints for this motion group.
1131
1264
  * @export
1132
- * @interface EndOfTrajectory
1265
+ * @interface ErrorInvalidJointCount
1133
1266
  */
1134
- export interface EndOfTrajectory {
1267
+ export interface ErrorInvalidJointCount {
1268
+ /**
1269
+ * The expected number of joints for this motion group.
1270
+ * @type {number}
1271
+ * @memberof ErrorInvalidJointCount
1272
+ */
1273
+ 'expected_joint_count': number;
1274
+ /**
1275
+ * The number of provided joints.
1276
+ * @type {number}
1277
+ * @memberof ErrorInvalidJointCount
1278
+ */
1279
+ 'provided_joint_count': number;
1135
1280
  /**
1136
1281
  *
1137
1282
  * @type {string}
1138
- * @memberof EndOfTrajectory
1283
+ * @memberof ErrorInvalidJointCount
1139
1284
  */
1140
- 'kind': EndOfTrajectoryKindEnum;
1285
+ 'error_feedback_name': ErrorInvalidJointCountErrorFeedbackNameEnum;
1141
1286
  }
1142
1287
 
1143
- export const EndOfTrajectoryKindEnum = {
1144
- EndOfTrajectory: 'END_OF_TRAJECTORY'
1288
+ export const ErrorInvalidJointCountErrorFeedbackNameEnum = {
1289
+ ErrorInvalidJointCount: 'ErrorInvalidJointCount'
1290
+ } as const;
1291
+
1292
+ export type ErrorInvalidJointCountErrorFeedbackNameEnum = typeof ErrorInvalidJointCountErrorFeedbackNameEnum[keyof typeof ErrorInvalidJointCountErrorFeedbackNameEnum];
1293
+
1294
+ /**
1295
+ * A reference joint position (start or target) exceeds the configured joint limits.
1296
+ * @export
1297
+ * @interface ErrorJointLimitExceeded
1298
+ */
1299
+ export interface ErrorJointLimitExceeded {
1300
+ /**
1301
+ * Index of the joint exceeding its limits (0-based).
1302
+ * @type {number}
1303
+ * @memberof ErrorJointLimitExceeded
1304
+ */
1305
+ 'joint_index'?: number;
1306
+ /**
1307
+ *
1308
+ * @type {Array<number>}
1309
+ * @memberof ErrorJointLimitExceeded
1310
+ */
1311
+ 'joint_position'?: Array<number>;
1312
+ /**
1313
+ *
1314
+ * @type {string}
1315
+ * @memberof ErrorJointLimitExceeded
1316
+ */
1317
+ 'error_feedback_name': ErrorJointLimitExceededErrorFeedbackNameEnum;
1318
+ }
1319
+
1320
+ export const ErrorJointLimitExceededErrorFeedbackNameEnum = {
1321
+ ErrorJointLimitExceeded: 'ErrorJointLimitExceeded'
1322
+ } as const;
1323
+
1324
+ export type ErrorJointLimitExceededErrorFeedbackNameEnum = typeof ErrorJointLimitExceededErrorFeedbackNameEnum[keyof typeof ErrorJointLimitExceededErrorFeedbackNameEnum];
1325
+
1326
+ /**
1327
+ * A reference joint position (e.g. start or target joint position) results in collisions that prevent processing.
1328
+ * @export
1329
+ * @interface ErrorJointPositionCollision
1330
+ */
1331
+ export interface ErrorJointPositionCollision {
1332
+ /**
1333
+ *
1334
+ * @type {Array<Collision>}
1335
+ * @memberof ErrorJointPositionCollision
1336
+ */
1337
+ 'collisions'?: Array<Collision>;
1338
+ /**
1339
+ *
1340
+ * @type {Array<number>}
1341
+ * @memberof ErrorJointPositionCollision
1342
+ */
1343
+ 'joint_position'?: Array<number>;
1344
+ /**
1345
+ *
1346
+ * @type {string}
1347
+ * @memberof ErrorJointPositionCollision
1348
+ */
1349
+ 'error_feedback_name': ErrorJointPositionCollisionErrorFeedbackNameEnum;
1350
+ }
1351
+
1352
+ export const ErrorJointPositionCollisionErrorFeedbackNameEnum = {
1353
+ ErrorJointPositionCollision: 'ErrorJointPositionCollision'
1354
+ } as const;
1355
+
1356
+ export type ErrorJointPositionCollisionErrorFeedbackNameEnum = typeof ErrorJointPositionCollisionErrorFeedbackNameEnum[keyof typeof ErrorJointPositionCollisionErrorFeedbackNameEnum];
1357
+
1358
+ /**
1359
+ * The collision-free planning algorithm reached its maximum iteration limit without finding a valid path. Increase max_iterations or modify the start/target positions.
1360
+ * @export
1361
+ * @interface ErrorMaxIterationsExceeded
1362
+ */
1363
+ export interface ErrorMaxIterationsExceeded {
1364
+ /**
1365
+ * The maximum number of iterations that was reached.
1366
+ * @type {number}
1367
+ * @memberof ErrorMaxIterationsExceeded
1368
+ */
1369
+ 'max_iterations'?: number;
1370
+ /**
1371
+ *
1372
+ * @type {string}
1373
+ * @memberof ErrorMaxIterationsExceeded
1374
+ */
1375
+ 'error_feedback_name': ErrorMaxIterationsExceededErrorFeedbackNameEnum;
1376
+ }
1377
+
1378
+ export const ErrorMaxIterationsExceededErrorFeedbackNameEnum = {
1379
+ ErrorMaxIterationsExceeded: 'ErrorMaxIterationsExceeded'
1145
1380
  } as const;
1146
1381
 
1147
- export type EndOfTrajectoryKindEnum = typeof EndOfTrajectoryKindEnum[keyof typeof EndOfTrajectoryKindEnum];
1382
+ export type ErrorMaxIterationsExceededErrorFeedbackNameEnum = typeof ErrorMaxIterationsExceededErrorFeedbackNameEnum[keyof typeof ErrorMaxIterationsExceededErrorFeedbackNameEnum];
1148
1383
 
1149
1384
  /**
1150
1385
  * Details about the state of the motion execution. The details are either for a jogging or a trajectory. If NOVA is not controlling this motion group at the moment, this field is omitted.
@@ -1423,46 +1658,125 @@ export type FloatValueValueTypeEnum = typeof FloatValueValueTypeEnum[keyof typeo
1423
1658
  /**
1424
1659
  *
1425
1660
  * @export
1426
- * @interface GetModeResponse
1661
+ * @interface ForwardKinematics422Response
1427
1662
  */
1428
- export interface GetModeResponse {
1663
+ export interface ForwardKinematics422Response {
1429
1664
  /**
1430
1665
  *
1431
- * @type {RobotSystemMode}
1432
- * @memberof GetModeResponse
1666
+ * @type {Array<ForwardKinematicsValidationError>}
1667
+ * @memberof ForwardKinematics422Response
1433
1668
  */
1434
- 'robot_system_mode': RobotSystemMode;
1669
+ 'detail'?: Array<ForwardKinematicsValidationError>;
1435
1670
  }
1436
-
1437
-
1438
1671
  /**
1439
1672
  *
1440
1673
  * @export
1441
- * @interface GetTrajectoryResponse
1674
+ * @interface ForwardKinematicsRequest
1442
1675
  */
1443
- export interface GetTrajectoryResponse {
1676
+ export interface ForwardKinematicsRequest {
1444
1677
  /**
1445
- * Unique identifier of the motion group the trajectory is planned for.
1678
+ * String identifiying the model of a motion group.
1446
1679
  * @type {string}
1447
- * @memberof GetTrajectoryResponse
1680
+ * @memberof ForwardKinematicsRequest
1448
1681
  */
1449
- 'motion_group': string;
1682
+ 'motion_group_model': string;
1450
1683
  /**
1451
- * The trajectory consisting of a list of joint positions and an equal number of corresponding timestamps.
1452
- * @type {JointTrajectory}
1453
- * @memberof GetTrajectoryResponse
1684
+ * List of joint positions [rad] for which TCP poses are computed.
1685
+ * @type {Array<Array<number>>}
1686
+ * @memberof ForwardKinematicsRequest
1454
1687
  */
1455
- 'trajectory': JointTrajectory;
1688
+ 'joint_positions': Array<Array<number>>;
1456
1689
  /**
1457
- * Unique identifier of the tool the trajectory is planned for.
1458
- * @type {string}
1459
- * @memberof GetTrajectoryResponse
1690
+ *
1691
+ * @type {Pose}
1692
+ * @memberof ForwardKinematicsRequest
1460
1693
  */
1461
- 'tcp': string;
1462
- }
1463
- /**
1464
- *
1465
- * @export
1694
+ 'tcp_offset'?: Pose;
1695
+ /**
1696
+ * Offset from the world frame to the motion group base.
1697
+ * @type {Pose}
1698
+ * @memberof ForwardKinematicsRequest
1699
+ */
1700
+ 'mounting'?: Pose;
1701
+ }
1702
+ /**
1703
+ *
1704
+ * @export
1705
+ * @interface ForwardKinematicsResponse
1706
+ */
1707
+ export interface ForwardKinematicsResponse {
1708
+ /**
1709
+ * List of computed TCP poses corresponding to the input joint positions.
1710
+ * @type {Array<Pose>}
1711
+ * @memberof ForwardKinematicsResponse
1712
+ */
1713
+ 'tcp_poses': Array<Pose>;
1714
+ }
1715
+ /**
1716
+ *
1717
+ * @export
1718
+ * @interface ForwardKinematicsValidationError
1719
+ */
1720
+ export interface ForwardKinematicsValidationError {
1721
+ /**
1722
+ *
1723
+ * @type {Array<ValidationErrorLocInner>}
1724
+ * @memberof ForwardKinematicsValidationError
1725
+ */
1726
+ 'loc': Array<ValidationErrorLocInner>;
1727
+ /**
1728
+ *
1729
+ * @type {string}
1730
+ * @memberof ForwardKinematicsValidationError
1731
+ */
1732
+ 'msg': string;
1733
+ /**
1734
+ *
1735
+ * @type {string}
1736
+ * @memberof ForwardKinematicsValidationError
1737
+ */
1738
+ 'type': string;
1739
+ /**
1740
+ *
1741
+ * @type {{ [key: string]: any; }}
1742
+ * @memberof ForwardKinematicsValidationError
1743
+ */
1744
+ 'input': { [key: string]: any; };
1745
+ /**
1746
+ *
1747
+ * @type {ErrorInvalidJointCount}
1748
+ * @memberof ForwardKinematicsValidationError
1749
+ */
1750
+ 'data'?: ErrorInvalidJointCount;
1751
+ }
1752
+ /**
1753
+ *
1754
+ * @export
1755
+ * @interface GetTrajectoryResponse
1756
+ */
1757
+ export interface GetTrajectoryResponse {
1758
+ /**
1759
+ * Unique identifier of the motion group the trajectory is planned for.
1760
+ * @type {string}
1761
+ * @memberof GetTrajectoryResponse
1762
+ */
1763
+ 'motion_group': string;
1764
+ /**
1765
+ * The trajectory consisting of a list of joint positions and an equal number of corresponding timestamps.
1766
+ * @type {JointTrajectory}
1767
+ * @memberof GetTrajectoryResponse
1768
+ */
1769
+ 'trajectory': JointTrajectory;
1770
+ /**
1771
+ * Unique identifier of the tool the trajectory is planned for.
1772
+ * @type {string}
1773
+ * @memberof GetTrajectoryResponse
1774
+ */
1775
+ 'tcp': string;
1776
+ }
1777
+ /**
1778
+ *
1779
+ * @export
1466
1780
  * @interface HTTPValidationError
1467
1781
  */
1468
1782
  export interface HTTPValidationError {
@@ -1947,6 +2261,19 @@ export interface InvalidDofInvalidDof {
1947
2261
  */
1948
2262
  'joint_position'?: Array<number>;
1949
2263
  }
2264
+ /**
2265
+ *
2266
+ * @export
2267
+ * @interface InverseKinematics422Response
2268
+ */
2269
+ export interface InverseKinematics422Response {
2270
+ /**
2271
+ *
2272
+ * @type {Array<InverseKinematicsValidationError>}
2273
+ * @memberof InverseKinematics422Response
2274
+ */
2275
+ 'detail'?: Array<InverseKinematicsValidationError>;
2276
+ }
1950
2277
  /**
1951
2278
  *
1952
2279
  * @export
@@ -1984,11 +2311,11 @@ export interface InverseKinematicsRequest {
1984
2311
  */
1985
2312
  'joint_position_limits'?: Array<LimitRange>;
1986
2313
  /**
1987
- * Collision scenes to be respected by the motion planner. Each contains the single motion group which is planned for. Scenes are checked individually along the trajectory and independently of other scenes. To respect the safety zones of the controller, fetch the safety zones, link and tool shapes from the controller and add one scene made up of those. To respect the safety zones of the controller and check for collision: 1. Fetch the safety zones, link and tool shapes from the controller. 2. Add the fetched zones, links and tools to a scene. 3. Create other scenes from your own 3D data as needed. 4. Execute this endpoint. 5. The response highlights the scenes in which a collision was detected by key.
1988
- * @type {{ [key: string]: SingleMotionGroupCollisionScene; }}
2314
+ * Collision layers to be respected by the motion planner when planning for a single motion group. Each setup represents one layer, e.g. the safety zones and shapes or a fine grained tool and workpiece model. Layers are checked individually along the trajectory and independently of other layers. To respect the safety zones of the controller and check for collision: 1. Fetch the safety zones, link and tool shapes from the controller. 2. Add the fetched zones, links and tools to a layer. 3. Create other layers from your own 3D data as needed. 4. Plan trajectory. 5. The response highlights the layer in which a collision was detected by key.
2315
+ * @type {{ [key: string]: CollisionSetup; }}
1989
2316
  * @memberof InverseKinematicsRequest
1990
2317
  */
1991
- 'collision_scenes'?: { [key: string]: SingleMotionGroupCollisionScene; };
2318
+ 'collision_setups'?: { [key: string]: CollisionSetup; };
1992
2319
  }
1993
2320
  /**
1994
2321
  *
@@ -2003,6 +2330,50 @@ export interface InverseKinematicsResponse {
2003
2330
  */
2004
2331
  'joints': Array<Array<Array<number>>>;
2005
2332
  }
2333
+ /**
2334
+ *
2335
+ * @export
2336
+ * @interface InverseKinematicsValidationError
2337
+ */
2338
+ export interface InverseKinematicsValidationError {
2339
+ /**
2340
+ *
2341
+ * @type {Array<ValidationErrorLocInner>}
2342
+ * @memberof InverseKinematicsValidationError
2343
+ */
2344
+ 'loc': Array<ValidationErrorLocInner>;
2345
+ /**
2346
+ *
2347
+ * @type {string}
2348
+ * @memberof InverseKinematicsValidationError
2349
+ */
2350
+ 'msg': string;
2351
+ /**
2352
+ *
2353
+ * @type {string}
2354
+ * @memberof InverseKinematicsValidationError
2355
+ */
2356
+ 'type': string;
2357
+ /**
2358
+ *
2359
+ * @type {{ [key: string]: any; }}
2360
+ * @memberof InverseKinematicsValidationError
2361
+ */
2362
+ 'input': { [key: string]: any; };
2363
+ /**
2364
+ *
2365
+ * @type {InverseKinematicsValidationErrorAllOfData}
2366
+ * @memberof InverseKinematicsValidationError
2367
+ */
2368
+ 'data'?: InverseKinematicsValidationErrorAllOfData;
2369
+ }
2370
+ /**
2371
+ * @type InverseKinematicsValidationErrorAllOfData
2372
+ * Optional data further specifying the validation error.
2373
+ * @export
2374
+ */
2375
+ export type InverseKinematicsValidationErrorAllOfData = { error_feedback_name: 'ErrorInvalidJointCount' } & ErrorInvalidJointCount | { error_feedback_name: 'ErrorJointLimitExceeded' } & ErrorJointLimitExceeded;
2376
+
2006
2377
  /**
2007
2378
  * State of jogging execution. This state is sent during jogging movement, response-rate closest to the nearest multiple of controller step-rate but not exceeding the configured rate. The jogging state can be one of the following: - RUNNING: Jogging is active. - PAUSED_BY_USER: User has paused jogging. - PAUSED_NEAR_JOINT_LIMIT: Jogging was paused because a joint is is near its limit. - PAUSED_NEAR_COLLISION: Jogging was paused because the motion group neared a collision. - PAUSED_ON_IO: Jogging was paused because of an I/O event.
2008
2379
  * @export
@@ -2033,7 +2404,119 @@ export type JoggingDetailsKindEnum = typeof JoggingDetailsKindEnum[keyof typeof
2033
2404
  * @type JoggingDetailsState
2034
2405
  * @export
2035
2406
  */
2036
- export type JoggingDetailsState = PausedByUser | PausedNearCollision | PausedNearJointLimit | PausedOnIO | Running;
2407
+ export type JoggingDetailsState = JoggingPausedByUser | JoggingPausedNearCollision | JoggingPausedNearJointLimit | JoggingPausedOnIO | JoggingRunning;
2408
+
2409
+ /**
2410
+ *
2411
+ * @export
2412
+ * @interface JoggingPausedByUser
2413
+ */
2414
+ export interface JoggingPausedByUser {
2415
+ /**
2416
+ *
2417
+ * @type {string}
2418
+ * @memberof JoggingPausedByUser
2419
+ */
2420
+ 'kind': JoggingPausedByUserKindEnum;
2421
+ }
2422
+
2423
+ export const JoggingPausedByUserKindEnum = {
2424
+ PausedByUser: 'PAUSED_BY_USER'
2425
+ } as const;
2426
+
2427
+ export type JoggingPausedByUserKindEnum = typeof JoggingPausedByUserKindEnum[keyof typeof JoggingPausedByUserKindEnum];
2428
+
2429
+ /**
2430
+ *
2431
+ * @export
2432
+ * @interface JoggingPausedNearCollision
2433
+ */
2434
+ export interface JoggingPausedNearCollision {
2435
+ /**
2436
+ *
2437
+ * @type {string}
2438
+ * @memberof JoggingPausedNearCollision
2439
+ */
2440
+ 'kind': JoggingPausedNearCollisionKindEnum;
2441
+ /**
2442
+ *
2443
+ * @type {string}
2444
+ * @memberof JoggingPausedNearCollision
2445
+ */
2446
+ 'description': string;
2447
+ }
2448
+
2449
+ export const JoggingPausedNearCollisionKindEnum = {
2450
+ PausedNearCollision: 'PAUSED_NEAR_COLLISION'
2451
+ } as const;
2452
+
2453
+ export type JoggingPausedNearCollisionKindEnum = typeof JoggingPausedNearCollisionKindEnum[keyof typeof JoggingPausedNearCollisionKindEnum];
2454
+
2455
+ /**
2456
+ *
2457
+ * @export
2458
+ * @interface JoggingPausedNearJointLimit
2459
+ */
2460
+ export interface JoggingPausedNearJointLimit {
2461
+ /**
2462
+ *
2463
+ * @type {string}
2464
+ * @memberof JoggingPausedNearJointLimit
2465
+ */
2466
+ 'kind': JoggingPausedNearJointLimitKindEnum;
2467
+ /**
2468
+ *
2469
+ * @type {Array<number>}
2470
+ * @memberof JoggingPausedNearJointLimit
2471
+ */
2472
+ 'joint_indices': Array<number>;
2473
+ }
2474
+
2475
+ export const JoggingPausedNearJointLimitKindEnum = {
2476
+ PausedNearJointLimit: 'PAUSED_NEAR_JOINT_LIMIT'
2477
+ } as const;
2478
+
2479
+ export type JoggingPausedNearJointLimitKindEnum = typeof JoggingPausedNearJointLimitKindEnum[keyof typeof JoggingPausedNearJointLimitKindEnum];
2480
+
2481
+ /**
2482
+ *
2483
+ * @export
2484
+ * @interface JoggingPausedOnIO
2485
+ */
2486
+ export interface JoggingPausedOnIO {
2487
+ /**
2488
+ *
2489
+ * @type {string}
2490
+ * @memberof JoggingPausedOnIO
2491
+ */
2492
+ 'kind': JoggingPausedOnIOKindEnum;
2493
+ }
2494
+
2495
+ export const JoggingPausedOnIOKindEnum = {
2496
+ PausedOnIo: 'PAUSED_ON_IO'
2497
+ } as const;
2498
+
2499
+ export type JoggingPausedOnIOKindEnum = typeof JoggingPausedOnIOKindEnum[keyof typeof JoggingPausedOnIOKindEnum];
2500
+
2501
+ /**
2502
+ *
2503
+ * @export
2504
+ * @interface JoggingRunning
2505
+ */
2506
+ export interface JoggingRunning {
2507
+ /**
2508
+ *
2509
+ * @type {string}
2510
+ * @memberof JoggingRunning
2511
+ */
2512
+ 'kind': JoggingRunningKindEnum;
2513
+ }
2514
+
2515
+ export const JoggingRunningKindEnum = {
2516
+ Running: 'RUNNING'
2517
+ } as const;
2518
+
2519
+ export type JoggingRunningKindEnum = typeof JoggingRunningKindEnum[keyof typeof JoggingRunningKindEnum];
2037
2520
 
2038
2521
  /**
2039
2522
  *
@@ -2473,6 +2956,32 @@ export const Manufacturer = {
2473
2956
  export type Manufacturer = typeof Manufacturer[keyof typeof Manufacturer];
2474
2957
 
2475
2958
 
2959
+ /**
2960
+ * Midpoint insertion algorithm configuration for collision-free path planning. This algorithm iteratively inserts midpoints between the start and target joint position to find collision-free paths.
2961
+ * @export
2962
+ * @interface MidpointInsertionAlgorithm
2963
+ */
2964
+ export interface MidpointInsertionAlgorithm {
2965
+ /**
2966
+ * Algorithm discriminator.
2967
+ * @type {string}
2968
+ * @memberof MidpointInsertionAlgorithm
2969
+ */
2970
+ 'algorithm_name': MidpointInsertionAlgorithmAlgorithmNameEnum;
2971
+ /**
2972
+ * Maximum number of iterations for the midpoint insertion algorithm. Higher values increase likelyhood of success, but also computation time (linear).
2973
+ * @type {number}
2974
+ * @memberof MidpointInsertionAlgorithm
2975
+ */
2976
+ 'max_iterations'?: number;
2977
+ }
2978
+
2979
+ export const MidpointInsertionAlgorithmAlgorithmNameEnum = {
2980
+ MidpointInsertionAlgorithm: 'MidpointInsertionAlgorithm'
2981
+ } as const;
2982
+
2983
+ export type MidpointInsertionAlgorithmAlgorithmNameEnum = typeof MidpointInsertionAlgorithmAlgorithmNameEnum[keyof typeof MidpointInsertionAlgorithmAlgorithmNameEnum];
2984
+
2476
2985
  /**
2477
2986
  *
2478
2987
  * @export
@@ -2653,6 +3162,55 @@ export interface MotionGroupJoints {
2653
3162
  */
2654
3163
  'torques'?: Array<number>;
2655
3164
  }
3165
+ /**
3166
+ *
3167
+ * @export
3168
+ * @interface MotionGroupSetup
3169
+ */
3170
+ export interface MotionGroupSetup {
3171
+ /**
3172
+ * String identifiying the model of a motion group.
3173
+ * @type {string}
3174
+ * @memberof MotionGroupSetup
3175
+ */
3176
+ 'motion_group_model': string;
3177
+ /**
3178
+ * [ms] cycle time of the motion group controller. A trajectory for this motion group should be computed to this resolution.
3179
+ * @type {number}
3180
+ * @memberof MotionGroupSetup
3181
+ */
3182
+ 'cycle_time': number;
3183
+ /**
3184
+ * The offset from the world frame to the motion group base.
3185
+ * @type {Pose}
3186
+ * @memberof MotionGroupSetup
3187
+ */
3188
+ 'mounting'?: Pose;
3189
+ /**
3190
+ *
3191
+ * @type {Pose}
3192
+ * @memberof MotionGroupSetup
3193
+ */
3194
+ 'tcp_offset'?: Pose;
3195
+ /**
3196
+ *
3197
+ * @type {LimitSet}
3198
+ * @memberof MotionGroupSetup
3199
+ */
3200
+ 'global_limits'?: LimitSet;
3201
+ /**
3202
+ *
3203
+ * @type {Payload}
3204
+ * @memberof MotionGroupSetup
3205
+ */
3206
+ 'payload'?: Payload;
3207
+ /**
3208
+ * Collision layers to be respected by the motion planner when planning for a single motion group. Each setup represents one layer, e.g. the safety zones and shapes or a fine grained tool and workpiece model. Layers are checked individually along the trajectory and independently of other layers. To respect the safety zones of the controller and check for collision: 1. Fetch the safety zones, link and tool shapes from the controller. 2. Add the fetched zones, links and tools to a layer. 3. Create other layers from your own 3D data as needed. 4. Plan trajectory. 5. The response highlights the layer in which a collision was detected by key.
3209
+ * @type {{ [key: string]: CollisionSetup; }}
3210
+ * @memberof MotionGroupSetup
3211
+ */
3212
+ 'collision_setups'?: { [key: string]: CollisionSetup; };
3213
+ }
2656
3214
  /**
2657
3215
  * Presents the current state of the motion group.
2658
3216
  * @export
@@ -3187,146 +3745,110 @@ export interface PauseOnIO {
3187
3745
  /**
3188
3746
  *
3189
3747
  * @export
3190
- * @interface PausedByRequest
3748
+ * @interface Payload
3191
3749
  */
3192
- export interface PausedByRequest {
3750
+ export interface Payload {
3193
3751
  /**
3194
3752
  *
3195
3753
  * @type {string}
3196
- * @memberof PausedByRequest
3754
+ * @memberof Payload
3197
3755
  */
3198
- 'kind': PausedByRequestKindEnum;
3199
- }
3200
-
3201
- export const PausedByRequestKindEnum = {
3202
- PausedByUser: 'PAUSED_BY_USER'
3203
- } as const;
3204
-
3205
- export type PausedByRequestKindEnum = typeof PausedByRequestKindEnum[keyof typeof PausedByRequestKindEnum];
3206
-
3207
- /**
3208
- *
3209
- * @export
3210
- * @interface PausedByUser
3211
- */
3212
- export interface PausedByUser {
3756
+ 'name': string;
3213
3757
  /**
3214
- *
3215
- * @type {string}
3216
- * @memberof PausedByUser
3217
- */
3218
- 'kind': PausedByUserKindEnum;
3219
- }
3220
-
3221
- export const PausedByUserKindEnum = {
3222
- PausedByUser: 'PAUSED_BY_USER'
3223
- } as const;
3224
-
3225
- export type PausedByUserKindEnum = typeof PausedByUserKindEnum[keyof typeof PausedByUserKindEnum];
3226
-
3227
- /**
3228
- *
3229
- * @export
3230
- * @interface PausedNearCollision
3231
- */
3232
- export interface PausedNearCollision {
3758
+ * Mass of payload in [kg].
3759
+ * @type {number}
3760
+ * @memberof Payload
3761
+ */
3762
+ 'payload': number;
3233
3763
  /**
3234
- *
3235
- * @type {string}
3236
- * @memberof PausedNearCollision
3764
+ * A three-dimensional vector [x, y, z] with double precision.
3765
+ * @type {Array<number>}
3766
+ * @memberof Payload
3237
3767
  */
3238
- 'kind': PausedNearCollisionKindEnum;
3768
+ 'center_of_mass'?: Array<number>;
3239
3769
  /**
3240
- *
3241
- * @type {string}
3242
- * @memberof PausedNearCollision
3770
+ * A three-dimensional vector [x, y, z] with double precision.
3771
+ * @type {Array<number>}
3772
+ * @memberof Payload
3243
3773
  */
3244
- 'description': string;
3774
+ 'moment_of_inertia'?: Array<number>;
3245
3775
  }
3246
-
3247
- export const PausedNearCollisionKindEnum = {
3248
- PausedNearCollision: 'PAUSED_NEAR_COLLISION'
3249
- } as const;
3250
-
3251
- export type PausedNearCollisionKindEnum = typeof PausedNearCollisionKindEnum[keyof typeof PausedNearCollisionKindEnum];
3252
-
3253
3776
  /**
3254
3777
  *
3255
3778
  * @export
3256
- * @interface PausedNearJointLimit
3779
+ * @interface Plan422Response
3257
3780
  */
3258
- export interface PausedNearJointLimit {
3259
- /**
3260
- *
3261
- * @type {string}
3262
- * @memberof PausedNearJointLimit
3263
- */
3264
- 'kind': PausedNearJointLimitKindEnum;
3781
+ export interface Plan422Response {
3265
3782
  /**
3266
3783
  *
3267
- * @type {Array<number>}
3268
- * @memberof PausedNearJointLimit
3784
+ * @type {Array<PlanValidationError>}
3785
+ * @memberof Plan422Response
3269
3786
  */
3270
- 'joint_indices': Array<number>;
3787
+ 'detail'?: Array<PlanValidationError>;
3271
3788
  }
3272
-
3273
- export const PausedNearJointLimitKindEnum = {
3274
- PausedNearJointLimit: 'PAUSED_NEAR_JOINT_LIMIT'
3275
- } as const;
3276
-
3277
- export type PausedNearJointLimitKindEnum = typeof PausedNearJointLimitKindEnum[keyof typeof PausedNearJointLimitKindEnum];
3278
-
3279
3789
  /**
3280
- *
3790
+ * Response when collision-free trajectory planning fails. Contains specific feedback about why the planning failed.
3281
3791
  * @export
3282
- * @interface PausedOnIO
3792
+ * @interface PlanCollisionFreeFailedResponse
3283
3793
  */
3284
- export interface PausedOnIO {
3794
+ export interface PlanCollisionFreeFailedResponse {
3285
3795
  /**
3286
3796
  *
3287
- * @type {string}
3288
- * @memberof PausedOnIO
3797
+ * @type {ErrorMaxIterationsExceeded}
3798
+ * @memberof PlanCollisionFreeFailedResponse
3289
3799
  */
3290
- 'kind': PausedOnIOKindEnum;
3800
+ 'error_feedback': ErrorMaxIterationsExceeded;
3291
3801
  }
3292
-
3293
- export const PausedOnIOKindEnum = {
3294
- PausedOnIo: 'PAUSED_ON_IO'
3295
- } as const;
3296
-
3297
- export type PausedOnIOKindEnum = typeof PausedOnIOKindEnum[keyof typeof PausedOnIOKindEnum];
3298
-
3299
3802
  /**
3300
3803
  *
3301
3804
  * @export
3302
- * @interface Payload
3805
+ * @interface PlanCollisionFreeRequest
3303
3806
  */
3304
- export interface Payload {
3807
+ export interface PlanCollisionFreeRequest {
3305
3808
  /**
3306
- *
3307
- * @type {string}
3308
- * @memberof Payload
3809
+ * The data to assemble the robot setup can be retrieved from [getMotionGroupDescription](getMotionGroupDescription) endpoint.
3810
+ * @type {MotionGroupSetup}
3811
+ * @memberof PlanCollisionFreeRequest
3309
3812
  */
3310
- 'name': string;
3813
+ 'motion_group_setup': MotionGroupSetup;
3311
3814
  /**
3312
- * Mass of payload in [kg].
3313
- * @type {number}
3314
- * @memberof Payload
3815
+ *
3816
+ * @type {Array<number>}
3817
+ * @memberof PlanCollisionFreeRequest
3315
3818
  */
3316
- 'payload': number;
3819
+ 'start_joint_position': Array<number>;
3317
3820
  /**
3318
- * A three-dimensional vector [x, y, z] with double precision.
3821
+ *
3319
3822
  * @type {Array<number>}
3320
- * @memberof Payload
3823
+ * @memberof PlanCollisionFreeRequest
3321
3824
  */
3322
- 'center_of_mass'?: Array<number>;
3825
+ 'target': Array<number>;
3323
3826
  /**
3324
- * A three-dimensional vector [x, y, z] with double precision.
3325
- * @type {Array<number>}
3326
- * @memberof Payload
3827
+ *
3828
+ * @type {CollisionFreeAlgorithm}
3829
+ * @memberof PlanCollisionFreeRequest
3327
3830
  */
3328
- 'moment_of_inertia'?: Array<number>;
3831
+ 'algorithm': CollisionFreeAlgorithm;
3832
+ }
3833
+ /**
3834
+ * Response from collision-free trajectory planning. Contains either a successful joint trajectory or failure information.
3835
+ * @export
3836
+ * @interface PlanCollisionFreeResponse
3837
+ */
3838
+ export interface PlanCollisionFreeResponse {
3839
+ /**
3840
+ *
3841
+ * @type {PlanCollisionFreeResponseResponse}
3842
+ * @memberof PlanCollisionFreeResponse
3843
+ */
3844
+ 'response': PlanCollisionFreeResponseResponse;
3329
3845
  }
3846
+ /**
3847
+ * @type PlanCollisionFreeResponseResponse
3848
+ * @export
3849
+ */
3850
+ export type PlanCollisionFreeResponseResponse = JointTrajectory | PlanCollisionFreeFailedResponse;
3851
+
3330
3852
  /**
3331
3853
  *
3332
3854
  * @export
@@ -3366,10 +3888,10 @@ export type PlanTrajectoryFailedResponseErrorFeedback = FeedbackCollision | Feed
3366
3888
  export interface PlanTrajectoryRequest {
3367
3889
  /**
3368
3890
  * The data to assemble the robot setup can be retrieved from [getMotionGroupDescription](getMotionGroupDescription) endpoint.
3369
- * @type {RobotSetup}
3891
+ * @type {MotionGroupSetup}
3370
3892
  * @memberof PlanTrajectoryRequest
3371
3893
  */
3372
- 'robot_setup': RobotSetup;
3894
+ 'motion_group_setup': MotionGroupSetup;
3373
3895
  /**
3374
3896
  *
3375
3897
  * @type {Array<number>}
@@ -3402,6 +3924,50 @@ export interface PlanTrajectoryResponse {
3402
3924
  */
3403
3925
  export type PlanTrajectoryResponseResponse = JointTrajectory | PlanTrajectoryFailedResponse;
3404
3926
 
3927
+ /**
3928
+ *
3929
+ * @export
3930
+ * @interface PlanValidationError
3931
+ */
3932
+ export interface PlanValidationError {
3933
+ /**
3934
+ *
3935
+ * @type {Array<ValidationErrorLocInner>}
3936
+ * @memberof PlanValidationError
3937
+ */
3938
+ 'loc': Array<ValidationErrorLocInner>;
3939
+ /**
3940
+ *
3941
+ * @type {string}
3942
+ * @memberof PlanValidationError
3943
+ */
3944
+ 'msg': string;
3945
+ /**
3946
+ *
3947
+ * @type {string}
3948
+ * @memberof PlanValidationError
3949
+ */
3950
+ 'type': string;
3951
+ /**
3952
+ *
3953
+ * @type {{ [key: string]: any; }}
3954
+ * @memberof PlanValidationError
3955
+ */
3956
+ 'input': { [key: string]: any; };
3957
+ /**
3958
+ *
3959
+ * @type {PlanValidationErrorAllOfData}
3960
+ * @memberof PlanValidationError
3961
+ */
3962
+ 'data'?: PlanValidationErrorAllOfData;
3963
+ }
3964
+ /**
3965
+ * @type PlanValidationErrorAllOfData
3966
+ * Optional data further specifying the validation error.
3967
+ * @export
3968
+ */
3969
+ export type PlanValidationErrorAllOfData = { error_feedback_name: 'ErrorInvalidJointCount' } & ErrorInvalidJointCount | { error_feedback_name: 'ErrorJointLimitExceeded' } & ErrorJointLimitExceeded | { error_feedback_name: 'ErrorJointPositionCollision' } & ErrorJointPositionCollision;
3970
+
3405
3971
  /**
3406
3972
  * Defines an x/y-plane with infinite size.
3407
3973
  * @export
@@ -3494,226 +4060,448 @@ export interface Pose {
3494
4060
  'orientation'?: Array<number>;
3495
4061
  }
3496
4062
  /**
3497
- * Defines an x/y-plane with finite size. Centred around the z-axis.
4063
+ *
3498
4064
  * @export
3499
- * @interface Rectangle
4065
+ * @interface ProfinetDescription
3500
4066
  */
3501
- export interface Rectangle {
4067
+ export interface ProfinetDescription {
4068
+ /**
4069
+ * The vendor identifier of the PROFINET device, identifying the manufacturer.
4070
+ * @type {string}
4071
+ * @memberof ProfinetDescription
4072
+ */
4073
+ 'vendor_id': string;
4074
+ /**
4075
+ * The device identifier of the PROFINET device, identifying the specific device within the vendor\'s range.
4076
+ * @type {string}
4077
+ * @memberof ProfinetDescription
4078
+ */
4079
+ 'device_id': string;
3502
4080
  /**
3503
4081
  *
4082
+ * @type {Array<ProfinetSlotDescription>}
4083
+ * @memberof ProfinetDescription
4084
+ */
4085
+ 'slots'?: Array<ProfinetSlotDescription>;
4086
+ /**
4087
+ * Name of the PROFINET device
3504
4088
  * @type {string}
3505
- * @memberof Rectangle
4089
+ * @memberof ProfinetDescription
3506
4090
  */
3507
- 'shape_type': RectangleShapeTypeEnum;
4091
+ 'device_name'?: string;
3508
4092
  /**
3509
- * The dimension in x-direction in [mm].
4093
+ * IP address for the PROFINET device
4094
+ * @type {string}
4095
+ * @memberof ProfinetDescription
4096
+ */
4097
+ 'ip'?: string;
4098
+ }
4099
+ /**
4100
+ *
4101
+ * @export
4102
+ * @interface ProfinetIO
4103
+ */
4104
+ export interface ProfinetIO {
4105
+ /**
4106
+ * The name of the input/output value. This is a human-readable identifier for the value. It can be used to distinguish between different inputs/outputs in the system.
4107
+ * @type {string}
4108
+ * @memberof ProfinetIO
4109
+ */
4110
+ 'name': string;
4111
+ /**
4112
+ *
4113
+ * @type {ProfinetIOTypeEnum}
4114
+ * @memberof ProfinetIO
4115
+ */
4116
+ 'type': ProfinetIOTypeEnum;
4117
+ /**
4118
+ * The direction of the input/output value, indicating whether it is an input or output for the device.
4119
+ * @type {ProfinetIODirection}
4120
+ * @memberof ProfinetIO
4121
+ */
4122
+ 'direction': ProfinetIODirection;
4123
+ /**
4124
+ * The byte address of the input/output value in the PROFINET device. The byte address is used to locate the specific input/output within the device\'s memory or data structure.
3510
4125
  * @type {number}
3511
- * @memberof Rectangle
4126
+ * @memberof ProfinetIO
3512
4127
  */
3513
- 'size_x': number;
4128
+ 'byte_address': number;
3514
4129
  /**
3515
- * The dimension in y-direction in [mm].
4130
+ * The bit address of the input/output value within the byte or word address. The bit address is used to specify the exact bit within the byte or word that corresponds to the input/output value.
3516
4131
  * @type {number}
3517
- * @memberof Rectangle
4132
+ * @memberof ProfinetIO
3518
4133
  */
3519
- 'size_y': number;
4134
+ 'bit_address'?: number;
4135
+ /**
4136
+ * The unique identifier for the input/output value. This identifier is used to reference the specific input/output in the NOVA system.
4137
+ * @type {string}
4138
+ * @memberof ProfinetIO
4139
+ */
4140
+ 'io': string;
3520
4141
  }
3521
4142
 
3522
- export const RectangleShapeTypeEnum = {
3523
- Rectangle: 'rectangle'
3524
- } as const;
3525
-
3526
- export type RectangleShapeTypeEnum = typeof RectangleShapeTypeEnum[keyof typeof RectangleShapeTypeEnum];
3527
4143
 
3528
4144
  /**
3529
- * Convex hull around four spheres. Sphere center points in x/y-plane, offset by either combination \"+/- sizeX\" or \"+/- sizeY\". Alternative description: Rectangle in x/y-plane with a 3D padding.
4145
+ *
3530
4146
  * @export
3531
- * @interface RectangularCapsule
4147
+ * @interface ProfinetIOData
3532
4148
  */
3533
- export interface RectangularCapsule {
4149
+ export interface ProfinetIOData {
3534
4150
  /**
3535
- *
4151
+ * The name of the input/output value. This is a human-readable identifier for the value. It can be used to distinguish between different inputs/outputs in the system.
3536
4152
  * @type {string}
3537
- * @memberof RectangularCapsule
4153
+ * @memberof ProfinetIOData
3538
4154
  */
3539
- 'shape_type': RectangularCapsuleShapeTypeEnum;
4155
+ 'name': string;
3540
4156
  /**
3541
- * The radius of the inner spheres in [mm].
3542
- * @type {number}
3543
- * @memberof RectangularCapsule
4157
+ *
4158
+ * @type {ProfinetIOTypeEnum}
4159
+ * @memberof ProfinetIOData
3544
4160
  */
3545
- 'radius': number;
4161
+ 'type': ProfinetIOTypeEnum;
3546
4162
  /**
3547
- * The distance of the sphere center in x-direction in [mm].
4163
+ * The direction of the input/output value, indicating whether it is an input or output for the device.
4164
+ * @type {ProfinetIODirection}
4165
+ * @memberof ProfinetIOData
4166
+ */
4167
+ 'direction': ProfinetIODirection;
4168
+ /**
4169
+ * The byte address of the input/output value in the PROFINET device. The byte address is used to locate the specific input/output within the device\'s memory or data structure.
3548
4170
  * @type {number}
3549
- * @memberof RectangularCapsule
4171
+ * @memberof ProfinetIOData
3550
4172
  */
3551
- 'sphere_center_distance_x': number;
4173
+ 'byte_address': number;
3552
4174
  /**
3553
- * The distance of the sphere center in y-direction in [mm].
4175
+ * The bit address of the input/output value within the byte or word address. The bit address is used to specify the exact bit within the byte or word that corresponds to the input/output value.
3554
4176
  * @type {number}
3555
- * @memberof RectangularCapsule
4177
+ * @memberof ProfinetIOData
3556
4178
  */
3557
- 'sphere_center_distance_y': number;
4179
+ 'bit_address'?: number;
3558
4180
  }
3559
4181
 
3560
- export const RectangularCapsuleShapeTypeEnum = {
3561
- RectangularCapsule: 'rectangular_capsule'
4182
+
4183
+ /**
4184
+ * Identifies the input/output type.
4185
+ * @export
4186
+ * @enum {string}
4187
+ */
4188
+
4189
+ export const ProfinetIODirection = {
4190
+ ProfinetIoDirectionInput: 'PROFINET_IO_DIRECTION_INPUT',
4191
+ ProfinetIoDirectionOutput: 'PROFINET_IO_DIRECTION_OUTPUT',
4192
+ ProfinetIoDirectionInout: 'PROFINET_IO_DIRECTION_INOUT'
3562
4193
  } as const;
3563
4194
 
3564
- export type RectangularCapsuleShapeTypeEnum = typeof RectangularCapsuleShapeTypeEnum[keyof typeof RectangularCapsuleShapeTypeEnum];
4195
+ export type ProfinetIODirection = typeof ProfinetIODirection[keyof typeof ProfinetIODirection];
4196
+
3565
4197
 
3566
4198
  /**
3567
- * The channel that defines what a new Wandelbots NOVA version is. * `next` the over all latest version * `stable` newes patch of the current version
4199
+ * Value type of the PROFINET input/output.
3568
4200
  * @export
3569
4201
  * @enum {string}
3570
4202
  */
3571
4203
 
3572
- export const ReleaseChannel = {
3573
- Stable: 'stable',
3574
- Next: 'next'
4204
+ export const ProfinetIOTypeEnum = {
4205
+ ProfinetIoTypeUnknown: 'PROFINET_IO_TYPE_UNKNOWN',
4206
+ ProfinetIoTypeBool: 'PROFINET_IO_TYPE_BOOL',
4207
+ ProfinetIoTypeUsint: 'PROFINET_IO_TYPE_USINT',
4208
+ ProfinetIoTypeSint: 'PROFINET_IO_TYPE_SINT',
4209
+ ProfinetIoTypeUint: 'PROFINET_IO_TYPE_UINT',
4210
+ ProfinetIoTypeInt: 'PROFINET_IO_TYPE_INT',
4211
+ ProfinetIoTypeUdint: 'PROFINET_IO_TYPE_UDINT',
4212
+ ProfinetIoTypeDint: 'PROFINET_IO_TYPE_DINT',
4213
+ ProfinetIoTypeReal: 'PROFINET_IO_TYPE_REAL',
4214
+ ProfinetIoTypeLreal: 'PROFINET_IO_TYPE_LREAL'
3575
4215
  } as const;
3576
4216
 
3577
- export type ReleaseChannel = typeof ReleaseChannel[keyof typeof ReleaseChannel];
4217
+ export type ProfinetIOTypeEnum = typeof ProfinetIOTypeEnum[keyof typeof ProfinetIOTypeEnum];
3578
4218
 
3579
4219
 
3580
4220
  /**
3581
- * The configuration of a physical or virtual robot controller.
4221
+ *
3582
4222
  * @export
3583
- * @interface RobotController
4223
+ * @interface ProfinetInputOutputConfig
3584
4224
  */
3585
- export interface RobotController {
4225
+ export interface ProfinetInputOutputConfig {
3586
4226
  /**
3587
- * A unique name of the Controller inside the Cell. It must be a valid k8s label name as defined by [RFC 1035](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#rfc-1035-label-names).
4227
+ * Content of the input output configuration file.
3588
4228
  * @type {string}
3589
- * @memberof RobotController
4229
+ * @memberof ProfinetInputOutputConfig
3590
4230
  */
3591
- 'name': string;
4231
+ 'config': string;
3592
4232
  /**
3593
- *
3594
- * @type {RobotControllerConfiguration}
3595
- * @memberof RobotController
4233
+ * Offset in bytes for the input data.
4234
+ * @type {number}
4235
+ * @memberof ProfinetInputOutputConfig
3596
4236
  */
3597
- 'configuration': RobotControllerConfiguration;
4237
+ 'input_offset': number;
4238
+ /**
4239
+ * Offset in bytes for the output data.
4240
+ * @type {number}
4241
+ * @memberof ProfinetInputOutputConfig
4242
+ */
4243
+ 'output_offset': number;
3598
4244
  }
3599
4245
  /**
3600
- * @type RobotControllerConfiguration
3601
- * @export
3602
- */
3603
- export type RobotControllerConfiguration = AbbController | FanucController | KukaController | UniversalrobotsController | VirtualController | YaskawaController;
3604
-
3605
- /**
3606
- * Returns the whole current state of robot controller.
4246
+ *
3607
4247
  * @export
3608
- * @interface RobotControllerState
4248
+ * @interface ProfinetSlotDescription
3609
4249
  */
3610
- export interface RobotControllerState {
4250
+ export interface ProfinetSlotDescription {
3611
4251
  /**
3612
- * Timestamp indicating when the represented information was received from the robot controller.
3613
- * @type {string}
3614
- * @memberof RobotControllerState
4252
+ * The number of the PROFINET slot.
4253
+ * @type {number}
4254
+ * @memberof ProfinetSlotDescription
3615
4255
  */
3616
- 'timestamp': string;
4256
+ 'number': number;
3617
4257
  /**
3618
- * Sequence number of the controller state. It starts with 0 upon establishing the connection with a physical controller. The sequence number is reset when the connection to the physical controller is closed and re-established.
4258
+ * The API number of the PROFINET input, used to identify the specific API for the input.
3619
4259
  * @type {number}
3620
- * @memberof RobotControllerState
4260
+ * @memberof ProfinetSlotDescription
3621
4261
  */
3622
- 'sequence_number': number;
4262
+ 'api': number;
3623
4263
  /**
3624
- * Identifier of the configured robot controller.
3625
- * @type {string}
3626
- * @memberof RobotControllerState
4264
+ * An array of PROFINET subslots.
4265
+ * @type {Array<ProfinetSubSlotDescription>}
4266
+ * @memberof ProfinetSlotDescription
3627
4267
  */
3628
- 'controller': string;
4268
+ 'subslots': Array<ProfinetSubSlotDescription>;
4269
+ }
4270
+ /**
4271
+ *
4272
+ * @export
4273
+ * @interface ProfinetSubSlotDescription
4274
+ */
4275
+ export interface ProfinetSubSlotDescription {
3629
4276
  /**
3630
- *
3631
- * @type {OperationMode}
3632
- * @memberof RobotControllerState
4277
+ * The identifier of the PROFINET subslot.
4278
+ * @type {number}
4279
+ * @memberof ProfinetSubSlotDescription
3633
4280
  */
3634
- 'operation_mode': OperationMode;
4281
+ 'number': number;
3635
4282
  /**
3636
- *
3637
- * @type {SafetyStateType}
3638
- * @memberof RobotControllerState
4283
+ * The length in bytes of the PROFINET input.
4284
+ * @type {number}
4285
+ * @memberof ProfinetSubSlotDescription
3639
4286
  */
3640
- 'safety_state': SafetyStateType;
4287
+ 'input_length': number;
3641
4288
  /**
3642
- * If made available by the robot controller, returns the current velocity override in [percentage] for movements adjusted on robot control panel. Valid value range: 1 - 100.
4289
+ * The length in bytes of the PROFINET output.
3643
4290
  * @type {number}
3644
- * @memberof RobotControllerState
4291
+ * @memberof ProfinetSubSlotDescription
3645
4292
  */
3646
- 'velocity_override'?: number;
4293
+ 'output_length': number;
4294
+ }
4295
+ /**
4296
+ * <!-- theme: danger --> > **Experimental** RRT Connect algorithm configuration for collision-free path planning. Rapidly-exploring Random Trees (RRT) builds trees of valid configurations by randomly sampling the joint space and connecting feasible points. RRT Connect grows two trees simultaneously from start and target positions until they meet. This is a custom implementation optimized for manipulator kinematics and collision checking in industrial contexts.
4297
+ * @export
4298
+ * @interface RRTConnectAlgorithm
4299
+ */
4300
+ export interface RRTConnectAlgorithm {
3647
4301
  /**
3648
- * State of indicated motion groups. In case of state request via controller all configured motion groups are returned. In case of executing a motion only the affected motion groups are returned.
3649
- * @type {Array<MotionGroupState>}
3650
- * @memberof RobotControllerState
4302
+ * Algorithm discriminator.
4303
+ * @type {string}
4304
+ * @memberof RRTConnectAlgorithm
3651
4305
  */
3652
- 'motion_groups': Array<MotionGroupState>;
4306
+ 'algorithm_name': RRTConnectAlgorithmAlgorithmNameEnum;
4307
+ /**
4308
+ * Maximum number of iterations for the RRT Connect algorithm. Higher values increase likelihood of success, but also computation time.
4309
+ * @type {number}
4310
+ * @memberof RRTConnectAlgorithm
4311
+ */
4312
+ 'max_iterations'?: number;
3653
4313
  }
3654
4314
 
4315
+ export const RRTConnectAlgorithmAlgorithmNameEnum = {
4316
+ RrtConnectAlgorithm: 'RRTConnectAlgorithm'
4317
+ } as const;
4318
+
4319
+ export type RRTConnectAlgorithmAlgorithmNameEnum = typeof RRTConnectAlgorithmAlgorithmNameEnum[keyof typeof RRTConnectAlgorithmAlgorithmNameEnum];
3655
4320
 
3656
4321
  /**
3657
- *
4322
+ * Defines an x/y-plane with finite size. Centred around the z-axis.
3658
4323
  * @export
3659
- * @interface RobotSetup
4324
+ * @interface Rectangle
3660
4325
  */
3661
- export interface RobotSetup {
4326
+ export interface Rectangle {
3662
4327
  /**
3663
- * String identifiying the model of a motion group.
4328
+ *
3664
4329
  * @type {string}
3665
- * @memberof RobotSetup
4330
+ * @memberof Rectangle
3666
4331
  */
3667
- 'motion_group_model': string;
4332
+ 'shape_type': RectangleShapeTypeEnum;
3668
4333
  /**
3669
- * [ms] cycle time of the motion group controller. A trajectory for this motion group should be computed to this resolution.
4334
+ * The dimension in x-direction in [mm].
3670
4335
  * @type {number}
3671
- * @memberof RobotSetup
4336
+ * @memberof Rectangle
3672
4337
  */
3673
- 'cycle_time': number;
4338
+ 'size_x': number;
3674
4339
  /**
3675
- * The offset from the world frame to the motion group base.
3676
- * @type {Pose}
3677
- * @memberof RobotSetup
4340
+ * The dimension in y-direction in [mm].
4341
+ * @type {number}
4342
+ * @memberof Rectangle
3678
4343
  */
3679
- 'mounting'?: Pose;
4344
+ 'size_y': number;
4345
+ }
4346
+
4347
+ export const RectangleShapeTypeEnum = {
4348
+ Rectangle: 'rectangle'
4349
+ } as const;
4350
+
4351
+ export type RectangleShapeTypeEnum = typeof RectangleShapeTypeEnum[keyof typeof RectangleShapeTypeEnum];
4352
+
4353
+ /**
4354
+ * Convex hull around four spheres. Sphere center points in x/y-plane, offset by either combination \"+/- sizeX\" or \"+/- sizeY\". Alternative description: Rectangle in x/y-plane with a 3D padding.
4355
+ * @export
4356
+ * @interface RectangularCapsule
4357
+ */
4358
+ export interface RectangularCapsule {
3680
4359
  /**
3681
4360
  *
3682
- * @type {Pose}
3683
- * @memberof RobotSetup
4361
+ * @type {string}
4362
+ * @memberof RectangularCapsule
3684
4363
  */
3685
- 'tcp_offset'?: Pose;
4364
+ 'shape_type': RectangularCapsuleShapeTypeEnum;
4365
+ /**
4366
+ * The radius of the inner spheres in [mm].
4367
+ * @type {number}
4368
+ * @memberof RectangularCapsule
4369
+ */
4370
+ 'radius': number;
4371
+ /**
4372
+ * The distance of the sphere center in x-direction in [mm].
4373
+ * @type {number}
4374
+ * @memberof RectangularCapsule
4375
+ */
4376
+ 'sphere_center_distance_x': number;
4377
+ /**
4378
+ * The distance of the sphere center in y-direction in [mm].
4379
+ * @type {number}
4380
+ * @memberof RectangularCapsule
4381
+ */
4382
+ 'sphere_center_distance_y': number;
4383
+ }
4384
+
4385
+ export const RectangularCapsuleShapeTypeEnum = {
4386
+ RectangularCapsule: 'rectangular_capsule'
4387
+ } as const;
4388
+
4389
+ export type RectangularCapsuleShapeTypeEnum = typeof RectangularCapsuleShapeTypeEnum[keyof typeof RectangularCapsuleShapeTypeEnum];
4390
+
4391
+ /**
4392
+ * The channel that defines what a new Wandelbots NOVA version is. * `next` the over all latest version * `stable` newes patch of the current version
4393
+ * @export
4394
+ * @enum {string}
4395
+ */
4396
+
4397
+ export const ReleaseChannel = {
4398
+ Stable: 'stable',
4399
+ Next: 'next'
4400
+ } as const;
4401
+
4402
+ export type ReleaseChannel = typeof ReleaseChannel[keyof typeof ReleaseChannel];
4403
+
4404
+
4405
+ /**
4406
+ * The configuration of a physical or virtual robot controller.
4407
+ * @export
4408
+ * @interface RobotController
4409
+ */
4410
+ export interface RobotController {
4411
+ /**
4412
+ * Unique name of controller within the cell. It must be a valid k8s label name as defined by [RFC 1035](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#rfc-1035-label-names).
4413
+ * @type {string}
4414
+ * @memberof RobotController
4415
+ */
4416
+ 'name': string;
3686
4417
  /**
3687
4418
  *
3688
- * @type {LimitSet}
3689
- * @memberof RobotSetup
4419
+ * @type {RobotControllerConfiguration}
4420
+ * @memberof RobotController
3690
4421
  */
3691
- 'global_limits'?: LimitSet;
4422
+ 'configuration': RobotControllerConfiguration;
4423
+ }
4424
+ /**
4425
+ * @type RobotControllerConfiguration
4426
+ * @export
4427
+ */
4428
+ export type RobotControllerConfiguration = AbbController | FanucController | KukaController | UniversalrobotsController | VirtualController | YaskawaController;
4429
+
4430
+ /**
4431
+ * Returns the whole current state of robot controller.
4432
+ * @export
4433
+ * @interface RobotControllerState
4434
+ */
4435
+ export interface RobotControllerState {
4436
+ /**
4437
+ * Mode of communication and control between NOVA and the robot controller.
4438
+ * @type {RobotSystemMode}
4439
+ * @memberof RobotControllerState
4440
+ */
4441
+ 'mode': RobotSystemMode;
4442
+ /**
4443
+ * Last error stack encountered during initialization process or after a controller disconnect. At this stage, it\'s unclear whether the error is fatal. Evaluate `last_error` to decide whether to remove the controller using `deleteController`. Examples: - Delete required: Host resolution fails repeatedly due to an incorrect IP. - Delete not required: Temporary network delay caused a disconnect; the system will auto-reconnect.
4444
+ * @type {Array<string>}
4445
+ * @memberof RobotControllerState
4446
+ */
4447
+ 'last_error'?: Array<string>;
4448
+ /**
4449
+ * Timestamp indicating when the represented information was received from the robot controller.
4450
+ * @type {string}
4451
+ * @memberof RobotControllerState
4452
+ */
4453
+ 'timestamp': string;
4454
+ /**
4455
+ * Sequence number of the controller state. It starts with 0 upon establishing the connection with a physical controller. The sequence number is reset when the connection to the physical controller is closed and re-established.
4456
+ * @type {number}
4457
+ * @memberof RobotControllerState
4458
+ */
4459
+ 'sequence_number': number;
4460
+ /**
4461
+ * Identifier of the configured robot controller.
4462
+ * @type {string}
4463
+ * @memberof RobotControllerState
4464
+ */
4465
+ 'controller': string;
3692
4466
  /**
3693
4467
  *
3694
- * @type {Payload}
3695
- * @memberof RobotSetup
4468
+ * @type {OperationMode}
4469
+ * @memberof RobotControllerState
3696
4470
  */
3697
- 'payload'?: Payload;
4471
+ 'operation_mode': OperationMode;
4472
+ /**
4473
+ *
4474
+ * @type {SafetyStateType}
4475
+ * @memberof RobotControllerState
4476
+ */
4477
+ 'safety_state': SafetyStateType;
4478
+ /**
4479
+ * If made available by the robot controller, returns the current velocity override in [percentage] for movements adjusted on robot control panel. Valid value range: 1 - 100.
4480
+ * @type {number}
4481
+ * @memberof RobotControllerState
4482
+ */
4483
+ 'velocity_override'?: number;
3698
4484
  /**
3699
- * Collision scenes to be respected by the motion planner. Each contains the single motion group which is planned for. Scenes are checked individually along the trajectory and independently of other scenes. To respect the safety zones of the controller, fetch the safety zones, link and tool shapes from the controller and add one scene made up of those. To respect the safety zones of the controller and check for collision: 1. Fetch the safety zones, link and tool shapes from the controller. 2. Add the fetched zones, links and tools to a scene. 3. Create other scenes from your own 3D data as needed. 4. Execute this endpoint. 5. The response highlights the scenes in which a collision was detected by key.
3700
- * @type {{ [key: string]: SingleMotionGroupCollisionScene; }}
3701
- * @memberof RobotSetup
4485
+ * State of indicated motion groups. In case of state request via controller all configured motion groups are returned. In case of executing a motion only the affected motion groups are returned.
4486
+ * @type {Array<MotionGroupState>}
4487
+ * @memberof RobotControllerState
3702
4488
  */
3703
- 'collision_scenes'?: { [key: string]: SingleMotionGroupCollisionScene; };
4489
+ 'motion_groups': Array<MotionGroupState>;
3704
4490
  }
4491
+
4492
+
3705
4493
  /**
3706
- * The system mode of the robot system. ### ROBOT_SYSTEM_MODE_UNDEFINED Indicates that the robot controller is currently performing a mode transition. ### ROBOT_SYSTEM_MODE_DISCONNECT There is no communication with the robot controller at all. All connections are closed. No command is sent to the robot controller while in this mode. No input/output interaction is possible in this mode! All move requests will be rejected in this mode! ### ROBOT_SYSTEM_MODE_MONITOR A connection to the robot controller is established to only read the robot controller state. No command is sent to the robot controller while in this mode. It is possible to receive input/output information. All move requests will be rejected in this mode! ### ROBOT_SYSTEM_MODE_CONTROL An active connection is established with the robot controller and the robot system is cyclic commanded to stay in its actual position. The robot controller state is received in the cycle time of the robot controller. Requests via the MotionService and JoggingService will be processed and executed in this mode. Input/Output interaction is possible in this mode! **In this mode the robot system can be commanded to move.** ### ROBOT_SYSTEM_MODE_FREE_DRIVE Like ROBOT_SYSTEM_MODE_MONITOR a connection to the robot controller is established to only read the robot controller state. The difference is that the motion groups can be moved by the user (Free Drive). Thus, the servo motors are turned on. All move requests will be rejected in this mode! **This mode is not supported by every robot!** Use [getSupportedModes](getSupportedModes) to evaluate if the device support free drive.
4494
+ * Defines the current system mode of the robot system, including NOVA communicating with the robot controller. ### MODE_CONTROLLER_NOT_CONFIGURED No controller with the specified identifier is configured. Call [addRobotController](addRobotController) to register a controller. ### MODE_INITIALIZING Indicates that a connection to the robot controller is established or reestablished in case of a disconnect. On success, the controller is set to MODE_MONITOR. On failure, the initialization process is retried until successful or cancelled by the user. ### MODE_MONITOR Read-only mode with an active controller connection. - Receives robot state and I/O signals - Move requests are rejected - No commands are sent to the controller ### MODE_CONTROL Active control mode. **Movement is possible in this mode** The robot is cyclically commanded to hold its current position. The robot state is received in sync with the controller cycle. Motion and jogging requests are accepted and executed. Input/Output interaction is enabled. ### MODE_FREE_DRIVE Read-only mode with servo motors enabled for manual movement (Free Drive). Move requests are rejected. Not supported by all robots: Use [getSupportedModes](getSupportedModes) to check Free Drive availability.
3707
4495
  * @export
3708
4496
  * @enum {string}
3709
4497
  */
3710
4498
 
3711
4499
  export const RobotSystemMode = {
3712
- RobotSystemModeUndefined: 'ROBOT_SYSTEM_MODE_UNDEFINED',
3713
- RobotSystemModeDisconnect: 'ROBOT_SYSTEM_MODE_DISCONNECT',
3714
- RobotSystemModeMonitor: 'ROBOT_SYSTEM_MODE_MONITOR',
3715
- RobotSystemModeControl: 'ROBOT_SYSTEM_MODE_CONTROL',
3716
- RobotSystemModeFreeDrive: 'ROBOT_SYSTEM_MODE_FREE_DRIVE'
4500
+ ModeControllerNotConfigured: 'MODE_CONTROLLER_NOT_CONFIGURED',
4501
+ ModeInitializing: 'MODE_INITIALIZING',
4502
+ ModeMonitor: 'MODE_MONITOR',
4503
+ ModeControl: 'MODE_CONTROL',
4504
+ ModeFreeDrive: 'MODE_FREE_DRIVE'
3717
4505
  } as const;
3718
4506
 
3719
4507
  export type RobotSystemMode = typeof RobotSystemMode[keyof typeof RobotSystemMode];
@@ -3791,52 +4579,6 @@ export interface RobotTcpData {
3791
4579
  }
3792
4580
 
3793
4581
 
3794
- /**
3795
- *
3796
- * @export
3797
- * @interface Running
3798
- */
3799
- export interface Running {
3800
- /**
3801
- *
3802
- * @type {string}
3803
- * @memberof Running
3804
- */
3805
- 'kind': RunningKindEnum;
3806
- }
3807
-
3808
- export const RunningKindEnum = {
3809
- Running: 'RUNNING'
3810
- } as const;
3811
-
3812
- export type RunningKindEnum = typeof RunningKindEnum[keyof typeof RunningKindEnum];
3813
-
3814
- /**
3815
- *
3816
- * @export
3817
- * @interface Running1
3818
- */
3819
- export interface Running1 {
3820
- /**
3821
- *
3822
- * @type {string}
3823
- * @memberof Running1
3824
- */
3825
- 'kind': Running1KindEnum;
3826
- /**
3827
- * Remaining time in milliseconds (ms) to reach the end of the motion.
3828
- * @type {number}
3829
- * @memberof Running1
3830
- */
3831
- 'time_to_end': number;
3832
- }
3833
-
3834
- export const Running1KindEnum = {
3835
- Running: 'RUNNING'
3836
- } as const;
3837
-
3838
- export type Running1KindEnum = typeof Running1KindEnum[keyof typeof Running1KindEnum];
3839
-
3840
4582
  /**
3841
4583
  * Current safety state of the configured robot controller. Operation modes in which the attached motion groups can be moved are: - SAFETY_STATE_NORMAL - SAFETY_STATE_REDUCED All other modes are considered as non-operational.
3842
4584
  * @export
@@ -4011,37 +4753,6 @@ export const SettableRobotSystemMode = {
4011
4753
  export type SettableRobotSystemMode = typeof SettableRobotSystemMode[keyof typeof SettableRobotSystemMode];
4012
4754
 
4013
4755
 
4014
- /**
4015
- *
4016
- * @export
4017
- * @interface SingleMotionGroupCollisionScene
4018
- */
4019
- export interface SingleMotionGroupCollisionScene {
4020
- /**
4021
- * A collection of identifiable colliders.
4022
- * @type {{ [key: string]: Collider; }}
4023
- * @memberof SingleMotionGroupCollisionScene
4024
- */
4025
- 'static_colliders'?: { [key: string]: Collider; };
4026
- /**
4027
- * A link chain is a kinematic chain of links that is connected via joints. A motion group can be used to control the motion of the joints in a link chain. A link is a group of colliders that is attached to the link reference frame. The reference frame of a link is obtained after applying all sets of Denavit-Hartenberg-parameters from base to (including) the link index. This means that the reference frame of the link is on the rotation axis of the next joint in the kinematic chain. Example: For a motion group with 2 joints, the collider reference frame (CRF) for link 1 is on the rotation axis of joint 2. The chain looks like: - Origin >> Mounting >> Base >> (CRF Base) Joint 0 >> Link 0 >> (CRF Link 0) Joint 1 >> Link 1 >> (CRF Link 1) Flange (CRF Tool) >> TCP Adjacent links in the kinematic chain of the motion group are not checked for mutual collision.
4028
- * @type {Array<{ [key: string]: Collider; }>}
4029
- * @memberof SingleMotionGroupCollisionScene
4030
- */
4031
- 'link_chain'?: Array<{ [key: string]: Collider; }>;
4032
- /**
4033
- * Defines the shape of a tool. A tool is a dictionary of colliders. All colliders that make up a tool are attached to the flange frame of the motion group.
4034
- * @type {{ [key: string]: Collider; }}
4035
- * @memberof SingleMotionGroupCollisionScene
4036
- */
4037
- 'tool'?: { [key: string]: Collider; };
4038
- /**
4039
- * If true, self-collision detection is enabled for the motion group. See LinkChain documentation for details. Default is true.
4040
- * @type {boolean}
4041
- * @memberof SingleMotionGroupCollisionScene
4042
- */
4043
- 'motion_group_self_collision_detection'?: boolean;
4044
- }
4045
4756
  /**
4046
4757
  *
4047
4758
  * @export
@@ -4100,7 +4811,7 @@ export interface StartMovementRequest {
4100
4811
  * @type {Direction}
4101
4812
  * @memberof StartMovementRequest
4102
4813
  */
4103
- 'direction': Direction;
4814
+ 'direction'?: Direction;
4104
4815
  /**
4105
4816
  * Attaches a list of output commands to the trajectory. The outputs are set to the specified values right after the specified location was reached. If the specified location is located before the start location (forward direction: value is smaller, backward direction: value is bigger), the output is not set.
4106
4817
  * @type {Array<IOValue>}
@@ -4407,7 +5118,27 @@ export type TrajectoryDetailsKindEnum = typeof TrajectoryDetailsKindEnum[keyof t
4407
5118
  * @type TrajectoryDetailsState
4408
5119
  * @export
4409
5120
  */
4410
- export type TrajectoryDetailsState = EndOfTrajectory | PausedByRequest | PausedOnIO | Running1 | WaitForIO;
5121
+ export type TrajectoryDetailsState = TrajectoryEnded | TrajectoryPausedByUser | TrajectoryPausedOnIO | TrajectoryRunning | TrajectoryWaitForIO;
5122
+
5123
+ /**
5124
+ *
5125
+ * @export
5126
+ * @interface TrajectoryEnded
5127
+ */
5128
+ export interface TrajectoryEnded {
5129
+ /**
5130
+ *
5131
+ * @type {string}
5132
+ * @memberof TrajectoryEnded
5133
+ */
5134
+ 'kind': TrajectoryEndedKindEnum;
5135
+ }
5136
+
5137
+ export const TrajectoryEndedKindEnum = {
5138
+ EndOfTrajectory: 'END_OF_TRAJECTORY'
5139
+ } as const;
5140
+
5141
+ export type TrajectoryEndedKindEnum = typeof TrajectoryEndedKindEnum[keyof typeof TrajectoryEndedKindEnum];
4411
5142
 
4412
5143
  /**
4413
5144
  *
@@ -4436,21 +5167,107 @@ export const TrajectoryIdMessageTypeEnum = {
4436
5167
  export type TrajectoryIdMessageTypeEnum = typeof TrajectoryIdMessageTypeEnum[keyof typeof TrajectoryIdMessageTypeEnum];
4437
5168
 
4438
5169
  /**
4439
- * The unit of input/output value.
5170
+ *
4440
5171
  * @export
4441
- * @enum {string}
5172
+ * @interface TrajectoryPausedByUser
4442
5173
  */
5174
+ export interface TrajectoryPausedByUser {
5175
+ /**
5176
+ *
5177
+ * @type {string}
5178
+ * @memberof TrajectoryPausedByUser
5179
+ */
5180
+ 'kind': TrajectoryPausedByUserKindEnum;
5181
+ }
4443
5182
 
4444
- export const UnitType = {
4445
- UnitNone: 'UNIT_NONE',
4446
- UnitKilogram: 'UNIT_KILOGRAM',
4447
- UnitAmpere: 'UNIT_AMPERE',
4448
- UnitKelvin: 'UNIT_KELVIN',
4449
- UnitHertz: 'UNIT_HERTZ',
4450
- UnitNewton: 'UNIT_NEWTON',
4451
- UnitVolt: 'UNIT_VOLT',
4452
- UnitCelsius: 'UNIT_CELSIUS',
4453
- UnitNewtonMeter: 'UNIT_NEWTON_METER',
5183
+ export const TrajectoryPausedByUserKindEnum = {
5184
+ PausedByUser: 'PAUSED_BY_USER'
5185
+ } as const;
5186
+
5187
+ export type TrajectoryPausedByUserKindEnum = typeof TrajectoryPausedByUserKindEnum[keyof typeof TrajectoryPausedByUserKindEnum];
5188
+
5189
+ /**
5190
+ *
5191
+ * @export
5192
+ * @interface TrajectoryPausedOnIO
5193
+ */
5194
+ export interface TrajectoryPausedOnIO {
5195
+ /**
5196
+ *
5197
+ * @type {string}
5198
+ * @memberof TrajectoryPausedOnIO
5199
+ */
5200
+ 'kind': TrajectoryPausedOnIOKindEnum;
5201
+ }
5202
+
5203
+ export const TrajectoryPausedOnIOKindEnum = {
5204
+ PausedOnIo: 'PAUSED_ON_IO'
5205
+ } as const;
5206
+
5207
+ export type TrajectoryPausedOnIOKindEnum = typeof TrajectoryPausedOnIOKindEnum[keyof typeof TrajectoryPausedOnIOKindEnum];
5208
+
5209
+ /**
5210
+ *
5211
+ * @export
5212
+ * @interface TrajectoryRunning
5213
+ */
5214
+ export interface TrajectoryRunning {
5215
+ /**
5216
+ *
5217
+ * @type {string}
5218
+ * @memberof TrajectoryRunning
5219
+ */
5220
+ 'kind': TrajectoryRunningKindEnum;
5221
+ /**
5222
+ * Remaining time in milliseconds (ms) to reach the end of the motion.
5223
+ * @type {number}
5224
+ * @memberof TrajectoryRunning
5225
+ */
5226
+ 'time_to_end': number;
5227
+ }
5228
+
5229
+ export const TrajectoryRunningKindEnum = {
5230
+ Running: 'RUNNING'
5231
+ } as const;
5232
+
5233
+ export type TrajectoryRunningKindEnum = typeof TrajectoryRunningKindEnum[keyof typeof TrajectoryRunningKindEnum];
5234
+
5235
+ /**
5236
+ *
5237
+ * @export
5238
+ * @interface TrajectoryWaitForIO
5239
+ */
5240
+ export interface TrajectoryWaitForIO {
5241
+ /**
5242
+ *
5243
+ * @type {string}
5244
+ * @memberof TrajectoryWaitForIO
5245
+ */
5246
+ 'kind': TrajectoryWaitForIOKindEnum;
5247
+ }
5248
+
5249
+ export const TrajectoryWaitForIOKindEnum = {
5250
+ WaitForIo: 'WAIT_FOR_IO'
5251
+ } as const;
5252
+
5253
+ export type TrajectoryWaitForIOKindEnum = typeof TrajectoryWaitForIOKindEnum[keyof typeof TrajectoryWaitForIOKindEnum];
5254
+
5255
+ /**
5256
+ * The unit of input/output value.
5257
+ * @export
5258
+ * @enum {string}
5259
+ */
5260
+
5261
+ export const UnitType = {
5262
+ UnitNone: 'UNIT_NONE',
5263
+ UnitKilogram: 'UNIT_KILOGRAM',
5264
+ UnitAmpere: 'UNIT_AMPERE',
5265
+ UnitKelvin: 'UNIT_KELVIN',
5266
+ UnitHertz: 'UNIT_HERTZ',
5267
+ UnitNewton: 'UNIT_NEWTON',
5268
+ UnitVolt: 'UNIT_VOLT',
5269
+ UnitCelsius: 'UNIT_CELSIUS',
5270
+ UnitNewtonMeter: 'UNIT_NEWTON_METER',
4454
5271
  UnitMeter: 'UNIT_METER'
4455
5272
  } as const;
4456
5273
 
@@ -4522,6 +5339,12 @@ export interface ValidationError {
4522
5339
  * @memberof ValidationError
4523
5340
  */
4524
5341
  'type': string;
5342
+ /**
5343
+ *
5344
+ * @type {{ [key: string]: any; }}
5345
+ * @memberof ValidationError
5346
+ */
5347
+ 'input': { [key: string]: any; };
4525
5348
  }
4526
5349
  /**
4527
5350
  * @type ValidationErrorLocInner
@@ -4564,7 +5387,7 @@ export interface VirtualController {
4564
5387
  * @type {string}
4565
5388
  * @memberof VirtualController
4566
5389
  */
4567
- 'position'?: string;
5390
+ 'initial_joint_position'?: string;
4568
5391
  }
4569
5392
 
4570
5393
  export const VirtualControllerKindEnum = {
@@ -4614,6 +5437,7 @@ export const VirtualControllerTypes = {
4614
5437
  FanucCrx20ial: 'fanuc-crx20ial',
4615
5438
  FanucCrx25ia: 'fanuc-crx25ia',
4616
5439
  FanucCrx30ia: 'fanuc-crx30ia',
5440
+ FanucCrx5ia: 'fanuc-crx5ia',
4617
5441
  FanucLrMate200iD: 'fanuc-lr_mate_200iD',
4618
5442
  FanucLrMate200iD4S: 'fanuc-lr_mate_200iD4S',
4619
5443
  FanucLrMate200iD7L: 'fanuc-lr_mate_200iD7L',
@@ -4621,6 +5445,7 @@ export const VirtualControllerTypes = {
4621
5445
  FanucM10iD16S: 'fanuc-m10iD16S',
4622
5446
  FanucM20iD25: 'fanuc-m20iD25',
4623
5447
  FanucM20iD35: 'fanuc-m20iD35',
5448
+ FanucM710iC20L: 'fanuc-m710iC20L',
4624
5449
  FanucM900iB280L: 'fanuc-m900iB280L',
4625
5450
  FanucM900iB360E: 'fanuc-m900iB360E',
4626
5451
  FanucR2000ic125l: 'fanuc-r2000ic125l',
@@ -4711,26 +5536,6 @@ export interface VirtualRobotConfiguration {
4711
5536
  */
4712
5537
  'content': string;
4713
5538
  }
4714
- /**
4715
- *
4716
- * @export
4717
- * @interface WaitForIO
4718
- */
4719
- export interface WaitForIO {
4720
- /**
4721
- *
4722
- * @type {string}
4723
- * @memberof WaitForIO
4724
- */
4725
- 'kind': WaitForIOKindEnum;
4726
- }
4727
-
4728
- export const WaitForIOKindEnum = {
4729
- WaitForIo: 'WAIT_FOR_IO'
4730
- } as const;
4731
-
4732
- export type WaitForIOKindEnum = typeof WaitForIOKindEnum[keyof typeof WaitForIOKindEnum];
4733
-
4734
5539
  /**
4735
5540
  * The value to compare with the current value of the input/output.
4736
5541
  * @export
@@ -4786,7 +5591,7 @@ export type YaskawaControllerKindEnum = typeof YaskawaControllerKindEnum[keyof t
4786
5591
  export const ApplicationApiAxiosParamCreator = function (configuration?: Configuration) {
4787
5592
  return {
4788
5593
  /**
4789
- * Install a basic, containerized web application to the cell to control robots with a customized frontend. Prerequisites: A Docker hub account or similar container registry account, with valid credentials. After adding the application to the cell, open the application on the Wandelbots NOVA home screen. Read [build your application](/docs/docs/development/) for more information. <!-- theme: none --> > #### Predefined Environment Variables > - `NOVA_API`: The endpoint where the API is reachable from the container serving the Application. > - `BASE_PATH`: The root path of the deployed Application. It will be reachable via: http://$host/$BASE_PATH > - `CELL_NAME`: The name of the cell where the application is deployed.
5594
+ * Install a basic, containerized web application to the cell to control robots with a customized frontend. Prerequisites: A Docker hub account or similar container registry account, with valid credentials. After adding the application to the cell, open the application on the Wandelbots NOVA home screen. Read [build your application](/docs/docs/development/) for more information. <!-- theme: none --> > #### Predefined Environment Variables > - `NOVA_API`: The API endpoint accessible from within the application container. > - `NATS_BROKER`: The NATS broker endpoint accessible from within the application container. > - `BASE_PATH`: The application\'s root path, accessible at http://$host/$BASE_PATH > - `CELL_NAME`: The name of the cell hosting the deployed application.
4790
5595
  * @summary Add Application
4791
5596
  * @param {string} cell Unique identifier addressing a cell in all API calls.
4792
5597
  * @param {App} app
@@ -5092,7 +5897,7 @@ export const ApplicationApiFp = function(configuration?: Configuration) {
5092
5897
  const localVarAxiosParamCreator = ApplicationApiAxiosParamCreator(configuration)
5093
5898
  return {
5094
5899
  /**
5095
- * Install a basic, containerized web application to the cell to control robots with a customized frontend. Prerequisites: A Docker hub account or similar container registry account, with valid credentials. After adding the application to the cell, open the application on the Wandelbots NOVA home screen. Read [build your application](/docs/docs/development/) for more information. <!-- theme: none --> > #### Predefined Environment Variables > - `NOVA_API`: The endpoint where the API is reachable from the container serving the Application. > - `BASE_PATH`: The root path of the deployed Application. It will be reachable via: http://$host/$BASE_PATH > - `CELL_NAME`: The name of the cell where the application is deployed.
5900
+ * Install a basic, containerized web application to the cell to control robots with a customized frontend. Prerequisites: A Docker hub account or similar container registry account, with valid credentials. After adding the application to the cell, open the application on the Wandelbots NOVA home screen. Read [build your application](/docs/docs/development/) for more information. <!-- theme: none --> > #### Predefined Environment Variables > - `NOVA_API`: The API endpoint accessible from within the application container. > - `NATS_BROKER`: The NATS broker endpoint accessible from within the application container. > - `BASE_PATH`: The application\'s root path, accessible at http://$host/$BASE_PATH > - `CELL_NAME`: The name of the cell hosting the deployed application.
5096
5901
  * @summary Add Application
5097
5902
  * @param {string} cell Unique identifier addressing a cell in all API calls.
5098
5903
  * @param {App} app
@@ -5189,7 +5994,7 @@ export const ApplicationApiFactory = function (configuration?: Configuration, ba
5189
5994
  const localVarFp = ApplicationApiFp(configuration)
5190
5995
  return {
5191
5996
  /**
5192
- * Install a basic, containerized web application to the cell to control robots with a customized frontend. Prerequisites: A Docker hub account or similar container registry account, with valid credentials. After adding the application to the cell, open the application on the Wandelbots NOVA home screen. Read [build your application](/docs/docs/development/) for more information. <!-- theme: none --> > #### Predefined Environment Variables > - `NOVA_API`: The endpoint where the API is reachable from the container serving the Application. > - `BASE_PATH`: The root path of the deployed Application. It will be reachable via: http://$host/$BASE_PATH > - `CELL_NAME`: The name of the cell where the application is deployed.
5997
+ * Install a basic, containerized web application to the cell to control robots with a customized frontend. Prerequisites: A Docker hub account or similar container registry account, with valid credentials. After adding the application to the cell, open the application on the Wandelbots NOVA home screen. Read [build your application](/docs/docs/development/) for more information. <!-- theme: none --> > #### Predefined Environment Variables > - `NOVA_API`: The API endpoint accessible from within the application container. > - `NATS_BROKER`: The NATS broker endpoint accessible from within the application container. > - `BASE_PATH`: The application\'s root path, accessible at http://$host/$BASE_PATH > - `CELL_NAME`: The name of the cell hosting the deployed application.
5193
5998
  * @summary Add Application
5194
5999
  * @param {string} cell Unique identifier addressing a cell in all API calls.
5195
6000
  * @param {App} app
@@ -5260,92 +6065,1222 @@ export const ApplicationApiFactory = function (configuration?: Configuration, ba
5260
6065
  };
5261
6066
  };
5262
6067
 
5263
- /**
5264
- * ApplicationApi - object-oriented interface
5265
- * @export
5266
- * @class ApplicationApi
5267
- * @extends {BaseAPI}
5268
- */
5269
- export class ApplicationApi extends BaseAPI {
6068
+ /**
6069
+ * ApplicationApi - object-oriented interface
6070
+ * @export
6071
+ * @class ApplicationApi
6072
+ * @extends {BaseAPI}
6073
+ */
6074
+ export class ApplicationApi extends BaseAPI {
6075
+ /**
6076
+ * Install a basic, containerized web application to the cell to control robots with a customized frontend. Prerequisites: A Docker hub account or similar container registry account, with valid credentials. After adding the application to the cell, open the application on the Wandelbots NOVA home screen. Read [build your application](/docs/docs/development/) for more information. <!-- theme: none --> > #### Predefined Environment Variables > - `NOVA_API`: The API endpoint accessible from within the application container. > - `NATS_BROKER`: The NATS broker endpoint accessible from within the application container. > - `BASE_PATH`: The application\'s root path, accessible at http://$host/$BASE_PATH > - `CELL_NAME`: The name of the cell hosting the deployed application.
6077
+ * @summary Add Application
6078
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6079
+ * @param {App} app
6080
+ * @param {number} [completionTimeout]
6081
+ * @param {*} [options] Override http request option.
6082
+ * @throws {RequiredError}
6083
+ * @memberof ApplicationApi
6084
+ */
6085
+ public addApp(cell: string, app: App, completionTimeout?: number, options?: RawAxiosRequestConfig) {
6086
+ return ApplicationApiFp(this.configuration).addApp(cell, app, completionTimeout, options).then((request) => request(this.axios, this.basePath));
6087
+ }
6088
+
6089
+ /**
6090
+ * Delete all GUI applications from the cell.
6091
+ * @summary Clear Applications
6092
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6093
+ * @param {number} [completionTimeout]
6094
+ * @param {*} [options] Override http request option.
6095
+ * @throws {RequiredError}
6096
+ * @memberof ApplicationApi
6097
+ */
6098
+ public clearApps(cell: string, completionTimeout?: number, options?: RawAxiosRequestConfig) {
6099
+ return ApplicationApiFp(this.configuration).clearApps(cell, completionTimeout, options).then((request) => request(this.axios, this.basePath));
6100
+ }
6101
+
6102
+ /**
6103
+ * Delete a GUI application from the cell.
6104
+ * @summary Delete Application
6105
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6106
+ * @param {string} app
6107
+ * @param {number} [completionTimeout]
6108
+ * @param {*} [options] Override http request option.
6109
+ * @throws {RequiredError}
6110
+ * @memberof ApplicationApi
6111
+ */
6112
+ public deleteApp(cell: string, app: string, completionTimeout?: number, options?: RawAxiosRequestConfig) {
6113
+ return ApplicationApiFp(this.configuration).deleteApp(cell, app, completionTimeout, options).then((request) => request(this.axios, this.basePath));
6114
+ }
6115
+
6116
+ /**
6117
+ * Get the configuration for an active GUI application in the cell. To update the configuration of a GUI application in the cell, use this configuration with the \'Update Configuration\' endpoint.
6118
+ * @summary Configuration
6119
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6120
+ * @param {string} app
6121
+ * @param {*} [options] Override http request option.
6122
+ * @throws {RequiredError}
6123
+ * @memberof ApplicationApi
6124
+ */
6125
+ public getApp(cell: string, app: string, options?: RawAxiosRequestConfig) {
6126
+ return ApplicationApiFp(this.configuration).getApp(cell, app, options).then((request) => request(this.axios, this.basePath));
6127
+ }
6128
+
6129
+ /**
6130
+ * List all GUI applications that have been added to a cell. with the \'Add Application\' endpoint. If the cell does not contain GUI applications, the list is returned empty.
6131
+ * @summary List Applications
6132
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6133
+ * @param {*} [options] Override http request option.
6134
+ * @throws {RequiredError}
6135
+ * @memberof ApplicationApi
6136
+ */
6137
+ public listApps(cell: string, options?: RawAxiosRequestConfig) {
6138
+ return ApplicationApiFp(this.configuration).listApps(cell, options).then((request) => request(this.axios, this.basePath));
6139
+ }
6140
+
6141
+ /**
6142
+ * Update the configuration of a GUI application in the cell.
6143
+ * @summary Update Configuration
6144
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6145
+ * @param {string} app
6146
+ * @param {App} app2
6147
+ * @param {number} [completionTimeout]
6148
+ * @param {*} [options] Override http request option.
6149
+ * @throws {RequiredError}
6150
+ * @memberof ApplicationApi
6151
+ */
6152
+ public updateApp(cell: string, app: string, app2: App, completionTimeout?: number, options?: RawAxiosRequestConfig) {
6153
+ return ApplicationApiFp(this.configuration).updateApp(cell, app, app2, completionTimeout, options).then((request) => request(this.axios, this.basePath));
6154
+ }
6155
+ }
6156
+
6157
+
6158
+
6159
+ /**
6160
+ * BUSInputsOutputsApi - axios parameter creator
6161
+ * @export
6162
+ */
6163
+ export const BUSInputsOutputsApiAxiosParamCreator = function (configuration?: Configuration) {
6164
+ return {
6165
+ /**
6166
+ * Add a BUS Inputs/Outputs Service to the cell.
6167
+ * @summary Add Service
6168
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6169
+ * @param {BusIOType} busIOType
6170
+ * @param {number} [completionTimeout]
6171
+ * @param {*} [options] Override http request option.
6172
+ * @throws {RequiredError}
6173
+ */
6174
+ addBusIOService: async (cell: string, busIOType: BusIOType, completionTimeout?: number, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
6175
+ // verify required parameter 'cell' is not null or undefined
6176
+ assertParamExists('addBusIOService', 'cell', cell)
6177
+ // verify required parameter 'busIOType' is not null or undefined
6178
+ assertParamExists('addBusIOService', 'busIOType', busIOType)
6179
+ const localVarPath = `/cells/{cell}/bus-ios`
6180
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)));
6181
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
6182
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
6183
+ let baseOptions;
6184
+ if (configuration) {
6185
+ baseOptions = configuration.baseOptions;
6186
+ }
6187
+
6188
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
6189
+ const localVarHeaderParameter = {} as any;
6190
+ const localVarQueryParameter = {} as any;
6191
+
6192
+ // authentication BasicAuth required
6193
+ // http basic authentication required
6194
+ setBasicAuthToObject(localVarRequestOptions, configuration)
6195
+
6196
+ // authentication BearerAuth required
6197
+ // http bearer authentication required
6198
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
6199
+
6200
+ if (completionTimeout !== undefined) {
6201
+ localVarQueryParameter['completion_timeout'] = completionTimeout;
6202
+ }
6203
+
6204
+
6205
+
6206
+ localVarHeaderParameter['Content-Type'] = 'application/json';
6207
+
6208
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
6209
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
6210
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
6211
+ localVarRequestOptions.data = serializeDataIfNeeded(busIOType, localVarRequestOptions, configuration)
6212
+
6213
+ return {
6214
+ url: toPathString(localVarUrlObj),
6215
+ options: localVarRequestOptions,
6216
+ };
6217
+ },
6218
+ /**
6219
+ * Adds an input/output to or updates an input/output on the PROFINET device.
6220
+ * @summary Add PROFINET Input/Output
6221
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6222
+ * @param {string} io Unique identifier to address an Input/Output in the cell.
6223
+ * @param {ProfinetIOData} profinetIOData
6224
+ * @param {*} [options] Override http request option.
6225
+ * @throws {RequiredError}
6226
+ */
6227
+ addProfinetIO: async (cell: string, io: string, profinetIOData: ProfinetIOData, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
6228
+ // verify required parameter 'cell' is not null or undefined
6229
+ assertParamExists('addProfinetIO', 'cell', cell)
6230
+ // verify required parameter 'io' is not null or undefined
6231
+ assertParamExists('addProfinetIO', 'io', io)
6232
+ // verify required parameter 'profinetIOData' is not null or undefined
6233
+ assertParamExists('addProfinetIO', 'profinetIOData', profinetIOData)
6234
+ const localVarPath = `/cells/{cell}/bus-ios/profinet/ios/{io}`
6235
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
6236
+ .replace(`{${"io"}}`, encodeURIComponent(String(io)));
6237
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
6238
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
6239
+ let baseOptions;
6240
+ if (configuration) {
6241
+ baseOptions = configuration.baseOptions;
6242
+ }
6243
+
6244
+ const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options};
6245
+ const localVarHeaderParameter = {} as any;
6246
+ const localVarQueryParameter = {} as any;
6247
+
6248
+ // authentication BasicAuth required
6249
+ // http basic authentication required
6250
+ setBasicAuthToObject(localVarRequestOptions, configuration)
6251
+
6252
+ // authentication BearerAuth required
6253
+ // http bearer authentication required
6254
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
6255
+
6256
+
6257
+
6258
+ localVarHeaderParameter['Content-Type'] = 'application/json';
6259
+
6260
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
6261
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
6262
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
6263
+ localVarRequestOptions.data = serializeDataIfNeeded(profinetIOData, localVarRequestOptions, configuration)
6264
+
6265
+ return {
6266
+ url: toPathString(localVarUrlObj),
6267
+ options: localVarRequestOptions,
6268
+ };
6269
+ },
6270
+ /**
6271
+ * Delete BUS Inputs/Outputs Service from the cell.
6272
+ * @summary Clear Service
6273
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6274
+ * @param {number} [completionTimeout]
6275
+ * @param {*} [options] Override http request option.
6276
+ * @throws {RequiredError}
6277
+ */
6278
+ clearBusIOService: async (cell: string, completionTimeout?: number, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
6279
+ // verify required parameter 'cell' is not null or undefined
6280
+ assertParamExists('clearBusIOService', 'cell', cell)
6281
+ const localVarPath = `/cells/{cell}/bus-ios`
6282
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)));
6283
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
6284
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
6285
+ let baseOptions;
6286
+ if (configuration) {
6287
+ baseOptions = configuration.baseOptions;
6288
+ }
6289
+
6290
+ const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options};
6291
+ const localVarHeaderParameter = {} as any;
6292
+ const localVarQueryParameter = {} as any;
6293
+
6294
+ // authentication BasicAuth required
6295
+ // http basic authentication required
6296
+ setBasicAuthToObject(localVarRequestOptions, configuration)
6297
+
6298
+ // authentication BearerAuth required
6299
+ // http bearer authentication required
6300
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
6301
+
6302
+ if (completionTimeout !== undefined) {
6303
+ localVarQueryParameter['completion_timeout'] = completionTimeout;
6304
+ }
6305
+
6306
+
6307
+
6308
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
6309
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
6310
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
6311
+
6312
+ return {
6313
+ url: toPathString(localVarUrlObj),
6314
+ options: localVarRequestOptions,
6315
+ };
6316
+ },
6317
+ /**
6318
+ * Removes the input/output from the PROFINET device.
6319
+ * @summary Remove PROFINET Input/Ouptut
6320
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6321
+ * @param {string} io Unique identifier to address an Input/Output in the cell.
6322
+ * @param {*} [options] Override http request option.
6323
+ * @throws {RequiredError}
6324
+ */
6325
+ deleteProfinetIO: async (cell: string, io: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
6326
+ // verify required parameter 'cell' is not null or undefined
6327
+ assertParamExists('deleteProfinetIO', 'cell', cell)
6328
+ // verify required parameter 'io' is not null or undefined
6329
+ assertParamExists('deleteProfinetIO', 'io', io)
6330
+ const localVarPath = `/cells/{cell}/bus-ios/profinet/ios/{io}`
6331
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
6332
+ .replace(`{${"io"}}`, encodeURIComponent(String(io)));
6333
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
6334
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
6335
+ let baseOptions;
6336
+ if (configuration) {
6337
+ baseOptions = configuration.baseOptions;
6338
+ }
6339
+
6340
+ const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options};
6341
+ const localVarHeaderParameter = {} as any;
6342
+ const localVarQueryParameter = {} as any;
6343
+
6344
+ // authentication BasicAuth required
6345
+ // http basic authentication required
6346
+ setBasicAuthToObject(localVarRequestOptions, configuration)
6347
+
6348
+ // authentication BearerAuth required
6349
+ // http bearer authentication required
6350
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
6351
+
6352
+
6353
+
6354
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
6355
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
6356
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
6357
+
6358
+ return {
6359
+ url: toPathString(localVarUrlObj),
6360
+ options: localVarRequestOptions,
6361
+ };
6362
+ },
6363
+ /**
6364
+ * Get deployed BUS Inputs/Outputs Service.
6365
+ * @summary Get Service
6366
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6367
+ * @param {*} [options] Override http request option.
6368
+ * @throws {RequiredError}
6369
+ */
6370
+ getBusIOService: async (cell: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
6371
+ // verify required parameter 'cell' is not null or undefined
6372
+ assertParamExists('getBusIOService', 'cell', cell)
6373
+ const localVarPath = `/cells/{cell}/bus-ios`
6374
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)));
6375
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
6376
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
6377
+ let baseOptions;
6378
+ if (configuration) {
6379
+ baseOptions = configuration.baseOptions;
6380
+ }
6381
+
6382
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
6383
+ const localVarHeaderParameter = {} as any;
6384
+ const localVarQueryParameter = {} as any;
6385
+
6386
+ // authentication BasicAuth required
6387
+ // http basic authentication required
6388
+ setBasicAuthToObject(localVarRequestOptions, configuration)
6389
+
6390
+ // authentication BearerAuth required
6391
+ // http bearer authentication required
6392
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
6393
+
6394
+
6395
+
6396
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
6397
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
6398
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
6399
+
6400
+ return {
6401
+ url: toPathString(localVarUrlObj),
6402
+ options: localVarRequestOptions,
6403
+ };
6404
+ },
6405
+ /**
6406
+ * Get the current state of the BUS Inputs/Outputs service.
6407
+ * @summary State
6408
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6409
+ * @param {*} [options] Override http request option.
6410
+ * @throws {RequiredError}
6411
+ */
6412
+ getBusIOState: async (cell: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
6413
+ // verify required parameter 'cell' is not null or undefined
6414
+ assertParamExists('getBusIOState', 'cell', cell)
6415
+ const localVarPath = `/cells/{cell}/bus-ios/state`
6416
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)));
6417
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
6418
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
6419
+ let baseOptions;
6420
+ if (configuration) {
6421
+ baseOptions = configuration.baseOptions;
6422
+ }
6423
+
6424
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
6425
+ const localVarHeaderParameter = {} as any;
6426
+ const localVarQueryParameter = {} as any;
6427
+
6428
+ // authentication BasicAuth required
6429
+ // http basic authentication required
6430
+ setBasicAuthToObject(localVarRequestOptions, configuration)
6431
+
6432
+ // authentication BearerAuth required
6433
+ // http bearer authentication required
6434
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
6435
+
6436
+
6437
+
6438
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
6439
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
6440
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
6441
+
6442
+ return {
6443
+ url: toPathString(localVarUrlObj),
6444
+ options: localVarRequestOptions,
6445
+ };
6446
+ },
6447
+ /**
6448
+ * Retrieves the current values of inputs/outputs. The identifiers of the inputs/outputs must be provided in the request. Request all available input/output identifiers via [listBusIODescriptions](listBusIODescriptions).
6449
+ * @summary Get Input/Output Values
6450
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6451
+ * @param {Array<string>} [ios]
6452
+ * @param {*} [options] Override http request option.
6453
+ * @throws {RequiredError}
6454
+ */
6455
+ getBusIOValues: async (cell: string, ios?: Array<string>, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
6456
+ // verify required parameter 'cell' is not null or undefined
6457
+ assertParamExists('getBusIOValues', 'cell', cell)
6458
+ const localVarPath = `/cells/{cell}/bus-ios/ios/values`
6459
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)));
6460
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
6461
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
6462
+ let baseOptions;
6463
+ if (configuration) {
6464
+ baseOptions = configuration.baseOptions;
6465
+ }
6466
+
6467
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
6468
+ const localVarHeaderParameter = {} as any;
6469
+ const localVarQueryParameter = {} as any;
6470
+
6471
+ // authentication BasicAuth required
6472
+ // http basic authentication required
6473
+ setBasicAuthToObject(localVarRequestOptions, configuration)
6474
+
6475
+ // authentication BearerAuth required
6476
+ // http bearer authentication required
6477
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
6478
+
6479
+ if (ios) {
6480
+ localVarQueryParameter['ios'] = ios;
6481
+ }
6482
+
6483
+
6484
+
6485
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
6486
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
6487
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
6488
+
6489
+ return {
6490
+ url: toPathString(localVarUrlObj),
6491
+ options: localVarRequestOptions,
6492
+ };
6493
+ },
6494
+ /**
6495
+ * Get description of PROFINET
6496
+ * @summary Get PROFINET Description
6497
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6498
+ * @param {*} [options] Override http request option.
6499
+ * @throws {RequiredError}
6500
+ */
6501
+ getProfinetDescription: async (cell: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
6502
+ // verify required parameter 'cell' is not null or undefined
6503
+ assertParamExists('getProfinetDescription', 'cell', cell)
6504
+ const localVarPath = `/cells/{cell}/bus-ios/profinet/description`
6505
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)));
6506
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
6507
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
6508
+ let baseOptions;
6509
+ if (configuration) {
6510
+ baseOptions = configuration.baseOptions;
6511
+ }
6512
+
6513
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
6514
+ const localVarHeaderParameter = {} as any;
6515
+ const localVarQueryParameter = {} as any;
6516
+
6517
+ // authentication BasicAuth required
6518
+ // http basic authentication required
6519
+ setBasicAuthToObject(localVarRequestOptions, configuration)
6520
+
6521
+ // authentication BearerAuth required
6522
+ // http bearer authentication required
6523
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
6524
+
6525
+
6526
+
6527
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
6528
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
6529
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
6530
+
6531
+ return {
6532
+ url: toPathString(localVarUrlObj),
6533
+ options: localVarRequestOptions,
6534
+ };
6535
+ },
6536
+ /**
6537
+ * Get input/output configuration of the PROFINET device as file.
6538
+ * @summary PROFINET Inputs/Outputs to File
6539
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6540
+ * @param {number} [inputOffset]
6541
+ * @param {number} [outputOffset]
6542
+ * @param {*} [options] Override http request option.
6543
+ * @throws {RequiredError}
6544
+ */
6545
+ getProfinetIOsFromFile: async (cell: string, inputOffset?: number, outputOffset?: number, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
6546
+ // verify required parameter 'cell' is not null or undefined
6547
+ assertParamExists('getProfinetIOsFromFile', 'cell', cell)
6548
+ const localVarPath = `/cells/{cell}/bus-ios/profinet/iofile`
6549
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)));
6550
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
6551
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
6552
+ let baseOptions;
6553
+ if (configuration) {
6554
+ baseOptions = configuration.baseOptions;
6555
+ }
6556
+
6557
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
6558
+ const localVarHeaderParameter = {} as any;
6559
+ const localVarQueryParameter = {} as any;
6560
+
6561
+ // authentication BasicAuth required
6562
+ // http basic authentication required
6563
+ setBasicAuthToObject(localVarRequestOptions, configuration)
6564
+
6565
+ // authentication BearerAuth required
6566
+ // http bearer authentication required
6567
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
6568
+
6569
+ if (inputOffset !== undefined) {
6570
+ localVarQueryParameter['input_offset'] = inputOffset;
6571
+ }
6572
+
6573
+ if (outputOffset !== undefined) {
6574
+ localVarQueryParameter['output_offset'] = outputOffset;
6575
+ }
6576
+
6577
+
6578
+
6579
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
6580
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
6581
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
6582
+
6583
+ return {
6584
+ url: toPathString(localVarUrlObj),
6585
+ options: localVarRequestOptions,
6586
+ };
6587
+ },
6588
+ /**
6589
+ * List all BUS Input/Output descriptions.
6590
+ * @summary List Descriptions
6591
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6592
+ * @param {*} [options] Override http request option.
6593
+ * @throws {RequiredError}
6594
+ */
6595
+ listBusIODescriptions: async (cell: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
6596
+ // verify required parameter 'cell' is not null or undefined
6597
+ assertParamExists('listBusIODescriptions', 'cell', cell)
6598
+ const localVarPath = `/cells/{cell}/bus-ios/ios/description`
6599
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)));
6600
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
6601
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
6602
+ let baseOptions;
6603
+ if (configuration) {
6604
+ baseOptions = configuration.baseOptions;
6605
+ }
6606
+
6607
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
6608
+ const localVarHeaderParameter = {} as any;
6609
+ const localVarQueryParameter = {} as any;
6610
+
6611
+ // authentication BasicAuth required
6612
+ // http basic authentication required
6613
+ setBasicAuthToObject(localVarRequestOptions, configuration)
6614
+
6615
+ // authentication BearerAuth required
6616
+ // http bearer authentication required
6617
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
6618
+
6619
+
6620
+
6621
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
6622
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
6623
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
6624
+
6625
+ return {
6626
+ url: toPathString(localVarUrlObj),
6627
+ options: localVarRequestOptions,
6628
+ };
6629
+ },
6630
+ /**
6631
+ * List all PROFINET input and outputs.
6632
+ * @summary List PROFINET Input/Output Configuration
6633
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6634
+ * @param {*} [options] Override http request option.
6635
+ * @throws {RequiredError}
6636
+ */
6637
+ listProfinetIOs: async (cell: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
6638
+ // verify required parameter 'cell' is not null or undefined
6639
+ assertParamExists('listProfinetIOs', 'cell', cell)
6640
+ const localVarPath = `/cells/{cell}/bus-ios/profinet/ios`
6641
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)));
6642
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
6643
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
6644
+ let baseOptions;
6645
+ if (configuration) {
6646
+ baseOptions = configuration.baseOptions;
6647
+ }
6648
+
6649
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
6650
+ const localVarHeaderParameter = {} as any;
6651
+ const localVarQueryParameter = {} as any;
6652
+
6653
+ // authentication BasicAuth required
6654
+ // http basic authentication required
6655
+ setBasicAuthToObject(localVarRequestOptions, configuration)
6656
+
6657
+ // authentication BearerAuth required
6658
+ // http bearer authentication required
6659
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
6660
+
6661
+
6662
+
6663
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
6664
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
6665
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
6666
+
6667
+ return {
6668
+ url: toPathString(localVarUrlObj),
6669
+ options: localVarRequestOptions,
6670
+ };
6671
+ },
6672
+ /**
6673
+ * Set values of outputs. In case of virtual Bus Input/Outputs, also inputs can be set. All available output identifiers can be requested via [listBusIODescriptions](listBusIODescriptions). The call will return once the values have been set and accepted by the service.
6674
+ * @summary Set Output Values
6675
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6676
+ * @param {Array<IOValue>} iOValue
6677
+ * @param {*} [options] Override http request option.
6678
+ * @throws {RequiredError}
6679
+ */
6680
+ setBusIOValues: async (cell: string, iOValue: Array<IOValue>, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
6681
+ // verify required parameter 'cell' is not null or undefined
6682
+ assertParamExists('setBusIOValues', 'cell', cell)
6683
+ // verify required parameter 'iOValue' is not null or undefined
6684
+ assertParamExists('setBusIOValues', 'iOValue', iOValue)
6685
+ const localVarPath = `/cells/{cell}/bus-ios/ios/values`
6686
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)));
6687
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
6688
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
6689
+ let baseOptions;
6690
+ if (configuration) {
6691
+ baseOptions = configuration.baseOptions;
6692
+ }
6693
+
6694
+ const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options};
6695
+ const localVarHeaderParameter = {} as any;
6696
+ const localVarQueryParameter = {} as any;
6697
+
6698
+ // authentication BasicAuth required
6699
+ // http basic authentication required
6700
+ setBasicAuthToObject(localVarRequestOptions, configuration)
6701
+
6702
+ // authentication BearerAuth required
6703
+ // http bearer authentication required
6704
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
6705
+
6706
+
6707
+
6708
+ localVarHeaderParameter['Content-Type'] = 'application/json';
6709
+
6710
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
6711
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
6712
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
6713
+ localVarRequestOptions.data = serializeDataIfNeeded(iOValue, localVarRequestOptions, configuration)
6714
+
6715
+ return {
6716
+ url: toPathString(localVarUrlObj),
6717
+ options: localVarRequestOptions,
6718
+ };
6719
+ },
6720
+ /**
6721
+ * Sets inputs/outputs on the PROFINET device from file.
6722
+ * @summary Set PROFINET Inputs/Outputs from File
6723
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6724
+ * @param {ProfinetInputOutputConfig} profinetInputOutputConfig
6725
+ * @param {*} [options] Override http request option.
6726
+ * @throws {RequiredError}
6727
+ */
6728
+ setProfinetIOsFromFile: async (cell: string, profinetInputOutputConfig: ProfinetInputOutputConfig, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
6729
+ // verify required parameter 'cell' is not null or undefined
6730
+ assertParamExists('setProfinetIOsFromFile', 'cell', cell)
6731
+ // verify required parameter 'profinetInputOutputConfig' is not null or undefined
6732
+ assertParamExists('setProfinetIOsFromFile', 'profinetInputOutputConfig', profinetInputOutputConfig)
6733
+ const localVarPath = `/cells/{cell}/bus-ios/profinet/iofile`
6734
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)));
6735
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
6736
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
6737
+ let baseOptions;
6738
+ if (configuration) {
6739
+ baseOptions = configuration.baseOptions;
6740
+ }
6741
+
6742
+ const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...options};
6743
+ const localVarHeaderParameter = {} as any;
6744
+ const localVarQueryParameter = {} as any;
6745
+
6746
+ // authentication BasicAuth required
6747
+ // http basic authentication required
6748
+ setBasicAuthToObject(localVarRequestOptions, configuration)
6749
+
6750
+ // authentication BearerAuth required
6751
+ // http bearer authentication required
6752
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
6753
+
6754
+
6755
+
6756
+ localVarHeaderParameter['Content-Type'] = 'application/json';
6757
+
6758
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
6759
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
6760
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
6761
+ localVarRequestOptions.data = serializeDataIfNeeded(profinetInputOutputConfig, localVarRequestOptions, configuration)
6762
+
6763
+ return {
6764
+ url: toPathString(localVarUrlObj),
6765
+ options: localVarRequestOptions,
6766
+ };
6767
+ },
6768
+ }
6769
+ };
6770
+
6771
+ /**
6772
+ * BUSInputsOutputsApi - functional programming interface
6773
+ * @export
6774
+ */
6775
+ export const BUSInputsOutputsApiFp = function(configuration?: Configuration) {
6776
+ const localVarAxiosParamCreator = BUSInputsOutputsApiAxiosParamCreator(configuration)
6777
+ return {
6778
+ /**
6779
+ * Add a BUS Inputs/Outputs Service to the cell.
6780
+ * @summary Add Service
6781
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6782
+ * @param {BusIOType} busIOType
6783
+ * @param {number} [completionTimeout]
6784
+ * @param {*} [options] Override http request option.
6785
+ * @throws {RequiredError}
6786
+ */
6787
+ async addBusIOService(cell: string, busIOType: BusIOType, completionTimeout?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> {
6788
+ const localVarAxiosArgs = await localVarAxiosParamCreator.addBusIOService(cell, busIOType, completionTimeout, options);
6789
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
6790
+ const localVarOperationServerBasePath = operationServerMap['BUSInputsOutputsApi.addBusIOService']?.[localVarOperationServerIndex]?.url;
6791
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
6792
+ },
6793
+ /**
6794
+ * Adds an input/output to or updates an input/output on the PROFINET device.
6795
+ * @summary Add PROFINET Input/Output
6796
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6797
+ * @param {string} io Unique identifier to address an Input/Output in the cell.
6798
+ * @param {ProfinetIOData} profinetIOData
6799
+ * @param {*} [options] Override http request option.
6800
+ * @throws {RequiredError}
6801
+ */
6802
+ async addProfinetIO(cell: string, io: string, profinetIOData: ProfinetIOData, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> {
6803
+ const localVarAxiosArgs = await localVarAxiosParamCreator.addProfinetIO(cell, io, profinetIOData, options);
6804
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
6805
+ const localVarOperationServerBasePath = operationServerMap['BUSInputsOutputsApi.addProfinetIO']?.[localVarOperationServerIndex]?.url;
6806
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
6807
+ },
6808
+ /**
6809
+ * Delete BUS Inputs/Outputs Service from the cell.
6810
+ * @summary Clear Service
6811
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6812
+ * @param {number} [completionTimeout]
6813
+ * @param {*} [options] Override http request option.
6814
+ * @throws {RequiredError}
6815
+ */
6816
+ async clearBusIOService(cell: string, completionTimeout?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> {
6817
+ const localVarAxiosArgs = await localVarAxiosParamCreator.clearBusIOService(cell, completionTimeout, options);
6818
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
6819
+ const localVarOperationServerBasePath = operationServerMap['BUSInputsOutputsApi.clearBusIOService']?.[localVarOperationServerIndex]?.url;
6820
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
6821
+ },
6822
+ /**
6823
+ * Removes the input/output from the PROFINET device.
6824
+ * @summary Remove PROFINET Input/Ouptut
6825
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6826
+ * @param {string} io Unique identifier to address an Input/Output in the cell.
6827
+ * @param {*} [options] Override http request option.
6828
+ * @throws {RequiredError}
6829
+ */
6830
+ async deleteProfinetIO(cell: string, io: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> {
6831
+ const localVarAxiosArgs = await localVarAxiosParamCreator.deleteProfinetIO(cell, io, options);
6832
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
6833
+ const localVarOperationServerBasePath = operationServerMap['BUSInputsOutputsApi.deleteProfinetIO']?.[localVarOperationServerIndex]?.url;
6834
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
6835
+ },
6836
+ /**
6837
+ * Get deployed BUS Inputs/Outputs Service.
6838
+ * @summary Get Service
6839
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6840
+ * @param {*} [options] Override http request option.
6841
+ * @throws {RequiredError}
6842
+ */
6843
+ async getBusIOService(cell: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<BusIOType>> {
6844
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getBusIOService(cell, options);
6845
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
6846
+ const localVarOperationServerBasePath = operationServerMap['BUSInputsOutputsApi.getBusIOService']?.[localVarOperationServerIndex]?.url;
6847
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
6848
+ },
6849
+ /**
6850
+ * Get the current state of the BUS Inputs/Outputs service.
6851
+ * @summary State
6852
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6853
+ * @param {*} [options] Override http request option.
6854
+ * @throws {RequiredError}
6855
+ */
6856
+ async getBusIOState(cell: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<BusIOsState>> {
6857
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getBusIOState(cell, options);
6858
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
6859
+ const localVarOperationServerBasePath = operationServerMap['BUSInputsOutputsApi.getBusIOState']?.[localVarOperationServerIndex]?.url;
6860
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
6861
+ },
6862
+ /**
6863
+ * Retrieves the current values of inputs/outputs. The identifiers of the inputs/outputs must be provided in the request. Request all available input/output identifiers via [listBusIODescriptions](listBusIODescriptions).
6864
+ * @summary Get Input/Output Values
6865
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6866
+ * @param {Array<string>} [ios]
6867
+ * @param {*} [options] Override http request option.
6868
+ * @throws {RequiredError}
6869
+ */
6870
+ async getBusIOValues(cell: string, ios?: Array<string>, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Array<IOValue>>> {
6871
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getBusIOValues(cell, ios, options);
6872
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
6873
+ const localVarOperationServerBasePath = operationServerMap['BUSInputsOutputsApi.getBusIOValues']?.[localVarOperationServerIndex]?.url;
6874
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
6875
+ },
6876
+ /**
6877
+ * Get description of PROFINET
6878
+ * @summary Get PROFINET Description
6879
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6880
+ * @param {*} [options] Override http request option.
6881
+ * @throws {RequiredError}
6882
+ */
6883
+ async getProfinetDescription(cell: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ProfinetDescription>> {
6884
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getProfinetDescription(cell, options);
6885
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
6886
+ const localVarOperationServerBasePath = operationServerMap['BUSInputsOutputsApi.getProfinetDescription']?.[localVarOperationServerIndex]?.url;
6887
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
6888
+ },
6889
+ /**
6890
+ * Get input/output configuration of the PROFINET device as file.
6891
+ * @summary PROFINET Inputs/Outputs to File
6892
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6893
+ * @param {number} [inputOffset]
6894
+ * @param {number} [outputOffset]
6895
+ * @param {*} [options] Override http request option.
6896
+ * @throws {RequiredError}
6897
+ */
6898
+ async getProfinetIOsFromFile(cell: string, inputOffset?: number, outputOffset?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<string>> {
6899
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getProfinetIOsFromFile(cell, inputOffset, outputOffset, options);
6900
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
6901
+ const localVarOperationServerBasePath = operationServerMap['BUSInputsOutputsApi.getProfinetIOsFromFile']?.[localVarOperationServerIndex]?.url;
6902
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
6903
+ },
6904
+ /**
6905
+ * List all BUS Input/Output descriptions.
6906
+ * @summary List Descriptions
6907
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6908
+ * @param {*} [options] Override http request option.
6909
+ * @throws {RequiredError}
6910
+ */
6911
+ async listBusIODescriptions(cell: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Array<IODescription>>> {
6912
+ const localVarAxiosArgs = await localVarAxiosParamCreator.listBusIODescriptions(cell, options);
6913
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
6914
+ const localVarOperationServerBasePath = operationServerMap['BUSInputsOutputsApi.listBusIODescriptions']?.[localVarOperationServerIndex]?.url;
6915
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
6916
+ },
6917
+ /**
6918
+ * List all PROFINET input and outputs.
6919
+ * @summary List PROFINET Input/Output Configuration
6920
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6921
+ * @param {*} [options] Override http request option.
6922
+ * @throws {RequiredError}
6923
+ */
6924
+ async listProfinetIOs(cell: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Array<ProfinetIO>>> {
6925
+ const localVarAxiosArgs = await localVarAxiosParamCreator.listProfinetIOs(cell, options);
6926
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
6927
+ const localVarOperationServerBasePath = operationServerMap['BUSInputsOutputsApi.listProfinetIOs']?.[localVarOperationServerIndex]?.url;
6928
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
6929
+ },
6930
+ /**
6931
+ * Set values of outputs. In case of virtual Bus Input/Outputs, also inputs can be set. All available output identifiers can be requested via [listBusIODescriptions](listBusIODescriptions). The call will return once the values have been set and accepted by the service.
6932
+ * @summary Set Output Values
6933
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6934
+ * @param {Array<IOValue>} iOValue
6935
+ * @param {*} [options] Override http request option.
6936
+ * @throws {RequiredError}
6937
+ */
6938
+ async setBusIOValues(cell: string, iOValue: Array<IOValue>, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> {
6939
+ const localVarAxiosArgs = await localVarAxiosParamCreator.setBusIOValues(cell, iOValue, options);
6940
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
6941
+ const localVarOperationServerBasePath = operationServerMap['BUSInputsOutputsApi.setBusIOValues']?.[localVarOperationServerIndex]?.url;
6942
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
6943
+ },
6944
+ /**
6945
+ * Sets inputs/outputs on the PROFINET device from file.
6946
+ * @summary Set PROFINET Inputs/Outputs from File
6947
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6948
+ * @param {ProfinetInputOutputConfig} profinetInputOutputConfig
6949
+ * @param {*} [options] Override http request option.
6950
+ * @throws {RequiredError}
6951
+ */
6952
+ async setProfinetIOsFromFile(cell: string, profinetInputOutputConfig: ProfinetInputOutputConfig, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> {
6953
+ const localVarAxiosArgs = await localVarAxiosParamCreator.setProfinetIOsFromFile(cell, profinetInputOutputConfig, options);
6954
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
6955
+ const localVarOperationServerBasePath = operationServerMap['BUSInputsOutputsApi.setProfinetIOsFromFile']?.[localVarOperationServerIndex]?.url;
6956
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
6957
+ },
6958
+ }
6959
+ };
6960
+
6961
+ /**
6962
+ * BUSInputsOutputsApi - factory interface
6963
+ * @export
6964
+ */
6965
+ export const BUSInputsOutputsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {
6966
+ const localVarFp = BUSInputsOutputsApiFp(configuration)
6967
+ return {
6968
+ /**
6969
+ * Add a BUS Inputs/Outputs Service to the cell.
6970
+ * @summary Add Service
6971
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6972
+ * @param {BusIOType} busIOType
6973
+ * @param {number} [completionTimeout]
6974
+ * @param {*} [options] Override http request option.
6975
+ * @throws {RequiredError}
6976
+ */
6977
+ addBusIOService(cell: string, busIOType: BusIOType, completionTimeout?: number, options?: RawAxiosRequestConfig): AxiosPromise<void> {
6978
+ return localVarFp.addBusIOService(cell, busIOType, completionTimeout, options).then((request) => request(axios, basePath));
6979
+ },
6980
+ /**
6981
+ * Adds an input/output to or updates an input/output on the PROFINET device.
6982
+ * @summary Add PROFINET Input/Output
6983
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6984
+ * @param {string} io Unique identifier to address an Input/Output in the cell.
6985
+ * @param {ProfinetIOData} profinetIOData
6986
+ * @param {*} [options] Override http request option.
6987
+ * @throws {RequiredError}
6988
+ */
6989
+ addProfinetIO(cell: string, io: string, profinetIOData: ProfinetIOData, options?: RawAxiosRequestConfig): AxiosPromise<void> {
6990
+ return localVarFp.addProfinetIO(cell, io, profinetIOData, options).then((request) => request(axios, basePath));
6991
+ },
6992
+ /**
6993
+ * Delete BUS Inputs/Outputs Service from the cell.
6994
+ * @summary Clear Service
6995
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
6996
+ * @param {number} [completionTimeout]
6997
+ * @param {*} [options] Override http request option.
6998
+ * @throws {RequiredError}
6999
+ */
7000
+ clearBusIOService(cell: string, completionTimeout?: number, options?: RawAxiosRequestConfig): AxiosPromise<void> {
7001
+ return localVarFp.clearBusIOService(cell, completionTimeout, options).then((request) => request(axios, basePath));
7002
+ },
7003
+ /**
7004
+ * Removes the input/output from the PROFINET device.
7005
+ * @summary Remove PROFINET Input/Ouptut
7006
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
7007
+ * @param {string} io Unique identifier to address an Input/Output in the cell.
7008
+ * @param {*} [options] Override http request option.
7009
+ * @throws {RequiredError}
7010
+ */
7011
+ deleteProfinetIO(cell: string, io: string, options?: RawAxiosRequestConfig): AxiosPromise<void> {
7012
+ return localVarFp.deleteProfinetIO(cell, io, options).then((request) => request(axios, basePath));
7013
+ },
7014
+ /**
7015
+ * Get deployed BUS Inputs/Outputs Service.
7016
+ * @summary Get Service
7017
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
7018
+ * @param {*} [options] Override http request option.
7019
+ * @throws {RequiredError}
7020
+ */
7021
+ getBusIOService(cell: string, options?: RawAxiosRequestConfig): AxiosPromise<BusIOType> {
7022
+ return localVarFp.getBusIOService(cell, options).then((request) => request(axios, basePath));
7023
+ },
7024
+ /**
7025
+ * Get the current state of the BUS Inputs/Outputs service.
7026
+ * @summary State
7027
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
7028
+ * @param {*} [options] Override http request option.
7029
+ * @throws {RequiredError}
7030
+ */
7031
+ getBusIOState(cell: string, options?: RawAxiosRequestConfig): AxiosPromise<BusIOsState> {
7032
+ return localVarFp.getBusIOState(cell, options).then((request) => request(axios, basePath));
7033
+ },
7034
+ /**
7035
+ * Retrieves the current values of inputs/outputs. The identifiers of the inputs/outputs must be provided in the request. Request all available input/output identifiers via [listBusIODescriptions](listBusIODescriptions).
7036
+ * @summary Get Input/Output Values
7037
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
7038
+ * @param {Array<string>} [ios]
7039
+ * @param {*} [options] Override http request option.
7040
+ * @throws {RequiredError}
7041
+ */
7042
+ getBusIOValues(cell: string, ios?: Array<string>, options?: RawAxiosRequestConfig): AxiosPromise<Array<IOValue>> {
7043
+ return localVarFp.getBusIOValues(cell, ios, options).then((request) => request(axios, basePath));
7044
+ },
7045
+ /**
7046
+ * Get description of PROFINET
7047
+ * @summary Get PROFINET Description
7048
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
7049
+ * @param {*} [options] Override http request option.
7050
+ * @throws {RequiredError}
7051
+ */
7052
+ getProfinetDescription(cell: string, options?: RawAxiosRequestConfig): AxiosPromise<ProfinetDescription> {
7053
+ return localVarFp.getProfinetDescription(cell, options).then((request) => request(axios, basePath));
7054
+ },
7055
+ /**
7056
+ * Get input/output configuration of the PROFINET device as file.
7057
+ * @summary PROFINET Inputs/Outputs to File
7058
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
7059
+ * @param {number} [inputOffset]
7060
+ * @param {number} [outputOffset]
7061
+ * @param {*} [options] Override http request option.
7062
+ * @throws {RequiredError}
7063
+ */
7064
+ getProfinetIOsFromFile(cell: string, inputOffset?: number, outputOffset?: number, options?: RawAxiosRequestConfig): AxiosPromise<string> {
7065
+ return localVarFp.getProfinetIOsFromFile(cell, inputOffset, outputOffset, options).then((request) => request(axios, basePath));
7066
+ },
7067
+ /**
7068
+ * List all BUS Input/Output descriptions.
7069
+ * @summary List Descriptions
7070
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
7071
+ * @param {*} [options] Override http request option.
7072
+ * @throws {RequiredError}
7073
+ */
7074
+ listBusIODescriptions(cell: string, options?: RawAxiosRequestConfig): AxiosPromise<Array<IODescription>> {
7075
+ return localVarFp.listBusIODescriptions(cell, options).then((request) => request(axios, basePath));
7076
+ },
7077
+ /**
7078
+ * List all PROFINET input and outputs.
7079
+ * @summary List PROFINET Input/Output Configuration
7080
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
7081
+ * @param {*} [options] Override http request option.
7082
+ * @throws {RequiredError}
7083
+ */
7084
+ listProfinetIOs(cell: string, options?: RawAxiosRequestConfig): AxiosPromise<Array<ProfinetIO>> {
7085
+ return localVarFp.listProfinetIOs(cell, options).then((request) => request(axios, basePath));
7086
+ },
7087
+ /**
7088
+ * Set values of outputs. In case of virtual Bus Input/Outputs, also inputs can be set. All available output identifiers can be requested via [listBusIODescriptions](listBusIODescriptions). The call will return once the values have been set and accepted by the service.
7089
+ * @summary Set Output Values
7090
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
7091
+ * @param {Array<IOValue>} iOValue
7092
+ * @param {*} [options] Override http request option.
7093
+ * @throws {RequiredError}
7094
+ */
7095
+ setBusIOValues(cell: string, iOValue: Array<IOValue>, options?: RawAxiosRequestConfig): AxiosPromise<void> {
7096
+ return localVarFp.setBusIOValues(cell, iOValue, options).then((request) => request(axios, basePath));
7097
+ },
7098
+ /**
7099
+ * Sets inputs/outputs on the PROFINET device from file.
7100
+ * @summary Set PROFINET Inputs/Outputs from File
7101
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
7102
+ * @param {ProfinetInputOutputConfig} profinetInputOutputConfig
7103
+ * @param {*} [options] Override http request option.
7104
+ * @throws {RequiredError}
7105
+ */
7106
+ setProfinetIOsFromFile(cell: string, profinetInputOutputConfig: ProfinetInputOutputConfig, options?: RawAxiosRequestConfig): AxiosPromise<void> {
7107
+ return localVarFp.setProfinetIOsFromFile(cell, profinetInputOutputConfig, options).then((request) => request(axios, basePath));
7108
+ },
7109
+ };
7110
+ };
7111
+
7112
+ /**
7113
+ * BUSInputsOutputsApi - object-oriented interface
7114
+ * @export
7115
+ * @class BUSInputsOutputsApi
7116
+ * @extends {BaseAPI}
7117
+ */
7118
+ export class BUSInputsOutputsApi extends BaseAPI {
7119
+ /**
7120
+ * Add a BUS Inputs/Outputs Service to the cell.
7121
+ * @summary Add Service
7122
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
7123
+ * @param {BusIOType} busIOType
7124
+ * @param {number} [completionTimeout]
7125
+ * @param {*} [options] Override http request option.
7126
+ * @throws {RequiredError}
7127
+ * @memberof BUSInputsOutputsApi
7128
+ */
7129
+ public addBusIOService(cell: string, busIOType: BusIOType, completionTimeout?: number, options?: RawAxiosRequestConfig) {
7130
+ return BUSInputsOutputsApiFp(this.configuration).addBusIOService(cell, busIOType, completionTimeout, options).then((request) => request(this.axios, this.basePath));
7131
+ }
7132
+
7133
+ /**
7134
+ * Adds an input/output to or updates an input/output on the PROFINET device.
7135
+ * @summary Add PROFINET Input/Output
7136
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
7137
+ * @param {string} io Unique identifier to address an Input/Output in the cell.
7138
+ * @param {ProfinetIOData} profinetIOData
7139
+ * @param {*} [options] Override http request option.
7140
+ * @throws {RequiredError}
7141
+ * @memberof BUSInputsOutputsApi
7142
+ */
7143
+ public addProfinetIO(cell: string, io: string, profinetIOData: ProfinetIOData, options?: RawAxiosRequestConfig) {
7144
+ return BUSInputsOutputsApiFp(this.configuration).addProfinetIO(cell, io, profinetIOData, options).then((request) => request(this.axios, this.basePath));
7145
+ }
7146
+
7147
+ /**
7148
+ * Delete BUS Inputs/Outputs Service from the cell.
7149
+ * @summary Clear Service
7150
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
7151
+ * @param {number} [completionTimeout]
7152
+ * @param {*} [options] Override http request option.
7153
+ * @throws {RequiredError}
7154
+ * @memberof BUSInputsOutputsApi
7155
+ */
7156
+ public clearBusIOService(cell: string, completionTimeout?: number, options?: RawAxiosRequestConfig) {
7157
+ return BUSInputsOutputsApiFp(this.configuration).clearBusIOService(cell, completionTimeout, options).then((request) => request(this.axios, this.basePath));
7158
+ }
7159
+
7160
+ /**
7161
+ * Removes the input/output from the PROFINET device.
7162
+ * @summary Remove PROFINET Input/Ouptut
7163
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
7164
+ * @param {string} io Unique identifier to address an Input/Output in the cell.
7165
+ * @param {*} [options] Override http request option.
7166
+ * @throws {RequiredError}
7167
+ * @memberof BUSInputsOutputsApi
7168
+ */
7169
+ public deleteProfinetIO(cell: string, io: string, options?: RawAxiosRequestConfig) {
7170
+ return BUSInputsOutputsApiFp(this.configuration).deleteProfinetIO(cell, io, options).then((request) => request(this.axios, this.basePath));
7171
+ }
7172
+
7173
+ /**
7174
+ * Get deployed BUS Inputs/Outputs Service.
7175
+ * @summary Get Service
7176
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
7177
+ * @param {*} [options] Override http request option.
7178
+ * @throws {RequiredError}
7179
+ * @memberof BUSInputsOutputsApi
7180
+ */
7181
+ public getBusIOService(cell: string, options?: RawAxiosRequestConfig) {
7182
+ return BUSInputsOutputsApiFp(this.configuration).getBusIOService(cell, options).then((request) => request(this.axios, this.basePath));
7183
+ }
7184
+
7185
+ /**
7186
+ * Get the current state of the BUS Inputs/Outputs service.
7187
+ * @summary State
7188
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
7189
+ * @param {*} [options] Override http request option.
7190
+ * @throws {RequiredError}
7191
+ * @memberof BUSInputsOutputsApi
7192
+ */
7193
+ public getBusIOState(cell: string, options?: RawAxiosRequestConfig) {
7194
+ return BUSInputsOutputsApiFp(this.configuration).getBusIOState(cell, options).then((request) => request(this.axios, this.basePath));
7195
+ }
7196
+
5270
7197
  /**
5271
- * Install a basic, containerized web application to the cell to control robots with a customized frontend. Prerequisites: A Docker hub account or similar container registry account, with valid credentials. After adding the application to the cell, open the application on the Wandelbots NOVA home screen. Read [build your application](/docs/docs/development/) for more information. <!-- theme: none --> > #### Predefined Environment Variables > - `NOVA_API`: The endpoint where the API is reachable from the container serving the Application. > - `BASE_PATH`: The root path of the deployed Application. It will be reachable via: http://$host/$BASE_PATH > - `CELL_NAME`: The name of the cell where the application is deployed.
5272
- * @summary Add Application
7198
+ * Retrieves the current values of inputs/outputs. The identifiers of the inputs/outputs must be provided in the request. Request all available input/output identifiers via [listBusIODescriptions](listBusIODescriptions).
7199
+ * @summary Get Input/Output Values
5273
7200
  * @param {string} cell Unique identifier addressing a cell in all API calls.
5274
- * @param {App} app
5275
- * @param {number} [completionTimeout]
7201
+ * @param {Array<string>} [ios]
5276
7202
  * @param {*} [options] Override http request option.
5277
7203
  * @throws {RequiredError}
5278
- * @memberof ApplicationApi
7204
+ * @memberof BUSInputsOutputsApi
5279
7205
  */
5280
- public addApp(cell: string, app: App, completionTimeout?: number, options?: RawAxiosRequestConfig) {
5281
- return ApplicationApiFp(this.configuration).addApp(cell, app, completionTimeout, options).then((request) => request(this.axios, this.basePath));
7206
+ public getBusIOValues(cell: string, ios?: Array<string>, options?: RawAxiosRequestConfig) {
7207
+ return BUSInputsOutputsApiFp(this.configuration).getBusIOValues(cell, ios, options).then((request) => request(this.axios, this.basePath));
5282
7208
  }
5283
7209
 
5284
7210
  /**
5285
- * Delete all GUI applications from the cell.
5286
- * @summary Clear Applications
7211
+ * Get description of PROFINET
7212
+ * @summary Get PROFINET Description
5287
7213
  * @param {string} cell Unique identifier addressing a cell in all API calls.
5288
- * @param {number} [completionTimeout]
5289
7214
  * @param {*} [options] Override http request option.
5290
7215
  * @throws {RequiredError}
5291
- * @memberof ApplicationApi
7216
+ * @memberof BUSInputsOutputsApi
5292
7217
  */
5293
- public clearApps(cell: string, completionTimeout?: number, options?: RawAxiosRequestConfig) {
5294
- return ApplicationApiFp(this.configuration).clearApps(cell, completionTimeout, options).then((request) => request(this.axios, this.basePath));
7218
+ public getProfinetDescription(cell: string, options?: RawAxiosRequestConfig) {
7219
+ return BUSInputsOutputsApiFp(this.configuration).getProfinetDescription(cell, options).then((request) => request(this.axios, this.basePath));
5295
7220
  }
5296
7221
 
5297
7222
  /**
5298
- * Delete a GUI application from the cell.
5299
- * @summary Delete Application
7223
+ * Get input/output configuration of the PROFINET device as file.
7224
+ * @summary PROFINET Inputs/Outputs to File
5300
7225
  * @param {string} cell Unique identifier addressing a cell in all API calls.
5301
- * @param {string} app
5302
- * @param {number} [completionTimeout]
7226
+ * @param {number} [inputOffset]
7227
+ * @param {number} [outputOffset]
5303
7228
  * @param {*} [options] Override http request option.
5304
7229
  * @throws {RequiredError}
5305
- * @memberof ApplicationApi
7230
+ * @memberof BUSInputsOutputsApi
5306
7231
  */
5307
- public deleteApp(cell: string, app: string, completionTimeout?: number, options?: RawAxiosRequestConfig) {
5308
- return ApplicationApiFp(this.configuration).deleteApp(cell, app, completionTimeout, options).then((request) => request(this.axios, this.basePath));
7232
+ public getProfinetIOsFromFile(cell: string, inputOffset?: number, outputOffset?: number, options?: RawAxiosRequestConfig) {
7233
+ return BUSInputsOutputsApiFp(this.configuration).getProfinetIOsFromFile(cell, inputOffset, outputOffset, options).then((request) => request(this.axios, this.basePath));
5309
7234
  }
5310
7235
 
5311
7236
  /**
5312
- * Get the configuration for an active GUI application in the cell. To update the configuration of a GUI application in the cell, use this configuration with the \'Update Configuration\' endpoint.
5313
- * @summary Configuration
7237
+ * List all BUS Input/Output descriptions.
7238
+ * @summary List Descriptions
5314
7239
  * @param {string} cell Unique identifier addressing a cell in all API calls.
5315
- * @param {string} app
5316
7240
  * @param {*} [options] Override http request option.
5317
7241
  * @throws {RequiredError}
5318
- * @memberof ApplicationApi
7242
+ * @memberof BUSInputsOutputsApi
5319
7243
  */
5320
- public getApp(cell: string, app: string, options?: RawAxiosRequestConfig) {
5321
- return ApplicationApiFp(this.configuration).getApp(cell, app, options).then((request) => request(this.axios, this.basePath));
7244
+ public listBusIODescriptions(cell: string, options?: RawAxiosRequestConfig) {
7245
+ return BUSInputsOutputsApiFp(this.configuration).listBusIODescriptions(cell, options).then((request) => request(this.axios, this.basePath));
5322
7246
  }
5323
7247
 
5324
7248
  /**
5325
- * List all GUI applications that have been added to a cell. with the \'Add Application\' endpoint. If the cell does not contain GUI applications, the list is returned empty.
5326
- * @summary List Applications
7249
+ * List all PROFINET input and outputs.
7250
+ * @summary List PROFINET Input/Output Configuration
5327
7251
  * @param {string} cell Unique identifier addressing a cell in all API calls.
5328
7252
  * @param {*} [options] Override http request option.
5329
7253
  * @throws {RequiredError}
5330
- * @memberof ApplicationApi
7254
+ * @memberof BUSInputsOutputsApi
5331
7255
  */
5332
- public listApps(cell: string, options?: RawAxiosRequestConfig) {
5333
- return ApplicationApiFp(this.configuration).listApps(cell, options).then((request) => request(this.axios, this.basePath));
7256
+ public listProfinetIOs(cell: string, options?: RawAxiosRequestConfig) {
7257
+ return BUSInputsOutputsApiFp(this.configuration).listProfinetIOs(cell, options).then((request) => request(this.axios, this.basePath));
5334
7258
  }
5335
7259
 
5336
7260
  /**
5337
- * Update the configuration of a GUI application in the cell.
5338
- * @summary Update Configuration
7261
+ * Set values of outputs. In case of virtual Bus Input/Outputs, also inputs can be set. All available output identifiers can be requested via [listBusIODescriptions](listBusIODescriptions). The call will return once the values have been set and accepted by the service.
7262
+ * @summary Set Output Values
5339
7263
  * @param {string} cell Unique identifier addressing a cell in all API calls.
5340
- * @param {string} app
5341
- * @param {App} app2
5342
- * @param {number} [completionTimeout]
7264
+ * @param {Array<IOValue>} iOValue
5343
7265
  * @param {*} [options] Override http request option.
5344
7266
  * @throws {RequiredError}
5345
- * @memberof ApplicationApi
7267
+ * @memberof BUSInputsOutputsApi
5346
7268
  */
5347
- public updateApp(cell: string, app: string, app2: App, completionTimeout?: number, options?: RawAxiosRequestConfig) {
5348
- return ApplicationApiFp(this.configuration).updateApp(cell, app, app2, completionTimeout, options).then((request) => request(this.axios, this.basePath));
7269
+ public setBusIOValues(cell: string, iOValue: Array<IOValue>, options?: RawAxiosRequestConfig) {
7270
+ return BUSInputsOutputsApiFp(this.configuration).setBusIOValues(cell, iOValue, options).then((request) => request(this.axios, this.basePath));
7271
+ }
7272
+
7273
+ /**
7274
+ * Sets inputs/outputs on the PROFINET device from file.
7275
+ * @summary Set PROFINET Inputs/Outputs from File
7276
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
7277
+ * @param {ProfinetInputOutputConfig} profinetInputOutputConfig
7278
+ * @param {*} [options] Override http request option.
7279
+ * @throws {RequiredError}
7280
+ * @memberof BUSInputsOutputsApi
7281
+ */
7282
+ public setProfinetIOsFromFile(cell: string, profinetInputOutputConfig: ProfinetInputOutputConfig, options?: RawAxiosRequestConfig) {
7283
+ return BUSInputsOutputsApiFp(this.configuration).setProfinetIOsFromFile(cell, profinetInputOutputConfig, options).then((request) => request(this.axios, this.basePath));
5349
7284
  }
5350
7285
  }
5351
7286
 
@@ -6262,52 +8197,6 @@ export const ControllerApiAxiosParamCreator = function (configuration?: Configur
6262
8197
 
6263
8198
 
6264
8199
 
6265
- setSearchParams(localVarUrlObj, localVarQueryParameter);
6266
- let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
6267
- localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
6268
-
6269
- return {
6270
- url: toPathString(localVarUrlObj),
6271
- options: localVarRequestOptions,
6272
- };
6273
- },
6274
- /**
6275
- * Get the current robot system mode of a registered robot controller. The robot system mode indicates if a robot controller can be used. See [setDefaultMode](setDefaultMode) for more information about the different modes. The mode is influenced by the operating mode of the robot controller. The operating mode can be changed via [setDefaultMode](setDefaultMode). Request the current operating mode of the robot controller via [getCurrentRobotControllerState](getCurrentRobotControllerState).
6276
- * @summary Current Mode
6277
- * @param {string} cell Unique identifier addressing a cell in all API calls.
6278
- * @param {string} controller Unique identifier to address a controller in the cell.
6279
- * @param {*} [options] Override http request option.
6280
- * @throws {RequiredError}
6281
- */
6282
- getMode: async (cell: string, controller: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
6283
- // verify required parameter 'cell' is not null or undefined
6284
- assertParamExists('getMode', 'cell', cell)
6285
- // verify required parameter 'controller' is not null or undefined
6286
- assertParamExists('getMode', 'controller', controller)
6287
- const localVarPath = `/cells/{cell}/controllers/{controller}/mode`
6288
- .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
6289
- .replace(`{${"controller"}}`, encodeURIComponent(String(controller)));
6290
- // use dummy base URL string because the URL constructor only accepts absolute URLs.
6291
- const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
6292
- let baseOptions;
6293
- if (configuration) {
6294
- baseOptions = configuration.baseOptions;
6295
- }
6296
-
6297
- const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
6298
- const localVarHeaderParameter = {} as any;
6299
- const localVarQueryParameter = {} as any;
6300
-
6301
- // authentication BasicAuth required
6302
- // http basic authentication required
6303
- setBasicAuthToObject(localVarRequestOptions, configuration)
6304
-
6305
- // authentication BearerAuth required
6306
- // http bearer authentication required
6307
- await setBearerAuthToObject(localVarHeaderParameter, configuration)
6308
-
6309
-
6310
-
6311
8200
  setSearchParams(localVarUrlObj, localVarQueryParameter);
6312
8201
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
6313
8202
  localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
@@ -6503,7 +8392,7 @@ export const ControllerApiAxiosParamCreator = function (configuration?: Configur
6503
8392
  };
6504
8393
  },
6505
8394
  /**
6506
- * Switch between monitor and control usage as default for a robot controller. Monitoring mode is used to read information from the robot controller and control mode is used to command the robot system. As long as the robot controller is connected via network monitoring mode is always possible. To switch to control mode the robot controller must be in `automatic` or `manual` operating mode and safety state \'normal\' or \'reduced\'. If the robot controller is in `manual` operating mode, you have manually confirm the control usage activation on the robot control panel. This manual confirmation can\'t be replaced with this API. Without manual confirmation the robot controller will stay in monitor mode. The robot system will try to activate the required operation mode for the requested usage unless no active call requires a different mode. > **NOTE** > > Some robot controllers prevent the external activation of automatic operating mode. In this case, changing the operating mode manually at the robot controller is mandatory. > **NOTE** > > The current operation mode and safety state can be requested via [getCurrentRobotControllerState](getCurrentRobotControllerState). If a mode change is not possible, the response lists reasons for the failed change.
8395
+ * Switch between monitor and control usage as default for a robot controller. Monitoring mode is used to read information from the robot controller and control mode is used to command the robot system. As long as the robot controller is connected via network monitoring mode is always possible. To switch to control mode the robot controller must be in `automatic` or `manual` operating mode and safety state \'normal\' or \'reduced\'. If the robot controller is in `manual` operating mode, you have manually confirm the control usage activation on the robot control panel. This manual confirmation can\'t be replaced with this API. Without manual confirmation the robot controller will stay in monitor mode. The robot system will try to activate the required operation mode for the requested usage unless no active call requires a different mode. > **NOTE** > > `setDefaultMode` enables the robot controller to stay in control mode to keep the motors activated. > This allows for faster execution of sequential movements as no mode switches are required. > **NOTE** > > Some robot controllers prevent the external activation of automatic operating mode. In this case, changing the operating mode manually at the robot controller is mandatory. > **NOTE** > > The current operation mode and safety state can be requested via [getCurrentRobotControllerState](getCurrentRobotControllerState). If a mode change is not possible, the response lists reasons for the failed change.
6507
8396
  * @summary Set Default Mode
6508
8397
  * @param {string} cell Unique identifier addressing a cell in all API calls.
6509
8398
  * @param {string} controller Unique identifier to address a controller in the cell.
@@ -6607,15 +8496,16 @@ export const ControllerApiAxiosParamCreator = function (configuration?: Configur
6607
8496
  };
6608
8497
  },
6609
8498
  /**
6610
- * <!-- theme: danger --> > Websocket endpoint Receive updates of the state of a robot controller.
8499
+ * <!-- theme: danger --> > Websocket endpoint Receive updates of the state of a robot controller. The stream can be opened before the controller is registered. To register a controller, call [addRobotController](addRobotController). While connecting, the stream sends initialization updates. Once the controller reaches `MODE_MONITOR`, it sends controller state updates.
6611
8500
  * @summary Stream State
6612
8501
  * @param {string} cell Unique identifier addressing a cell in all API calls.
6613
8502
  * @param {string} controller Unique identifier to address a controller in the cell.
6614
8503
  * @param {number} [responseRate]
8504
+ * @param {number} [addControllerTimeout]
6615
8505
  * @param {*} [options] Override http request option.
6616
8506
  * @throws {RequiredError}
6617
8507
  */
6618
- streamRobotControllerState: async (cell: string, controller: string, responseRate?: number, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
8508
+ streamRobotControllerState: async (cell: string, controller: string, responseRate?: number, addControllerTimeout?: number, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
6619
8509
  // verify required parameter 'cell' is not null or undefined
6620
8510
  assertParamExists('streamRobotControllerState', 'cell', cell)
6621
8511
  // verify required parameter 'controller' is not null or undefined
@@ -6646,6 +8536,10 @@ export const ControllerApiAxiosParamCreator = function (configuration?: Configur
6646
8536
  localVarQueryParameter['response_rate'] = responseRate;
6647
8537
  }
6648
8538
 
8539
+ if (addControllerTimeout !== undefined) {
8540
+ localVarQueryParameter['add_controller_timeout'] = addControllerTimeout;
8541
+ }
8542
+
6649
8543
 
6650
8544
 
6651
8545
  setSearchParams(localVarUrlObj, localVarQueryParameter);
@@ -6812,20 +8706,6 @@ export const ControllerApiFp = function(configuration?: Configuration) {
6812
8706
  const localVarOperationServerBasePath = operationServerMap['ControllerApi.getCurrentRobotControllerState']?.[localVarOperationServerIndex]?.url;
6813
8707
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
6814
8708
  },
6815
- /**
6816
- * Get the current robot system mode of a registered robot controller. The robot system mode indicates if a robot controller can be used. See [setDefaultMode](setDefaultMode) for more information about the different modes. The mode is influenced by the operating mode of the robot controller. The operating mode can be changed via [setDefaultMode](setDefaultMode). Request the current operating mode of the robot controller via [getCurrentRobotControllerState](getCurrentRobotControllerState).
6817
- * @summary Current Mode
6818
- * @param {string} cell Unique identifier addressing a cell in all API calls.
6819
- * @param {string} controller Unique identifier to address a controller in the cell.
6820
- * @param {*} [options] Override http request option.
6821
- * @throws {RequiredError}
6822
- */
6823
- async getMode(cell: string, controller: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<GetModeResponse>> {
6824
- const localVarAxiosArgs = await localVarAxiosParamCreator.getMode(cell, controller, options);
6825
- const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
6826
- const localVarOperationServerBasePath = operationServerMap['ControllerApi.getMode']?.[localVarOperationServerIndex]?.url;
6827
- return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
6828
- },
6829
8709
  /**
6830
8710
  * Get the configuration for a robot controller.
6831
8711
  * @summary Robot Controller
@@ -6883,7 +8763,7 @@ export const ControllerApiFp = function(configuration?: Configuration) {
6883
8763
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
6884
8764
  },
6885
8765
  /**
6886
- * Switch between monitor and control usage as default for a robot controller. Monitoring mode is used to read information from the robot controller and control mode is used to command the robot system. As long as the robot controller is connected via network monitoring mode is always possible. To switch to control mode the robot controller must be in `automatic` or `manual` operating mode and safety state \'normal\' or \'reduced\'. If the robot controller is in `manual` operating mode, you have manually confirm the control usage activation on the robot control panel. This manual confirmation can\'t be replaced with this API. Without manual confirmation the robot controller will stay in monitor mode. The robot system will try to activate the required operation mode for the requested usage unless no active call requires a different mode. > **NOTE** > > Some robot controllers prevent the external activation of automatic operating mode. In this case, changing the operating mode manually at the robot controller is mandatory. > **NOTE** > > The current operation mode and safety state can be requested via [getCurrentRobotControllerState](getCurrentRobotControllerState). If a mode change is not possible, the response lists reasons for the failed change.
8766
+ * Switch between monitor and control usage as default for a robot controller. Monitoring mode is used to read information from the robot controller and control mode is used to command the robot system. As long as the robot controller is connected via network monitoring mode is always possible. To switch to control mode the robot controller must be in `automatic` or `manual` operating mode and safety state \'normal\' or \'reduced\'. If the robot controller is in `manual` operating mode, you have manually confirm the control usage activation on the robot control panel. This manual confirmation can\'t be replaced with this API. Without manual confirmation the robot controller will stay in monitor mode. The robot system will try to activate the required operation mode for the requested usage unless no active call requires a different mode. > **NOTE** > > `setDefaultMode` enables the robot controller to stay in control mode to keep the motors activated. > This allows for faster execution of sequential movements as no mode switches are required. > **NOTE** > > Some robot controllers prevent the external activation of automatic operating mode. In this case, changing the operating mode manually at the robot controller is mandatory. > **NOTE** > > The current operation mode and safety state can be requested via [getCurrentRobotControllerState](getCurrentRobotControllerState). If a mode change is not possible, the response lists reasons for the failed change.
6887
8767
  * @summary Set Default Mode
6888
8768
  * @param {string} cell Unique identifier addressing a cell in all API calls.
6889
8769
  * @param {string} controller Unique identifier to address a controller in the cell.
@@ -6913,16 +8793,17 @@ export const ControllerApiFp = function(configuration?: Configuration) {
6913
8793
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
6914
8794
  },
6915
8795
  /**
6916
- * <!-- theme: danger --> > Websocket endpoint Receive updates of the state of a robot controller.
8796
+ * <!-- theme: danger --> > Websocket endpoint Receive updates of the state of a robot controller. The stream can be opened before the controller is registered. To register a controller, call [addRobotController](addRobotController). While connecting, the stream sends initialization updates. Once the controller reaches `MODE_MONITOR`, it sends controller state updates.
6917
8797
  * @summary Stream State
6918
8798
  * @param {string} cell Unique identifier addressing a cell in all API calls.
6919
8799
  * @param {string} controller Unique identifier to address a controller in the cell.
6920
8800
  * @param {number} [responseRate]
8801
+ * @param {number} [addControllerTimeout]
6921
8802
  * @param {*} [options] Override http request option.
6922
8803
  * @throws {RequiredError}
6923
8804
  */
6924
- async streamRobotControllerState(cell: string, controller: string, responseRate?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<RobotControllerState>> {
6925
- const localVarAxiosArgs = await localVarAxiosParamCreator.streamRobotControllerState(cell, controller, responseRate, options);
8805
+ async streamRobotControllerState(cell: string, controller: string, responseRate?: number, addControllerTimeout?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<RobotControllerState>> {
8806
+ const localVarAxiosArgs = await localVarAxiosParamCreator.streamRobotControllerState(cell, controller, responseRate, addControllerTimeout, options);
6926
8807
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
6927
8808
  const localVarOperationServerBasePath = operationServerMap['ControllerApi.streamRobotControllerState']?.[localVarOperationServerIndex]?.url;
6928
8809
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -7023,17 +8904,6 @@ export const ControllerApiFactory = function (configuration?: Configuration, bas
7023
8904
  getCurrentRobotControllerState(cell: string, controller: string, options?: RawAxiosRequestConfig): AxiosPromise<RobotControllerState> {
7024
8905
  return localVarFp.getCurrentRobotControllerState(cell, controller, options).then((request) => request(axios, basePath));
7025
8906
  },
7026
- /**
7027
- * Get the current robot system mode of a registered robot controller. The robot system mode indicates if a robot controller can be used. See [setDefaultMode](setDefaultMode) for more information about the different modes. The mode is influenced by the operating mode of the robot controller. The operating mode can be changed via [setDefaultMode](setDefaultMode). Request the current operating mode of the robot controller via [getCurrentRobotControllerState](getCurrentRobotControllerState).
7028
- * @summary Current Mode
7029
- * @param {string} cell Unique identifier addressing a cell in all API calls.
7030
- * @param {string} controller Unique identifier to address a controller in the cell.
7031
- * @param {*} [options] Override http request option.
7032
- * @throws {RequiredError}
7033
- */
7034
- getMode(cell: string, controller: string, options?: RawAxiosRequestConfig): AxiosPromise<GetModeResponse> {
7035
- return localVarFp.getMode(cell, controller, options).then((request) => request(axios, basePath));
7036
- },
7037
8907
  /**
7038
8908
  * Get the configuration for a robot controller.
7039
8909
  * @summary Robot Controller
@@ -7079,7 +8949,7 @@ export const ControllerApiFactory = function (configuration?: Configuration, bas
7079
8949
  return localVarFp.listRobotControllers(cell, options).then((request) => request(axios, basePath));
7080
8950
  },
7081
8951
  /**
7082
- * Switch between monitor and control usage as default for a robot controller. Monitoring mode is used to read information from the robot controller and control mode is used to command the robot system. As long as the robot controller is connected via network monitoring mode is always possible. To switch to control mode the robot controller must be in `automatic` or `manual` operating mode and safety state \'normal\' or \'reduced\'. If the robot controller is in `manual` operating mode, you have manually confirm the control usage activation on the robot control panel. This manual confirmation can\'t be replaced with this API. Without manual confirmation the robot controller will stay in monitor mode. The robot system will try to activate the required operation mode for the requested usage unless no active call requires a different mode. > **NOTE** > > Some robot controllers prevent the external activation of automatic operating mode. In this case, changing the operating mode manually at the robot controller is mandatory. > **NOTE** > > The current operation mode and safety state can be requested via [getCurrentRobotControllerState](getCurrentRobotControllerState). If a mode change is not possible, the response lists reasons for the failed change.
8952
+ * Switch between monitor and control usage as default for a robot controller. Monitoring mode is used to read information from the robot controller and control mode is used to command the robot system. As long as the robot controller is connected via network monitoring mode is always possible. To switch to control mode the robot controller must be in `automatic` or `manual` operating mode and safety state \'normal\' or \'reduced\'. If the robot controller is in `manual` operating mode, you have manually confirm the control usage activation on the robot control panel. This manual confirmation can\'t be replaced with this API. Without manual confirmation the robot controller will stay in monitor mode. The robot system will try to activate the required operation mode for the requested usage unless no active call requires a different mode. > **NOTE** > > `setDefaultMode` enables the robot controller to stay in control mode to keep the motors activated. > This allows for faster execution of sequential movements as no mode switches are required. > **NOTE** > > Some robot controllers prevent the external activation of automatic operating mode. In this case, changing the operating mode manually at the robot controller is mandatory. > **NOTE** > > The current operation mode and safety state can be requested via [getCurrentRobotControllerState](getCurrentRobotControllerState). If a mode change is not possible, the response lists reasons for the failed change.
7083
8953
  * @summary Set Default Mode
7084
8954
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7085
8955
  * @param {string} controller Unique identifier to address a controller in the cell.
@@ -7103,16 +8973,17 @@ export const ControllerApiFactory = function (configuration?: Configuration, bas
7103
8973
  return localVarFp.streamFreeDrive(cell, controller, responseRate, options).then((request) => request(axios, basePath));
7104
8974
  },
7105
8975
  /**
7106
- * <!-- theme: danger --> > Websocket endpoint Receive updates of the state of a robot controller.
8976
+ * <!-- theme: danger --> > Websocket endpoint Receive updates of the state of a robot controller. The stream can be opened before the controller is registered. To register a controller, call [addRobotController](addRobotController). While connecting, the stream sends initialization updates. Once the controller reaches `MODE_MONITOR`, it sends controller state updates.
7107
8977
  * @summary Stream State
7108
8978
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7109
8979
  * @param {string} controller Unique identifier to address a controller in the cell.
7110
8980
  * @param {number} [responseRate]
8981
+ * @param {number} [addControllerTimeout]
7111
8982
  * @param {*} [options] Override http request option.
7112
8983
  * @throws {RequiredError}
7113
8984
  */
7114
- streamRobotControllerState(cell: string, controller: string, responseRate?: number, options?: RawAxiosRequestConfig): AxiosPromise<RobotControllerState> {
7115
- return localVarFp.streamRobotControllerState(cell, controller, responseRate, options).then((request) => request(axios, basePath));
8985
+ streamRobotControllerState(cell: string, controller: string, responseRate?: number, addControllerTimeout?: number, options?: RawAxiosRequestConfig): AxiosPromise<RobotControllerState> {
8986
+ return localVarFp.streamRobotControllerState(cell, controller, responseRate, addControllerTimeout, options).then((request) => request(axios, basePath));
7116
8987
  },
7117
8988
  /**
7118
8989
  * Update the configuration of a robot controller. Reconfigure certain options of a robot controller, or deploy a specific container image of a robot controller. <!-- theme: warning --> > **WARNING** > > Using it in conjunction with the settings app may lead to unpredictable behavior.
@@ -7219,19 +9090,6 @@ export class ControllerApi extends BaseAPI {
7219
9090
  return ControllerApiFp(this.configuration).getCurrentRobotControllerState(cell, controller, options).then((request) => request(this.axios, this.basePath));
7220
9091
  }
7221
9092
 
7222
- /**
7223
- * Get the current robot system mode of a registered robot controller. The robot system mode indicates if a robot controller can be used. See [setDefaultMode](setDefaultMode) for more information about the different modes. The mode is influenced by the operating mode of the robot controller. The operating mode can be changed via [setDefaultMode](setDefaultMode). Request the current operating mode of the robot controller via [getCurrentRobotControllerState](getCurrentRobotControllerState).
7224
- * @summary Current Mode
7225
- * @param {string} cell Unique identifier addressing a cell in all API calls.
7226
- * @param {string} controller Unique identifier to address a controller in the cell.
7227
- * @param {*} [options] Override http request option.
7228
- * @throws {RequiredError}
7229
- * @memberof ControllerApi
7230
- */
7231
- public getMode(cell: string, controller: string, options?: RawAxiosRequestConfig) {
7232
- return ControllerApiFp(this.configuration).getMode(cell, controller, options).then((request) => request(this.axios, this.basePath));
7233
- }
7234
-
7235
9093
  /**
7236
9094
  * Get the configuration for a robot controller.
7237
9095
  * @summary Robot Controller
@@ -7285,7 +9143,7 @@ export class ControllerApi extends BaseAPI {
7285
9143
  }
7286
9144
 
7287
9145
  /**
7288
- * Switch between monitor and control usage as default for a robot controller. Monitoring mode is used to read information from the robot controller and control mode is used to command the robot system. As long as the robot controller is connected via network monitoring mode is always possible. To switch to control mode the robot controller must be in `automatic` or `manual` operating mode and safety state \'normal\' or \'reduced\'. If the robot controller is in `manual` operating mode, you have manually confirm the control usage activation on the robot control panel. This manual confirmation can\'t be replaced with this API. Without manual confirmation the robot controller will stay in monitor mode. The robot system will try to activate the required operation mode for the requested usage unless no active call requires a different mode. > **NOTE** > > Some robot controllers prevent the external activation of automatic operating mode. In this case, changing the operating mode manually at the robot controller is mandatory. > **NOTE** > > The current operation mode and safety state can be requested via [getCurrentRobotControllerState](getCurrentRobotControllerState). If a mode change is not possible, the response lists reasons for the failed change.
9146
+ * Switch between monitor and control usage as default for a robot controller. Monitoring mode is used to read information from the robot controller and control mode is used to command the robot system. As long as the robot controller is connected via network monitoring mode is always possible. To switch to control mode the robot controller must be in `automatic` or `manual` operating mode and safety state \'normal\' or \'reduced\'. If the robot controller is in `manual` operating mode, you have manually confirm the control usage activation on the robot control panel. This manual confirmation can\'t be replaced with this API. Without manual confirmation the robot controller will stay in monitor mode. The robot system will try to activate the required operation mode for the requested usage unless no active call requires a different mode. > **NOTE** > > `setDefaultMode` enables the robot controller to stay in control mode to keep the motors activated. > This allows for faster execution of sequential movements as no mode switches are required. > **NOTE** > > Some robot controllers prevent the external activation of automatic operating mode. In this case, changing the operating mode manually at the robot controller is mandatory. > **NOTE** > > The current operation mode and safety state can be requested via [getCurrentRobotControllerState](getCurrentRobotControllerState). If a mode change is not possible, the response lists reasons for the failed change.
7289
9147
  * @summary Set Default Mode
7290
9148
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7291
9149
  * @param {string} controller Unique identifier to address a controller in the cell.
@@ -7313,17 +9171,18 @@ export class ControllerApi extends BaseAPI {
7313
9171
  }
7314
9172
 
7315
9173
  /**
7316
- * <!-- theme: danger --> > Websocket endpoint Receive updates of the state of a robot controller.
9174
+ * <!-- theme: danger --> > Websocket endpoint Receive updates of the state of a robot controller. The stream can be opened before the controller is registered. To register a controller, call [addRobotController](addRobotController). While connecting, the stream sends initialization updates. Once the controller reaches `MODE_MONITOR`, it sends controller state updates.
7317
9175
  * @summary Stream State
7318
9176
  * @param {string} cell Unique identifier addressing a cell in all API calls.
7319
9177
  * @param {string} controller Unique identifier to address a controller in the cell.
7320
9178
  * @param {number} [responseRate]
9179
+ * @param {number} [addControllerTimeout]
7321
9180
  * @param {*} [options] Override http request option.
7322
9181
  * @throws {RequiredError}
7323
9182
  * @memberof ControllerApi
7324
9183
  */
7325
- public streamRobotControllerState(cell: string, controller: string, responseRate?: number, options?: RawAxiosRequestConfig) {
7326
- return ControllerApiFp(this.configuration).streamRobotControllerState(cell, controller, responseRate, options).then((request) => request(this.axios, this.basePath));
9184
+ public streamRobotControllerState(cell: string, controller: string, responseRate?: number, addControllerTimeout?: number, options?: RawAxiosRequestConfig) {
9185
+ return ControllerApiFp(this.configuration).streamRobotControllerState(cell, controller, responseRate, addControllerTimeout, options).then((request) => request(this.axios, this.basePath));
7327
9186
  }
7328
9187
 
7329
9188
  /**
@@ -8007,6 +9866,52 @@ export class JoggingApi extends BaseAPI {
8007
9866
  */
8008
9867
  export const KinematicsApiAxiosParamCreator = function (configuration?: Configuration) {
8009
9868
  return {
9869
+ /**
9870
+ * Returns the TCP poses for a list of given joint positions.
9871
+ * @summary Forward kinematics
9872
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
9873
+ * @param {ForwardKinematicsRequest} [forwardKinematicsRequest]
9874
+ * @param {*} [options] Override http request option.
9875
+ * @throws {RequiredError}
9876
+ */
9877
+ forwardKinematics: async (cell: string, forwardKinematicsRequest?: ForwardKinematicsRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
9878
+ // verify required parameter 'cell' is not null or undefined
9879
+ assertParamExists('forwardKinematics', 'cell', cell)
9880
+ const localVarPath = `/cells/{cell}/kinematic/forward`
9881
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)));
9882
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
9883
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
9884
+ let baseOptions;
9885
+ if (configuration) {
9886
+ baseOptions = configuration.baseOptions;
9887
+ }
9888
+
9889
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
9890
+ const localVarHeaderParameter = {} as any;
9891
+ const localVarQueryParameter = {} as any;
9892
+
9893
+ // authentication BasicAuth required
9894
+ // http basic authentication required
9895
+ setBasicAuthToObject(localVarRequestOptions, configuration)
9896
+
9897
+ // authentication BearerAuth required
9898
+ // http bearer authentication required
9899
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
9900
+
9901
+
9902
+
9903
+ localVarHeaderParameter['Content-Type'] = 'application/json';
9904
+
9905
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
9906
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
9907
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
9908
+ localVarRequestOptions.data = serializeDataIfNeeded(forwardKinematicsRequest, localVarRequestOptions, configuration)
9909
+
9910
+ return {
9911
+ url: toPathString(localVarUrlObj),
9912
+ options: localVarRequestOptions,
9913
+ };
9914
+ },
8010
9915
  /**
8011
9916
  * Returns the reachable joint positions for a list of given poses.
8012
9917
  * @summary Inverse kinematics
@@ -8063,6 +9968,20 @@ export const KinematicsApiAxiosParamCreator = function (configuration?: Configur
8063
9968
  export const KinematicsApiFp = function(configuration?: Configuration) {
8064
9969
  const localVarAxiosParamCreator = KinematicsApiAxiosParamCreator(configuration)
8065
9970
  return {
9971
+ /**
9972
+ * Returns the TCP poses for a list of given joint positions.
9973
+ * @summary Forward kinematics
9974
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
9975
+ * @param {ForwardKinematicsRequest} [forwardKinematicsRequest]
9976
+ * @param {*} [options] Override http request option.
9977
+ * @throws {RequiredError}
9978
+ */
9979
+ async forwardKinematics(cell: string, forwardKinematicsRequest?: ForwardKinematicsRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ForwardKinematicsResponse>> {
9980
+ const localVarAxiosArgs = await localVarAxiosParamCreator.forwardKinematics(cell, forwardKinematicsRequest, options);
9981
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
9982
+ const localVarOperationServerBasePath = operationServerMap['KinematicsApi.forwardKinematics']?.[localVarOperationServerIndex]?.url;
9983
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
9984
+ },
8066
9985
  /**
8067
9986
  * Returns the reachable joint positions for a list of given poses.
8068
9987
  * @summary Inverse kinematics
@@ -8087,6 +10006,17 @@ export const KinematicsApiFp = function(configuration?: Configuration) {
8087
10006
  export const KinematicsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {
8088
10007
  const localVarFp = KinematicsApiFp(configuration)
8089
10008
  return {
10009
+ /**
10010
+ * Returns the TCP poses for a list of given joint positions.
10011
+ * @summary Forward kinematics
10012
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
10013
+ * @param {ForwardKinematicsRequest} [forwardKinematicsRequest]
10014
+ * @param {*} [options] Override http request option.
10015
+ * @throws {RequiredError}
10016
+ */
10017
+ forwardKinematics(cell: string, forwardKinematicsRequest?: ForwardKinematicsRequest, options?: RawAxiosRequestConfig): AxiosPromise<ForwardKinematicsResponse> {
10018
+ return localVarFp.forwardKinematics(cell, forwardKinematicsRequest, options).then((request) => request(axios, basePath));
10019
+ },
8090
10020
  /**
8091
10021
  * Returns the reachable joint positions for a list of given poses.
8092
10022
  * @summary Inverse kinematics
@@ -8108,6 +10038,19 @@ export const KinematicsApiFactory = function (configuration?: Configuration, bas
8108
10038
  * @extends {BaseAPI}
8109
10039
  */
8110
10040
  export class KinematicsApi extends BaseAPI {
10041
+ /**
10042
+ * Returns the TCP poses for a list of given joint positions.
10043
+ * @summary Forward kinematics
10044
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
10045
+ * @param {ForwardKinematicsRequest} [forwardKinematicsRequest]
10046
+ * @param {*} [options] Override http request option.
10047
+ * @throws {RequiredError}
10048
+ * @memberof KinematicsApi
10049
+ */
10050
+ public forwardKinematics(cell: string, forwardKinematicsRequest?: ForwardKinematicsRequest, options?: RawAxiosRequestConfig) {
10051
+ return KinematicsApiFp(this.configuration).forwardKinematics(cell, forwardKinematicsRequest, options).then((request) => request(this.axios, this.basePath));
10052
+ }
10053
+
8111
10054
  /**
8112
10055
  * Returns the reachable joint positions for a list of given poses.
8113
10056
  * @summary Inverse kinematics
@@ -10042,27 +11985,27 @@ export class StoreCollisionComponentsApi extends BaseAPI {
10042
11985
 
10043
11986
 
10044
11987
  /**
10045
- * StoreCollisionScenesApi - axios parameter creator
11988
+ * StoreCollisionSetupsApi - axios parameter creator
10046
11989
  * @export
10047
11990
  */
10048
- export const StoreCollisionScenesApiAxiosParamCreator = function (configuration?: Configuration) {
11991
+ export const StoreCollisionSetupsApiAxiosParamCreator = function (configuration?: Configuration) {
10049
11992
  return {
10050
11993
  /**
10051
- * Deletes the stored scene. <!-- theme: danger --> > This will delete persistently stored data.
10052
- * @summary Delete Scene
11994
+ * Deletes the stored collision setup. <!-- theme: danger --> > This will delete persistently stored data.
11995
+ * @summary Delete Collision Setup
10053
11996
  * @param {string} cell Unique identifier addressing a cell in all API calls.
10054
- * @param {string} scene Unique identifier addressing a collision scene.
11997
+ * @param {string} setup Identifier of the collision setup
10055
11998
  * @param {*} [options] Override http request option.
10056
11999
  * @throws {RequiredError}
10057
12000
  */
10058
- deleteStoredCollisionScene: async (cell: string, scene: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
12001
+ deleteStoredCollisionSetup: async (cell: string, setup: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
10059
12002
  // verify required parameter 'cell' is not null or undefined
10060
- assertParamExists('deleteStoredCollisionScene', 'cell', cell)
10061
- // verify required parameter 'scene' is not null or undefined
10062
- assertParamExists('deleteStoredCollisionScene', 'scene', scene)
10063
- const localVarPath = `/cells/{cell}/store/collision/scenes/{scene}`
12003
+ assertParamExists('deleteStoredCollisionSetup', 'cell', cell)
12004
+ // verify required parameter 'setup' is not null or undefined
12005
+ assertParamExists('deleteStoredCollisionSetup', 'setup', setup)
12006
+ const localVarPath = `/cells/{cell}/store/collision/setups/{setup}`
10064
12007
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
10065
- .replace(`{${"scene"}}`, encodeURIComponent(String(scene)));
12008
+ .replace(`{${"setup"}}`, encodeURIComponent(String(setup)));
10066
12009
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
10067
12010
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
10068
12011
  let baseOptions;
@@ -10094,21 +12037,21 @@ export const StoreCollisionScenesApiAxiosParamCreator = function (configuration?
10094
12037
  };
10095
12038
  },
10096
12039
  /**
10097
- * Returns the stored scene.
10098
- * @summary Get Scene
12040
+ * Returns the stored collision setup.
12041
+ * @summary Get Collision Setup
10099
12042
  * @param {string} cell Unique identifier addressing a cell in all API calls.
10100
- * @param {string} scene Unique identifier addressing a collision scene.
12043
+ * @param {string} setup Identifier of the collision setup
10101
12044
  * @param {*} [options] Override http request option.
10102
12045
  * @throws {RequiredError}
10103
12046
  */
10104
- getStoredCollisionScene: async (cell: string, scene: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
12047
+ getStoredCollisionSetup: async (cell: string, setup: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
10105
12048
  // verify required parameter 'cell' is not null or undefined
10106
- assertParamExists('getStoredCollisionScene', 'cell', cell)
10107
- // verify required parameter 'scene' is not null or undefined
10108
- assertParamExists('getStoredCollisionScene', 'scene', scene)
10109
- const localVarPath = `/cells/{cell}/store/collision/scenes/{scene}`
12049
+ assertParamExists('getStoredCollisionSetup', 'cell', cell)
12050
+ // verify required parameter 'setup' is not null or undefined
12051
+ assertParamExists('getStoredCollisionSetup', 'setup', setup)
12052
+ const localVarPath = `/cells/{cell}/store/collision/setups/{setup}`
10110
12053
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
10111
- .replace(`{${"scene"}}`, encodeURIComponent(String(scene)));
12054
+ .replace(`{${"setup"}}`, encodeURIComponent(String(setup)));
10112
12055
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
10113
12056
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
10114
12057
  let baseOptions;
@@ -10140,16 +12083,16 @@ export const StoreCollisionScenesApiAxiosParamCreator = function (configuration?
10140
12083
  };
10141
12084
  },
10142
12085
  /**
10143
- * Returns a list of stored scenes.
10144
- * @summary List Scenes
12086
+ * Returns a list of stored collision setups.
12087
+ * @summary List Collision Setups
10145
12088
  * @param {string} cell Unique identifier addressing a cell in all API calls.
10146
12089
  * @param {*} [options] Override http request option.
10147
12090
  * @throws {RequiredError}
10148
12091
  */
10149
- listStoredCollisionScenes: async (cell: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
12092
+ listStoredCollisionSetups: async (cell: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
10150
12093
  // verify required parameter 'cell' is not null or undefined
10151
- assertParamExists('listStoredCollisionScenes', 'cell', cell)
10152
- const localVarPath = `/cells/{cell}/store/collision/scenes`
12094
+ assertParamExists('listStoredCollisionSetups', 'cell', cell)
12095
+ const localVarPath = `/cells/{cell}/store/collision/setups`
10153
12096
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)));
10154
12097
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
10155
12098
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
@@ -10182,24 +12125,24 @@ export const StoreCollisionScenesApiAxiosParamCreator = function (configuration?
10182
12125
  };
10183
12126
  },
10184
12127
  /**
10185
- * Creates or replaces the stored collision scene. The scene is assembled from components as defined in the request body. <!-- theme: info --> > This endpoint allows indicating previously stored components. > Components used within the request will be copied into the new or updated scene. An error is returned if an indicated component does not exist.
10186
- * @summary Store Scene
12128
+ * Stores collision setup. If the collision setup does not exist, it will be created. If the collision setup exists, it will be updated.
12129
+ * @summary Store Collision Setup
10187
12130
  * @param {string} cell Unique identifier addressing a cell in all API calls.
10188
- * @param {string} scene Unique identifier addressing a collision scene.
10189
- * @param {CollisionSceneAssembly} collisionSceneAssembly
12131
+ * @param {string} setup Identifier of the collision setup
12132
+ * @param {CollisionSetup} collisionSetup
10190
12133
  * @param {*} [options] Override http request option.
10191
12134
  * @throws {RequiredError}
10192
12135
  */
10193
- storeCollisionScene: async (cell: string, scene: string, collisionSceneAssembly: CollisionSceneAssembly, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
12136
+ storeCollisionSetup: async (cell: string, setup: string, collisionSetup: CollisionSetup, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
10194
12137
  // verify required parameter 'cell' is not null or undefined
10195
- assertParamExists('storeCollisionScene', 'cell', cell)
10196
- // verify required parameter 'scene' is not null or undefined
10197
- assertParamExists('storeCollisionScene', 'scene', scene)
10198
- // verify required parameter 'collisionSceneAssembly' is not null or undefined
10199
- assertParamExists('storeCollisionScene', 'collisionSceneAssembly', collisionSceneAssembly)
10200
- const localVarPath = `/cells/{cell}/store/collision/scenes/{scene}`
12138
+ assertParamExists('storeCollisionSetup', 'cell', cell)
12139
+ // verify required parameter 'setup' is not null or undefined
12140
+ assertParamExists('storeCollisionSetup', 'setup', setup)
12141
+ // verify required parameter 'collisionSetup' is not null or undefined
12142
+ assertParamExists('storeCollisionSetup', 'collisionSetup', collisionSetup)
12143
+ const localVarPath = `/cells/{cell}/store/collision/setups/{setup}`
10201
12144
  .replace(`{${"cell"}}`, encodeURIComponent(String(cell)))
10202
- .replace(`{${"scene"}}`, encodeURIComponent(String(scene)));
12145
+ .replace(`{${"setup"}}`, encodeURIComponent(String(setup)));
10203
12146
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
10204
12147
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
10205
12148
  let baseOptions;
@@ -10226,7 +12169,7 @@ export const StoreCollisionScenesApiAxiosParamCreator = function (configuration?
10226
12169
  setSearchParams(localVarUrlObj, localVarQueryParameter);
10227
12170
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
10228
12171
  localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
10229
- localVarRequestOptions.data = serializeDataIfNeeded(collisionSceneAssembly, localVarRequestOptions, configuration)
12172
+ localVarRequestOptions.data = serializeDataIfNeeded(collisionSetup, localVarRequestOptions, configuration)
10230
12173
 
10231
12174
  return {
10232
12175
  url: toPathString(localVarUrlObj),
@@ -10237,182 +12180,182 @@ export const StoreCollisionScenesApiAxiosParamCreator = function (configuration?
10237
12180
  };
10238
12181
 
10239
12182
  /**
10240
- * StoreCollisionScenesApi - functional programming interface
12183
+ * StoreCollisionSetupsApi - functional programming interface
10241
12184
  * @export
10242
12185
  */
10243
- export const StoreCollisionScenesApiFp = function(configuration?: Configuration) {
10244
- const localVarAxiosParamCreator = StoreCollisionScenesApiAxiosParamCreator(configuration)
12186
+ export const StoreCollisionSetupsApiFp = function(configuration?: Configuration) {
12187
+ const localVarAxiosParamCreator = StoreCollisionSetupsApiAxiosParamCreator(configuration)
10245
12188
  return {
10246
12189
  /**
10247
- * Deletes the stored scene. <!-- theme: danger --> > This will delete persistently stored data.
10248
- * @summary Delete Scene
12190
+ * Deletes the stored collision setup. <!-- theme: danger --> > This will delete persistently stored data.
12191
+ * @summary Delete Collision Setup
10249
12192
  * @param {string} cell Unique identifier addressing a cell in all API calls.
10250
- * @param {string} scene Unique identifier addressing a collision scene.
12193
+ * @param {string} setup Identifier of the collision setup
10251
12194
  * @param {*} [options] Override http request option.
10252
12195
  * @throws {RequiredError}
10253
12196
  */
10254
- async deleteStoredCollisionScene(cell: string, scene: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> {
10255
- const localVarAxiosArgs = await localVarAxiosParamCreator.deleteStoredCollisionScene(cell, scene, options);
12197
+ async deleteStoredCollisionSetup(cell: string, setup: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> {
12198
+ const localVarAxiosArgs = await localVarAxiosParamCreator.deleteStoredCollisionSetup(cell, setup, options);
10256
12199
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
10257
- const localVarOperationServerBasePath = operationServerMap['StoreCollisionScenesApi.deleteStoredCollisionScene']?.[localVarOperationServerIndex]?.url;
12200
+ const localVarOperationServerBasePath = operationServerMap['StoreCollisionSetupsApi.deleteStoredCollisionSetup']?.[localVarOperationServerIndex]?.url;
10258
12201
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
10259
12202
  },
10260
12203
  /**
10261
- * Returns the stored scene.
10262
- * @summary Get Scene
12204
+ * Returns the stored collision setup.
12205
+ * @summary Get Collision Setup
10263
12206
  * @param {string} cell Unique identifier addressing a cell in all API calls.
10264
- * @param {string} scene Unique identifier addressing a collision scene.
12207
+ * @param {string} setup Identifier of the collision setup
10265
12208
  * @param {*} [options] Override http request option.
10266
12209
  * @throws {RequiredError}
10267
12210
  */
10268
- async getStoredCollisionScene(cell: string, scene: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CollisionScene>> {
10269
- const localVarAxiosArgs = await localVarAxiosParamCreator.getStoredCollisionScene(cell, scene, options);
12211
+ async getStoredCollisionSetup(cell: string, setup: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CollisionSetup>> {
12212
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getStoredCollisionSetup(cell, setup, options);
10270
12213
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
10271
- const localVarOperationServerBasePath = operationServerMap['StoreCollisionScenesApi.getStoredCollisionScene']?.[localVarOperationServerIndex]?.url;
12214
+ const localVarOperationServerBasePath = operationServerMap['StoreCollisionSetupsApi.getStoredCollisionSetup']?.[localVarOperationServerIndex]?.url;
10272
12215
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
10273
12216
  },
10274
12217
  /**
10275
- * Returns a list of stored scenes.
10276
- * @summary List Scenes
12218
+ * Returns a list of stored collision setups.
12219
+ * @summary List Collision Setups
10277
12220
  * @param {string} cell Unique identifier addressing a cell in all API calls.
10278
12221
  * @param {*} [options] Override http request option.
10279
12222
  * @throws {RequiredError}
10280
12223
  */
10281
- async listStoredCollisionScenes(cell: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<{ [key: string]: CollisionScene; }>> {
10282
- const localVarAxiosArgs = await localVarAxiosParamCreator.listStoredCollisionScenes(cell, options);
12224
+ async listStoredCollisionSetups(cell: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<{ [key: string]: CollisionSetup; }>> {
12225
+ const localVarAxiosArgs = await localVarAxiosParamCreator.listStoredCollisionSetups(cell, options);
10283
12226
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
10284
- const localVarOperationServerBasePath = operationServerMap['StoreCollisionScenesApi.listStoredCollisionScenes']?.[localVarOperationServerIndex]?.url;
12227
+ const localVarOperationServerBasePath = operationServerMap['StoreCollisionSetupsApi.listStoredCollisionSetups']?.[localVarOperationServerIndex]?.url;
10285
12228
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
10286
12229
  },
10287
12230
  /**
10288
- * Creates or replaces the stored collision scene. The scene is assembled from components as defined in the request body. <!-- theme: info --> > This endpoint allows indicating previously stored components. > Components used within the request will be copied into the new or updated scene. An error is returned if an indicated component does not exist.
10289
- * @summary Store Scene
12231
+ * Stores collision setup. If the collision setup does not exist, it will be created. If the collision setup exists, it will be updated.
12232
+ * @summary Store Collision Setup
10290
12233
  * @param {string} cell Unique identifier addressing a cell in all API calls.
10291
- * @param {string} scene Unique identifier addressing a collision scene.
10292
- * @param {CollisionSceneAssembly} collisionSceneAssembly
12234
+ * @param {string} setup Identifier of the collision setup
12235
+ * @param {CollisionSetup} collisionSetup
10293
12236
  * @param {*} [options] Override http request option.
10294
12237
  * @throws {RequiredError}
10295
12238
  */
10296
- async storeCollisionScene(cell: string, scene: string, collisionSceneAssembly: CollisionSceneAssembly, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CollisionScene>> {
10297
- const localVarAxiosArgs = await localVarAxiosParamCreator.storeCollisionScene(cell, scene, collisionSceneAssembly, options);
12239
+ async storeCollisionSetup(cell: string, setup: string, collisionSetup: CollisionSetup, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CollisionSetup>> {
12240
+ const localVarAxiosArgs = await localVarAxiosParamCreator.storeCollisionSetup(cell, setup, collisionSetup, options);
10298
12241
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
10299
- const localVarOperationServerBasePath = operationServerMap['StoreCollisionScenesApi.storeCollisionScene']?.[localVarOperationServerIndex]?.url;
12242
+ const localVarOperationServerBasePath = operationServerMap['StoreCollisionSetupsApi.storeCollisionSetup']?.[localVarOperationServerIndex]?.url;
10300
12243
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
10301
12244
  },
10302
12245
  }
10303
12246
  };
10304
12247
 
10305
12248
  /**
10306
- * StoreCollisionScenesApi - factory interface
12249
+ * StoreCollisionSetupsApi - factory interface
10307
12250
  * @export
10308
12251
  */
10309
- export const StoreCollisionScenesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {
10310
- const localVarFp = StoreCollisionScenesApiFp(configuration)
12252
+ export const StoreCollisionSetupsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {
12253
+ const localVarFp = StoreCollisionSetupsApiFp(configuration)
10311
12254
  return {
10312
12255
  /**
10313
- * Deletes the stored scene. <!-- theme: danger --> > This will delete persistently stored data.
10314
- * @summary Delete Scene
12256
+ * Deletes the stored collision setup. <!-- theme: danger --> > This will delete persistently stored data.
12257
+ * @summary Delete Collision Setup
10315
12258
  * @param {string} cell Unique identifier addressing a cell in all API calls.
10316
- * @param {string} scene Unique identifier addressing a collision scene.
12259
+ * @param {string} setup Identifier of the collision setup
10317
12260
  * @param {*} [options] Override http request option.
10318
12261
  * @throws {RequiredError}
10319
12262
  */
10320
- deleteStoredCollisionScene(cell: string, scene: string, options?: RawAxiosRequestConfig): AxiosPromise<void> {
10321
- return localVarFp.deleteStoredCollisionScene(cell, scene, options).then((request) => request(axios, basePath));
12263
+ deleteStoredCollisionSetup(cell: string, setup: string, options?: RawAxiosRequestConfig): AxiosPromise<void> {
12264
+ return localVarFp.deleteStoredCollisionSetup(cell, setup, options).then((request) => request(axios, basePath));
10322
12265
  },
10323
12266
  /**
10324
- * Returns the stored scene.
10325
- * @summary Get Scene
12267
+ * Returns the stored collision setup.
12268
+ * @summary Get Collision Setup
10326
12269
  * @param {string} cell Unique identifier addressing a cell in all API calls.
10327
- * @param {string} scene Unique identifier addressing a collision scene.
12270
+ * @param {string} setup Identifier of the collision setup
10328
12271
  * @param {*} [options] Override http request option.
10329
12272
  * @throws {RequiredError}
10330
12273
  */
10331
- getStoredCollisionScene(cell: string, scene: string, options?: RawAxiosRequestConfig): AxiosPromise<CollisionScene> {
10332
- return localVarFp.getStoredCollisionScene(cell, scene, options).then((request) => request(axios, basePath));
12274
+ getStoredCollisionSetup(cell: string, setup: string, options?: RawAxiosRequestConfig): AxiosPromise<CollisionSetup> {
12275
+ return localVarFp.getStoredCollisionSetup(cell, setup, options).then((request) => request(axios, basePath));
10333
12276
  },
10334
12277
  /**
10335
- * Returns a list of stored scenes.
10336
- * @summary List Scenes
12278
+ * Returns a list of stored collision setups.
12279
+ * @summary List Collision Setups
10337
12280
  * @param {string} cell Unique identifier addressing a cell in all API calls.
10338
12281
  * @param {*} [options] Override http request option.
10339
12282
  * @throws {RequiredError}
10340
12283
  */
10341
- listStoredCollisionScenes(cell: string, options?: RawAxiosRequestConfig): AxiosPromise<{ [key: string]: CollisionScene; }> {
10342
- return localVarFp.listStoredCollisionScenes(cell, options).then((request) => request(axios, basePath));
12284
+ listStoredCollisionSetups(cell: string, options?: RawAxiosRequestConfig): AxiosPromise<{ [key: string]: CollisionSetup; }> {
12285
+ return localVarFp.listStoredCollisionSetups(cell, options).then((request) => request(axios, basePath));
10343
12286
  },
10344
12287
  /**
10345
- * Creates or replaces the stored collision scene. The scene is assembled from components as defined in the request body. <!-- theme: info --> > This endpoint allows indicating previously stored components. > Components used within the request will be copied into the new or updated scene. An error is returned if an indicated component does not exist.
10346
- * @summary Store Scene
12288
+ * Stores collision setup. If the collision setup does not exist, it will be created. If the collision setup exists, it will be updated.
12289
+ * @summary Store Collision Setup
10347
12290
  * @param {string} cell Unique identifier addressing a cell in all API calls.
10348
- * @param {string} scene Unique identifier addressing a collision scene.
10349
- * @param {CollisionSceneAssembly} collisionSceneAssembly
12291
+ * @param {string} setup Identifier of the collision setup
12292
+ * @param {CollisionSetup} collisionSetup
10350
12293
  * @param {*} [options] Override http request option.
10351
12294
  * @throws {RequiredError}
10352
12295
  */
10353
- storeCollisionScene(cell: string, scene: string, collisionSceneAssembly: CollisionSceneAssembly, options?: RawAxiosRequestConfig): AxiosPromise<CollisionScene> {
10354
- return localVarFp.storeCollisionScene(cell, scene, collisionSceneAssembly, options).then((request) => request(axios, basePath));
12296
+ storeCollisionSetup(cell: string, setup: string, collisionSetup: CollisionSetup, options?: RawAxiosRequestConfig): AxiosPromise<CollisionSetup> {
12297
+ return localVarFp.storeCollisionSetup(cell, setup, collisionSetup, options).then((request) => request(axios, basePath));
10355
12298
  },
10356
12299
  };
10357
12300
  };
10358
12301
 
10359
12302
  /**
10360
- * StoreCollisionScenesApi - object-oriented interface
12303
+ * StoreCollisionSetupsApi - object-oriented interface
10361
12304
  * @export
10362
- * @class StoreCollisionScenesApi
12305
+ * @class StoreCollisionSetupsApi
10363
12306
  * @extends {BaseAPI}
10364
12307
  */
10365
- export class StoreCollisionScenesApi extends BaseAPI {
12308
+ export class StoreCollisionSetupsApi extends BaseAPI {
10366
12309
  /**
10367
- * Deletes the stored scene. <!-- theme: danger --> > This will delete persistently stored data.
10368
- * @summary Delete Scene
12310
+ * Deletes the stored collision setup. <!-- theme: danger --> > This will delete persistently stored data.
12311
+ * @summary Delete Collision Setup
10369
12312
  * @param {string} cell Unique identifier addressing a cell in all API calls.
10370
- * @param {string} scene Unique identifier addressing a collision scene.
12313
+ * @param {string} setup Identifier of the collision setup
10371
12314
  * @param {*} [options] Override http request option.
10372
12315
  * @throws {RequiredError}
10373
- * @memberof StoreCollisionScenesApi
12316
+ * @memberof StoreCollisionSetupsApi
10374
12317
  */
10375
- public deleteStoredCollisionScene(cell: string, scene: string, options?: RawAxiosRequestConfig) {
10376
- return StoreCollisionScenesApiFp(this.configuration).deleteStoredCollisionScene(cell, scene, options).then((request) => request(this.axios, this.basePath));
12318
+ public deleteStoredCollisionSetup(cell: string, setup: string, options?: RawAxiosRequestConfig) {
12319
+ return StoreCollisionSetupsApiFp(this.configuration).deleteStoredCollisionSetup(cell, setup, options).then((request) => request(this.axios, this.basePath));
10377
12320
  }
10378
12321
 
10379
12322
  /**
10380
- * Returns the stored scene.
10381
- * @summary Get Scene
12323
+ * Returns the stored collision setup.
12324
+ * @summary Get Collision Setup
10382
12325
  * @param {string} cell Unique identifier addressing a cell in all API calls.
10383
- * @param {string} scene Unique identifier addressing a collision scene.
12326
+ * @param {string} setup Identifier of the collision setup
10384
12327
  * @param {*} [options] Override http request option.
10385
12328
  * @throws {RequiredError}
10386
- * @memberof StoreCollisionScenesApi
12329
+ * @memberof StoreCollisionSetupsApi
10387
12330
  */
10388
- public getStoredCollisionScene(cell: string, scene: string, options?: RawAxiosRequestConfig) {
10389
- return StoreCollisionScenesApiFp(this.configuration).getStoredCollisionScene(cell, scene, options).then((request) => request(this.axios, this.basePath));
12331
+ public getStoredCollisionSetup(cell: string, setup: string, options?: RawAxiosRequestConfig) {
12332
+ return StoreCollisionSetupsApiFp(this.configuration).getStoredCollisionSetup(cell, setup, options).then((request) => request(this.axios, this.basePath));
10390
12333
  }
10391
12334
 
10392
12335
  /**
10393
- * Returns a list of stored scenes.
10394
- * @summary List Scenes
12336
+ * Returns a list of stored collision setups.
12337
+ * @summary List Collision Setups
10395
12338
  * @param {string} cell Unique identifier addressing a cell in all API calls.
10396
12339
  * @param {*} [options] Override http request option.
10397
12340
  * @throws {RequiredError}
10398
- * @memberof StoreCollisionScenesApi
12341
+ * @memberof StoreCollisionSetupsApi
10399
12342
  */
10400
- public listStoredCollisionScenes(cell: string, options?: RawAxiosRequestConfig) {
10401
- return StoreCollisionScenesApiFp(this.configuration).listStoredCollisionScenes(cell, options).then((request) => request(this.axios, this.basePath));
12343
+ public listStoredCollisionSetups(cell: string, options?: RawAxiosRequestConfig) {
12344
+ return StoreCollisionSetupsApiFp(this.configuration).listStoredCollisionSetups(cell, options).then((request) => request(this.axios, this.basePath));
10402
12345
  }
10403
12346
 
10404
12347
  /**
10405
- * Creates or replaces the stored collision scene. The scene is assembled from components as defined in the request body. <!-- theme: info --> > This endpoint allows indicating previously stored components. > Components used within the request will be copied into the new or updated scene. An error is returned if an indicated component does not exist.
10406
- * @summary Store Scene
12348
+ * Stores collision setup. If the collision setup does not exist, it will be created. If the collision setup exists, it will be updated.
12349
+ * @summary Store Collision Setup
10407
12350
  * @param {string} cell Unique identifier addressing a cell in all API calls.
10408
- * @param {string} scene Unique identifier addressing a collision scene.
10409
- * @param {CollisionSceneAssembly} collisionSceneAssembly
12351
+ * @param {string} setup Identifier of the collision setup
12352
+ * @param {CollisionSetup} collisionSetup
10410
12353
  * @param {*} [options] Override http request option.
10411
12354
  * @throws {RequiredError}
10412
- * @memberof StoreCollisionScenesApi
12355
+ * @memberof StoreCollisionSetupsApi
10413
12356
  */
10414
- public storeCollisionScene(cell: string, scene: string, collisionSceneAssembly: CollisionSceneAssembly, options?: RawAxiosRequestConfig) {
10415
- return StoreCollisionScenesApiFp(this.configuration).storeCollisionScene(cell, scene, collisionSceneAssembly, options).then((request) => request(this.axios, this.basePath));
12357
+ public storeCollisionSetup(cell: string, setup: string, collisionSetup: CollisionSetup, options?: RawAxiosRequestConfig) {
12358
+ return StoreCollisionSetupsApiFp(this.configuration).storeCollisionSetup(cell, setup, collisionSetup, options).then((request) => request(this.axios, this.basePath));
10416
12359
  }
10417
12360
  }
10418
12361
 
@@ -10975,16 +12918,14 @@ export class StoreObjectApi extends BaseAPI {
10975
12918
  export const SystemApiAxiosParamCreator = function (configuration?: Configuration) {
10976
12919
  return {
10977
12920
  /**
10978
- * Retrieves a configuration backup based on provided resource identifiers.
12921
+ * Retrieves a configuration backup based on provided resource identifiers. If an empty array of resources is provided, a backup for all resources will be retrieved.
10979
12922
  * @summary Retrieve Configuration Backup
10980
- * @param {Array<string>} resources List of resource identifiers to included in the backup and restore operations.
12923
+ * @param {Array<string>} [resources] List of resource identifiers to include in the retrieval.
10981
12924
  * @param {{ [key: string]: string; }} [metadata] Additional metadata to add to the backup
10982
12925
  * @param {*} [options] Override http request option.
10983
12926
  * @throws {RequiredError}
10984
12927
  */
10985
- backupConfiguration: async (resources: Array<string>, metadata?: { [key: string]: string; }, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
10986
- // verify required parameter 'resources' is not null or undefined
10987
- assertParamExists('backupConfiguration', 'resources', resources)
12928
+ backupConfiguration: async (resources?: Array<string>, metadata?: { [key: string]: string; }, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
10988
12929
  const localVarPath = `/system/configuration`;
10989
12930
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
10990
12931
  const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
@@ -11372,14 +13313,14 @@ export const SystemApiFp = function(configuration?: Configuration) {
11372
13313
  const localVarAxiosParamCreator = SystemApiAxiosParamCreator(configuration)
11373
13314
  return {
11374
13315
  /**
11375
- * Retrieves a configuration backup based on provided resource identifiers.
13316
+ * Retrieves a configuration backup based on provided resource identifiers. If an empty array of resources is provided, a backup for all resources will be retrieved.
11376
13317
  * @summary Retrieve Configuration Backup
11377
- * @param {Array<string>} resources List of resource identifiers to included in the backup and restore operations.
13318
+ * @param {Array<string>} [resources] List of resource identifiers to include in the retrieval.
11378
13319
  * @param {{ [key: string]: string; }} [metadata] Additional metadata to add to the backup
11379
13320
  * @param {*} [options] Override http request option.
11380
13321
  * @throws {RequiredError}
11381
13322
  */
11382
- async backupConfiguration(resources: Array<string>, metadata?: { [key: string]: string; }, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<File>> {
13323
+ async backupConfiguration(resources?: Array<string>, metadata?: { [key: string]: string; }, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<File>> {
11383
13324
  const localVarAxiosArgs = await localVarAxiosParamCreator.backupConfiguration(resources, metadata, options);
11384
13325
  const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
11385
13326
  const localVarOperationServerBasePath = operationServerMap['SystemApi.backupConfiguration']?.[localVarOperationServerIndex]?.url;
@@ -11497,14 +13438,14 @@ export const SystemApiFactory = function (configuration?: Configuration, basePat
11497
13438
  const localVarFp = SystemApiFp(configuration)
11498
13439
  return {
11499
13440
  /**
11500
- * Retrieves a configuration backup based on provided resource identifiers.
13441
+ * Retrieves a configuration backup based on provided resource identifiers. If an empty array of resources is provided, a backup for all resources will be retrieved.
11501
13442
  * @summary Retrieve Configuration Backup
11502
- * @param {Array<string>} resources List of resource identifiers to included in the backup and restore operations.
13443
+ * @param {Array<string>} [resources] List of resource identifiers to include in the retrieval.
11503
13444
  * @param {{ [key: string]: string; }} [metadata] Additional metadata to add to the backup
11504
13445
  * @param {*} [options] Override http request option.
11505
13446
  * @throws {RequiredError}
11506
13447
  */
11507
- backupConfiguration(resources: Array<string>, metadata?: { [key: string]: string; }, options?: RawAxiosRequestConfig): AxiosPromise<File> {
13448
+ backupConfiguration(resources?: Array<string>, metadata?: { [key: string]: string; }, options?: RawAxiosRequestConfig): AxiosPromise<File> {
11508
13449
  return localVarFp.backupConfiguration(resources, metadata, options).then((request) => request(axios, basePath));
11509
13450
  },
11510
13451
  /**
@@ -11595,15 +13536,15 @@ export const SystemApiFactory = function (configuration?: Configuration, basePat
11595
13536
  */
11596
13537
  export class SystemApi extends BaseAPI {
11597
13538
  /**
11598
- * Retrieves a configuration backup based on provided resource identifiers.
13539
+ * Retrieves a configuration backup based on provided resource identifiers. If an empty array of resources is provided, a backup for all resources will be retrieved.
11599
13540
  * @summary Retrieve Configuration Backup
11600
- * @param {Array<string>} resources List of resource identifiers to included in the backup and restore operations.
13541
+ * @param {Array<string>} [resources] List of resource identifiers to include in the retrieval.
11601
13542
  * @param {{ [key: string]: string; }} [metadata] Additional metadata to add to the backup
11602
13543
  * @param {*} [options] Override http request option.
11603
13544
  * @throws {RequiredError}
11604
13545
  * @memberof SystemApi
11605
13546
  */
11606
- public backupConfiguration(resources: Array<string>, metadata?: { [key: string]: string; }, options?: RawAxiosRequestConfig) {
13547
+ public backupConfiguration(resources?: Array<string>, metadata?: { [key: string]: string; }, options?: RawAxiosRequestConfig) {
11607
13548
  return SystemApiFp(this.configuration).backupConfiguration(resources, metadata, options).then((request) => request(this.axios, this.basePath));
11608
13549
  }
11609
13550
 
@@ -12324,7 +14265,53 @@ export class TrajectoryExecutionApi extends BaseAPI {
12324
14265
  export const TrajectoryPlanningApiAxiosParamCreator = function (configuration?: Configuration) {
12325
14266
  return {
12326
14267
  /**
12327
- * Plans a new trajectory for a single motion group. Describe the trajectory as a sequence of motion commands that the robots TCP should follow. Use the following workflow to execute a planned trajectory: 1. Plan a trajectory. 2. Optional: Load the planned trajectory into the cache using the [addTrajectory](addTrajectory) endpoint. 3. Execute the (cached) trajectory using the [executeTrajectory](executeTrajectory) endpoint. If the trajectory is not executable, the [PlanTrajectoryResponse](PlanTrajectoryResponse) will contain the joint trajectory up until the error, e.g. all samples until a collision occurs. EXCEPTION: If a CartesianPTP or JointPTP motion command has an invalid target, the response will contain the trajectory up until the start of the invalid PTP motion.
14268
+ * Plans a collision-free trajectory for a single motion group using point-to-point (PTP) motions. This endpoint is specifically designed for collision-free path planning algorithms that find a trajectory from a start joint position to a target position while avoiding obstacles. Use the following workflow to execute a planned collision-free trajectory: 1. Plan a collision-free trajectory. 2. Optional: Load the planned trajectory into the cache using the [addTrajectory](addTrajectory) endpoint. 3. Execute the (cached) trajectory using the [executeTrajectory](executeTrajectory) endpoint. If the trajectory planning fails due to collision or algorithm constraints, the response will contain error information about the failure.
14269
+ * @summary Plan Collision-Free Trajectory
14270
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
14271
+ * @param {PlanCollisionFreeRequest} [planCollisionFreeRequest]
14272
+ * @param {*} [options] Override http request option.
14273
+ * @throws {RequiredError}
14274
+ */
14275
+ planCollisionFree: async (cell: string, planCollisionFreeRequest?: PlanCollisionFreeRequest, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
14276
+ // verify required parameter 'cell' is not null or undefined
14277
+ assertParamExists('planCollisionFree', 'cell', cell)
14278
+ const localVarPath = `/cells/{cell}/trajectory-planning/plan-collision-free`
14279
+ .replace(`{${"cell"}}`, encodeURIComponent(String(cell)));
14280
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
14281
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
14282
+ let baseOptions;
14283
+ if (configuration) {
14284
+ baseOptions = configuration.baseOptions;
14285
+ }
14286
+
14287
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
14288
+ const localVarHeaderParameter = {} as any;
14289
+ const localVarQueryParameter = {} as any;
14290
+
14291
+ // authentication BasicAuth required
14292
+ // http basic authentication required
14293
+ setBasicAuthToObject(localVarRequestOptions, configuration)
14294
+
14295
+ // authentication BearerAuth required
14296
+ // http bearer authentication required
14297
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
14298
+
14299
+
14300
+
14301
+ localVarHeaderParameter['Content-Type'] = 'application/json';
14302
+
14303
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
14304
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
14305
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
14306
+ localVarRequestOptions.data = serializeDataIfNeeded(planCollisionFreeRequest, localVarRequestOptions, configuration)
14307
+
14308
+ return {
14309
+ url: toPathString(localVarUrlObj),
14310
+ options: localVarRequestOptions,
14311
+ };
14312
+ },
14313
+ /**
14314
+ * Plans a new trajectory for a single motion group. Describe the trajectory as a sequence of motion commands that the robots TCP should follow. Use the following workflow to execute a planned trajectory: 1. Plan a trajectory. 2. Optional: Load the planned trajectory into the cache using the [addTrajectory](addTrajectory) endpoint. 3. Execute the (cached) trajectory using the [executeTrajectory](executeTrajectory) endpoint. If the trajectory is not executable, the [PlanTrajectoryResponse](PlanTrajectoryResponse) will contain the joint trajectory up until the error, e.g. all samples until a collision occurs. EXCEPTION: If a CartesianPTP or JointPTP motion command has an invalid target, the response will contain the trajectory up until the start of the invalid PTP motion.
12328
14315
  * @summary Plan Trajectory
12329
14316
  * @param {string} cell Unique identifier addressing a cell in all API calls.
12330
14317
  * @param {PlanTrajectoryRequest} [planTrajectoryRequest]
@@ -12380,7 +14367,21 @@ export const TrajectoryPlanningApiFp = function(configuration?: Configuration) {
12380
14367
  const localVarAxiosParamCreator = TrajectoryPlanningApiAxiosParamCreator(configuration)
12381
14368
  return {
12382
14369
  /**
12383
- * Plans a new trajectory for a single motion group. Describe the trajectory as a sequence of motion commands that the robots TCP should follow. Use the following workflow to execute a planned trajectory: 1. Plan a trajectory. 2. Optional: Load the planned trajectory into the cache using the [addTrajectory](addTrajectory) endpoint. 3. Execute the (cached) trajectory using the [executeTrajectory](executeTrajectory) endpoint. If the trajectory is not executable, the [PlanTrajectoryResponse](PlanTrajectoryResponse) will contain the joint trajectory up until the error, e.g. all samples until a collision occurs. EXCEPTION: If a CartesianPTP or JointPTP motion command has an invalid target, the response will contain the trajectory up until the start of the invalid PTP motion.
14370
+ * Plans a collision-free trajectory for a single motion group using point-to-point (PTP) motions. This endpoint is specifically designed for collision-free path planning algorithms that find a trajectory from a start joint position to a target position while avoiding obstacles. Use the following workflow to execute a planned collision-free trajectory: 1. Plan a collision-free trajectory. 2. Optional: Load the planned trajectory into the cache using the [addTrajectory](addTrajectory) endpoint. 3. Execute the (cached) trajectory using the [executeTrajectory](executeTrajectory) endpoint. If the trajectory planning fails due to collision or algorithm constraints, the response will contain error information about the failure.
14371
+ * @summary Plan Collision-Free Trajectory
14372
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
14373
+ * @param {PlanCollisionFreeRequest} [planCollisionFreeRequest]
14374
+ * @param {*} [options] Override http request option.
14375
+ * @throws {RequiredError}
14376
+ */
14377
+ async planCollisionFree(cell: string, planCollisionFreeRequest?: PlanCollisionFreeRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PlanCollisionFreeResponse>> {
14378
+ const localVarAxiosArgs = await localVarAxiosParamCreator.planCollisionFree(cell, planCollisionFreeRequest, options);
14379
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
14380
+ const localVarOperationServerBasePath = operationServerMap['TrajectoryPlanningApi.planCollisionFree']?.[localVarOperationServerIndex]?.url;
14381
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
14382
+ },
14383
+ /**
14384
+ * Plans a new trajectory for a single motion group. Describe the trajectory as a sequence of motion commands that the robots TCP should follow. Use the following workflow to execute a planned trajectory: 1. Plan a trajectory. 2. Optional: Load the planned trajectory into the cache using the [addTrajectory](addTrajectory) endpoint. 3. Execute the (cached) trajectory using the [executeTrajectory](executeTrajectory) endpoint. If the trajectory is not executable, the [PlanTrajectoryResponse](PlanTrajectoryResponse) will contain the joint trajectory up until the error, e.g. all samples until a collision occurs. EXCEPTION: If a CartesianPTP or JointPTP motion command has an invalid target, the response will contain the trajectory up until the start of the invalid PTP motion.
12384
14385
  * @summary Plan Trajectory
12385
14386
  * @param {string} cell Unique identifier addressing a cell in all API calls.
12386
14387
  * @param {PlanTrajectoryRequest} [planTrajectoryRequest]
@@ -12404,7 +14405,18 @@ export const TrajectoryPlanningApiFactory = function (configuration?: Configurat
12404
14405
  const localVarFp = TrajectoryPlanningApiFp(configuration)
12405
14406
  return {
12406
14407
  /**
12407
- * Plans a new trajectory for a single motion group. Describe the trajectory as a sequence of motion commands that the robots TCP should follow. Use the following workflow to execute a planned trajectory: 1. Plan a trajectory. 2. Optional: Load the planned trajectory into the cache using the [addTrajectory](addTrajectory) endpoint. 3. Execute the (cached) trajectory using the [executeTrajectory](executeTrajectory) endpoint. If the trajectory is not executable, the [PlanTrajectoryResponse](PlanTrajectoryResponse) will contain the joint trajectory up until the error, e.g. all samples until a collision occurs. EXCEPTION: If a CartesianPTP or JointPTP motion command has an invalid target, the response will contain the trajectory up until the start of the invalid PTP motion.
14408
+ * Plans a collision-free trajectory for a single motion group using point-to-point (PTP) motions. This endpoint is specifically designed for collision-free path planning algorithms that find a trajectory from a start joint position to a target position while avoiding obstacles. Use the following workflow to execute a planned collision-free trajectory: 1. Plan a collision-free trajectory. 2. Optional: Load the planned trajectory into the cache using the [addTrajectory](addTrajectory) endpoint. 3. Execute the (cached) trajectory using the [executeTrajectory](executeTrajectory) endpoint. If the trajectory planning fails due to collision or algorithm constraints, the response will contain error information about the failure.
14409
+ * @summary Plan Collision-Free Trajectory
14410
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
14411
+ * @param {PlanCollisionFreeRequest} [planCollisionFreeRequest]
14412
+ * @param {*} [options] Override http request option.
14413
+ * @throws {RequiredError}
14414
+ */
14415
+ planCollisionFree(cell: string, planCollisionFreeRequest?: PlanCollisionFreeRequest, options?: RawAxiosRequestConfig): AxiosPromise<PlanCollisionFreeResponse> {
14416
+ return localVarFp.planCollisionFree(cell, planCollisionFreeRequest, options).then((request) => request(axios, basePath));
14417
+ },
14418
+ /**
14419
+ * Plans a new trajectory for a single motion group. Describe the trajectory as a sequence of motion commands that the robots TCP should follow. Use the following workflow to execute a planned trajectory: 1. Plan a trajectory. 2. Optional: Load the planned trajectory into the cache using the [addTrajectory](addTrajectory) endpoint. 3. Execute the (cached) trajectory using the [executeTrajectory](executeTrajectory) endpoint. If the trajectory is not executable, the [PlanTrajectoryResponse](PlanTrajectoryResponse) will contain the joint trajectory up until the error, e.g. all samples until a collision occurs. EXCEPTION: If a CartesianPTP or JointPTP motion command has an invalid target, the response will contain the trajectory up until the start of the invalid PTP motion.
12408
14420
  * @summary Plan Trajectory
12409
14421
  * @param {string} cell Unique identifier addressing a cell in all API calls.
12410
14422
  * @param {PlanTrajectoryRequest} [planTrajectoryRequest]
@@ -12425,7 +14437,20 @@ export const TrajectoryPlanningApiFactory = function (configuration?: Configurat
12425
14437
  */
12426
14438
  export class TrajectoryPlanningApi extends BaseAPI {
12427
14439
  /**
12428
- * Plans a new trajectory for a single motion group. Describe the trajectory as a sequence of motion commands that the robots TCP should follow. Use the following workflow to execute a planned trajectory: 1. Plan a trajectory. 2. Optional: Load the planned trajectory into the cache using the [addTrajectory](addTrajectory) endpoint. 3. Execute the (cached) trajectory using the [executeTrajectory](executeTrajectory) endpoint. If the trajectory is not executable, the [PlanTrajectoryResponse](PlanTrajectoryResponse) will contain the joint trajectory up until the error, e.g. all samples until a collision occurs. EXCEPTION: If a CartesianPTP or JointPTP motion command has an invalid target, the response will contain the trajectory up until the start of the invalid PTP motion.
14440
+ * Plans a collision-free trajectory for a single motion group using point-to-point (PTP) motions. This endpoint is specifically designed for collision-free path planning algorithms that find a trajectory from a start joint position to a target position while avoiding obstacles. Use the following workflow to execute a planned collision-free trajectory: 1. Plan a collision-free trajectory. 2. Optional: Load the planned trajectory into the cache using the [addTrajectory](addTrajectory) endpoint. 3. Execute the (cached) trajectory using the [executeTrajectory](executeTrajectory) endpoint. If the trajectory planning fails due to collision or algorithm constraints, the response will contain error information about the failure.
14441
+ * @summary Plan Collision-Free Trajectory
14442
+ * @param {string} cell Unique identifier addressing a cell in all API calls.
14443
+ * @param {PlanCollisionFreeRequest} [planCollisionFreeRequest]
14444
+ * @param {*} [options] Override http request option.
14445
+ * @throws {RequiredError}
14446
+ * @memberof TrajectoryPlanningApi
14447
+ */
14448
+ public planCollisionFree(cell: string, planCollisionFreeRequest?: PlanCollisionFreeRequest, options?: RawAxiosRequestConfig) {
14449
+ return TrajectoryPlanningApiFp(this.configuration).planCollisionFree(cell, planCollisionFreeRequest, options).then((request) => request(this.axios, this.basePath));
14450
+ }
14451
+
14452
+ /**
14453
+ * Plans a new trajectory for a single motion group. Describe the trajectory as a sequence of motion commands that the robots TCP should follow. Use the following workflow to execute a planned trajectory: 1. Plan a trajectory. 2. Optional: Load the planned trajectory into the cache using the [addTrajectory](addTrajectory) endpoint. 3. Execute the (cached) trajectory using the [executeTrajectory](executeTrajectory) endpoint. If the trajectory is not executable, the [PlanTrajectoryResponse](PlanTrajectoryResponse) will contain the joint trajectory up until the error, e.g. all samples until a collision occurs. EXCEPTION: If a CartesianPTP or JointPTP motion command has an invalid target, the response will contain the trajectory up until the start of the invalid PTP motion.
12429
14454
  * @summary Plan Trajectory
12430
14455
  * @param {string} cell Unique identifier addressing a cell in all API calls.
12431
14456
  * @param {PlanTrajectoryRequest} [planTrajectoryRequest]