/*! * @property joinOnce * @discussion if set to YES the configuration will not be persisted. Default is NO. */ @property BOOL joinOnce API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(macos, watchos, tvos);
/*! * @property lifeTimeInDays * @discussion The lifetime of the configuration in days. The configuration is stored for the * number of days specified by this property. The minimum value is 1 day and maximum value is 365 days. * A configuration does not get deleted automatically if this property is not set or set to an invalid value. * This property does not apply to Enterprise and HS2.0 networks. */ @property (copy) NSNumber * lifeTimeInDays API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(macos, watchos, tvos);
/*! * @method initWithSSID: * @discussion * A designated initializer to instantiate a new NEHotspotConfiguration object. * This initializer is used to configure open Wi-Fi Networks. * * @param SSID The SSID of the Open Wi-Fi Network. * Length of SSID must be between 1 and 32 characters. */ - (instancetype)initWithSSID:(NSString *)SSID API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(macos, watchos, tvos);
/*! * @method initWithSSID:passphrase:isWEP * @discussion * A designated initializer to instantiate a new NEHotspotConfiguration object. * This initializer is used configure either WEP or WPA/WPA2 Personal Wi-Fi Networks. * * @param SSID The SSID of the WEP or WPA/WPA2 Personal Wi-Fi Network * @param passphrase The passphrase credential. * For WPA/WPA2 Personal networks: between 8 and 63 characters. * For Static WEP(64bit) : 10 Hex Digits * For Static WEP(128bit) : 26 Hex Digits * @param isWEP YES specifies WEP Wi-Fi Network else WPA/WPA2 Personal Wi-Fi Network */ - (instancetype)initWithSSID:(NSString *)SSID passphrase:(NSString *)passphrase isWEP:(BOOL)isWEP API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(macos, watchos, tvos);
/*! * @method initWithSSID:eapSettings * @discussion * A designated initializer to instantiate a new NEHotspotConfiguration object. * This initializer is used configure WPA/WPA2 Enterprise Wi-Fi Networks. * * @param SSID The SSID of WPA/WPA2 Enterprise Wi-Fi Network * @param eapSettings EAP configuration */ - (instancetype)initWithSSID:(NSString *)SSID eapSettings:(NEHotspotEAPSettings *)eapSettings API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(macos, watchos, tvos);
/*! * @method initWithHS20Settings:eapSettings * @discussion * A designated initializer to instantiate a new NEHotspotConfiguration object. * This initializer is used configure HS2.0 Wi-Fi Networks. * * @param hs20Settings Hotspot 2.0 configuration * @param eapSettings EAP configuration */ - (instancetype)initWithHS20Settings:(NEHotspotHS20Settings *)hs20Settings eapSettings:(NEHotspotEAPSettings *)eapSettings API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(macos, watchos, tvos);
/*! * @method applyConfiguration: * @discussion This function adds or updates a Wi-Fi network configuration. * @param configuration NEHotspotConfiguration object containing the Wi-Fi network configuration. * @param completionHandler A block that will be called when add/update operation is completed. * This could be nil if application does not intend to receive the result. * The NSError passed to this block will be nil if the configuration is successfully stored, non-nil otherwise. * If the configuration is found invalid or API encounters some other error then completionHandler is called * with instance of NSError containing appropriate error code. This API attempts to join the Wi-Fi network * if the configuration is successfully added or updated and the network is found nearby. * */ - (void)applyConfiguration:(NEHotspotConfiguration *)configuration completionHandler:(void (^ __nullable)(NSError * __nullable error))completionHandler API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(macos, watchos, tvos);
/*! * @method removeConfigurationForSSID: * @discussion This function removes Wi-Fi configuration. * If the joinOnce property was set to YES, invoking this method will disassociate from the Wi-Fi network * after the configuration is removed. * @param SSID Wi-Fi SSID for which the configuration is to be deleted. */ - (void)removeConfigurationForSSID:(NSString *)SSID API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(macos, watchos, tvos);
/*! * @method removeConfigurationForNetworkName: * @discussion This function removes Wi-Fi configuration. * @param domainName HS2.0 domainName for which the configuration is to be deleted. */ - (void)removeConfigurationForHS20DomainName:(NSString *)domainName API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(macos, watchos, tvos);
/*! * @method getConfiguredSSIDsWithCompletionHandler: * @discussion This function returns array of SSIDs and HS2.0 Domain Names that the calling application has configured. * It returns nil if there are no networks configurred by the calling application. */ - (void)getConfiguredSSIDsWithCompletionHandler:(void (^)(NSArray<NSString *> *))completionHandler API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(macos, watchos, tvos);