running my own jabber/xmpp server [closed] - chat

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 9 years ago.
Improve this question
Can I make my own jabber server.So
that if I run my website xyz then
people should be be able to get
their jabber id from my website by
registering on my website.
Is there any open source
implementation of jabber server that
I can use?

I use Openfire to run my Jabber server and am quite happy with it. Probably higher-overhead than some of the other options (jabberd, ejabberd, etc.), but it's easy to install and has a great web-based admin UI.
As far as adding users via a web application - I don't know how you would go about doing that with Openfire, but it should be possible. It can plug in to many databases, and you might be able to give your web application an admin account that it can use to create users.
Alternatively, the Jabber/XMPP protocol supports creating a new account when you first connect to a server, if that's good enough for you. OpenFire supports that feature (as do most Jabber servers, I believe).
Update: The User Service Plugin for Openfire exposes an HTTP API for performing user administration actions. That's probably exactly what you need.

Can i make my own jabber server.So
that if i run my website xyz then
people should be be able to get theri
jabber id from my website by
registering on my website.
It depends on what kind of hosting you have. I think you should at least have VPS hosting to install the software. Basic hosting for a couple of bucks does not allow you to run jabber server.
Is there any open source implementation of jabber server that i can use?
I myself really like lua's prosody. It is easy to install / configure

You might like ejabberd, it is fairly friendly to new users:
http://www.process-one.net/en/ejabberd/

For you first question:
You might want to look at the XEP-0077 extension for in-band registration.
http://xmpp.org/extensions/xep-0077.html#intro
What language are you coding in? You might want to check and see if that language has a XMPP library that can handle this extension.

I've tried most of them and can agree on ejabberd. The only problem is that in order to change it, you need to program in Erlang. Openfire looks great, but I could not get the certificate to load properly: there is a bug with the implementation, so TLS will not work. I couldn't get Soapbox to access a local MySQL database, so that was out too.
As for client-side, you can use Miranda.

Related

Loopback - API Connect - Licensing [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 6 years ago.
Improve this question
My question: Can I use API Connect to develop loopback models for free, similar to how SLC ARC works?
I've been playing around with strongloop's ARC and it is fairly straightforward to discover models from a database schema. IBM is pushing API Connect and SLC ARC has a number of deficiencies (how it handles mssql schemas during discovery, the fact that custom connectors are not picked up and must be baked into ARC's source code, etc. that are unlikely to be addressed as ARC is no longer supported).
The Loopback.io homepage explicitly states that:
A free version of API Connect especially for developers is available
called API Connect Essentials.
However, to run apic edit I am forced to sign up for Bluemix. On the registration page, it appears that I am receiving only a trial.
Your 30-day trial is free, with no credit card required. You get
access to 2 GB of runtime and container memory to run apps, unlimited
IBM services and APIs, and complimentary support.
I don't care about online services or deploying my API to the cloud. I'd like to run loopback on my own servers and am simply planning to use API Connect for model generation. Any help is greatly appreciated!
The trial is for Bluemix itself, which allows you to use a variety of services for free for a period of time.
The API Connect Developer Toolkit is free to use regardless of your Bluemix account type.

Enterprise NoSQL Stack Solution for Mobile/Web [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
I'm tasked with investigating for our firm a full-stack solution where we'll be using a NoSQL database backend. It'll most likely be fed from a data warehouse and/or operational data store of some type in near-realtime (hopefully :). It will be used mainly by our mobile and web applications via REST.
A few requirements/assumptions:
It will be read-only (in the near term) and consumed by clients in REST format
It has to be scalable
Fast response time
Enterprise support - or if lacking actual support, something industry proven if open-source (basically management wants to hold
someone accountable if something in the stack fails)
Minimal client data transformations - i.e: data should be stored in as close to ready-to-use format as possible
Service API Management of some sort will most likely be needed (eg: 3scale)
Services will be used internally, but solution shouldn't prevent us from exposing them externally as a longterm goal
Micro-services are preferable (provided sufficient API management is in place)
We have in-house expertise in Java and Grails for our mobile/portal solutions
Some of the options I was tossing around were:
CouchDB: inherently returns REST - no need for translation layer - as
long as clients speak REST, we're all good
MongoDB: need a REST layer in between client and DB - haven't found a widely used one based on my investigation (the ones on Mongo's site all seem in their infancy - i.e: RestHeart)
Some questions I have:
Do I need an appserver? Or any layer in between the client and DB
for performance/caching reasons? I was thinking a reverse-proxy like
nginx would be a good idea for this?
Why not use CouchDB in this solution if it supports REST out of the box?
I'm struggling with deciding between which NoSQL DB to use, whether or not I need a REST translation layer, appserver, etc. I've read the pros and cons of each and mostly they say go Mongo - but for what I'm trying to do the lack of a mature REST layer is concerning.
I'm just looking for some ideas, tips, lessons learned that anyone out there would be willing to share.
Thanks!
The problem with exposing the database directly to the client is that most databases do not support permission control which is as fine-grained as you want it to be. You often can not allow a client to view and edit its own data while also forbidding it from viewing and editing any data of other users or even worse from the server itself. At least not when you still want a sane database schema.
You will also often find yourself in the situation that you have a document with several fields of which only some are supposed to be under the control of the user and others are not. I can, for example, edit the content of this answer, but I can not edit the time it was posted, the name it was posted under or its voting score. So far I have never seen a database system which can handle permission for individual fields (when anyone has: feel free to post in the comments).
You might think about trying to handle this on the client and just don't offer any user interface for editing said fields. But that will only work in a trusted environment. When you have untrusted users, they could create a clone of your client-sided application which does expose this functionality. There is no way for you to tell the difference between the genuine client and a clone, especially not when you don't have a smart application server (and even then it is practically impossible).
For that reason it is almost always required to have an application server between clients and database which handles authentication and permission management of the clients and only forwards those requests to the persistence layer which are permitted.
I totally agree with the answer from #Philipp. In the case of using CouchDB you will minimum want to use a proxy server in front to enable SSL.
Almost all of your requirements can be fulfilled by CouchDB. Especially the upcoming v2 will give you the "datacenter-needs".
But it's simply very complex to answer what should be the right tool for you purpose. If you get some business model requirements on top like lets say: throttling - then you will definitely need an application server middleware like http://mcavage.me/node-restify/
Maybe it's a good idea to spend some money to professionals like
http://www.neighbourhood.ie/couchdb-support/ ? (I'm not involved)

Email sending approaches [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
In my project have to suggest email sending approaches to my manager. As a part of design document.
Following are the approaches available. Kindly share your views on pros and cons for these approaches
Approach 1: Use third party SMTP
Pros: Readily available
Cons: Costs
Approach 2: Host own SMTP on Windows Azure
Pros: ?
Cons: ?
Approach 3: Using Public email Account
Pros: No additional cost or dependency.
Cons: Requires more effort in terms of designing and implementation.
Approach 2 is not recommended by Microsoft, and I am also with that. The main reason is that the chance for IP Address of Azure datacenter to become blacklisted because of SPAM is very high.
Don't quite understand Approach 3.
The highly recommended approach (also by Microsoft) is to use a third party mail sending system, such as SendGrid. Microsoft & SendGrid are partnering to offer Azure developers free and easy way to reliably, securely and easily send e-mail message from the Windows Azure platform. Read more on the link provided. And this is the official reccomendation.
Does not matter what SMTP server you use because all your code needs to know is about the SMTP host, port, secure mode authentication and user credentials. And ofcourse your application should be able to connect to the SMTP host. If your application supports connecting to any SMTP, then no need to bother about what to use. You can very well use your own company's SMTP server or use public SMTP severs like Gmail, yahoo etc.
We use Amazon's SES service to send emails from AzureWatch to our customers. Currently sending north of 3000-4000 emails per day. Works wonderfully and is very affordable.
There is also option to queue emails before sending them using services like SendGrid or AWS SES. You should consider this option if your solution is dealing with high loads or if you do not like the fact that third-party smtp service is out of the Azure and out of your (direct) control.
Take a look at:
http://blogs.msdn.com/b/windowsazure/archive/2010/10/08/adoption-program-insights-sending-emails-from-windows-azure-part-1-of-2.aspx
http://www.AzureMailer.com (commercial solution)
third party is the recommended way to do this, take a look at:
http://blog.smarx.com/posts/emailtheinternet-com-sending-and-receiving-email-in-windows-azure

How to link IRC and Google Talk?

I am looking for a way to link IRC to Google Talk.
At the moment we use Partychatapp for google talk and we'd like to find a way to migrate to using IRC.
The vision is to have everyone in an IRC room and we'd be able to have a google talk bot people could use to talk to the room.
Does anything like this exist?
You want bitlbee. It looks like an IRC server to IRC clients and gateways to other IM protocols.
I wrote an application that does exactly this: https://github.com/PaulFreund/I2X
Multiple Users use it on a daily base and there are Ideas to expand it further.
At the moment it logs on to a XMPP account and to an IRC channel, and translates between the two. It works as-is without problems but could be better, if there were more users I probably had more interrest in developing it further.
I played with bitlbee a few years ago. Unless it's changed, it's not actually an IRC server, it just pretends to be one. It provides an irc-flavored proxy to the jabber server, so you can use your favorite IRC client to connect to a jabber server via bitlbee.

Simple GWT hosting [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
I have designed a website with the GWT, This is purely a static site and it doesnt have any servlet or any rpc part involved in it. Its just a plain static pages in GWT .I have compiled with the GWT and there are all related html ,.js files are present in the public folder. Now i want to host the same in any of the web host.
Good web host to host this web site.
Procedure to upload the GWT compiler output files into the web host.
Note:- I tried with the google app engine but it had issues as i have couple of video files that needs to be uploaded which is embedded in the webpage.
Thank you
I think this is not really a "GWT hosting" problem, but rather a "hosting" problem. Finding a good host is not that problematic though. I suggest you to look up webhosting in your own language and country, which makes it easier to contact the hosting company in case of problems.
I don't suggest a free hosting, unless you really can't afford a payed host. Your site being static, would require a cheap host. Free hosts have always got some problems and some advertising attached to your content in some way (frames and popups).
For the uploading part, you usually get a (s)ftp account which you can use to upload your files to the server with a (s)ftp client. Good companies provide detailed description of this process for their server, and as being a paying customer, you will usually get technical support as well.
It's good to know that a host alone doesn't include a domain. To have a yourcompany.com address, you need to register it, and you will have to pay a (low) registration fee. Some compaines offer the domain as part of the hosting service.
I host a few small GWT (client-only) apps on the same site I host my blog. There's no problem. In the end GWT is just javascript with a couple of html files, and thats all thats really being hosted.
Ummmmm...why not host it on Google App Engine?
It's free and deployment is easy if you're using Eclipse.