SIM Cards
These client-side exports check the local player's currently loaded phone. They take no arguments and work whether the phone UI is open, closed, or locked.
The boolean exports return false before phone data loads, while switching to a different phone, or when no SIM is inserted. In those cases, GetSimCardStatus returns all three flags as false, zero service bars, and no phone number.
IsSimCardInserted
Returns whether the currently loaded phone has an inserted SIM with a phone number. This does not check whether the phone can use mobile service.
IsSimCardActive
Returns whether a SIM is inserted and the phone can use it. Airplane mode must be off and the phone must be enabled. When Config.Battery.Enabled is true, the phone must also have battery power or be charging.
Yseries has no separate SIM activation or subscription state. An active SIM can still have no signal coverage.
IsSimCardConnected
Returns whether the SIM is active and has more than zero service bars.
GetSimCardStatus
Returns a table containing the SIM's insertion, activity, connection, phone number, and signal reading in one call.
inserted, active, and connected are booleans with the same meanings as the individual exports above. phoneNumber is a string when a SIM is inserted; otherwise it is nil and absent from the table.
serviceBars is the current signal reading from 0 to 4, or zero when no SIM is inserted. It can remain positive when airplane mode, phone disabling, or battery state prevents service, so use connected to check whether mobile service is usable.
Signal updates
Connection checks use the existing signal reading and do not force a recalculation. Tower coverage normally updates every five seconds. Manual overrides through SetServiceBars also affect these checks. When signal towers are disabled, the existing default is four bars unless overridden.
For SIM item setup and insertion, see SIM Cards configuration. For server-side SIM creation, recovery, and number changes, see server-side SIM card exports.