JBoss.orgCommunity Documentation
REST API RESTXMPPService of the Chat portlet is exposed by org.exoplatform.services.xmpp.rest.RESTXMPPService class.
| Service name | Service URL | Location | Description |
|---|---|---|---|
| RESTXMPPService | $portalname/$restcontextname/xmpp |
* Maven groupid: org.exoplatform.cs * exo.cs.eXoApplication.chat.service | Implement all actions sent to the Chat server; |
APIs Usage:
Use the following APIs to build all functions of the Chat application:
| Name | Service URL endpoint | Parameters | Expected Values | Description |
|---|---|---|---|---|
| loadJsResourceBundle | /loadJsResourceBundle/{locale}/ | locale | locale id | Read the language files in the Chat server. |
| createRoom | /muc/createroom/{username}/ |
username room nickname |
user id room name display name | Create a chat room or a group chat. |
| configRoom | /muc/configroom/{username}/ |
username room |
user id room name | Establish the configuration of a chat room. |
| getRoomConfigForm | /muc/getroomconfig/{username}/ |
username room |
user id room name | Get the configuration of a chat room created. |
| getRoomInfo | /muc/getroominfo/{username}/ |
username room |
user id string | Get the inforamtion of a chat room created. |
| getJoinedRooms | /muc/joinedrooms/{username}/ | username | user id | List chat rooms that a user has been joined. |
| getRooms | /muc/rooms/{username}/ | username | user id | Get a list of group chat or chat rooms created. |
| declineToRoom | /muc/decline/{username}/{inviter}/ |
username inviter room reason |
user id user id room name string | Refuse the invitation to join the chat room. |
| destroyRoom | /muc/destroy/{username} |
username room reason altroom |
user id room name string room id | Delete a chat room created. |
| inviteToRoom | /muc/invite/{username}/{invitee}/ |
username invitee room reason |
user id user id room name string | Invite other users to join a chat room. |
| joinRoom | /muc/join/{username}/ |
username room nickname password |
user id room name display name room password | Join a chat room. |
| leftRoom | /muc/leaveroom/{username}/ |
username room |
user id room name | Leave a chat room. |
| changeNickname | /muc/changenickname/{username}/{nickname}/ |
username nickname |
user id display name | Change the nickname of users. |
| changeAvailabilityStatusInRoom | /muc/changestatus/{username}/{mode}/ |
username mood room status |
user id presence type room name presence type | Change the status of a user in the chat room. |
| changeSubject | muc/changesubject/{username}/ |
username room subject |
user id room name string | Change the subject of a chat room. |
| manageRoleRoom | /muc/managerole/{username}/ |
username room nickname role command |
user id room name display name Participant / moderator grant/revoke | Change the role of each user in a chat room. |
| manageAffilationRoom | /muc/manageaffiliation/{username}/ |
username room nickname affiliation command |
user id room name display name String affiliation grant / revoke | Change the ownership of a chat room. |
| kickUserFromRoom | /muc/kick/{username}/ |
username nickname room reason |
user id display name room name string | Remove a user from the chat room. |
| banUserFromRoom | /muc/ban/{username}/ |
username room name reason |
user id room name user id string | Ban a user in the chat room. |
| addBoddyToRoster | /roster/add/{username}/{adduser} |
username adduser nickname group |
user id use id display name group id | Add a user into the contact list. |
| updateBoddy | /roster/update/{username}/{upduser}/ |
username upduser nickname group |
user id user id display name group id | Update new users into the contact list. |
| createGroup | /roster/group/{username}/{group}/ |
username group |
user id group id | Create a chat room. |
| askForSubscription | /askforsubscription/{username}/{askuser}/ |
username askuser nickname |
user id user id display name | Change the presence type of a user into Subscription. |
| cleanBuddylist | /rosterclean/{username}/ | username | user id | Remove a user from the contact list. |
| getAllHistory | /history/getmessages/{usernameto}/{isGroupChat}/ |
usernameto isGroupChat usernamefrom |
user id true / false user id | Get all the chat history of two users. |
| getHistoryBetweenDate | /history/getmessages/{usernameto}/{isGroupChat}/{from}/{to}/ |
usernameto isgroupchat from to usernamefrom |
user id true / false valid date format valid date format user id | Get the chat history of two users in a specific period. |
| getHistoryFromDateToNow | /history/getmessages/{usernameto}/{isGroupChat}/{from}/ |
username isGroupChat from usernamefrom |
user id true / false valid date format valid date format user id | Get the chat history of two users from a specific date to the current time. |
| getAllHistoryFile | /history/file/getmessages/{usernameto}/{isGroupChat}/{clientTimezoneOffset}/ |
uernameto isGroupChat clientTimezoneOffset usernamefrom |
user id true / false Long user id | Download all the chat history file of two users. |
| getHistoryFromDateToNowFile | /history/file/getmessages/{usernameto}/{isGroupChat}/{from}/{clientTimezoneOffset}/ |
usernameto isGroupChat from clientTimezoneOffset usernamefrom |
user id true / false valid date format Long user id | Download the chat history file of two users from a specific date to the current time |
| getHistoryBetweenDateFile | /history/file/getmessages/{usernameto}/{isGroupChat}/{from}/{to}/{clientTimezoneOffset}/ |
usernameto isGroupChat from to clientTimezoneOffset usernamefrom |
user id true / false valid date format valid date format Long user id | Download the chat history file of two users in the specific date. |
| getUserInfo | /getuserinfo/{username}/{needinfo}/ |
username needinfo |
user id string | Get the information of a user. |
| login2 | /login2/{forcache}/ | forcache | Allow a user to log in the chat server. | |
| logout | /logout/{username}/{presencestatus}/ |
username presencestatus |
user id presencestatus | Allow a user to log out the chat server. |
| messageReceive | /history/messagereceive/{username}/{messageid}/ |
username messageid |
user id message id | Receive a message from other users. |
| removeBuddy | /roster/del/{username}/{removeboddy}/ |
username removeboddy |
user id user id | Delete a contact from the contact list. |
| removeTransport | /removetransport/{username}/{transport}/ |
username transport |
user id transport servive (e.g: Yahoo, XMPP) | Reset the presence type at the service that is being used. |
| searchUsers | /searchuser/{username}/ |
username search byUsername byName byEmail searchService |
user id string true / false true /false true / false string | Search users in the chat server. |
| sendMessage | /sendmessage/{username}/ |
username messageBean |
usesr id object | Send an message to other users. |
| sendMUCMessage | /muc/sendmessage/{username}/ |
username messageBean |
user id object | Send a message to multile users or a group. |
| setUserStatus | /sendstatus/{username}/{status}/ |
username status |
user id available/ unavailabe / do not disturb / away / extend away | Change the status of a user. |
| subscribeUser | /subscribeuser/{username}/{subsuser}/ |
username subsuser |
user id user id | Change presence type into Subcribed type. |
| unsubscribeUser | /unsubscribeuser/{username}/{unsubsuser}/ |
username unsubsuser |
user id user id | Change presence type into the Unsubscribed type. |
| acceptFile | /fileexchange/accept/{username}/{uuid}/ |
username uuid |
user id string | Accept getting a file sent from another user. |
| rejectFile | /fileexchange/reject/{username}/{uuid}/ |
username uuid |
user id string | Refuse getting a file sent from another user. |
| getPreviousStatus | /getprevstatus/{username}/ | username | user id | Get the tatus of a user in the last log-in. |