2024-04-24 Population Density Data - Meeting Minutes
CAMARA Population Density Dataย APIย - Follow-up meeting #6 - 2024-04-24
April 24th, 2024
Attendees
Name | Company |
---|---|
Ludovic Robertย | ย Orange |
Sachin Kumar | Vodafone |
Gregory Liokumovich | Ericsson |
Violeta Gonzalez Fernandez | Telefonica |
Jorge Garcia | Telefonica |
ย
Population Density Dataย APIย minutes:ย https://lf-camaraproject.atlassian.net/wiki/display/CAM/Population+Density+Data+API+Minutes
Agenda
Approval of previous meeting minutes #5 and meeting agenda
Open issues and PRs
Issues: #6 #7 #10 #12 #13 #14 #15 #16 #20
PR #19 #21
Initial algorithm proposal review
Timeline and next steps
AoB
Open Issues & PRs
N# | Company | Summary |
---|---|---|
Telefonica | Initial contribution of the Population Densityย APIย spec | |
Telefonica | Information in water zones discussion โ to be closed | |
Telefonica | Default and limit values for theย APIย Characteristics | |
Telefonica | Management of "big" responses โ to be closed | |
Telefonica | Discussion onย APIย algorithm - Initial proposal | |
Ericsson | API time format | |
Ericsson | Exposed data - Population vs density | |
Ericsson | Including redoc and swagger editor link in readme | |
Orange | Area format alignement | |
Orange | Async operation proposal | |
Telefonica | Modification of readme | |
Telefonica | Solvesย #6ย #7 (partial)ย #10 (partial)ย #13ย #15ย #20 (open) |
Approval of previous meeting minutes & documentation (1)
โ Approved
APIย proposal review (2)
Different discussions raised during theย APIย review:
Issue#6ย Information in water zones: Operators and thereforeย APIย can only provide data of those zones where it is operating. Full water or hybrid scenarios to be covered.
Status parameter is used for handling both situations:
ย
Partial response, only some areas can be handled in the response.ย To discuss whether not-supported areas are to be included in the response.
Empty response, if no area is managed by operator and, therefore, no information can be provided.
Gregory/Tim: Include all the cells in the partial case, since the impact of including the empty cell is not big enough to lose the developer will expect as a full response.
ย
ย
"noData" value to be added in those cells
Jorge: Calculating the cells, with no real value to developer, is costly for the CSP.
Decision:ย Move on with the most supported option.ย Empty cell in partial responses will be provided.
Issue #6 to be closed
ย
Issue#7ย Open discussion onย default and limit valuesย for theย APIย characteristics:
Default value on level 7 (150m x 150m) (TBC).ย Open Discussion, please provide feedback
Include input parameter where developer can chose among a list of levels.ย Also, to align on other global grid options in the future.
ย
ย
ย
Option1: only support 6-7
ย
ย
ย
Option2: support any level, including a not-supported option. โ Sachin, Tim, Jorge
Decision:ย Support a input parameter for the developer to select level (opt, default ==7), and create a "level nor supported" error.ย To consider in future release the analysis of other global grids.
ย
ย
Maximum requested area size, need to consider a feasible maximum response size jointly with the maximum length of the timeframe. Dependency withย Discussion on API spec - how to handle big areas/time in the responseย #10ย Open Discussion, please provide feedback.
Let max area size open (technically) to a reasonable use case management, each operator can of course launch an error in case the size is not supported.
Issue to be closed after "bigger area than supported" error is included in the code
Following the discussion on maximum time frame and area to cover, we've been analyzing the management of valid/useful requests and the corresponding response. Considering the size of a common request, of 1 week and common areas of around 10Km2, the size of the response's content may be too big for being handled directly in theย APIย REST body.
Proposal to analyse
Proposal is to analyze the implementation a unique asynchronous mechanisms for being able to handle both kind of scenarios, small scenarios where response will reach soon but also time and resource consuming scenarios where it may take even minutes to calculate the response.
โ to analyze limiting the size of the request to avoid complexity in the response, at least to consider response size that can fit properly in a HTTP response.
Decision:ย Support async endpoint for bigger and smaller areas, also needing to define a size limitation (area, duration and granularity) (TBD in issue #7). In any case, the response will be part of theย APIย response body. Only identified limitation is on the calculation time, not in the response size.
Issue #10 to be closedย
Ericsson: Time format alignment with commonalities, supporting RFC instead of ISO
Decision: Agreed and solved in PR#21
Ericsson: Response content should follow the expected as in the API name, it is, density instead of population count
Decision: Analyze offline to make sure that API response is aligned with API name
ย
ย
Or to change the API name to count
Or to change the response unit from people/cell to people/km2
AP: to define what max and min means in the calculated forecast. Also reconsider average as a forecast response, maybe just "expected"/"forecasted" population value
Ericsson: adding redoc and swagger editor links in API readme.
TEF: Mainly used in stable versions when a release is launched, in any case it's proposed in PR#19
Decision: Agreed and solved in PR#19
Orange: Align location area format with other APIs of CAMARA
Decision: Agreed and solved in PR#21
Orange: Proposal and alternative for implementation of async mechanism in the API response
Decision:ย 2 proposals of resolution:
ย
Callback URL/ weebhook: More complex approach for the developer, but more suitable for unexpected response delays.
To include also a failure response for the callback in case the process cannot be completed.
Also to be included an error for the sync response
GET endpoint and requestID: easier to implement, more suitable for fast response APIs or APIs which response is expected in a specific delay. In longer responses, developer should poll the get endpoint.
Initial algorithm proposal (3)
โ To provide feedback
ย
Discussion Summary
ISSUE/PR # | Summary | Decision |
---|---|---|
Initial contribution of the Population Densityย APIย specย | Merged and closed | |
Information in water zones discussionย | Empty cell in partial responses will be provided. To be closed. | |
Default and limit values for theย APIย Characteristicsย | Agreed on open levels and open max area. To include area size not supported error. | |
Management of "big" responsesย | Async mechanism is selected, move to issue 7. To be closed. | |
Discussion onย APIย algorithmย | Follow discussion in Github | |
API time format | Agreed and solved in PR#21ย | |
Exposed data - Population vs density | Continue offline discussion | |
Including redoc and swagger editor link in readme | Agreed and solved in PR#19 | |
Area format alignment | Agreed and solved in PR#21 | |
Modification of readme | To be reviewed and merged | |
Async operation proposal | First option proposed in PR#21, still to discuss offline | |
Solvesย #6ย #7 (partial)ย #10 (partial)ย #13ย #15ย #20 (open) | Review offline | |
N/A | AP: Move to Zoom Meetings and enable discussion | Done, also enabled discussion tool in github page |
AoB | - | ย |
Next steps
Feedback on algorithm proposalโ Follow-up meeting #6
Feedback on the big responses management #6
RCย APIย spec agreement โ Follow-up meeting #7
Next call will beย May 8th, 2024