Stop escaping special characters in inbound

At least one of our providers gives us messages with special characters
escaped, ie a newline comes through as `\n`, not a literal newline. We
shouldn’t be showing these backslashes to any of our users.

Python has built in codecs for dealing with encoding/decoding of
strings – see
https://docs.python.org/3/library/codecs.html#text-encodings
for details. Using these builtins is safer than trying to do anything
regex or parsing-based.
This commit is contained in:
Chris Hill-Scott
2017-11-06 12:36:26 +00:00
parent fed4275403
commit f6950ae987
5 changed files with 66 additions and 1 deletions

View File

@@ -203,6 +203,9 @@ def get_inbox_partials(service_id):
format_phone_number_human_readable(message['user_number'])
for message in messages_to_show
}:
message.update({
'content': bytes(message['content'], 'utf-8').decode('unicode_escape')
})
messages_to_show.append(message)
if not inbound_messages: