У меня проблемы с отправкой «потока» изображений в Telegram через telebot .
В документации Telebot перечислены потоки в качестве допустимого типа ввода следующим образом:
sendPhoto(<chat_id>, <file_id | path | url | buffer | stream>, {caption, fileName, serverDownload, replyToMessage, replyMarkup, notification})
У меня нет проблем с параметрами пути, URL-адреса или буфера, но я не уверен, что делатьс потоками?
// Path
msg.reply.photo('out.png');
// URL
msg.reply.photo('http://thecatapi.com/api/images/get');
// Buffer
fs.readFile("out.png", function (err, buf) {
if (err) throw err;
msg.reply.photo(buf)
});
Я пытаюсь отправить изображение gnuplot в качестве примера, но я не знаю, как получить поток из gnuplot в аргумент потока для msg.reply.photo. Я видел в документации по gnuplot, что выводом по умолчанию является stdout, если не указано иное, но означает ли это, что мне нужно перехватить то, что пишется в stdout, и каким-то образом перенаправить его в ответ?
var g = gnuplot()
.set('term png')
.set('title "Some Math Functions"')
.set('xrange [-10:10]')
.set('yrange [-2:2]')
.set('zeroaxis')
.plot('(x/4)**2, sin(x), 1/x')
.end();
Донне хочу записывать файл в файловую систему с помощью gnuplot, чтобы я мог просто прочитать его снова. Любая помощь будет оценена.