OID_WWAN_SIGNAL_STATE
OID_WWAN_SIGNAL_STATE返回或设置当前信号状态。
微型端口驱动程序必须异步处理集和查询请求,最初将NDIS_STATUS_INDICATION_REQUIRED返回到原始请求,然后发送包含 NDIS_WWAN_SIGNAL_STATE 结构的 NDIS_STATUS_WWAN_SIGNAL_STATE 状态通知,以便向最终用户提供有关显示给最终用户的当前信号状态指示的信息,而不考虑完成集或查询请求。
请求向最终用户设置当前信号状态指示的调用方向微型端口驱动程序提供具有相应信息的 NDIS_WWAN_SET_SIGNAL_INDICATION 结构。
注解
有关使用此 OID 的详细信息,请参阅 WWAN 信号强度操作。
处理查询或设置操作时,微型端口驱动程序不应访问提供程序网络或订阅者标识模块 (SIM 卡) 。
通常,应指示信号状态,而不是轮询。 但是,如果当前信号状态需要由 MB 服务确定,可以使用此 OID。
为了响应查询请求,微型端口驱动程序应发送NDIS_STATUS_WWAN_SIGNAL_STATE通知。
在 MB 服务发出设置请求时,微型端口驱动程序应:
除了报告在微型端口驱动程序中设置的 RssiInterval 和 RssiThreshold 的绝对值外,还返回 NDIS_WWAN_SIGNAL_STATE 结构中的 Rssi 和 ErrorRate 的当前值。
在内部缓存 RssiInterval 和/或 RssiThreshold 值,即使设备当前未向任何操作员注册,并且设备在设置参数时施加的任何限制都可能为注册后状态。 微型端口驱动程序应尝试在下一个即时可用情况下应用这些设置。
如果硬件和/或软件无线电开关状态当前为 OFF,请成功完成请求。 微型端口驱动程序缓存请求数据,并在开关打开后开始报告信号强度。
如果设置了相应的 uStatus 错误代码,则此请求可能会失败。
处理来自 MB 服务的查询请求时,微型端口驱动程序可以执行以下操作:
除了报告在微型端口驱动程序中设置的 RssiInterval 和 RssiThreshold 的绝对值外,还返回 NDIS_WWAN_SIGNAL_STATE 结构中的 Rssi 和 ErrorRate 的当前值。
如果设置了相应的 uStatus 错误代码,则使此请求失败。
返回值:
NDIS_STATUS_NOT_SUPPORTED
对于知道设备功能不支持信号强度的特定设备,微型端口驱动程序可能会返回此错误代码使请求失败的此值。
建议的实现
设备必须支持信号强度指示。
在 5 分钟的时间段内,驱动程序必须报告至少 50% 的 RssiInterval 设置的信号强度指示。
设备必须避免在以下状态下报告信号强度:
设备未注册或取消注册,仅适用于 GSM 设备。
无线电的有效状态为 OFF。
在上述状态下,微型端口驱动程序必须返回以下数据对信号强度的查询:
Rssi = WWAN_RSSI_UNKNOWN
ErrorRate = WWAN_ERROR_RATE_UNKNOWN;
RssiInterval = < WWAN_RSSI_DISABLE、WWAN_RSSI_DEFAULT或上次设置的值>
RssiThreshold = < WWAN_RSSI_DISABLE、WWAN_RSSI_DEFAULT或最后一个设置的值>
Windows 10 版本 1903
从 Windows 10 版本 1903 开始,OID_WWAN_SIGNAL_STATE 已升级到修订版 3。 此修订版使主机能够从微型端口驱动程序查询接收的新参考信号 (RSRP) 和信噪 (SNR) 值。 如果微型端口驱动程序支持 5G,则必须使用此 OID 及其数据结构的修订版 3。
有关 5G 数据类支持的详细信息,请参阅 MB 5G 数据类支持。
要求
版本 |
在 Windows 7 和更高版本的 Windows 中可用。 |
标头 |
Ntddndis.h (包括 Ndis.h) |