State machine
-
GSM_Error GSM_InitConnection_Log(GSM_StateMachine *s, int ReplyNum, GSM_Log_Function log_function, void *user_data)
Initiates connection with custom logging callback.
See also
- Parameters:
s – State machine data
ReplyNum – Number of replies to await (usually 3).
log_function – Logging function, see GSM_SetDebugFunction.
user_data – User data for logging function, see GSM_SetDebugFunction.
- Returns:
Error code
-
GSM_Error GSM_InitConnection(GSM_StateMachine *s, int ReplyNum)
Initiates connection.
- Parameters:
s – State machine data
ReplyNum – Number of replies to await (usually 3).
- Returns:
Error code
-
GSM_Error GSM_TerminateConnection(GSM_StateMachine *s)
Terminates connection.
- Parameters:
s – State machine data
- Returns:
Error code
-
GSM_Error GSM_AbortOperation(GSM_StateMachine *s)
Aborts current operation.
This is thread safe call to abort any existing operations with the phone.
- Parameters:
s – State machine data
- Returns:
Error code
-
GSM_Error GSM_Install(GSM_StateMachine *s, const char *ExtraPath, gboolean Minimal)
Installs applet required for configured connection to the phone.
- Parameters:
s – State machine data.
ExtraPath – Extra path where to search for installation data.
Minimal – Whether to do minimal installation (eg. without support libraries), useful for applet updates
- Returns:
Result of operation.
-
typedef struct _GSM_StateMachine GSM_StateMachine
Private structure holding information about phone connection. Should be allocated by GSM_AllocStateMachine and freed by GSM_FreeStateMachine.
-
enum GSM_ConnectionType
Connection types definitions.
Values:
-
enumerator GCT_MBUS2
-
enumerator GCT_FBUS2
-
enumerator GCT_FBUS2DLR3
-
enumerator GCT_DKU2AT
-
enumerator GCT_DKU2PHONET
-
enumerator GCT_DKU5FBUS2
-
enumerator GCT_ARK3116FBUS2
-
enumerator GCT_FBUS2PL2303
-
enumerator GCT_FBUS2BLUE
-
enumerator GCT_FBUS2IRDA
-
enumerator GCT_PHONETBLUE
-
enumerator GCT_AT
-
enumerator GCT_BLUEGNAPBUS
-
enumerator GCT_IRDAOBEX
-
enumerator GCT_IRDAGNAPBUS
-
enumerator GCT_IRDAAT
-
enumerator GCT_IRDAPHONET
-
enumerator GCT_BLUEFBUS2
-
enumerator GCT_BLUEAT
-
enumerator GCT_BLUEPHONET
-
enumerator GCT_BLUEOBEX
-
enumerator GCT_FBUS2USB
-
enumerator GCT_BLUES60
-
enumerator GCT_PROXYGNAPBUS
-
enumerator GCT_PROXYFBUS2
-
enumerator GCT_PROXYAT
-
enumerator GCT_PROXYPHONET
-
enumerator GCT_PROXYOBEX
-
enumerator GCT_PROXYS60
-
enumerator GCT_NONE
-
enumerator GCT_MBUS2
-
struct GSM_Config
Configuration of state machine.
Public Members
-
char Model[50]
Model from config file
-
char DebugLevel[50]
Debug level
-
char *Device
Device name from config file
-
char *Connection
Connection type as string
-
char *DebugFile
Name of debug file
-
char TextReminder[32]
Text for reminder calendar entry category in local language
-
char TextMeeting[32]
Text for meeting calendar entry category in local language
-
char TextCall[32]
Text for call calendar entry category in local language
-
char TextBirthday[32]
Text for birthday calendar entry category in local language
-
char TextMemo[32]
Text for memo calendar entry category in local language
-
GSM_Feature PhoneFeatures[GSM_MAX_PHONE_FEATURES + 1]
Phone features override.
-
int CNMIParams[5]
Used to override default CNMI arguments for generic AT protocol.
-
char Model[50]
-
typedef void (*GSM_Log_Function)(const char *text, void *data)
Callback function for logging.
- Param text:
Text to be printed,
will be also sent (as a separate message).
- Param data:
Arbitrary logger data, as passed to GSM_InitConnection_Log.
-
int GSM_ReadDevice(GSM_StateMachine *s, gboolean waitforreply)
Attempts to read data from phone. This can be used for getting status of incoming events, which would not be found out without polling device.
- Parameters:
s – State machine data
waitforreply – Whether to wait for some event
- Returns:
Number of read bytes
-
gboolean GSM_IsConnected(GSM_StateMachine *s)
Detects whether state machine is connected.
- Parameters:
s – State machine data
- Returns:
Whether phone is connected.
-
GSM_Error GSM_FindGammuRC(INI_Section **result, const char *force_config)
Finds and reads gammu configuration file. The search order depends on platform. On POSIX systems it looks for ~/.gammurc and then for /etc/gammurc, on Windows for gammurc in Application data folder, then in home and last fallback is in current driectory.
- Parameters:
result – Ini file representation
force_config – Forcing of custom path instead of autodetected one (if NULL, autodetection is performed).
- Returns:
Error code
-
GSM_Error GSM_ReadConfig(INI_Section *cfg_info, GSM_Config *cfg, int num)
Processes gammu configuration.
See also
GSM_FallbackConfig
- Parameters:
cfg_info – Ini file representation.
cfg – Where to store configuration.
num – Number of section to read.
- Returns:
Whether we got valid configuration. Especially check for ERR_USING_DEFAULTS.
-
GSM_Config *GSM_GetConfig(GSM_StateMachine *s, int num)
Gets gammu configuration from state machine. This actually returns pointer to internal configuration storage, so you can use it also for updating existing settings.
- Parameters:
s – State machine data
num – Number of section to read, -1 for currently used.
- Returns:
Pointer to configuration.
-
int GSM_GetConfigNum(const GSM_StateMachine *s)
Gets number of active gammu configurations.
- Parameters:
s – State machine data
- Returns:
Number of sections.
-
void GSM_SetConfigNum(GSM_StateMachine *s, int sections)
Gets number of active gammu configurations.
- Parameters:
s – State machine data
sections – Number of sections.
-
GSM_StateMachine *GSM_AllocStateMachine(void)
Allocates new clean state machine structure. You should free it then by GSM_FreeStateMachine.
- Returns:
Pointer to state machine structure.
-
void GSM_FreeStateMachine(GSM_StateMachine *s)
Frees state machine structure allocated by GSM_AllocStateMachine.
- Parameters:
s – Pointer to state machine structure.
-
GSM_ConnectionType GSM_GetUsedConnection(GSM_StateMachine *s)
Gets number of active gammu configurations.
- Parameters:
s – State machine data
- Returns:
Connection type.