bsstoner / opentok

OpenTokSDK for node.js
MIT License
40 stars 11 forks source link

Error: Failed to createSession. Error: The request failed: Error: getaddrinfo ENOTFOUND #11

Open JohnMcLear opened 9 years ago

JohnMcLear commented 9 years ago

Causes Exception error. Seems pretty serious.. Not sure how to replicate though...

[2015-04-20 14:54:18.845] [ERROR] console - Error: Failed to createSession. Error: The request failed: Error: getaddrinfo ENOTFOUND
    at /home/etherpad-lite/node_modules/ep_tokbox/node_modules/opentok/lib/opentok.js:335:30
    at Request._callback (/home/etherpad-lite/node_modules/ep_tokbox/node_modules/opentok/lib/client.js:44:21)
    at self.callback (/home/etherpad-lite/node_modules/ep_tokbox/node_modules/opentok/node_modules/request/request.js:368:22)
    at Request.EventEmitter.emit (events.js:95:17)
    at Request.onRequestError (/home/etherpad-lite/node_modules/ep_tokbox/node_modules/opentok/node_modules/request/request.js:1025:8)
    at ClientRequest.EventEmitter.emit (events.js:95:17)
    at CleartextStream.socketErrorListener (http.js:1548:9)
    at CleartextStream.EventEmitter.emit (events.js:95:17)
    at Socket.onerror (tls.js:1432:17)
    at Socket.EventEmitter.emit (events.js:117:20)
kamalstis1009 commented 4 years ago

Errors: Error: Failed to createSession. Error: The request failed: Error: getaddrinfo EAI_AGAIN api.opentok.com:443

Firebase Function Code for TokBox:

const functions = require('firebase-functions');
var OpenTok = require('opentok'),
    opentok = new OpenTok('PROJECT API KEY', 'PROJECT SECRET');

exports.getTokBokToken = functions.https.onRequest((request, response) => {
    //let page = request.query.sessionId;
    //console.log("Session ID: " + page);

    //Generate a basic session. Or you could use an existing session ID.
    opentok.createSession({mediaMode:"routed"}, function(err, session) {
        if (err) {
            console.log('Errors: ' + err);
            response.send(JSON.stringify({error: err}));
        } else {
            var sessionId = session.sessionId;
            // Generate a Token from just a sessionId (fetched from a database)
            //var token = opentok.generateToken(sessionId);

            // Generate a Token from a session object (returned from createSession)
            //var token = session.generateToken();

            // Set some options in a Token
            var token = session.generateToken({
                role :                   'moderator',
                expireTime :             (new Date().getTime() / 1000)+(7 * 24 * 60 * 60), // in one week
                data :                   'name=Johnny',
                initialLayoutClassList : ['focus']
            });
            console.log('Session Id: ' + token);
            response.send(JSON.stringify({token: token}));
        }
    });
    //response.statusCode = 200;
    //response.setHeader('Content-Type', 'text/plain');
    //response.end('Hello World\n');
}, err => {
    console.error(err.stack);
    response.status(500).send('Unexpected error.');
});