Учитывая потенциальные издержки, связанные с ошибками, мой первый подход - купить что-то, что могло бы сделать это.
Вы получаете что-то, что должно работать сразу, вместо того, чтобы разрабатывать его, и, что более важно, поддерживать, когда что-то идет не так.
Отказ от ответственности - я не проводил никаких исследований по этому вопросу, чтобы выяснить, какие пакеты (если они есть) существуют.