节点远程机器人图像流

时间:2019-10-04 07:03:13

标签: node.js gnuplot telegram

我无法通过telebot将图像“流”发送到Telegram。

远程机器人文档将流作为可接受的输入类型列出如下;

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将文件写入文件系统,这样我就可以再次读回它。任何帮助将不胜感激。

0 个答案:

没有答案