code: private void handleResponse(Sms message, Response response) throws IOException, JsonProcessingException, MessageNotSentException {
  		if (response.getStatus().isSuccess()) {
  			JsonNode json = mapper.readTree(response.getBody());
  			int ovhStatus = json.get("status").asInt();
  			// 100 <= ovh status < 200 ====> OK -> just log response
  			// 200 <= ovh status ====> KO -> throw an exception
  			if (ovhStatus >= OK_STATUS) {
  				LOG.error("SMS failed to be sent through OVH");
  				LOG.debug("Sent SMS: {}", message);
  				LOG.debug("Response status {}", response.getStatus());
  				LOG.debug("Response body {}", response.getBody());
  				throw new MessageNotSentException("SMS couldn't be sent through OVH: " + json.get("message").asText(), message);
  			} else {
  				LOG.info("SMS successfully sent through OVH");
  				LOG.debug("Sent SMS: {}", message);
  				LOG.debug("Response: {}", response.getBody());
  			}
  		} else {
  			LOG.error("Response status {}", response.getStatus());
  			LOG.error("Response body {}", response.getBody());
  			throw new MessageNotSentException("SMS couldn't be sent. Response status is " + response.getStatus(), message);
  		}
  	}
docs: Handle OVH response. If status provided in response is less than 200,
  then the message has been sent. Otherwise, the message has not been sent.
  
  @param message
  the SMS to send
  @param response
  the received response from OVH API
  @throws IOException
  when the response couldn't be read
  @throws JsonProcessingException
  when the response format is not valid JSON
  @throws MessageNotSentException
  generated exception to indicate that the message couldn't be
  sent