     @client = new ConstructClient(service.address, port)
       .on("connect", @_onConnect)
       .on("sensor_changed", @_onSensorChanged)
+      .on("target_temp_changed", @_onTargetTempChanged)
       .on("job_progress_changed", @_onJobChanged)
       .on("jobs", @_onJobsList)
       .on("job_upload_complete", @_onJobUploadComplete)


  _onConnect: =>
    @cli = new CliConsole(@)

  _onSensorChanged: (data) =>
    @_sensors[data.name] = data.value

      id = job.id.toString()
      prefix = "  #{i}) #{name} "
      suffix = "job ##{job.id.pad(5)}  "
      padding = @cli.width - suffix.length - prefix.length - 1
      console.log "#{prefix.padRight(".", padding)} #{suffix}"
    console.log ""
    @cli.rl.prompt()
    @cli.rl.resume()

  _onJobUploadComplete: (statusCode) =>
    @cli.rl.pause()
    if statusCode = 200
      status = "Job added."
    else
      status = "Error adding job."
    process.stdout.write("\r" + status + "\n")
    @cli.rl.prompt()
    @cli.render()
    @cli.rl.resume()

  _lHeader: ->
    fields = []
    for k, v of @_sensors
      fields.push "#{k.capitalize()}: #{v} / #{@_targetTemp[k]||0}\u00B0C"
    fields.join("  ")

  _rHeader: ->
