The UE is only allowed to announce in the carrier frequency signalled from serving PLMN. When inter-PLMN discovery transmission is supported, the carrier frequency may be operated by Local PLMN.
The UE is configured with the data structure of the ProSe Application IDs corresponding to HPLMN. This step is performed using mechanisms that are out of scope of 3GPP.
If the UE is authorised to announce in the PLMN operating the carrier frequency signalled from the serving PLMN (VPLMN or Local PLMN), or if UE intends to make announcement using WLAN-based PC5 and is triggered to announce, it shall establish a secure connection with the ProSe Function in HPLMN and it shall then send a Discovery Request (ProSe Application ID, UE Identity, announce command, Application ID, Discovery Entry ID, [Requested Timer], [metadata], [Announcing PLMN ID], [Application Level Container], [PC5_tech]) message for announcing. The ProSe Application ID indicates what the UE is interested to announce. The UE Identity is set to e.g. IMSI. The Application ID represents a unique identifier of the UE application that has triggered the transmission of the Discovery Request message. The Discovery Entry ID indicates whether this is a new request. The Requested Timer is an optional parameter and indicates the length of validity timer associated with the ProSe Application Code that the UE expects to receive from the ProSe Function in step 5. When the Requested Timer is set to zero, procedures in clause 5.3.6A.1.3 shall be followed. PC5_tech is an optional parameter that indicates the PC5 radio technology (e.g. E-UTRA, WLAN) that UE wishes to use for announcements. PC5_tech may include more than one PC5 radio technology. When this parameter is omitted the intended PC5 radio technology is E-UTRA. This request is always sent by the UE to the ProSe Function in HPLMN.
If dynamic metadata is used, the Discovery Request message also includes the metadata to be uploaded to the ProSe Function. Moreover, when the UE updates the metadata for a valid ProSe Application Code, the command is set to "metadata_update" in the Discovery Request message.
If inter-PLMN ProSe discovery transmission is supported, and the serving PLMN signalled carrier frequency is not operated by HPLMN or VPLMN, the UE shall include the PLMN ID of that carrier frequency in the Announcing PLMN ID.
If application-controlled extension is used, the Discovery Request message also includes the Application Level Container. The Application Level Container contains the request and any relevant information for the ProSe Application Server to assign a (set of) ProSe Application Code Suffix(es).
The ProSe Function checks for the authorization of the application represented by the Application ID. If there is no associated UE context, the ProSe Function shall check with HSS the authorisation for discovery and, if necessary, create a new context for this UE that contains the subscription parameters for this UE. The HSS provides the MSISDN of the UE. The HSS also provides the VPLMN ID of where the UE is registered. When the Discovery Entry ID in the Discovery Request message does not contain a valid value for this UE, the ProSe Function will create a new discovery entry in the UE's context for this request, and will return the corresponding identifier in the Discovery Response message in step 5.
If the UE indicated it desired application-controlled extension by the inclusion of the Application Level Container, the ProSe Function sends an Auth Request (ProSe Application ID, Request Type, Application Level Container, Allowed number of suffixes) to the ProSe Application Server. The Request Type is set to "open discovery with application-controlled extension /announce ". The Allowed Number of Suffixes indicates how many ProSe Application Code Suffixes the ProSe Application Server can assign for the UE. The ProSe Function locates the ProSe Application Server based on the Application ID.
The ProSe Application Server returns an Auth Response (Response Type, ProSe Application Code Suffix pool) message. The ProSe Application Code Suffix pool contains the Suffix(es) allocated by the ProSe Application based on the inputs in step 2.a. The Response Type is set to "open discovery with application-controlled extension /announce ack".
If the Discovery Request is authorised, then the HPLMN ProSe Function shall check whether the UE is authorized to use the ProSe Application ID contained in the Discovery Request. If the UE is authorised to use that ProSe Application ID, then the HPLMN ProSe Function shall inform the ProSe Function in VPLMN or Local PLMN if Announcing PLMN ID is included in step 1 with the Announce Authorisation (ProSe Application ID, ProSe Application Code, UE Identity, validity timer, Discovery Entry ID, [metadata], [PC5_tech]) message. The ProSe Application ID corresponds to the request from the UE, whereas the ProSe Application Code indicates the assigned code for this request. The request also includes the UE identity information e.g. IMSI or MSISDN and validity timer in order to allow the ProSe Function in VPLMN or Local PLMN to perform charging. The validity timer indicates for how long this ProSe Application Code is going to be valid; the ProSe Function in the HPLMN takes into account the Requested Timer parameter, if provided by the UE, when allocating the validity timer. If the ProSe Function in VPLMN or Local PLMN receives the same Discovery Entry ID in a subsequent Announce Authorization message, it updates the announcing UE's corresponding discovery entry replacing the existing ProSe Application Code and validity timer with the last received ones. The request may also include the PC5_tech parameter if it was provided by the UE in step 1. When this parameter is omitted the intended PC5 radio technology is E-UTRA.
If dynamic metadata is used, the ProSe Function stores the metadata with the associated ProSe Application ID in the UE context, and allocates a corresponding Metadata Index to be included into the ProSe Application Code. Moreover, if the command is set to "metadata_update" in step 1, the ProSe Function only updates the Metadata Index portion of the ProSe Application Code, and keeps the rest unchanged. The metadata is also included in the Announce Authorisation message.
If application-controlled extension is used, the ProSe Function in the HPLMN allocates a ProSe Application Code Prefix (rather than a ProSe Application Code) based on the Application ID.
The ProSe Function in HPLMN shall respond to the UE with a Discovery Response (ProSe Application Code, validity timer, Discovery Entry ID, [PC5_tech]) message. ProSe Application Code is provided by the ProSe Function in HPLMN and corresponds to the ProSe Application ID that was contained in the Discovery Request from the UE. The validity timer shall indicate for how long this ProSe Application Code is going to be valid. The UE will be authorised to announce this ProSe Application Code for the duration of validity timer and if it remains in the same PLMN. The optional PC5_tech parameter indicates the PC5 radio technology(ies) that is/are authorized to be used for the assigned ProSe Application Code. When this parameter is omitted, the authorized PC5 radio technology is E-UTRA.
If application-controlled extension is used, the ProSe Application Code is replaced by the ProSe Application Code Prefix, and the Discovery Response message also contains the ProSe Application Code Suffix pool.
The UE may start announcing the provided ProSe Application Code in the VPLMN or Local PLMN, using the radio resources authorised and configured by E-UTRAN to be used for ProSe as defined in RAN specifications or using WLAN, or both.
If the validity timer associated with a ProSe Application Code expires (because the UE has not refreshed the corresponding Discovery Request within the duration of the validity timer), then the ProSe Function removes the entry related to that ProSe Application Code from the UE context.
The UE is only allowed to announce in the carrier frequency signalled from serving PLMN. When inter-PLMN discovery transmission is supported, the carrier frequency may be operated by Local PLMN.
The user sets the permission for the restricted discovery using application layer mechanisms. In addition, the application client in the UE retrieves the PDUID and provides it to the ProSe Application Server. The ProSe Application Server allocates a RPAUID for that PDUID, stores the binding between the PDUID and the RPAUID and returns the RPAUID to the application client in the UE. The UE may optionally provide metadata to be associated with the RPAUID, and the ProSe Application Server stores the metadata. The application client in the UE stores the binding between the PDUID and its own RPAUID. If the application client in the UE intends to use the ProSe service, it triggers the UE to perform the announce procedure, providing its own RPAUID obtained by the ProSe Application Server.
If the UE is authorized to announce in the PLMN operating the carrier frequency signalled by the serving PLMN, or if UE intends to make announcement using WLAN-based PC5 and is triggered by the application client to announce, it shall establish a secure connection with the ProSe Function in HPLMN and send a Discovery Request message (RPAUID, UE Identity, command=announce, Discovery Type, Application ID, Discovery Entry ID, Requested Discovery Timer, Application Level Container, Announcing Type, [Announcing PLMN ID], [PC5_tech]) for announcing. The RPAUID indicating what the UE is interested to announce was obtained in step 0. The UE Identity is set to IMSI. The Application ID represents a unique identifier of the UE application that has triggered the transmission of the Discovery Request message. The Discovery Type is set to "restricted discovery". The Discovery Entry ID indicates whether this is a new request. The Requested Discovery Timer is an optional parameter and indicates the length of validity timer associated with the ProSe Restricted Code that the UE expects to receive from the ProSe Function in step 6. When the Requested Discovery Timer is set to zero, the ProSe Function shall remove the discovery entry indicated by the Discovery Entry ID, and release the associated resources. PC5_tech is an optional parameter that indicates the PC5 radio technology (e.g. E-UTRA, WLAN) that UE wishes to use for announcements. PC5_tech may include more than one PC5 radio technology. When this parameter is omitted the intended PC5 radio technology is E-UTRA.
If the Requested Discovery Timer is included in step 1 and the value is set to zero, step 2 to step 3 are skipped.
If restricted Direct Discovery with application-controlled extension is used, the Discovery Request message also includes the Application Level Container. The Application Level Container contains the request and any relevant information (e.g. intent to use metadata indication in the suffix) for the ProSe Application Server to assign a (set of) ProSe Restricted Code Suffix(es). The Discovery Type is set to "restricted discovery with application-controlled extension".
Announcing type can be set to "on demand" to indicate the "on demand" announcing is requested by UE for the indicated application.
If inter-PLMN ProSe discovery transmission is supported, and the serving PLMN signalled carrier frequency is not operated by HPLMN or VPLMN, the UE shall include the PLMN ID of that carrier frequency in the Announcing PLMN ID.
The ProSe Function checks for the authorization of the application represented by the Application ID. If there is no associated UE context, the ProSe Function shall check with HSS the authorisation for discovery and, if necessary, create a new context for this UE that contains the subscription parameters for this UE. The HSS provides the MSISDN of the UE. The HSS also provides the serving PLMN ID of where the UE is registered. When the Discovery Entry ID in the Discovery Request message does not contain a valid value for this UE, the ProSe Function creates a new discovery entry in the UE's context for this request, and returns the corresponding identifier in the Discovery Response message in step 6.
Optionally, the ProSe Function sends an Auth Request (RPAUID, Request Type) to the ProSe Application Server. The ProSe Function locates the ProSe Application Server based on the Application ID. The Request Type is set to "restricted discovery/announce".
If restricted Direct Discovery with application-controlled extension is used, the Auth Request message also includes the Allowed Number of Suffixes. The Allowed Number of Suffixes indicates how many suffixes the ProSe Application Server can provide to the UE. The Request Type is set to "restricted discovery with application-controlled extension /announce".
The ProSe Application Server returns an Auth Response (PDUID(s), Response Type) message. The PDUID(s) corresponds to the RPAUID stored in the ProSe Application Server. The Response Type is set to "restricted discovery/announce ack".
If restricted Direct Discovery with application-controlled extension is used, the Auth Response message also includes the ProSe Restricted Code Suffix pool. The ProSe Restricted Code Suffix pool contains the Suffix(es) allocated by the ProSe Application based on the inputs in step 2.a. The Response Type is set to "restricted discovery with application-controlled extension /announce ack".
The ProSe Function verifies that at least one of the received PDUID(s) belongs to the requesting UE.
The ProSe Function in HPLMN allocates a ProSe Restricted Code and the associated validity timer. The ProSe Restricted Code corresponds to the RPAUID that was contained in the Discovery Request from the UE. The validity timer shall indicate for how long this ProSe Restricted Code is going to be valid. The UE will be authorised to announce this ProSe Restricted Code for the duration of validity timer and if it remains in the same PLMN. The ProSe Function stores the RPAUID, the ProSe Restricted Code and the associated validity timer in the user context.
If restricted Direct Discovery with application-controlled extension is used, the ProSe Function in the HPLMN allocates a ProSe Restricted Code Prefix (rather than a ProSe Restricted Code) based on the Application ID and/or the Restricted ProSe App User ID.
If restricted ProSe Direct Discovery with "on demand" announcing has been requested, the ProSe Function determines if "on demand" announcing is authorized and enabled based on the Application ID and operator's policy. If "on demand" announcing is authorized and enabled, the ProSe Function stores the RPAUID, the ProSe Restricted Code with the associated validity timer and the Announcing Enabled indicator in the user context.
If the Discovery Request is authorized and verified, the HPLMN ProSe Function shall inform the ProSe Function in VPLMN or Local PLMN if Announcing PLMN ID is included in step 1 with the Announce Authorization (RPAUID, Application ID, validity timer, ProSe Restricted Code, UE Identity, Discovery Entry ID, [PC5_tech]) message. The RPAUID and Application ID correspond to the request from the UE, whereas the ProSe Restricted Code indicates the assigned code for this request. The request shall include the UE identity information e.g. IMSI or MSISDN and validity timer in order to allow the ProSe Function in VPLMN or Local PLMN to perform charging. The validity timer indicates for how long this ProSe Restricted Code is going to be valid. If the ProSe Function in VPLMN or Local PLMN receives the same Discovery Entry ID in a subsequent Announce Authorization message, it updates the announcing UE's corresponding discovery entry replacing the existing ProSe Restricted Code and validity timer with the last received ones. The request may also include the PC5_tech parameter if it was provided by the UE in step 1. When this parameter is omitted the intended PC5 radio technology is E-UTRA.
If restricted Direct Discovery with application-controlled extension is used, the ProSe Restricted Code is replaced by the ProSe Restricted Code Prefix, and the Announce Authorization message also contains the ProSe Restricted Code Suffix pool.
If the Requested Discovery Timer is included in step 1 and the value is set to zero, the ProSe Function in HPLMN shall inform the ProSe Function in VPLMN or Local PLMN with the validity timer set to zero. The ProSe Function removes the discovery entry indicated by the Discovery Entry ID, and releases the associated resources.
The ProSe Function in HPLMN responds to the UE with a Discovery Response (ProSe Restricted Code, validity timer, Discovery Entry ID, [PC5_tech]) message.
If restricted Direct Discovery with application-controlled extension is used, the ProSe Restricted Code is replaced by the ProSe Restricted Code Prefix, and the Discovery Response message also contains the ProSe Restricted Code Suffix pool.
If the "on demand" announcing is authorized and enabled in step 3 and there is no ongoing monitoring request, the ProSe Function in HPLMN does not provide a ProSe Restricted Code to the UE and responds to the UE with a Discovery Response (validity timer, Announcing Enabled indicator, Discovery Entry ID) message.
If the Requested Discovery Timer is included in step 1 and the value is set to zero, the validity timer in the Discovery Response message is set to zero.
The optional PC5_tech parameter indicates the PC5 radio technology(ies) that is/are authorized to be used for the assigned ProSe Restricted Code. When this parameter is omitted, the authorized PC5 radio technology is E-UTRA.
The UE may start announcing the provided ProSe Restricted Code in the VPLMN or Local PLMN, using the radio resources authorised and configured by E-UTRAN to be used for ProSe as defined in RAN specifications or using WLAN, or both.
If the "on demand" announcing is used and ProSe Function does not provide a ProSe Restricted Code to the UE in step 6, the UE waits for an Announcing Alert Request message from the ProSe Function in HPLMN before starting to announce over the air (see clause 5.3.5.2).
If the validity timer associated with a ProSe Restricted Code expires (because the UE has not refreshed the corresponding Discovery Request within the duration of the validity timer), then the ProSe Function removes the entry related to that ProSe Restricted Code from the UE context.