Find Jobs
Hire Freelancers

A node.js service to keep users logged in - repost

$30-250 USD

In Progress
Posted about 11 years ago

$30-250 USD

Paid on delivery
We need a Node.js service that does the following. Please read the description below and reply describing your experience with Node.js and any questions you may have about this description. 1. The service should accept TCP SSL connections from end users/clients who will connect and then send their username/password. 2. On receiving username and password, the service will connect to an XMPP server (like Google Talk) using the username/password. This should use the node-xmpp module: [login to view URL] 3. If the authentication with the XMPP server succeeds, send a success msg back to the client, or else send a failure message. 4. After the connection succeeds, forward any XML messages/stanzas from the client to the XMPP server and anything from the XMPP server to the client. 5. When the client breaks the SSL socket, keep the connection with the XMPP server open and cache any messages from the XMPP server in a queue. 6. When the client connects again in the future with the same username and password, if there is an existing open connection to the XMPP server, just send a success to the client. And send to the client any cached messages from #5 above. 7. If a successfully connected client sends a 'disconnect' message, then close the connection with the XMPP server. 8. The node.js service should accomodate any number of clients and should keep track of matching clients with their XMPP connections. Deliverables should include: - The node.js service - A command-line client program in any language that acts as a client to the service You should use Google Talk as the XMPP server. Please see attachment with a diagram depicting the message exchange.
Project ID: 4412864

About the project

6 proposals
Remote project
Active 11 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
Awarded to:
User Avatar
Hello, I got a decent experience with node.js. Pretty sure I can deliver on your project within a week. Best Denis
$250 USD in 7 days
4.8 (20 reviews)
6.2
6.2
6 freelancers are bidding on average $331 USD for this job
User Avatar
Greetings. My name is Jeremy Trammell and I represent a group of developers and designers in Portland, Oregon. We have extensive experience with Javascript as well as with the excellent node.js package. If you examine our recent reviews on this website you will see that we have completed and been re-hired quite recently for some node.js development work. I have two questions regarding your project. First: What kind of scale are you planning to support? If this is to be used with a very light load, then we can cache the XMPP messages in memory which is very simple. If, on the other hand, you intend to use this with many users and many cached messages, then you will need a database to store the cached messages in. Second: How sophisticated do you want the command line client to be? I assume it's just a tool that you will use to test out the server before accepting delivery, not something you intend for production use, yes?
$316 USD in 4 days
5.0 (5 reviews)
4.4
4.4
User Avatar
Let's talk about your project
$350 USD in 10 days
5.0 (1 review)
1.0
1.0
User Avatar
Let me help you
$220 USD in 10 days
0.0 (0 reviews)
0.0
0.0
User Avatar
ready to start to work with you
$200 USD in 7 days
0.0 (0 reviews)
0.0
0.0
User Avatar
this pro will fully completed in this period
$650 USD in 15 days
0.0 (0 reviews)
0.0
0.0

About the client

Flag of UNITED STATES
United States
5.0
11
Payment method verified
Member since Jun 23, 2007

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.