Missing image

Parse API + Node.js | Sendgrid Parte 2

SendGrid Email Playlist Demo

Este aplicativo mostra como é possível criar uma lista de reprodução social, que é totalmente alimentada por email usando SendGrid e Rdio. É alimentado por Node.js e feito em tempo real por socket.io.

Como funciona

Uma pessoa (ou várias) abrem o aplicativo no seu browser. Qualquer pessoa pode enviar um e-mail para um endereço de e-mail designado com o título de uma música na linha de assunto. O aplicativo procura no Rdio para a música desejada e reproduz em tempo real para todos com a página aberta.

Um exemplo

Você pode ver o exemplo no playlist.sendgriddemos.com. Abra-o em uma janela ou aba separada e, em seguida, envie um e-mail para playlist@sendgriddemos.com com o título de uma música que você gostaria de ouvir na linha de assunto.

Você também pode ver um vídeo do Swift codificando e mostrando a todos como funciona no Hack Day eCommerce em Nova York (agosto de 2012).

Rodando em seu próprio servidor

Impressionado com o que você viu? Deseja executar a sua própria cópia? Veja como fazer isso.

0. Pré-aqueça o forno

Para executar a sua própria cópia desta demo, existem algumas etapas de pré-requisitos que devem ser concluídas. Para começar, você precisa ter uma conta SendGrid e conseguir a uma chave Rdio se você não tem. A chave Rdio pode levar algum tempo, pois é aprovada manualmente, mas se estiver demorando muito, você deve twitta-los.

Depois de ter sua conta SendGrid, você precisa configurar a API Parse para apontar para o seu domínio. Estou supondo que você já está além do ponto de registrar um domínio, então há duas coisas que você precisa fazer:

Aponte registro MX do domínio na mx.sendgrid.net
Adicione uma entrada para o domínio em suas configurações da Parse API
Novamente, essa etapa pode demorar um pouco, os registros de DNS terão de propagar, por isso seja paciente.

1. Obtenha o código

Agora que temos uma conta SendGrid e uma chave Rdio, nós podemos começar a trabalhar com o código. Comece clonando o repo abaixo para o seu ambiente local

git clone git://github.com/theycallmeswift/playlist.sendgriddemos.com.git

2. Configuração para implantar

Nesse tutorial, estamos usando o Nodejitsu para deploy e configuração, caso você não tenha esse pacote siga esse guia de instalação.

Abra o arquivo package.json em seu editor favorito. Os campos que você irá mudar são name, subdomain e domains. Eu estrategicamente coloquei perto do topo do arquivo para que você possa encontrá-los facilmente.

{
“name”: “mydomain.com”,
“version”: “0.0.2”,
“subdomain”: “mydomain.com”,
“domains”: [
“mydomain.com”,
“www.mydomain.com”
],
// …
}

Em seguida, você pode substituir o domínio playing para Rdio em server.js

/ / Pega um token de reprodução que podemos usar para tocar músicas a partir de Rdio
helpers.getPlaybackToken(r, ‘mydomain.com’, function(err, token) {
if(err) { throw JSON.stringify(err); }

Você pode incluir manualmente suas credenciais do Sendrig e Rdio em server.js ou defini-las como variáveis ​​de ambiente no Nodejitsu usando o seguinte comando

jitsu env set VARIABLE_NAME VALUE
As variáveis ​​que você precisa configurar são DOMAIN, SENDGRID_USER, SENDGRID_PASS, RDIO_KEY, e RDIO_SECRET.

3. Deploy

Tudo o que resta a fazer é implantar o aplicativo. Nós podemos fazer isso digitando

jitsu deploy

Se você tiver qualquer dúvida, me envie um tweet, ou twitte o @SwiftAlphaOne (em inglês).