Skip to content

Commit

Permalink
Merge pull request #378 from eric-murray/eric-murray-patch-1
Browse files Browse the repository at this point in the history
Add guidance for multi-SIM scenarios
  • Loading branch information
eric-murray authored Dec 5, 2024
2 parents dad201a + e53c320 commit b9b0359
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 6 deletions.
14 changes: 12 additions & 2 deletions code/API_definitions/qod-provisioning.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -57,18 +57,28 @@ info:
### Restrictions for tokens without an associated authenticated identifier:
- For scenarios which do not have a single device identifier associated to the token during the authentication flow, e.g. 2-legged access tokens, the `device` object MUST be provided in the API request. This ensures that the device identification is explicit and valid for each API call made with these tokens.
# Multi-SIM scenario handling
In multi-SIM scenarios where more than one mobile device is associated with a phone number (e.g. a smartphone with an associated smartwatch), it might not be possible to uniquely identify the device to which the QoS provisioning should apply from that phone number. If the phone number is used as the device identifier when provisioning in a multi-SIM scenario, the API may respond with an error, apply the provisioning to all devices in the multi-SIM group, or apply the provisioning to a single device in the multi-SIM group which may not be the intended device.
Possible solutions in such a scenario include:
- Using the authorisation code flow to obtain an access token, which will automatically identify the intended device
- Identifying the intended device from a unique identifier for that device, such as its source IP address and port
- Check with the SIM provider whether a unique "secondary" phone number is already associated with each device, and use the secondary phone number to identify the intended device if available.
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0.html
version: 0.1.0
version: wip
x-camara-commonalities: 0.4.0

externalDocs:
description: Project documentation at CAMARA
url: https://github.com/camaraproject/QualityOnDemand

servers:
- url: "{apiRoot}/qod-provisioning/v0.1"
- url: "{apiRoot}/qod-provisioning/vwip"
variables:
apiRoot:
default: http://localhost:9091
Expand Down
11 changes: 9 additions & 2 deletions code/API_definitions/qos-profiles.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -48,14 +48,21 @@ info:
- For scenarios which do not have a single device identifier associated to the token during the authentication flow, e.g. 2-legged access tokens, the `device` object MUST be provided in the API request. This ensures that the device identification is explicit and valid for each API call made with these tokens.
# Multi-SIM scenario handling
In multi-SIM scenarios where more than one mobile device is associated with a phone number (e.g. a smartphone with an associated smartwatch), it might not be possible to uniquely identify a single device from that phone number. When filtering QoS profiles by device in such scenarios, one of the following options should be used:
- Use the authorisation code flow to obtain a 3-legged access token, which will automatically identify the intended device
- Identify the intended device from a unique identifier for that device, such as its source IP address and port
- Check with the SIM provider whether a unique "secondary" phone number is already associated with each device, and use the secondary phone number to identify the intended device if available
# Further info and support
(FAQs will be added in a later version of the documentation)
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0.html
version: 0.11.0
version: wip
x-camara-commonalities: 0.4.0


Expand All @@ -64,7 +71,7 @@ externalDocs:
url: https://github.com/camaraproject/QualityOnDemand

servers:
- url: "{apiRoot}/qos-profiles/v0.11"
- url: "{apiRoot}/qos-profiles/vwip"
variables:
apiRoot:
default: http://localhost:9091
Expand Down
13 changes: 11 additions & 2 deletions code/API_definitions/quality-on-demand.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -88,22 +88,31 @@ info:
- For scenarios which do not have a single device identifier associated to the token during the authentication flow, e.g. 2-legged access tokens, the `device` object MUST be provided in the API request. This ensures that the device identification is explicit and valid for each API call made with these tokens.
# Multi-SIM scenario handling
In multi-SIM scenarios where more than one mobile device is associated with a phone number (e.g. a smartphone with an associated smartwatch), it might not be possible to uniquely identify the device to which the enhanced QoS profile should apply from that phone number. If the phone number is used as the device identifier when creating a QoS session in a multi-SIM scenario, the API may respond with an error, apply the enhanced QoS profile to all devices in the multi-SIM group, or apply the enhanced QoS profile to a single device in the multi-SIM group which may not be the intended device.
Possible solutions in such a scenario include:
- Using the authorisation code flow to obtain an access token, which will automatically identify the intended device
- Identifying the intended device from a unique identifier for that device, such as its source IP address and port
- Check with the SIM provider whether a unique "secondary" phone number is already associated with each device, and use the secondary phone number to identify the intended device if available
# Further info and support
(FAQs will be added in a later version of the documentation)
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0.html
version: 0.11.0
version: wip
x-camara-commonalities: 0.4.0

externalDocs:
description: Project documentation at Camara
url: https://github.com/camaraproject/QualityOnDemand

servers:
- url: "{apiRoot}/quality-on-demand/v0.11"
- url: "{apiRoot}/quality-on-demand/vwip"
variables:
apiRoot:
default: http://localhost:9091
Expand Down

0 comments on commit b9b0359

Please sign in to comment.