Как я могу отправить вложения электронной почты из сообщения MQTT? - PullRequest
0 голосов
/ 03 августа 2020
import paho.mqtt.publish as publish

import base64

import cv2

import os

image_path = 'D:\savedimages'

with open(image_path, "rb") as imageFile:

string = base64.b64encode(imageFile.read())

publish.single("pi/obj/image", payload=(string), hostname="192.168.0.3")

1 Ответ

0 голосов
/ 03 августа 2020

Этот вопрос слишком широкий, чтобы получить правильный ответ.

Но в целом сообщения MQTT - это просто набор байтов, то как форматировать полезную нагрузку сообщения полностью зависит от вас, поэтому, если вы хотите чтобы превратить сообщение в электронное письмо, вам нужно будет написать что-то, что распаковывает любой выбранный вами формат сообщения и преобразовывает его в структуру msg, которую ожидает узел отправки электронной почты Node-RED.

Как описано в справке на боковой панели для узла отправки по электронной почте:

вы можете указать msg.attachments, которые должны содержать массив из одного или нескольких вложений в формате nodemailer .

...