Google Cloud Pub / Sub API-推送电子邮件

我正在使用node.js创建一个应用程序,该应用程序每次接收到电子邮件时都会从Gmail获取推送信息,并根据CRM中的第三方数据库对其进行检查,并在CRM中创建新字段(如果其中包含电子邮件)

。我在使用Google的新Cloud Pub / Sub时遇到了麻烦,这似乎是在不进行持续轮询的情况下从Gmail获取推送的唯一方法。

我已经按照以下说明进行了操作:https :

//cloud.google.com/pubsub/prereqs,但是我不知道该如何在我的台式机上运行。看来pub

/ sub可以连接到经过验证的域,但是我无法使其直接连接到计算机上的.js脚本。我已将api密钥保存在json文件中,并使用以下命令:

var gcloud = require('gcloud');

var pubsub;

// From Google Compute Engine:

pubsub = gcloud.pubsub({

projectId: 'my-project',

});

// Or from elsewhere:

pubsub = gcloud.pubsub({

projectId: 'my-project',

keyFilename: '/path/to/keyfile.json'

});

// Create a new topic.

pubsub.createTopic('my-new-topic', function(err, topic) {});

// Reference an existing topic.

var topic = pubsub.topic('my-existing-topic');

// Publish a message to the topic.

topic.publish('New message!', function(err) {});

// Subscribe to the topic.

topic.subscribe('new-subscription', function(err, subscription) {

// Register listeners to start pulling for messages.

function onError(err) {}

function onMessage(message) {}

subscription.on('error', onError);

subscription.on('message', onMessage);

// Remove listeners to stop pulling for messages.

subscription.removeListener('message', onMessage);

subscription.removeListener('error', onError);

});

但是,我收到错误消息,好像它没有连接到服务器一样,并且在API列表上我仅看到错误,没有实际成功。我显然做错了什么,知道可能是什么吗?

先感谢您!

回答:

回答:

您不能从客户端订阅推送通知。


设置HTTPS服务器以处理消息。消息将发送到您配置的URL端点,代表该服务器的位置。您的服务器必须可以通过DNS名称访问,并且必须出示签名的SSL证书。(App

Engine应用程序已预先配置有SSL证书。)

只需在您的服务器上订阅推送通知,当您收到通知时,就可以确定它关注的人。您将从通知中获得的数据是它所关注的用户以及相关的historyId,如下所示:

 // This is all the data the notifications will give you.

{"emailAddress": "user@example.com", "historyId": "9876543210"}

然后,例如,如果他在线,则可以通过Socket.io向相关用户发出事件,并让他与客户端上提供的historyId进行同步。

以上是 Google Cloud Pub / Sub API-推送电子邮件 的全部内容, 来源链接: utcz.com/qa/414073.html

回到顶部