rxjs-obd
Version:
RxJS Implementation for OBD (On Board Diagnostics) of vehicles via ELM 327 connections.
46 lines • 1.32 kB
JavaScript
import { OBDOuterSubscriber } from '../model/OBDOuterSubscriber';
export function intakeAirTemperature() {
return function (source) {
return source.lift(new IntakeAirTemperatureOperator());
};
}
class IntakeAirTemperatureOperator {
call(subscriber, source) {
return source.subscribe(new IntakeAirTemperatureSubscriber(subscriber));
}
}
class IntakeAirTemperatureSubscriber extends OBDOuterSubscriber {
constructor(destination) {
super(destination);
}
/**
* Return the frequency of execution of this command.
* @return that this command must be executed every pulse.
*/
pulse() {
return 1;
}
/**
* Return the string representation of the OBD Read command.
* @returns the string representation of the OBD Read command
*/
command() {
return '01 0F 1\r';
}
/**
* Return the name of the OBD Field on OBD Data object.
* @returns the name of the OBD Field on OBD Data object.
*/
field() {
return 'intakeAirTemperature';
}
/**
* Parse the OBD response.
* @param bytes the response read from OBD.
* @returns the parsed response.
*/
parse(bytes) {
return parseInt(bytes[2], 16) - 40;
}
}
//# sourceMappingURL=intakeAirTemperature.js.map