Memory

GSM_MemoryType GSM_StringToMemoryType(const char * s)

Converts memory type from string.

Return
Parsed memory type or 0 on failure.
Parameters
  • s: String with memory type.

GSM_Error GSM_GetMemoryStatus(GSM_StateMachine * s, GSM_MemoryStatus * status)

Gets memory (phonebooks or calls) status (eg. number of used and free entries).

Return
Error code.
Parameters
  • s: State machine pointer.
  • status: Storage for status information, MemoryType has to be set.

GSM_Error GSM_GetMemory(GSM_StateMachine * s, GSM_MemoryEntry * entry)

Reads entry from memory (phonebooks or calls). Which entry should be read is defined in entry.

Return
Error code.
Parameters
  • s: State machine pointer.
  • entry: Storage for retrieved entry, MemoryType and Location has to be set.

GSM_Error GSM_GetNextMemory(GSM_StateMachine * s, GSM_MemoryEntry * entry, gboolean start)

Reads entry from memory (phonebooks or calls). Which entry should be read is defined in entry. This can be easily used for reading all entries.

Return
Error code.
Parameters
  • s: State machine pointer.
  • entry: Storage for retrieved entry. MemoryType has to be set for first call (with start set to TRUE), for subsequent calls Location has to stay intact from previous reading.
  • start: Whether we should start from beginning.

GSM_Error GSM_SetMemory(GSM_StateMachine * s, GSM_MemoryEntry * entry)

Sets memory (phonebooks or calls) entry.

Return
Error code.
Parameters
  • s: State machine pointer.
  • entry: Entry to set, Location and MemoryType has to be set.

GSM_Error GSM_AddMemory(GSM_StateMachine * s, GSM_MemoryEntry * entry)

Adds memory (phonebooks or calls) entry.

Return
Error code.
Parameters
  • s: State machine pointer.
  • entry: Entry to add, Location is ignored, MemoryType has to be set.

GSM_Error GSM_DeleteMemory(GSM_StateMachine * s, GSM_MemoryEntry * entry)

Deletes memory (phonebooks or calls) entry.

Return
Error code.
Parameters
  • s: State machine pointer.
  • entry: Entry to delete, Location and MemoryType has to be set.

GSM_Error GSM_DeleteAllMemory(GSM_StateMachine * s, GSM_MemoryType MemoryType)

Deletes all memory (phonebooks or calls) entries of specified type.

Return
Error code.
Parameters
  • s: State machine pointer.
  • MemoryType: Where to delete all entries.

GSM_Error GSM_GetSpeedDial(GSM_StateMachine * s, GSM_SpeedDial * Speed)

Gets speed dial.

Return
Error code.
Parameters
  • s: State machine pointer.
  • Speed: Storage for speed dial, Location has to be set.

GSM_Error GSM_SetSpeedDial(GSM_StateMachine * s, GSM_SpeedDial * Speed)

Sets speed dial.

Return
Error code.
Parameters
  • s: State machine pointer.
  • Speed: Sspeed dial to set.

unsigned char* GSM_PhonebookGetEntryName(const GSM_MemoryEntry * entry)

Returns name of entry. It might be possibly concatenated from first and last names.

Return
Static unicode string containing name.
Parameters
  • entry: Entry to process.

void GSM_PhonebookFindDefaultNameNumberGroup(const GSM_MemoryEntry * entry, int * Name, int * Number, int * Group)

Finds default name, number and group for entry.

Parameters
  • entry: Entry to process.
  • Name: Output index of name.
  • Number: Output index of number.
  • Group: Output index of group.

GSM_Error GSM_EncodeVCARD(GSM_Debug_Info * di, char * Buffer, const size_t buff_len, size_t * Pos, GSM_MemoryEntry * pbk, const gboolean header, const GSM_VCardVersion Version)

Encodes memory entry to vCard.

Return
Error code.
Parameters
  • di: Pointer to debugging description.
  • Buffer: Buffer to store vCard text.
  • buff_len: Size of output buffer.
  • Pos: Position in output buffer.
  • pbk: Phonebook data, AddError will be set on non converted entries.
  • header: Whether to include vCard header in output.
  • Version: What vCard version to create.

GSM_Error GSM_DecodeVCARD(GSM_Debug_Info * di, char * Buffer, size_t * Pos, GSM_MemoryEntry * Pbk, const GSM_VCardVersion Version)

Decodes memory entry from vCard.

Return
Error code.
Parameters
  • di: Pointer to debugging description.
  • Buffer: Buffer to readCard text.
  • Pos: Position in output buffer.
  • Pbk: Phonebook data read from vCard.
  • Version: What vCard version to parse.

void GSM_FreeMemoryEntry(GSM_MemoryEntry * Entry)

Frees any dynamically allocated memory inside memory entry structure.

Parameters
  • Entry: Pointer to memory entry to process.

enum GSM_MemoryType

Enum defines ID for various phone and SIM memories. Phone modules can translate them to values specific for concrete models. Two letter codes (excluding VM and SL) are from GSM 07.07.

Values:

MEM_ME = 1

Internal memory of the mobile equipment

MEM_SM

SIM card memory

MEM_ON

Own numbers

MEM_DC

Dialled calls

MEM_RC

Received calls

MEM_MC

Missed calls

MEM_MT

Combined ME and SIM phonebook

MEM_FD

Fixed dial

MEM_VM

Voice mailbox

MEM_SL

Sent SMS logs

MEM_QD

Quick dialing choices.

MEM_INVALID

Invalid memory type.

struct GSM_MemoryStatus

Structure contains info about number of used/free entries in phonebook memory.

Public Members

int MemoryUsed

Number of used entries

GSM_MemoryType MemoryType

Memory type

int MemoryFree

Number of free entries

enum GSM_EntryType

Type of specific phonebook entry. In parenthesis is specified in which member of GSM_SubMemoryEntry value is stored.

Values:

PBK_Number_General = 1

General number. (Text)

PBK_Number_Mobile

Mobile number. (Text)

PBK_Number_Fax

Fax number. (Text)

PBK_Number_Pager

Pager number. (Text)

PBK_Number_Other

Other number. (Text)

PBK_Text_Note

Note. (Text)

PBK_Text_Postal

Complete postal address. (Text)

PBK_Text_Email

Email. (Text)

PBK_Text_Email2
PBK_Text_URL

URL (Text)

PBK_Date

Date and time of last call. (Date)

PBK_Caller_Group

Caller group. (Number)

PBK_Text_Name

Name (Text)

PBK_Text_LastName

Last name. (Text)

PBK_Text_FirstName

First name. (Text)

PBK_Text_Company

Company. (Text)

PBK_Text_JobTitle

Job title. (Text)

PBK_Category

Category. (Number, if -1 then text)

PBK_Private

Whether entry is private. (Number)

PBK_Text_StreetAddress

Street address. (Text)

PBK_Text_City

City. (Text)

PBK_Text_State

State. (Text)

PBK_Text_Zip

Zip code. (Text)

PBK_Text_Country

Country. (Text)

PBK_Text_Custom1

Custom information 1. (Text)

PBK_Text_Custom2

Custom information 2. (Text)

PBK_Text_Custom3

Custom information 3. (Text)

PBK_Text_Custom4

Custom information 4. (Text)

PBK_RingtoneID

Ringtone ID. (Number)

PBK_PictureID

Picture ID. (Number)

PBK_Text_UserID

User ID. (Text)

PBK_CallLength

Length of call (Number)

PBK_Text_LUID

LUID - Unique Identifier used for synchronisation (Text)

PBK_LastModified

Date of last modification (Date)

PBK_Text_NickName

Nick name (Text)

PBK_Text_FormalName

Formal name (Text)

PBK_Text_PictureName

Picture name (on phone filesystem). (Text)

PBK_PushToTalkID

Push-to-talk ID (Text)

PBK_Number_Messaging

Favorite messaging number. (Text)

PBK_Photo

Photo (Picture).

PBK_Text_SecondName

Second name. (Text)

PBK_Text_VOIP

VOIP address (Text).

PBK_Text_SIP

SIP address (Text).

PBK_Text_DTMF

DTMF (Text).

PBK_Number_Video

Video number. (Text)

PBK_Text_SWIS

See What I See address. (Text)

PBK_Text_WVID

Wireless Village user ID. (Text)

PBK_Text_NamePrefix

Name prefix (Text)

PBK_Text_NameSuffix

Name suffix (Text)

enum GSM_EntryLocation

Location of memory contact.

Values:

PBK_Location_Unknown = 0

No/Unknown location.

PBK_Location_Home

Home

PBK_Location_Work

Work

struct GSM_SubMemoryEntry

One value of phonebook memory entry.

Public Members

GSM_EntryType EntryType

Type of entry.

GSM_EntryLocation Location

Location for the entry.

GSM_DateTime Date

Text of entry (if applicable, see GSM_EntryType).

int Number

Number of entry (if applicable, see GSM_EntryType).

int VoiceTag

Voice dialling tag.

GSM_Error AddError

During adding SubEntry Gammu can return here info, if it was done OK

unsigned char GSM_SubMemoryEntry::Text[(GSM_PHONEBOOK_TEXT_LENGTH+1) *2]

Text of entry (if applicable, see GSM_EntryType).

GSM_BinaryPicture Picture

Picture data.

struct GSM_MemoryEntry

Structure for saving phonebook entries.

Public Members

GSM_MemoryType MemoryType

Used memory for phonebook entry

int Location

Used location for phonebook entry

int EntriesNum

Number of SubEntries in Entries table.

GSM_SubMemoryEntry GSM_MemoryEntry::Entries[GSM_PHONEBOOK_ENTRIES]

Values of SubEntries.

struct GSM_SpeedDial

Structure for saving speed dials.

Public Members

int Location

Number of speed dial: 2,3..,8,9

int MemoryNumberID

ID of phone number used in phonebook entry

GSM_MemoryType MemoryType

Memory, where is saved used phonebook entry

int MemoryLocation

Location in memory, where is saved used phonebook entry

enum GSM_VCardVersion

Types of vCard.

Values:

Nokia_VCard10 = 1

vCard 1.0 hacked for Nokia.

Nokia_VCard21

vCard 2.1 hacked for Nokia.

SonyEricsson_VCard10

vCard 1.0 hacked for Sony-Ericsson (should be standard vCard).

SonyEricsson_VCard21

vCard 2.1 hacked for Sony-Ericsson (should be standard vCard).

SonyEricsson_VCard21_Phone

vCard 2.1 hacked for Sony-Ericsson (should be standard vCard) from phone (no parsing of location and memory type).