         # does not have the outbox label
         Logger.log "Label '%s' has been removed from the mail, not processing it", butlerOutboxLabel
     
+      Logger.log "Finished processing message with ID '%s'", props.messageId
+
     # delete the scheduled butler mail, because we couldn't find the real message
     @deleteButlerMail props.messageId # pass "" + x in case props.messageId is undefined (should not happen)
     return


    ContentService.createTextOutput(ret.join '').setMimeType ContentService.MimeType.JSON

  @processButlerMails: (d) ->
    Logger.log "Checking for scheduled mails on %s", d


    noanswer: true
  return

# This is just a helper until the Google Apps Script Code Editor can deal with bla = function assignments
`function test() {
  _test.apply(this, arguments);
}`

#deleteProps = ->
#  UserProperties.deleteAllProperties()
#  return

#testLastMessageDate = ->
#  message = GmailApp.getMessageById("13a1a6948cb7471f")
#  thread = GmailApp.getThreadById(message.getThread().getId())
#  Logger.log thread.getLastMessageDate().toUTCString()
#  Logger.log thread.getMessageCount()
#  msgs = thread.getMessages()
#  for msg in msgs
#    Logger.log msg.getDate().toUTCString()
#  return

#testProps = ->
#  Logger.log UserProperties.getProperties()
#  return

#getTriggers = ->
#  Logger.log "triggers: %s", ScriptApp.getScriptTriggers()
#  return
