To answer your questions:
1. Individuals can create their own login on a Jive instance, as long as the instance has been set up to allow for that. An individual may sign in to two or more different Jive instances, but will not have the same user name/ID across those instances. To be clear, I could be 'garyj' on all the different Jive instances I sign in to, and maybe I even create and use the same password, but all those 'garyj' usernames would be considered different from each other. As for the requirement that all users within a Jive instance have e-mails in the same domain, that is another configuration parameter that may be set, and is not always true. Only our Jive for Teams systems have this requirement as a default, but I believe it can be turned off.
2. No. Not yet. 'company' should be 'jive community', but you have the right idea. A single JiveID concept is being considered, but I do not have an ETA yet.
3. Mark Weitzel - do you know?
Hope that answers your questions. Let us know if further clarity is needed.
The community URL and the user ID do identify a user. If the email address is readable or OAuth is used then it may be possible to identify a user within different communities.
Thanks Gary and LG. So "instance_id" identifies the Jive community? basically when one of our app users is requesting information from our home server, I need to know who she is and which company/community is she from. At some earlier point I would have stored her Jive references into our own user "table", but I am not sure which one or two pieces of information I need.
- username is not unique on it's own, so I should not use that.
- user ID + instance ID is what I need to use to uniquely identify a user?
An app can be configured to send a request to the home server when the app is installed (and uninstalled). For each event type a single GET request is made to the home server. The request is OAuth signed and includes opensocial parameters and an event type parameter with values "added" or "removed"
The home server needs to record the value of the 'opensocial_owner_id' parameter formatted 'userID@instanceUUID' (uniquely identifies a user in a Jive instance)
NB: If you want your home sever to post activity you'll also want to record the 'opensocial_app_id' parameter (the unique UUID for your app).