2016-06-24 5 views
2

Ich baue eine App mit Twilio-Video (https://www.twilio.com/docs/api/video). Ich habe usermanagement-Datenbank mit parse gemacht, aber ich habe Probleme mit dem Zugangstoken.Twilio Video + Parse

Wenn mein Benutzer sich in meiner App anmeldet, möchte ich den Twilio Access Token seinem Benutzernamen zuweisen - die Frage ist, wie kann ich das tun? oder ist es mit Parse nicht möglich? Benötige ich einen zusätzlichen Backend-Server für meine App? Ich bin ein bisschen verwirrt.

https://www.twilio.com/docs/api/video/guide/identity

Dank!

+0

Ist Parse unbedingt erforderlich hier, wissen Sie [es heruntergefahren] (http://blog.parse.com/announcements/moving-on/) oder? Ich kann helfen, ich muss nur wissen, wo du bist. – philnash

+0

ich weiß, ich deployed parse auf heroku. Wenn ich meine App testen möchte, muss ich Access-Token mit Twillio-Test-Tool generieren. Was ich nicht verstehe, ist, wie kann ich mit Parse-Datenbank - einfache Registrierung für meinen Benutzer - Benutzername, Passwort, Speicherort und ihnen Token zuweisen. - weil ohne sie können sie mit twilio kommunizieren. Ich habe keine Ahnung, wie ich Tokens für Benutzer generieren kann, wenn sie sich anmelden. @philnash – qetinac

Antwort

0

Twilio Entwickler Evangelist hier.

Wie Sie erwähnt haben, verwenden Sie den Parse-Server auf Heroku, ich glaube, ich kann helfen!

Sie möchten kein Zugriffs-Token für Twilio Video erstellen, wenn sich ein Benutzer bei Ihrer Anwendung anmeldet. Tokens sind konfigurierbar und können bis zu 24 Stunden dauern. Sie möchten also Token generieren, wenn ein Benutzer einen benötigt.

Parse-Server ist ein Node.js-basierten Server und can be embedded within an Express server. Sobald Sie das getan haben, können Sie dann das neueste Twilio npm module installieren und es verwenden, um Token für Ihre Benutzer von einem Express-Endpunkt zu generieren.

Der Code benötigt, um ein Token zu erzeugen, sieht ein bisschen wie folgt aus:

var AccessToken = require('twilio').AccessToken; 
var IpMessagingGrant = AccessToken.IpMessagingGrant; 

// Used when generating any kind of tokens 
var twilioAccountSid = 'ACxxxxxxxxxx'; 
var twilioApiKey = 'SKxxxxxxxxxx'; 
var twilioApiSecret = 'xxxxxxxxxxxx'; 

// Used specifically for creating IP Messaging tokens 
var serviceSid = 'ISxxxxxxxxxxxxx'; 
var appName = 'HipFlowSlackDockRC'; 
var identity = '[email protected]'; 
var deviceId = 'someiosdeviceid'; 
var endpointId = appName + ':' + identity + ':' + deviceId; 

// Create a "grant" which enables a client to use IPM as a given user, 
// on a given device 
var ipmGrant = new IpMessagingGrant({ 
    serviceSid: serviceSid, 
    endpointId: endpointId 
}); 

// Create an access token which we will sign and return to the client, 
// containing the grant we just created 
var token = new AccessToken(twilioAccountSid, twilioApiKey, twilioApiSecret); 
token.addGrant(ipmGrant); 
token.identity = identity; 

// Serialize the token to a JWT string 
console.log(token.toJwt()); 
// For your app you want to return the token to the front end somehow. 

Für weitere Informationen, die Twilio API reference for creating access tokens überprüfen.

+0

danke für deine Antwort. Ich habe Parse Server (https://github.com/ParsePlatform/parse-server-example) auf Heroku implementiert. Meine App ist fertig, aber ich verstehe immer noch nicht, wie kann ich jetzt Token mit diesem Twilio Npm-Modul von Parse generieren? Kannst du es bitte noch einmal erklären? – qetinac

+0

OK, was haben Sie bisher unternommen, um ein Token zu generieren? Haben Sie versucht, den Code aus meiner Antwort zu verwenden? – philnash

+0

Entschuldigung für meine späte Reaktion, ich war im Urlaub. Also meine erste Frage - kann ich Token mit Twilio Trial-Konto generieren oder muss ich zuerst meinen Account upgraden? Ich frage, weil ich diese Infos nicht finden kann - TwilioAccountSid, TwilioApiKey, TwilioApiSecret. Ich habe Parse mit diesem Link github.com/ParsePlatform/parse-server-example implementiert. Was soll ich als nächsten Schritt tun? Tut mir leid, diese dummen Fragen, aber ich bin immer noch Neuling. – qetinac