The Unified Communications Web API (UCWA) is a REST-like API to enable real-time communications over the web on Server-Side based works for Microsoft Lync on-primes. See the UCWA previous post
Technology Boundaries
- Only users homed on a Lync Server 2013 pool can take advantage of UCWA capabilities.
- Supported only for The On Prime Lync Server.
- Server-to-server authentication between an on-premises server and an Office 365 component is not supported.
- HD Photos, Voicemail and meetings are dependent on the version of Exchange Server 2013.
- Supported only for The On Prime Exchange Server.
- Exchange 2010 On prime and Online are not supported.
- Compatible with Internet Explorer versions 9 and 10 are both supported, as are the latest versions of Chrome, Safari, and Firefox.
- The developers needs to know HTTP: POST and GET and PUT and DELETE and HTTP headers, REST SERVICE and indeed JavaScript and JQuery.
What We Can Do With The Technology
- Contacts and Groups
- Access, search, federated organizations, monitor on contact list, subscribing to the presence, Presence, Location, and Note can publish and view her presence and note, View own photos or the photos of their contacts.
- Two-party and Multi-party IM
- Supports instant messaging between two parties in a peer-to-peer fashion as well as multi-party IM sessions that are hosted by the server.
- Add Participant for a Multi-Party IM.
- Escalate the conversation to conference.
- Working with Online Meetings
- Schedule an online meeting that can be joined by via this API or there Lync services.
- Joining of online meetings with messaging and phone audio modalities (for future use).
- A roster of meeting attendees is provided; this information includes participant name, contact information, and modalities. And can update Meeting.
- Exchange APIs can be used to place meeting information on the user’s calendar you will only see meetings created by UCWA.
Technology Barriers (What we can’t do)
- No Audio, Video or other Real Time Media (at this time). According to the Channel 9 video, UCWA is on the Roadmap to get voice/video/screen sharing capability over IP after Lync 2013 goes RTM.
- Only allow you connect at a user level i.e. can’t do action on behalf of others.
- No Office 365 support.
- No User Impersonation.
- No custom presence Support.
- Can’t start group IM conversations.
Development Ability
- People
- Search.
- Presence Subscription and Presence Subscription Membership.
- Get contact and contact information i.e. Location, Note, Photo, Presence, Privacy Relationship and Supported Modalities.
- Get group, Group Contacts, Default Group, Distribution Group, Expand Distribution Group.
- Start/Refresh/Stop Subscription to Contacts and Groups.
- Subscribed Contacts.
- Subscribe To Group Presence.
- Get contacts forward call information i.e. Immediate Forward Settings, Immediate Forward to Contact, Immediate Forward to Delegates and Immediate Forward to Voicemail.
- Me
- Call Forwarding Settings.
- Change Phone Number.
- Change Visibility: Changes the visibility of a phone number to other contacts.
- Change location.
- Presence: get a representation of the user’s availability and activity.
- Note, Photo and Report My Activity: Indicates that the user is actively using this application.
- Call settings i.e. Reset Unanswered Call Settings, Simultaneous Ring Settings, Simultaneous Ring to Contact, Simultaneous Ring to Delegates, Simultaneous Ring to Team, Unanswered Call Settings, Unanswered Call to Contact and Unanswered Call to Voicemail.
- Online Meetings
- Dial in Region: get a representation of the access information for phone users who wish to join an online Meeting.
- Group.
- My Assigned Online Meetings.
- My Online Meetings.
- Online Meeting Default Values: get a representation of the values of my Online Meeting properties if not specified at scheduling time.
- Online Meeting Eligible Values: get a representation of the eligible values that the application can choose from when scheduling an Online Meeting.
- Online Meeting Extensions: get a representation of the data that is needed by a custom meeting extension, stored as a collection of key-value pair properties.
- Online Meeting Invitation.
- Online Meeting Invitation Customization.
- Online Meeting Policies.
- Meeting Organizer.
- Phone Dial in Information.
- Communications and Modalities
- Accept/decline incoming conversation.
- Send invitation to contact/Participant and knows the Acceptance state.
- Add Messaging.
- Add Participant.
- Attendees.
- Cancel/Reject.
- Conversations: get a representation of the user’s ongoing conversations.
- Data Collaboration to return the current modality.
- Demote: user can demote the participant from leader to attendee in the online Meeting.
- Derived Conversation.
- Derived Messaging.
- Disable/Disable Audience Messaging and Disable/Disable Audience Mute Lock.
- Failed Delivery Participant.
- Forwarded By.
- From: get a representation of the participant that sent an invitation.
- Hold Phone Audio.
- Join Online Meeting.
- Leaders.
- Lobby.
- Local Participant.
- Messaging and Messaging Invitation.
- Mute Audio/Video.
- Participant.
- Participant Application Sharing : track when a participant joins or leaves this modality.
- Participant Audio : track when a participant joins or leaves this modality.
- Participant Data Collaboration: track when a participant joins or leaves this modality.
- Participant Invitation.
- Participant Messaging.
- Participant Panoramic Video.
- Participant Video.
- Phone Audio Invitation.
- Promote.
- Reject.
- Resume Phone Audio.
- Send Message.
- Set Is Typing.
- Start Messaging.
- Start Online Meeting.
- Start Phone Audio.
- Stop Messaging.
- Transferred By.
- Typing Participants.
- Video Locked On Participant.