In a chat group (restricted) call model, the MCPTT user individually joins a group call without being invited. The establishment of a chat group (restricted) call does not result in other group members being invited.
Figure 10.6.2.3.1.2.2-1 describes the basic procedure for the MCPTT client initiating an MCPTT group call which uses the chat group (restricted) call model. Restricted means that only users that have been configured as members of the given group are allowed to join the group communications for the given group.
Chat group join mechanism:
Each MCPTT client sends a group join request when the MCPTT user wants to participate in the group communication for the group. (This message does not impact the MCPTT user's membership in the group; the MCPTT server will verify that the MCPTT user is an authorized member of the group.)
The group join request may include a request to transmit. If the group join request includes a request to transmit it may also include location information. It is assumed that the group join request will be delivered from MCPTT client to MCPTT server using SIP.
If location information was included in the group join request, the MCPTT server checks the privacy policy of the MCPTT user to decide if the location information of MCPTT client 1 can be provided to other users on the call (refer to Annex A.3"Authorisation to provide location information to other MCPTT users on a call when talking").
The group join request is used to indicate to the MCPTT server that the MCPTT user associated with the given MCPTT client wishes to participate i.e. begin to receive media from or send media to the group.
The group join request shall cause the MCPTT server to generate an implicit affiliation for the MCPTT user to the group, if the user is not already affiliated to the group.
The group join request contains the information needed to negotiate media parameters (on demand) or to associate a pre-established session between MCPTT server and MCPTT client for the group call. The group join request can take the form of a SIP invite.
A selected functional alias is not changed by a MCPTT client during the whole participation within a chat group call, i.e. a MCPTT client uses the same functional alias selected when joining the chat group call until the chat group call is released or the MCPTT client leaves the chat group call.
Subsequent participation in a group call when the group is using the chat model:
Once an MCPTT client successfully joins a group call which is using the chat model, the MCPTT client connects to the media plane for the call if the call is currently ongoing.
If the MCPTT group call is not currently ongoing (i.e.: when MCPTT clients on the group call are not sending or receiving media, and the time out between floor control exchanges has expired) then the newly joined MCPTT client will only have pre-established its media parameters for the call.
If the newly joined MCPTT user wishes to transmit media (start or re-start the call) to the other joined users of the group using the chat model, then the MCPTT client shall use a normal floor control procedure for requesting the floor.
Since subsequent group call media transmissions are controlled using floor control signalling, additional SIP signalling messages may not be required for subsequent call stop and start.
Each request to transmit from an MCPTT user could be viewed as a new instance of a group call for the given group when the floor idle timer expires and no media is present for an extended time.
The MCPTT server may tear down the media plane between successive group calls using the chat model, or the MCPTT server may allow the media plane to remain up between successive group calls using the chat model depending on resources.
Leaving and releasing a chat group:
When a user wants to leave a chat group call, the client shall send a group call leave request to the server and release the media plane.
The server can release a chat group call by sending a group call release to all joined clients. A server initiated release also releases the media plane for all joined clients.
MCPTT client 1, client 2, and client 3 are served by the home MCPTT service provider in Figure 10.6.2.3.1.2.2-1.
Pre-condition:
MCPTT user 2 and MCPTT user 3 have previously joined (affiliated) to the group. MCPTT client 1, client 2, and client 3 are registered and all users (MCPTT user 1, user 2, and user 3) have been authenticated and authorized to use the MCPTT service.
MCPTT client 1, MCPTT client 2 and MCPTT client 3 may have activated functional alias(es) configured to be used during the group call communication. No call is currently in progress for the group.
Optionally the MCPTT user on MCPTT client 1 has bound a functional alias to the MCPTT group ID (TS 23.280).
MCPTT client 1 sends a group join request with the MCPTT group ID of the desired group. It contains the MCPTT user's MCPTT ID, the MCPTT client media parameters and optionally a functional alias. If there is a request to transmit, then the group joint request contains an indication of an implicit floor request. If the group join request includes an implicit floor request it may also include location information.
The MCPTT server receives the group join request. MCPTT server generates an implicit affiliation (if the MCPTT user is not already affiliated to the group) and verifies that MCPTT user 1 is authorized to affiliate to the group by following the affiliation procedure (subclause 10.8.3 in TS 23.280).
If the functional alias is provided only in the group call request, or via binding, the MCPTT server proceeds with the value that is provided. If the functional alias is provided in both the group call request and via binding, it is up to the MCPTT server implementation to determine a value for the functional alias to be used.
If present, the MCPTT server checks whether the provided functional alias is allowed to be used and has been activated for the user.
If location information was included in the group join request, the MCPTT server checks the privacy policy of the MCPTT user to decide if the location information of MCPTT client 1 can be provided to other users on the call (refer to Annex A.3"Authorisation to provide location information to other MCPTT users on a call when talking").
The MCPTT server replies with a group join response indicating the acceptance of the group join request and also returns the MCPTT server selected media parameters for the group call in the group join response.
If MCPTT user 1 requests to transmit, the MCPTT server establishes the media plane (if not already established) for the call. The associated floor participants for MCPTT client 1, client 2, and client 3 use the floor control procedure to initiate the call. E.g., the floor participant for MCPTT client 1 receives the MCPTT floor grant. The corresponding floor participants for MCPTT client 2 and MCPTT client 3 receive the MCPTT floor taken. If present, the functional alias of MCPTT client 1, MCPTT client 2 and MCPTT client 3 are displayed where appropriate.
Floor control will continue to be used by the floor participants associated with MCPTT client 1, MCPTT client 2 and MCPTT client 3 for the duration of the call. Media plane signalling using floor control will be used for subsequent calls for the group as long as one or more users are affiliated. If audio cut-in policy is enabled for the MCPTT group, floor arbitration follows the logic defined in subclause 10.9.1.5.
The procedure describes the case where the MCPTT server releases an ongoing MCPTT group call for all the participants of that group call, since at least one of the conditions for release are met e.g. due to hang time expiry, last participant leaving, second last participant leaving, initiator leaving, or the number of affiliated MCPTT group members is below the minimum number permitted.
Procedures in Figure 10.6.2.3.1.2.3-1 are the procedures for the MCPTT server initiating the release of an ongoing MCPTT group call.
The following precondition applies:
A group call is ongoing between MCPTT clients 1, 2 and 3
MCPTT server would like to release the MCPTT group call which is ongoing e.g., due to hang time expiry, last participant leaving, second last participant leaving, initiator leaving, or minimum number of affiliated MCPTT group members are not present.
MCPTT client 1, client 2 and client 3 release the floor control and media plane resources associated with the group call that is released. Successful release of the group call does not affect the status of affiliation of any of the clients.
Procedures in Figure 10.6.2.3.1.2.4-1 are those for a group member entering an ongoing MCPTT group call, i.e. performing a late entry.
Pre-conditions:
MCPTT user 2 and MCPTT user 3 have previously joined to the group. MCPTT client 1, client 2, and client 3 are registered and all users (MCPTT user 1, user 2, and user 3) have been authenticated and authorized to use the MCPTT service.
MCPTT client 1, MCPTT client 2 and MCPTT client 3 may have activated functional alias(es) configured to be used during the group call communication. MCPTT users using MCPTT client 2 and MCPTT client 3 are in an ongoing group call. MCPTT client 1 has not yet joined the group call. Optionally, the MCPTT users may use activated functional aliases.
MCPTT user 1 indicates to join the group communication for the group.
Optionally the MCPTT user on MCPTT client 1 has bound a functional alias to the MCPTT group ID (TS 23.280).
MCPTT client 1 sends a group join request with the MCPTT group ID of the desired group. It contains the MCPTT user's MCPTT ID, the MCPTT client media parameters and optionally a functional alias. If there is a request to transmit, then the group joint request contains an indication of an implicit floor request.
The MCPTT server receives the group join request. MCPTT server generates an implicit affiliation (if the MCPTT user is not already affiliated to the group) and verifies that MCPTT user 1 is authorized to affiliate to the group.
If the functional alias is provided only in the group call request, or via binding, the MCPTT server proceeds with the value that is provided. If the functional alias is provided in both the group call request and via binding, it is up to the MCPTT server implementation to determine a value for the functional alias to be used.
If present, the MCPTT server checks whether the provided functional alias is allowed to be used and has been activated for the user.
MCPTT users at MCPTT client 2 and MCPTT client 3 may be notified about the MCPTT client 1 joining the group call. The functional aliases of MCPTT client 1 is displayed, if present.
Procedures in Figure 10.6.2.3.1.2.5-1 are those for an MCPTT client coming back from out of coverage during an ongoing MCPTT group call.
Pre-conditions:
MCPTT client 1, MCPTT client 2 and MCPTT client 3 may have activated functional alias(es) configured to be used during the group call communication. MCPTT users using MCPTT client 1, MCPTT client 2 and MCPTT client 3 are in an ongoing group call when MCPTT client1 goes out of radio coverage.
MCPTT client1 returns from out of coverage while the group call is still ongoing.
MCPTT users at MCPTT client 2 and MCPTT client 3 may be notified about the MCPTT client 1 returning to the group call. The functional aliases of MCPTT client 1 is displayed, if present.