3.1.4.3.7 Get Coauthoring Session

If the CoauthRequestType attribute is set to "GetCoauthoringStatus", the protocol server considers this coauthoring subrequest to be of type, "Get coauthoring status". The protocol server checks the coauthoring status of the coauthorable file. The protocol client keeps sending coauthoring subrequests of type, "Get coauthoring status" while it is actively coauthoring to check if it is the only client editing the file. If the number of clients editing the file goes back to one, the protocol client stops sending the "Get coauthoring status" request and sends the IsOnlyClient web service request as specified in [MS-SHDACCWS].

If the coauthoring session does not exist or the current client is not present in the coauthoring session, the protocol server returns an error code value set to "Success"<49>. If the current client is the only client editing the coauthorable file, the protocol server MUST set the CoauthStatus attribute value to "Alone", indicating that no one else is editing the file. If the current client is the second, third, or later client trying to edit the document, the protocol server MUST return a CoauthStatus set to "Coauthoring", which indicates that the current client is coauthoring when editing the document.

If any failure occurs such that the subrequest cannot be processed successfully, the protocol server returns an error. The error that the protocol server returns is implementation-specific. Errors that are directly returned by the protocol server are implementation-specific. LockAndCoauthRelatedErrorCodeTypes is defined in section 2.2.5.8, and generic error code types are defined in section 2.2.5.6.