-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathGPubSubMessageClient.js
More file actions
29 lines (24 loc) · 982 Bytes
/
GPubSubMessageClient.js
File metadata and controls
29 lines (24 loc) · 982 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
var gcloud = require('gcloud');
var GCLOUD_PROJECT_ID = process.env.GCLOUD_PROJECT_ID;
var GCLOUD_CLIENT_EMAIL = process.env.GCLOUD_CLIENT_EMAIL;
var GCLOUD_PRIVATE_KEY = process.env.GCLOUD_PRIVATE_KEY;
var GCLOUD_SUBSCRIPTION_NAME = process.env.GCLOUD_SUBSCRIPTION_NAME;
var GCLOUD_SUBSCRIPTION_NAME_SUB = process.env.GCLOUD_SUBSCRIPTION_NAME_SUB;
var pubsub = gcloud.pubsub({
projectId: GCLOUD_PROJECT_ID,
credentials: {
private_key: GCLOUD_PRIVATE_KEY.replace(/\\n/g, '\n'), //ensures \n are interpreted as new line chars
client_email: GCLOUD_CLIENT_EMAIL
}
});
var topic = pubsub.topic(GCLOUD_SUBSCRIPTION_NAME, function (err, topic) {
if (err) {
console.error('cannot create topic', err);
}
});
//http://stackoverflow.com/questions/30952979/topic-is-created-on-cloud-pub-sub-but-unable-to-create-watch-on-that-topic
var subscription = topic.subscription(GCLOUD_SUBSCRIPTION_NAME_SUB);
module.exports = {
topic: topic,
subscription: subscription
}