Finding available Rooms for an specific Site and create Room reservation from XPages interface - xpages

I need to create a mobile application where users can book a Room and send Calendar invite to selected users.
I want to create an interface where users will:
Select a Site
Select a Date and Time
Find Available Rooms
Choose a Room
Select attendees
Create Room Reservation and Calendar Invite
Can somebody point me in the right direction?
I found this link, but, I'm still confused on how to get started with Rooms and Calendar API.
Any help will be highly appreciated.
ENVIRONMENT:
I'm running 9.0.1 with embedded Extension Library; I'm not using a version from openNTF

There are a number of steps you have to do to get there. The calendar API currently (to my best knowledge) doesn't expose rooms and resources. So you have to find them yourself. Steps:
Loop through the ($Rooms) view in names.nsf to get a list of available rooms
Get the server name, the NSF name, so together with "($Reservations)" you can construct the view name where all reservations are for that room
Keep the room name, capacity and the site, so you can show them in your UI
The Freetime lookup is not exposed in the API, nor is the find rooms. There's a freetime lookup service you can use
Iterate through the rooms on the site to see what's free (of course you can disect the mail template)
Then you can create an entry using the Calendar API. Yes it is messy

Related

How to list Socket.io rooms by names or with certain port

Is it possible to list room by a name that user gives or a certain port is it possible to search for rooms in socket.io and make the user able to name the room and set number of users to join.
or socket.io can't do these things if so what alternative can do these tasks i'm stuck with those questions for a long time and came hoping for answer.
Yes what you're trying is possible. The first part about naming rooms is possible directly using the API. You can search the io.nsps['/'].adapter.rooms object for the same.
To make the user be able to give names to the room, join that user's connection to a new room:
socket.join(roomName);
You can checkout this blog post for more info on how to restrict people in a room.
This is also a useful resource for namespaces and rooms in Socket.IO: https://www.tutorialspoint.com/socket.io/socket.io_rooms.htm

Create contact without user

I try to create a contact that is not associated to an user. All "real" users are imported from LDAP. I want to show a global contact list for different purposes like a birthday-list and a phone book. Not all entries in these lists are imported as users. Now I want to create these contacts with the ContactLocalServiceUtil class programmatically. Are there any advices how to do this? There is no method that needs neither a user-id nor a contact-id.
A Contact, as contained in Liferay's API, is always the contact data of a user. Just because the name describes what you need, does not mean that the underlying concept matches as well. You probably need different data for a general purpose phone book anyways and it's probably easier to introduce your own contact class than adjusting the existing model (you can't add fields to API classes anyway - your only way of extending Liferay's ContactModel would be through Expando fields)
Therefor the advice is: Create your own contact class. If you want to react to user data changes when LDAP is updated, you'll need to frequently import the user data and for example create a model listener on Liferay's contact that updates your custom contacts whenever an update from LDAP is coming in.

Socket.io: Live Chat Design, better way to initialize list of rooms and people?

I am trying to create a meeting app using socket and node. So far, following this tutorial (https://scotch.io/tutorials/a-realtime-room-chat-app-using-node-webkit-socket-io-and-mean) I see that they are making the list of available users to chat using Mongo.
My meeting app consists of available rooms and people (so there are list of rooms available and list of people that is inside a room, or not anywhere in the room, you cannot chat with people that is not in a room yet). Is it better if I make the list of rooms and people in just a variable and not on database (and is it possible that new people joining have access to that variable)? And if indeed using variable, how many concurrent user connection that can connect at same time, like should I allow only 1000 users connect at same time if I'm using variable method?
I suggest you continue to use MongoDB. You would not actually store the connections though. You would want to store the room IDs (along with their name, description, etc.) and user IDs. In the Users collection, you would also store their name, bio, online/offline status, etc. Either you build a new document every time a new user connects, or you implement some sort of authentication system so users can login in from multiple sources.
If you use MongoDB, you really don't have to worry about having too many people online. It can handle whatever you give it.

How to make User Interface of add contact detail same like in iPhone Contact List?

I am making an app, in which I am making custom contact list for this application, now I made add button to add contact in my custom contact list.
Now I want to add all the detail (name, mobile, email, photo etc..) of contact, same like iPhone new contact detail has, and with same userInterface that apple use in add contact...
I think its custom group table view but still I can not get how they use it, and I want to do like exactly same...

Is it possible to launch the iPhone simulators contacts from another app

I am trying to use the contacts from iPhone simulator's or iPhone contacts in my native app.
For this I searched a lot and found that application:openUrl method can be used but this method is invoked in applicationdidFinishedLaunching method.
And I want it to launch the already exist contacts app in my native app.
What are you wanting the user to do with the Contacts?
The API sample for doing anything with the address book is listed under QuickContacts.
http://developer.apple.com/library/ios/#samplecode/QuickContacts/Introduction/Intro.html
From the README:
This sample also shows how to:
Browse a list of Address Book contacts and allow users to choose a contact from that list.
Display and edit information associated with a selected contact.
Prevent users from performing default actions such as dialing a phone number associated with a selected information.
Create a new contact record.
Update a partial contact record.
Present and dismiss the people picker, person view controller, new-person view controller, and unknown-person view controller.

Resources