WARNING! Gitlab maintenance operation scheduled for Thursday, 18 June between 19:00 and 20:00 (CET). During this time window, short service interruptions (less than 5 minutes) may occur. Thank you in advance for your understanding.
accuracy:Accuracy|None=Field(None,description="Accuracy represents a desired granularity of accuracy of the requested location information.")
externalId:str|None=Field(None,description="Identifies a user clause 4.6.2 TS 23.682 (optional)")
msisdn:str|None=Field(None,description="Identifies the MS internal PSTN/ISDN number allocated for a UE.")
ipv4Addr:IPv4Address|None=Field(None,description="Identifies the Ipv4 address.")
ipv6Addr:IPv6Address|None=Field(None,description="Identifies the Ipv6 address.")
notificationDestination:AnyHttpUrl=Field(...,description="URI of a notification destination that the T8 message shall be delivered to.")
monitoringType:MonitoringType=Field(...,description="Enumeration of monitoring type. Refer to clause 5.3.2.4.3.")
maximumNumberOfReports:int|None=Field(None,description="Identifies the maximum number of event reports to be generated by the AMF to the NEF and then the AF.")
monitorExpireTime:datetime|None=Field(None,description="Identifies the absolute time at which the related monitoring event request is considered to expire.")
locationType:LocationType|None=Field(None,description="Indicates whether the request is for Current Location, Initial Location, or Last Known Location.")
repPeriod:DurationSec|None=Field(None,description="Identifies the periodic time for the event reports.")
minimumReportInterval:DurationSec|None=Field(None,description="identifies a minimum time interval between Location Reporting notifications")
# This data type represents a monitoring event notification which is sent from the NEF to the AF.
classMonitoringEventReport(BaseModel):
externalId:str|None=Field(None,description="Identifies a user, clause 4.6.2 TS 23.682")
msisdn:str|None=Field(None,description="Identifies the MS internal PSTN/ISDN number allocated for a UE.")
locationInfo:LocationInfo|None=Field(None,description="Indicates the user location related information.")
locFailureCause:LocationFailureCause|None=Field(None,description="Indicates the location positioning failure cause.")
monitoringType:MonitoringType=Field(...,description="Identifies the type of monitoring as defined in clause 5.3.2.4.3.")
eventTime:datetime|None=Field(None,description="Identifies when the event is detected or received. Shall be included for each group of UEs.")
# This data type represents a monitoring notification which is sent from the NEF to the AF.
classMonitoringNotification(BaseModel):
subscription:AnyHttpUrl=Field(...,description="Link to the subscription resource to which this notification is related.")
monitoringEventReports:list[MonitoringEventReport]|None=Field(None,description="Each element identifies a monitoring event report (optional).")
cancelInd:bool|None=Field(False,description="Indicates whether to request to cancel the corresponding monitoring subscription. Set to false or omitted otherwise.")
Request to retrieve the location of a device. Device is not required when using a 3-legged access token.
"""
device:Annotated[Device|None,Field(None,description="End-user device able to connect to a mobile network.")]
maxAge:Annotated[int|None,Field(None,description="Maximum age of the location information which is accepted for the location retrieval (in seconds).")]
maxSurface:Annotated[int|None,Field(None,description="Maximum surface in square meters which is accepted by the client for the location retrieval.",ge=1,examples=[1000000])]
classAreaType(str,Enum):
circle="CIRCLE"# The area is defined as a circle.
polygon="POLYGON"# The area is defined as a polygon.
classArea(RootModel[Annotated[
AreaType,
Field(description="""
Type of this area.
CIRCLE - The area is defined as a circle.
POLYGON - The area is defined as a polygon.
""")]]):
pass
classPoint(BaseModel):
latitude:Annotated[float,Field(description="Latitude component of a location.",examples=["50.735851"],ge=-90,le=90)]
longitude:Annotated[float,Field(...,description="Longitude component of location.",examples=["7.10066"],ge=-180,le=180)]
classPointList(RootModel[Annotated[
list[Point],
Field(min_length=3,max_length=15,description="List of points defining the area.")]]):
pass
classCircle(Area):
center:Annotated[Point,Field(description="Center point of the circle.")]
radius:Annotated[float,Field(description="Radius of the circle.",ge=1)]
classPolygon(Area):
boundary:Annotated[PointList,Field(description="List of points defining the polygon.")]
classLastLocationTime(RootModel[Annotated[
datetime,
Field(description="Last date and time when the device was localized.",examples="2023-09-07T10:40:52Z")]]):
pass
classLocation(BaseModel):
lastLocationTime:Annotated[LastLocationTime,Field(description="Last known location time.")]
area:Annotated[Area,Field(description="Geographical area of the location.")]