# Managing call logs

## Data Structures
struct | _LinphoneCallLog
## Typedefs
typedef enum _LinphoneCallDir | LinphoneCallDir
typedef enum _LinphoneCallStatus | LinphoneCallStatus
typedef struct _LinphoneCallLog | LinphoneCallLog
## Enumerations
enum | _LinphoneCallDir { LinphoneCallOutgoing, LinphoneCallIncoming }
enum | _LinphoneCallStatus { LinphoneCallSuccess, LinphoneCallAborted, LinphoneCallMissed, LinphoneCallDeclined }
## Functions
char * | linphone_call_log_to_str (LinphoneCallLog *cl)
const rtp_stats_t * | linphone_call_log_get_local_stats (const LinphoneCallLog *cl)
const rtp_stats_t * | linphone_call_log_get_remote_stats (const LinphoneCallLog *cl)
void | linphone_call_log_set_ref_key (LinphoneCallLog *cl, const char *refkey)
const char * | linphone_call_log_get_ref_key (const LinphoneCallLog *cl)
const MSList * | linphone_core_get_call_logs (LinphoneCore *lc)
void | linphone_core_clear_call_logs (LinphoneCore *lc)

## Typedef Documentation

typedef enum _LinphoneCallDir LinphoneCallDir

Typedef for enum

typedef enum _LinphoneCallStatus LinphoneCallStatus

Enum representing the status of a call

typedef struct _LinphoneCallLog LinphoneCallLog

Structure representing a call log.

## Enumeration Type Documentation

enum _LinphoneCallDir

Enum representing the direction of a call.

Enumerator:

  LinphoneCallOutgoing | outgoing calls
  LinphoneCallIncoming | incoming calls

enum _LinphoneCallStatus

Enum representing the status of a call

Enumerator:

  LinphoneCallSuccess | The call was sucessful
  LinphoneCallAborted | The call was aborted
  LinphoneCallMissed | The call was missed (unanswered)
  LinphoneCallDeclined | The call was declined, either locally or by remote end

## Function Documentation

char* linphone_call_log_to_str | ( | LinphoneCallLog * | cl | ) |

Returns a human readable string describing the call.

Note:
  : the returned char* must be freed by the application (use ms_free()).

const rtp_stats_t* linphone_call_log_get_local_stats | ( | const LinphoneCallLog * | cl | ) |

Returns RTP statistics computed locally regarding the call.

const rtp_stats_t* linphone_call_log_get_remote_stats | ( | const LinphoneCallLog * | cl | ) |

Returns RTP statistics computed by remote end and sent back via RTCP.

Note:
  Not implemented yet.

void linphone_call_log_set_ref_key | ( | LinphoneCallLog * | cl,
|  | const char * | refkey |
| ) |  |  |

Associate a persistent reference key to the call log.

The reference key can be for example an id to an external database. It is stored in the config file, thus can survive to process exits/restarts.

const char* linphone_call_log_get_ref_key | ( | const LinphoneCallLog * | cl | ) |

Get the persistent reference key associated to the call log.

The reference key can be for example an id to an external database. It is stored in the config file, thus can survive to process exits/restarts.

const MSList* linphone_core_get_call_logs | ( | LinphoneCore * | lc | ) |

Get the list of call logs (past calls).

void linphone_core_clear_call_logs | ( | LinphoneCore * | lc | ) |

Erase the call log.