Skip to content

Instantly share code, notes, and snippets.

@bookercodes
Last active February 7, 2018 05:49
Show Gist options
  • Save bookercodes/16fa1c6fcd3f7267c09633e9d24c1f39 to your computer and use it in GitHub Desktop.
Save bookercodes/16fa1c6fcd3f7267c09633e9d24c1f39 to your computer and use it in GitHub Desktop.
const server = require('server')
const fetch = require('node-fetch')
const Chatkit = require('pusher-chatkit-server')
const { get, post } = server.router
const { json, header } = server.reply
const cors = [
ctx => header('Access-Control-Allow-Origin', '*'),
ctx =>
header(
'Access-Control-Allow-Headers',
'Origin, X-Requested-With, Content-Type, Accept'
),
]
const chatkit = new Chatkit.default({
instanceLocator: 'YOUR INSTANCE LOCATOR',
key:
'YOUR KEY',
})
const randomUser = () =>
fetch('https://uinames.com/api/?region=england&ext')
.then(res => res.json())
.then(user => [
user.email.split('@')[0],
`${user.name} ${user.surname}`,
user.photo,
])
server({ port: process.env.PORT || 3000 }, [
ctx => header('Access-Control-Allow-Origin', '*'),
ctx =>
header(
'Access-Control-Allow-Headers',
'Origin, X-Requested-With, Content-Type, Accept'
),
get('/', async ctx => {
const data = await randomUser()
const user = await chatkit.createUser(...data)
return data[0]
}),
get(ctx => status(404)),
])
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment