Есть несколько смартфонов, где установлена программа SMS Forwarder. Она передаёт входящие смс на указанный http-адрес (urlencoded). Например, http://example.org/sms_in
Скрипт, обрабатывающий эти запросы, может выглядеть так: #!/usr/bin/env python3 import sys from urllib import parse print('Content-Type: text/html\n\nok\n') data = parse.parse_qs(sys.stdin.read())['msg'][0] open('/tmp/sms_in_log', 'a').write(data.replace('\n', ' ') + '\n')
Тогда содержание /tmp/sms_in_log будет выглядеть так (после имени отправителя был перевод строки): From : MyBank 14/03/24 23:47 A/C X-1234 Withdrawal 100.00 Outstanding Balance 1,000 From : rs.ge მოგესალმებით, გთხოვთ გაგვიზიაროთ თქვენი შეხედულება შემოსავლების სამსახურის From : +79991234567 Привет
И есть скрипт, доступный по адресу http://example.org/show_sms По адресу заходят пользователи и скрипт показывает некоторые смс по фильтру. Он мог бы выглядеть так (fl.ru съел пробелы): #!/usr/bin/env python3 for line in open('/tmp/sms_in_log'): if 'MyBank' in line: print(line + '<br/>')
В такой реализации смс, полученные на телефон, можно будет посмотреть онлайн. Но реализация плоха: текстовый файл в /tmp, бесконечный лог и показ всех смс, очень грубый фильтр (если в тексте сообщения есть "MyBank", то оно будет показано) и т.п.
Нужно написать эти скрипты более качественно. Вероятно, sqlite, колонки для времени/отправителя/текста. Показ сообщений только за последний, например, час. Фильтрация входящих данных. Если оформите в виде Dockerfile - совсем хорошо. Только Python. Объёмы - несколько десятков смс в день. Дизайн не нужен. Интерфейс управления не нужен.
Юзкейс - человек ездит между странами, везде симки и одноразовые пароли для банков/сервисов. Симок штук пять. Будут вставлены в смартфоны, смартфоны передают сообщения в этот скрипт. Потом их можно посмотреть онлайн. Можно дать кому-то пароль от условного Авито, и скопировать скрипт /show_sms , отредактировав фильтр как "отправитель == Авито" или карту с фильтром "текст содержит оплата картой *1234".
В ответе напишите, пожалуйста, сроки, цену и какие-то технические детали, чтобы я видел, что вы понимаете, что собираетесь делать. Бюджет условный - fl.ru не позволяет не указывать.