在 Adobe InDesign 中使用 peerjs
Using peerjs with Adobe InDesign
嗨,
我正在创建自己的 InDesign 插件,我需要连接到我创建的另一个 Web 应用程序。我尝试使用socket.io,但我不想有另一个服务器,所以我已经传递给Peer JS,这样我就有了一个可以完美运行的点对点系统,但我遇到了一些意想不到的问题。
我正在使用 Adobe InDesign CC,它使用 CEP5,它支持 google chrome BROWSER(CEF(Chromium 扩展框架))。
在文档中说 CEP5 甚至支持 WebRTC,但是当我尝试将 peerjs(使用 WebRTC)连接到另一个对等点时,我得到一个:"TypeError: undefined is not a function",在进一步调查中我发现Object.Negotiator._startPeerConnection 抛出错误,但我无法理解我的错误...
我尝试在另一个应用程序(只是一个普通网站)中使用相同的 PEER JS 代码并连接到同一个对等点并成功,所以我猜测问题出在 InDesign 提供的 WebRTC 支持上。
我并不局限于使用 PEER JS,我只是希望我的 adobe 插件和我的站点以最智能的方式进行通信,所以欢迎任何想法,但是这是我插件的一段代码尝试连接到 PEERJS
var peer = new Peer({key: mySecretKey});
var conn = peer.connect('editor-vaComeVibraEEE');//the exception is generated here
conn.on('open', function(){
conn.send('hi!');
});
感谢您的帮助...。 . .
嗯,
我找到的唯一解决方案是放弃 peerJS 并迁移到 faye,这是一个基于 Bayeux 协议的发布-订阅消息系统。我认为这是一个很好的解决方案,而且易于实施。这是我的服务器代码
var http = require('http'),
faye = require('faye');
var server = http.createServer();
bayeux = new faye.NodeAdapter({mount: '/'});
bayeux.attach(server);
server.listen(8000);
bayeux.getClient().publish('/inDesign', {
text: val
});
在客户端,我收到这样的消息:
var client = new Faye.Client('http://localhost:8000/');
client.subscribe('/inDesign', function(message) {
alert('Got a message: ' + message.text);
});
服务器可以接收来自客户端的消息,客户端可以非常简单地向服务器写入消息。
希望这对以后的人有所帮助。
嗨,
我正在创建自己的 InDesign 插件,我需要连接到我创建的另一个 Web 应用程序。我尝试使用socket.io,但我不想有另一个服务器,所以我已经传递给Peer JS,这样我就有了一个可以完美运行的点对点系统,但我遇到了一些意想不到的问题。
我正在使用 Adobe InDesign CC,它使用 CEP5,它支持 google chrome BROWSER(CEF(Chromium 扩展框架))。
在文档中说 CEP5 甚至支持 WebRTC,但是当我尝试将 peerjs(使用 WebRTC)连接到另一个对等点时,我得到一个:"TypeError: undefined is not a function",在进一步调查中我发现Object.Negotiator._startPeerConnection 抛出错误,但我无法理解我的错误...
我尝试在另一个应用程序(只是一个普通网站)中使用相同的 PEER JS 代码并连接到同一个对等点并成功,所以我猜测问题出在 InDesign 提供的 WebRTC 支持上。
我并不局限于使用 PEER JS,我只是希望我的 adobe 插件和我的站点以最智能的方式进行通信,所以欢迎任何想法,但是这是我插件的一段代码尝试连接到 PEERJS
var peer = new Peer({key: mySecretKey});
var conn = peer.connect('editor-vaComeVibraEEE');//the exception is generated here
conn.on('open', function(){
conn.send('hi!');
});
感谢您的帮助...。 . .
嗯, 我找到的唯一解决方案是放弃 peerJS 并迁移到 faye,这是一个基于 Bayeux 协议的发布-订阅消息系统。我认为这是一个很好的解决方案,而且易于实施。这是我的服务器代码
var http = require('http'),
faye = require('faye');
var server = http.createServer();
bayeux = new faye.NodeAdapter({mount: '/'});
bayeux.attach(server);
server.listen(8000);
bayeux.getClient().publish('/inDesign', {
text: val
});
在客户端,我收到这样的消息:
var client = new Faye.Client('http://localhost:8000/');
client.subscribe('/inDesign', function(message) {
alert('Got a message: ' + message.text);
});
服务器可以接收来自客户端的消息,客户端可以非常简单地向服务器写入消息。
希望这对以后的人有所帮助。