SDK introduces WedgeService for automatic wedge associations.
Fetch
Use the API to retrieve the array of associated wedges to a user. Returns associated wedges with callback.
To fetch the associated wedges, the following API can be used.
Concrete Example
let service = WedgeService()
service.fetchWedges(then: { result in
switch result {
case: .success(_)
// successfully retrieved
case: .failure(_)
// failure error
}
})
val service = WedgeService()
service.fetchWedges() { result: Result<Content?>? ->
if (result?.value == null || result.throwable != null) {
// failure
} else {
// Success
val content = result.value
completionHandler(content)
}
})
Associate
The following API can be used to associate the wedge to a user. Returns an associated wedge with callback.
Parameters:
name: Wedge name
deviceId: Wedge unique identifier
vehicleId: Vehicle id
battery: Wedge battery level
firmware: Wedge firmware version
Concrete Example
let service = WedgeService()
service.associateWedge(name: String,
deviceId: String,
vehicleId: String,
battery: Int,
firmware: String) { result in
switch result {
case: .success(_)
// successfully updated
case: .failure(_)
// failure error
}
}
To delete the associated wedge, the following API can be used.
Parameters:
deviceAssociationId: Association id which associates wedge to a user
To delete the associated wedge, first host app needs to retrieve the deviceAssociatioId provided when the fetch API call is made and need to provide the retrieved deviceAssociatioId as an argument to deleteWedge API
Concrete Example
let service = WedgeService()
service.deleteWedge(for deviceAssociatioId: String) { result in
switch result {
case: .success(_)
// successfully updated
case: .failure(_)
// failure error
}
})
val service = WedgeService()
service.deleteWedge(deviceAssociationId: String) { result: Result<Content?>? ->
if (result?.value == null || result.throwable != null) {
// failure
} else {
// Success
val content = result.value
completionHandler(content)
}
}
Update
The following API can be used to update the wedge's battery and firmware. Returns the updated wedge with callback.
Parameters:
deviceAssociationId: Association id which associates wedge to a user
battery: Updated battery level
firmware: Updated firmware version
To update the wedge details, first host app needs to retrieve the deviceAssociatioId provided when the fetch API call is made and need to provide the retrieved deviceAssociatioId as an argument to updateWedge API
Concrete Example
let service = WedgeService()
service.updateWedge(for deviceAssociatioId: String, battery: Int, firmware: String) { result in
switch result {
case: .success(_)
// successfully updated
case: .failure(_)
// failure error
}
})
val service = WedgeService()
service.updateWedge(deviceAssociationId: String,
battery: Int,
firmware: String) { result: Result<Content?>? ->
if (result?.value == null || result.throwable != null) {
// failure
} else {
// Success
val content = result.value
completionHandler(content)
}
}