29typedef struct _dc_event_emitter dc_accounts_event_emitter_t;
 
  634#define DC_CONNECTIVITY_NOT_CONNECTED        1000 
  635#define DC_CONNECTIVITY_CONNECTING           2000 
  636#define DC_CONNECTIVITY_WORKING              3000 
  637#define DC_CONNECTIVITY_CONNECTED            4000 
  681#define DC_PUSH_NOT_CONNECTED 0 
  682#define DC_PUSH_HEARTBEAT     1 
  683#define DC_PUSH_CONNECTED     2 
  850#define         DC_GCL_ARCHIVED_ONLY         0x01 
  851#define         DC_GCL_NO_SPECIALS           0x02 
  852#define         DC_GCL_ADD_ALLDONE_HINT      0x04 
  853#define         DC_GCL_FOR_FORWARDING        0x08 
 1388#define         DC_GCM_ADDDAYMARKER          0x01 
 1389#define         DC_GCM_INFO_ONLY             0x02 
 2214#define         DC_GCL_DEPRECATED_VERIFIED_ONLY         0x01 
 2216#define         DC_GCL_ADD_SELF              0x02 
 2217#define         DC_GCL_ADDRESS               0x04 
 2368#define         DC_IMEX_EXPORT_SELF_KEYS      1  
 2369#define         DC_IMEX_IMPORT_SELF_KEYS      2  
 2370#define         DC_IMEX_EXPORT_BACKUP        11  
 2371#define         DC_IMEX_IMPORT_BACKUP        12  
 2564#define         DC_QR_ASK_VERIFYCONTACT      200  
 2565#define         DC_QR_ASK_VERIFYGROUP        202  
 2566#define         DC_QR_ASK_VERIFYBROADCAST    204  
 2567#define         DC_QR_FPR_OK                 210  
 2568#define         DC_QR_FPR_MISMATCH           220  
 2569#define         DC_QR_FPR_WITHOUT_ADDR       230  
 2570#define         DC_QR_ACCOUNT                250  
 2571#define         DC_QR_BACKUP                 251  
 2572#define         DC_QR_BACKUP2                252 
 2573#define         DC_QR_BACKUP_TOO_NEW         255 
 2574#define         DC_QR_PROXY                  271  
 2575#define         DC_QR_ADDR                   320  
 2576#define         DC_QR_TEXT                   330  
 2577#define         DC_QR_URL                    332  
 2578#define         DC_QR_ERROR                  400  
 2579#define         DC_QR_WITHDRAW_VERIFYCONTACT 500 
 2580#define         DC_QR_WITHDRAW_VERIFYGROUP   502  
 2581#define         DC_QR_REVIVE_VERIFYCONTACT   510 
 2582#define         DC_QR_REVIVE_VERIFYGROUP     512  
 2583#define         DC_QR_LOGIN                  520  
 3502int              dc_array_search_id          (
const dc_array_t* array, uint32_t needle, 
size_t* ret_index);
 
 3664char*            dc_chat_get_info_json       (
dc_context_t* context, 
size_t chat_id);
 
 3676#define         DC_CHAT_ID_TRASH             3  
 3677#define         DC_CHAT_ID_ARCHIVED_LINK     6  
 3678#define         DC_CHAT_ID_ALLDONE_HINT      7  
 3679#define         DC_CHAT_ID_LAST_SPECIAL      9  
 3961#define         DC_MSG_ID_MARKER1            1  
 3962#define         DC_MSG_ID_DAYMARKER          9 
 3963#define         DC_MSG_ID_LAST_SPECIAL       9 
 4625#define         DC_INFO_UNKNOWN                    0 
 4626#define         DC_INFO_GROUP_NAME_CHANGED         2 
 4627#define         DC_INFO_GROUP_IMAGE_CHANGED        3 
 4628#define         DC_INFO_MEMBER_ADDED_TO_GROUP      4 
 4629#define         DC_INFO_MEMBER_REMOVED_FROM_GROUP  5 
 4630#define         DC_INFO_AUTOCRYPT_SETUP_MESSAGE    6 
 4631#define         DC_INFO_SECURE_JOIN_MESSAGE        7 
 4632#define         DC_INFO_LOCATIONSTREAMING_ENABLED  8 
 4633#define         DC_INFO_LOCATION_ONLY              9 
 4634#define         DC_INFO_EPHEMERAL_TIMER_CHANGED   10 
 4635#define         DC_INFO_PROTECTION_ENABLED        11 
 4636#define         DC_INFO_PROTECTION_DISABLED       12  
 4637#define         DC_INFO_INVALID_UNENCRYPTED_MAIL  13 
 4638#define         DC_INFO_WEBXDC_INFO_MESSAGE       32 
 4639#define         DC_INFO_CHAT_E2EE                 50 
 5062#define         DC_CONTACT_ID_SELF           1 
 5063#define         DC_CONTACT_ID_INFO           2  
 5064#define         DC_CONTACT_ID_DEVICE         5  
 5065#define         DC_CONTACT_ID_LAST_SPECIAL   9 
 5158#define         dc_contact_get_first_name    dc_contact_get_display_name 
 5428#define         DC_TEXT1_DRAFT     1 
 5429#define         DC_TEXT1_USERNAME  2 
 5430#define         DC_TEXT1_SELF      3 
 5542#define DC_MSG_TEXT      10 
 5556#define DC_MSG_IMAGE     20 
 5564#define DC_MSG_GIF       21 
 5574#define DC_MSG_STICKER     23 
 5582#define DC_MSG_AUDIO     40 
 5591#define DC_MSG_VOICE     41 
 5602#define DC_MSG_VIDEO     50 
 5610#define DC_MSG_FILE      60 
 5628#define DC_MSG_CALL 71 
 5636#define DC_MSG_WEBXDC    80 
 5642#define DC_MSG_VCARD     90 
 5663#define         DC_STATE_UNDEFINED           0 
 5668#define         DC_STATE_IN_FRESH            10 
 5673#define         DC_STATE_IN_NOTICED          13 
 5678#define         DC_STATE_IN_SEEN             16 
 5685#define         DC_STATE_OUT_PREPARING       18 
 5690#define         DC_STATE_OUT_DRAFT           19 
 5695#define         DC_STATE_OUT_PENDING         20 
 5700#define         DC_STATE_OUT_FAILED          24 
 5706#define         DC_STATE_OUT_DELIVERED       26 
 5711#define         DC_STATE_OUT_MDN_RCVD        28 
 5733#define         DC_CHAT_TYPE_UNDEFINED       0 
 5738#define         DC_CHAT_TYPE_SINGLE          100 
 5743#define         DC_CHAT_TYPE_GROUP           120 
 5748#define         DC_CHAT_TYPE_MAILINGLIST     140 
 5761#define         DC_CHAT_TYPE_OUT_BROADCAST   160 
 5777#define         DC_CHAT_TYPE_IN_BROADCAST    165 
 5798#define DC_SOCKET_AUTO 0 
 5804#define DC_SOCKET_SSL 1 
 5810#define DC_SOCKET_STARTTLS 2 
 5816#define DC_SOCKET_PLAIN 3 
 5841#define DC_LP_AUTH_OAUTH2                0x2 
 5848#define DC_LP_AUTH_NORMAL                0x4 
 5855#define DC_LP_AUTH_FLAGS        (DC_LP_AUTH_OAUTH2|DC_LP_AUTH_NORMAL)  
 5872#define DC_CERTCK_AUTO 0 
 5878#define DC_CERTCK_STRICT 1 
 5884#define DC_CERTCK_ACCEPT_INVALID 2 
 5890#define DC_CERTCK_ACCEPT_INVALID_CERTIFICATES 3 
 5997#define dc_accounts_get_next_event dc_get_next_event 
 6009#define dc_accounts_event_emitter_unref dc_event_emitter_unref 
 6130#define DC_EVENT_INFO                     100 
 6139#define DC_EVENT_SMTP_CONNECTED           101 
 6148#define DC_EVENT_IMAP_CONNECTED           102 
 6156#define DC_EVENT_SMTP_MESSAGE_SENT        103 
 6164#define DC_EVENT_IMAP_MESSAGE_DELETED   104 
 6172#define DC_EVENT_IMAP_MESSAGE_MOVED   105 
 6180#define DC_EVENT_IMAP_INBOX_IDLE 106 
 6188#define DC_EVENT_NEW_BLOB_FILE 150 
 6196#define DC_EVENT_DELETED_BLOB_FILE 151 
 6206#define DC_EVENT_WARNING                  300 
 6226#define DC_EVENT_ERROR                    400 
 6239#define DC_EVENT_ERROR_SELF_NOT_IN_GROUP  410 
 6252#define DC_EVENT_MSGS_CHANGED             2000 
 6261#define DC_EVENT_REACTIONS_CHANGED        2001 
 6276#define DC_EVENT_INCOMING_REACTION        2002 
 6296#define DC_EVENT_INCOMING_WEBXDC_NOTIFY   2003 
 6311#define DC_EVENT_INCOMING_MSG             2005 
 6324#define DC_EVENT_INCOMING_MSG_BUNCH       2006 
 6339#define DC_EVENT_MSGS_NOTICED             2008 
 6349#define DC_EVENT_MSG_DELIVERED            2010 
 6360#define DC_EVENT_MSG_FAILED               2012 
 6370#define DC_EVENT_MSG_READ                 2015 
 6379#define DC_EVENT_MSG_DELETED              2016 
 6390#define DC_EVENT_CHAT_MODIFIED            2020 
 6398#define DC_EVENT_CHAT_EPHEMERAL_TIMER_MODIFIED 2021 
 6410#define DC_EVENT_CHAT_DELETED             2023 
 6419#define DC_EVENT_CONTACTS_CHANGED         2030 
 6431#define DC_EVENT_LOCATION_CHANGED         2035 
 6440#define DC_EVENT_CONFIGURE_PROGRESS       2041 
 6449#define DC_EVENT_IMEX_PROGRESS            2051 
 6462#define DC_EVENT_IMEX_FILE_WRITTEN        2052 
 6475#define DC_EVENT_SECUREJOIN_INVITER_PROGRESS      2060 
 6491#define DC_EVENT_SECUREJOIN_JOINER_PROGRESS       2061 
 6503#define DC_EVENT_CONNECTIVITY_CHANGED             2100 
 6510#define DC_EVENT_SELFAVATAR_CHANGED               2110 
 6522#define DC_EVENT_CONFIG_SYNCED                    2111 
 6539#define DC_EVENT_WEBXDC_STATUS_UPDATE             2120 
 6547#define DC_EVENT_WEBXDC_INSTANCE_DELETED          2121 
 6559#define DC_EVENT_WEBXDC_REALTIME_DATA             2150 
 6568#define DC_EVENT_WEBXDC_REALTIME_ADVERTISEMENT    2151 
 6579#define DC_EVENT_ACCOUNTS_BACKGROUND_FETCH_DONE   2200 
 6587#define DC_EVENT_CHATLIST_CHANGED              2300 
 6596#define DC_EVENT_CHATLIST_ITEM_CHANGED         2301 
 6604#define DC_EVENT_ACCOUNTS_CHANGED              2302 
 6616#define DC_EVENT_ACCOUNTS_ITEM_CHANGED         2303 
 6623#define DC_EVENT_CHANNEL_OVERFLOW              2400 
 6646#define DC_EVENT_INCOMING_CALL                            2550 
 6656 #define DC_EVENT_INCOMING_CALL_ACCEPTED                  2560 
 6666#define DC_EVENT_OUTGOING_CALL_ACCEPTED                   2570 
 6676#define DC_EVENT_CALL_ENDED                               2580 
 6684#define DC_EVENT_DATA1_IS_STRING(e)  0     
 6685#define DC_EVENT_DATA2_IS_STRING(e)  ((e)==DC_EVENT_CONFIGURE_PROGRESS || (e)==DC_EVENT_IMEX_FILE_WRITTEN || ((e)>=100 && (e)<=499)) 
 6691#define DC_SHOW_EMAILS_OFF               0 
 6692#define DC_SHOW_EMAILS_ACCEPTED_CONTACTS 1 
 6693#define DC_SHOW_EMAILS_ALL               2 
 6699#define DC_MEDIA_QUALITY_BALANCED 0 
 6700#define DC_MEDIA_QUALITY_WORSE    1 
 6724#define         DC_PROVIDER_STATUS_OK           1 
 6737#define         DC_PROVIDER_STATUS_PREPARATION  2 
 6751#define         DC_PROVIDER_STATUS_BROKEN       3 
 6773#define         DC_CHAT_VISIBILITY_NORMAL      0 
 6787#define         DC_CHAT_VISIBILITY_ARCHIVED    1 
 6793#define         DC_CHAT_VISIBILITY_PINNED      2 
 6814#define DC_DOWNLOAD_DONE           0 
 6819#define DC_DOWNLOAD_AVAILABLE      10 
 6824#define DC_DOWNLOAD_FAILURE        20 
 6829#define DC_DOWNLOAD_UNDECIPHERABLE 30 
 6834#define DC_DOWNLOAD_IN_PROGRESS    1000 
 6865#define DC_STR_NOMESSAGES                 1 
 6870#define DC_STR_SELF                       2 
 6875#define DC_STR_DRAFT                      3 
 6880#define DC_STR_VOICEMESSAGE               7 
 6885#define DC_STR_IMAGE                      9 
 6890#define DC_STR_VIDEO                      10 
 6895#define DC_STR_AUDIO                      11 
 6900#define DC_STR_FILE                       12 
 6909#define DC_STR_MSGGRPNAME                 15 
 6916#define DC_STR_MSGGRPIMGCHANGED           16 
 6924#define DC_STR_MSGADDMEMBER               17 
 6932#define DC_STR_MSGDELMEMBER               18 
 6939#define DC_STR_MSGGROUPLEFT               19 
 6944#define DC_STR_GIF                        23 
 6947#define DC_STR_ENCRYPTEDMSG               24 
 6952#define DC_STR_E2E_AVAILABLE              25 
 6955#define DC_STR_ENCR_TRANSP                27 
 6960#define DC_STR_ENCR_NONE                  28 
 6965#define DC_STR_FINGERPRINTS               30 
 6972#define DC_STR_READRCPT                   31 
 6980#define DC_STR_READRCPT_MAILBODY          32 
 6983#define DC_STR_MSGGRPIMGDELETED           33 
 6989#define DC_STR_E2E_PREFERRED              34 
 6995#define DC_STR_CONTACT_VERIFIED           35 
 7002#define DC_STR_CONTACT_NOT_VERIFIED       36 
 7009#define DC_STR_CONTACT_SETUP_CHANGED      37 
 7014#define DC_STR_ARCHIVEDCHATS              40 
 7019#define DC_STR_AC_SETUP_MSG_SUBJECT       42 
 7024#define DC_STR_AC_SETUP_MSG_BODY          43 
 7030#define DC_STR_CANNOT_LOGIN               60 
 7040#define DC_STR_MSGACTIONBYUSER            62 
 7049#define DC_STR_MSGACTIONBYME              63 
 7054#define DC_STR_MSGLOCATIONENABLED         64 
 7059#define DC_STR_MSGLOCATIONDISABLED        65 
 7064#define DC_STR_LOCATION                   66 
 7069#define DC_STR_STICKER                    67 
 7074#define DC_STR_DEVICE_MESSAGES            68 
 7079#define DC_STR_SAVED_MESSAGES             69 
 7084#define DC_STR_DEVICE_MESSAGES_HINT       70 
 7089#define DC_STR_WELCOME_MESSAGE            71 
 7096#define DC_STR_UNKNOWN_SENDER_FOR_CHAT    72 
 7103#define DC_STR_SUBJECT_FOR_NEW_CONTACT    73 
 7109#define DC_STR_FAILED_SENDING_TO          74 
 7116#define DC_STR_EPHEMERAL_DISABLED         75 
 7125#define DC_STR_EPHEMERAL_SECONDS          76 
 7132#define DC_STR_EPHEMERAL_MINUTE           77 
 7139#define DC_STR_EPHEMERAL_HOUR             78 
 7146#define DC_STR_EPHEMERAL_DAY              79 
 7153#define DC_STR_EPHEMERAL_WEEK             80 
 7156#define DC_STR_EPHEMERAL_FOUR_WEEKS       81 
 7162#define DC_STR_CONFIGURATION_FAILED       84 
 7168#define DC_STR_BAD_TIME_MSG_BODY          85 
 7173#define DC_STR_UPDATE_REMINDER_MSG_BODY   86 
 7178#define DC_STR_ERROR_NO_NETWORK           87 
 7184#define DC_STR_REPLY_NOUN                 90 
 7189#define DC_STR_SELF_DELETED_MSG_BODY      91 
 7194#define DC_STR_SERVER_TURNED_OFF          92 
 7203#define DC_STR_EPHEMERAL_MINUTES          93 
 7212#define DC_STR_EPHEMERAL_HOURS            94 
 7221#define DC_STR_EPHEMERAL_DAYS             95 
 7230#define DC_STR_EPHEMERAL_WEEKS            96 
 7235#define DC_STR_FORWARDED                  97 
 7242#define DC_STR_QUOTA_EXCEEDING_MSG_BODY   98 
 7251#define DC_STR_PARTIAL_DOWNLOAD_MSG_BODY  99 
 7258#define DC_STR_DOWNLOAD_AVAILABILITY      100 
 7263#define DC_STR_SYNC_MSG_SUBJECT           101 
 7273#define DC_STR_SYNC_MSG_BODY              102 
 7278#define DC_STR_INCOMING_MESSAGES          103 
 7283#define DC_STR_OUTGOING_MESSAGES          104 
 7290#define DC_STR_STORAGE_ON_DOMAIN          105 
 7293#define DC_STR_ONE_MOMENT                 106 
 7298#define DC_STR_CONNECTED                  107 
 7303#define DC_STR_CONNTECTING                108 
 7308#define DC_STR_UPDATING                   109 
 7313#define DC_STR_SENDING                    110 
 7318#define DC_STR_LAST_MSG_SENT_SUCCESSFULLY 111 
 7325#define DC_STR_ERROR                      112 
 7330#define DC_STR_NOT_SUPPORTED_BY_PROVIDER  113 
 7335#define DC_STR_MESSAGES                   114 
 7340#define DC_STR_BROADCAST_LIST             115 
 7345#define DC_STR_PART_OF_TOTAL_USED         116 
 7355#define DC_STR_SECURE_JOIN_STARTED        117 
 7365#define DC_STR_SECURE_JOIN_REPLIES        118 
 7372#define DC_STR_SETUP_CONTACT_QR_DESC      119 
 7379#define DC_STR_SECURE_JOIN_GROUP_QR_DESC  120 
 7384#define DC_STR_NOT_CONNECTED              121 
 7390#define DC_STR_AEAP_ADDR_CHANGED          122 
 7403#define DC_STR_AEAP_EXPLANATION_AND_LINK  123 
 7409#define DC_STR_GROUP_NAME_CHANGED_BY_YOU 124 
 7416#define DC_STR_GROUP_NAME_CHANGED_BY_OTHER 125 
 7419#define DC_STR_GROUP_IMAGE_CHANGED_BY_YOU 126 
 7424#define DC_STR_GROUP_IMAGE_CHANGED_BY_OTHER 127 
 7431#define DC_STR_ADD_MEMBER_BY_YOU 128 
 7439#define DC_STR_ADD_MEMBER_BY_OTHER 129 
 7446#define DC_STR_REMOVE_MEMBER_BY_YOU 130 
 7454#define DC_STR_REMOVE_MEMBER_BY_OTHER 131 
 7459#define DC_STR_GROUP_LEFT_BY_YOU 132 
 7466#define DC_STR_GROUP_LEFT_BY_OTHER 133 
 7471#define DC_STR_GROUP_IMAGE_DELETED_BY_YOU 134 
 7478#define DC_STR_GROUP_IMAGE_DELETED_BY_OTHER 135 
 7483#define DC_STR_LOCATION_ENABLED_BY_YOU 136 
 7490#define DC_STR_LOCATION_ENABLED_BY_OTHER 137 
 7495#define DC_STR_EPHEMERAL_TIMER_DISABLED_BY_YOU 138 
 7502#define DC_STR_EPHEMERAL_TIMER_DISABLED_BY_OTHER 139 
 7509#define DC_STR_EPHEMERAL_TIMER_SECONDS_BY_YOU 140 
 7517#define DC_STR_EPHEMERAL_TIMER_SECONDS_BY_OTHER 141 
 7522#define DC_STR_EPHEMERAL_TIMER_1_MINUTE_BY_YOU 142 
 7529#define DC_STR_EPHEMERAL_TIMER_1_MINUTE_BY_OTHER 143 
 7534#define DC_STR_EPHEMERAL_TIMER_1_HOUR_BY_YOU 144 
 7541#define DC_STR_EPHEMERAL_TIMER_1_HOUR_BY_OTHER 145 
 7546#define DC_STR_EPHEMERAL_TIMER_1_DAY_BY_YOU 146 
 7553#define DC_STR_EPHEMERAL_TIMER_1_DAY_BY_OTHER 147 
 7558#define DC_STR_EPHEMERAL_TIMER_1_WEEK_BY_YOU 148 
 7565#define DC_STR_EPHEMERAL_TIMER_1_WEEK_BY_OTHER 149 
 7572#define DC_STR_EPHEMERAL_TIMER_MINUTES_BY_YOU 150 
 7580#define DC_STR_EPHEMERAL_TIMER_MINUTES_BY_OTHER 151 
 7587#define DC_STR_EPHEMERAL_TIMER_HOURS_BY_YOU 152 
 7595#define DC_STR_EPHEMERAL_TIMER_HOURS_BY_OTHER 153 
 7602#define DC_STR_EPHEMERAL_TIMER_DAYS_BY_YOU 154 
 7610#define DC_STR_EPHEMERAL_TIMER_DAYS_BY_OTHER 155 
 7617#define DC_STR_EPHEMERAL_TIMER_WEEKS_BY_YOU 156 
 7625#define DC_STR_EPHEMERAL_TIMER_WEEKS_BY_OTHER 157 
 7630#define DC_STR_EPHEMERAL_TIMER_1_YEAR_BY_YOU 158 
 7637#define DC_STR_EPHEMERAL_TIMER_1_YEAR_BY_OTHER 159 
 7642#define DC_STR_BACKUP_TRANSFER_QR 162 
 7647#define DC_STR_BACKUP_TRANSFER_MSG_BODY 163 
 7652#define DC_STR_CHAT_PROTECTION_ENABLED 170 
 7658#define DC_STR_CHAT_PROTECTION_DISABLED 171 
 7663#define DC_STR_NEW_GROUP_SEND_FIRST_MESSAGE 172 
 7670#define DC_STR_MESSAGE_ADD_MEMBER 173 
 7677#define DC_STR_INVALID_UNENCRYPTED_MAIL 174 
 7685#define DC_STR_YOU_REACTED 176 
 7694#define DC_STR_REACTED_BY 177 
 7699#define DC_STR_SECUREJOIN_WAIT 190 
 7704#define DC_STR_SECUREJOIN_WAIT_TIMEOUT 191 
 7710#define DC_STR_SECUREJOIN_TAKES_LONGER 192 
 7713#define DC_STR_DONATION_REQUEST 193 
 7716#define DC_STR_OUTGOING_CALL 194 
 7719#define DC_STR_INCOMING_CALL 195 
 7722#define DC_STR_DECLINED_CALL 196 
 7725#define DC_STR_CANCELED_CALL 197 
 7728#define DC_STR_MISSED_CALL 198 
 7733#define DC_STR_CHANNEL_LEFT_BY_YOU 200 
 7740#define DC_STR_SECURE_JOIN_CHANNEL_QR_DESC  201 
 7745#define DC_STR_PROXY_ENABLED  220 
 7750#define DC_STR_PROXY_ENABLED_DESCRIPTION  221 
 7759char* _dc_header_file_location(
void) {
 
This class provides functionality that can be used to manage several dc_context_t objects running at ...
 
int dc_accounts_select_account(dc_accounts_t *accounts, uint32_t account_id)
Change the selected account.
 
void dc_accounts_unref(dc_accounts_t *accounts)
Free an account manager object.
 
dc_event_emitter_t * dc_accounts_get_event_emitter(dc_accounts_t *accounts)
Create the event emitter that is used to receive events.
 
dc_context_t * dc_accounts_get_selected_account(dc_accounts_t *accounts)
Get the currently selected account.
 
void dc_accounts_maybe_network(dc_accounts_t *accounts)
This function should be called when there is a hint that the network is available again.
 
uint32_t dc_accounts_migrate_account(dc_accounts_t *accounts, const char *dbfile)
Migrate independent accounts into accounts managed by the account manager.
 
int dc_accounts_background_fetch(dc_accounts_t *accounts, uint64_t timeout)
Perform a background fetch for all accounts in parallel with a timeout.
 
dc_context_t * dc_accounts_get_account(dc_accounts_t *accounts, uint32_t account_id)
Get an account context from an account ID.
 
dc_array_t * dc_accounts_get_all(dc_accounts_t *accounts)
List all accounts.
 
dc_jsonrpc_instance_t * dc_jsonrpc_init(dc_accounts_t *account_manager)
Create the jsonrpc instance that is used to call the jsonrpc.
 
void dc_accounts_set_push_device_token(dc_accounts_t *accounts, const char *token)
Sets device token for Apple Push Notification service.
 
void dc_accounts_start_io(dc_accounts_t *accounts)
Start job and IMAP/SMTP tasks for all accounts managed by the account manager.
 
void dc_accounts_stop_io(dc_accounts_t *accounts)
Stop job and IMAP/SMTP tasks for all accounts and return when they are finished.
 
void dc_accounts_maybe_network_lost(dc_accounts_t *accounts)
This function can be called when there is a hint that the network is lost.
 
uint32_t dc_accounts_add_account(dc_accounts_t *accounts)
Add a new account to the account manager.
 
dc_accounts_t * dc_accounts_new(const char *dir, int writable)
Create a new account manager.
 
uint32_t dc_accounts_add_closed_account(dc_accounts_t *accounts)
Add a new closed account to the account manager.
 
int dc_accounts_remove_account(dc_accounts_t *accounts, uint32_t account_id)
Remove an account from the account manager.
 
An object containing a simple array.
 
void dc_array_unref(dc_array_t *array)
Free an array object.
 
double dc_array_get_accuracy(const dc_array_t *array, size_t index)
Return the accuracy of the item at the given index.
 
int64_t dc_array_get_timestamp(const dc_array_t *array, size_t index)
Return the timestamp of the item at the given index.
 
uint32_t dc_array_get_chat_id(const dc_array_t *array, size_t index)
Return the chat ID of the item at the given index.
 
int dc_array_is_independent(const dc_array_t *array, size_t index)
Return the independent-state of the location at the given index.
 
uint32_t dc_array_get_msg_id(const dc_array_t *array, size_t index)
Return the message ID of the item at the given index.
 
uint32_t dc_array_get_contact_id(const dc_array_t *array, size_t index)
Return the contact ID of the item at the given index.
 
double dc_array_get_longitude(const dc_array_t *array, size_t index)
Return the longitude of the item at the given index.
 
size_t dc_array_get_cnt(const dc_array_t *array)
Find out the number of items in an array.
 
uint32_t dc_array_get_id(const dc_array_t *array, size_t index)
Get the item at the given index as an ID.
 
char * dc_array_get_marker(const dc_array_t *array, size_t index)
Return the marker-character of the item at the given index.
 
double dc_array_get_latitude(const dc_array_t *array, size_t index)
Return the latitude of the item at the given index.
 
char * dc_backup_provider_get_qr(const dc_backup_provider_t *backup_provider)
Returns the QR code text that will offer the backup to other devices.
 
void dc_backup_provider_unref(dc_backup_provider_t *backup_provider)
Frees a dc_backup_provider_t object.
 
void dc_backup_provider_wait(dc_backup_provider_t *backup_provider)
Waits for the sending to finish.
 
char * dc_backup_provider_get_qr_svg(const dc_backup_provider_t *backup_provider)
Returns the QR code SVG image that will offer the backup to other devices.
 
dc_backup_provider_t * dc_backup_provider_new(dc_context_t *context)
Creates an object for sending a backup to another device.
 
An object representing a single chat in memory.
 
char * dc_chat_get_name(const dc_chat_t *chat)
Get name of a chat.
 
int dc_chat_is_sending_locations(const dc_chat_t *chat)
Check if locations are sent to the chat at the time the object was created using dc_get_chat().
 
int dc_chat_get_type(const dc_chat_t *chat)
Get chat type as one of the DC_CHAT_TYPE constants:
 
char * dc_chat_get_mailinglist_addr(const dc_chat_t *chat)
Returns the address where messages are sent to if the chat is a mailing list.
 
uint32_t dc_chat_get_id(const dc_chat_t *chat)
Get the chat ID.
 
int dc_chat_is_device_talk(const dc_chat_t *chat)
Check if a chat is a device-talk.
 
int64_t dc_chat_get_remaining_mute_duration(const dc_chat_t *chat)
Get the exact state of the mute of a chat.
 
int dc_chat_is_contact_request(const dc_chat_t *chat)
Check if a chat is a contact request chat.
 
int dc_chat_get_visibility(const dc_chat_t *chat)
Get visibility of chat.
 
void dc_chat_unref(dc_chat_t *chat)
Free a chat object.
 
int dc_chat_is_unpromoted(const dc_chat_t *chat)
Check if a group chat is still unpromoted.
 
uint32_t dc_chat_get_color(const dc_chat_t *chat)
Get a color for the chat.
 
int dc_chat_can_send(const dc_chat_t *chat)
Check if messages can be sent to a given chat.
 
int dc_chat_is_self_talk(const dc_chat_t *chat)
Check if a chat is a self talk.
 
char * dc_chat_get_profile_image(const dc_chat_t *chat)
Get the chat's profile image.
 
int dc_chat_is_protected(const dc_chat_t *chat)
Deprecated, always returns 0.
 
int dc_chat_is_muted(const dc_chat_t *chat)
Check whether the chat is currently muted (can be changed by dc_set_chat_mute_duration()).
 
int dc_chat_is_encrypted(const dc_chat_t *chat)
Check if the chat is encrypted.
 
An object representing a single chatlist in memory.
 
uint32_t dc_chatlist_get_msg_id(const dc_chatlist_t *chatlist, size_t index)
Get a single message ID of a chatlist.
 
void dc_chatlist_unref(dc_chatlist_t *chatlist)
Free a chatlist object.
 
dc_lot_t * dc_chatlist_get_summary(const dc_chatlist_t *chatlist, size_t index, dc_chat_t *chat)
Get a summary for a chatlist index.
 
dc_context_t * dc_chatlist_get_context(dc_chatlist_t *chatlist)
Helper function to get the associated context object.
 
uint32_t dc_chatlist_get_chat_id(const dc_chatlist_t *chatlist, size_t index)
Get a single chat ID of a chatlist.
 
size_t dc_chatlist_get_cnt(const dc_chatlist_t *chatlist)
Find out the number of chats in a chatlist.
 
An object representing a single account.
 
char * dc_imex_has_backup(dc_context_t *context, const char *dir)
Check if there is a backup file.
 
int dc_add_address_book(dc_context_t *context, const char *addr_book)
Add a number of contacts.
 
int dc_get_msg_cnt(dc_context_t *context, uint32_t chat_id)
Get the total number of messages in a chat.
 
dc_context_t * dc_context_new_closed(const char *dbfile)
Create a new context object.
 
char * dc_make_vcard(dc_context_t *context, uint32_t contact_id)
Make a vCard.
 
dc_array_t * dc_get_contacts(dc_context_t *context, uint32_t flags, const char *query)
Returns known and unblocked contacts.
 
void dc_set_draft(dc_context_t *context, uint32_t chat_id, dc_msg_t *msg)
Save a draft for a chat in the database.
 
uint32_t dc_add_device_msg(dc_context_t *context, const char *label, dc_msg_t *msg)
Add a message to the device-chat.
 
void dc_send_delete_request(dc_context_t *context, const uint32_t *msg_ids, int msg_cnt)
Send chat members a request to delete the given messages.
 
dc_chatlist_t * dc_get_chatlist(dc_context_t *context, int flags, const char *query_str, uint32_t query_id)
Get a list of chats.
 
dc_array_t * dc_get_next_msgs(dc_context_t *context)
Returns the message IDs of all messages of any chat with a database ID higher than last_msg_id config...
 
uint32_t dc_init_webxdc_integration(dc_context_t *context, uint32_t chat_id)
Init a Webxdc integration.
 
char * dc_get_contact_encrinfo(dc_context_t *context, uint32_t contact_id)
Get encryption info for a contact.
 
uint32_t dc_lookup_contact_id_by_addr(dc_context_t *context, const char *addr)
Looks up a known and unblocked contact with a given e-mail address.
 
int dc_set_chat_profile_image(dc_context_t *context, uint32_t chat_id, const char *image)
Set group profile image.
 
uint32_t dc_send_text_msg(dc_context_t *context, uint32_t chat_id, const char *text_to_send)
Send a simple text message a given chat.
 
void dc_maybe_network(dc_context_t *context)
This function should be called when there is a hint that the network is available again,...
 
int dc_was_device_msg_ever_added(dc_context_t *context, const char *label)
Check if a device-message with a given label was ever added.
 
uint32_t dc_get_chat_ephemeral_timer(dc_context_t *context, uint32_t chat_id)
Get the chat's ephemeral message timer.
 
dc_array_t * dc_get_chat_media(dc_context_t *context, uint32_t chat_id, int msg_type, int msg_type2, int msg_type3)
Returns all message IDs of the given types in a given chat or any chat.
 
dc_lot_t * dc_check_qr(dc_context_t *context, const char *qr)
Check a scanned QR code.
 
dc_array_t * dc_get_locations(dc_context_t *context, uint32_t chat_id, uint32_t contact_id, int64_t timestamp_begin, int64_t timestamp_end)
Get shared locations from the database.
 
void dc_send_locations_to_chat(dc_context_t *context, uint32_t chat_id, int seconds)
Enable or disable location streaming for a chat.
 
dc_contact_t * dc_get_contact(dc_context_t *context, uint32_t contact_id)
Get a single contact object.
 
void dc_stop_io(dc_context_t *context)
Stop job, IMAP, SMTP and other tasks and return when they are finished.
 
dc_msg_t * dc_get_draft(dc_context_t *context, uint32_t chat_id)
Get draft for a chat, if any.
 
int dc_preconfigure_keypair(dc_context_t *context, const char *secret_data)
Save a keypair as the default keys for the user.
 
char * dc_create_qr_svg(const char *payload)
Create a QR code from any input data.
 
char * dc_get_blobdir(const dc_context_t *context)
Get the blob directory.
 
dc_array_t * dc_get_blocked_contacts(dc_context_t *context)
Get blocked contacts.
 
void dc_context_unref(dc_context_t *context)
Free a context object.
 
void dc_stop_ongoing_process(dc_context_t *context)
Signal an ongoing process to stop.
 
dc_msg_t * dc_get_msg(dc_context_t *context, uint32_t msg_id)
Get a single message object of the type dc_msg_t.
 
dc_array_t * dc_get_chat_msgs(dc_context_t *context, uint32_t chat_id, uint32_t flags, uint32_t marker1before)
Get all message IDs belonging to a chat.
 
char * dc_get_info(const dc_context_t *context)
Get information about the context.
 
int dc_receive_backup(dc_context_t *context, const char *qr)
Gets a backup offered by a dc_backup_provider_t object on another device.
 
int dc_is_sending_locations_to_chat(dc_context_t *context, uint32_t chat_id)
Check if location streaming is enabled.
 
void dc_block_chat(dc_context_t *context, uint32_t chat_id)
Block a chat.
 
char * dc_get_securejoin_qr(dc_context_t *context, uint32_t chat_id)
Get QR code text that will offer an Setup-Contact or Verified-Group invitation.
 
int dc_continue_key_transfer(dc_context_t *context, uint32_t msg_id, const char *setup_code)
Continue the Autocrypt Key Transfer on another device.
 
int dc_end_call(dc_context_t *context, uint32_t msg_id)
End incoming or outgoing call.
 
dc_array_t * dc_get_fresh_msgs(dc_context_t *context)
Returns the message IDs of all fresh messages of any chat.
 
int dc_set_stock_translation(dc_context_t *context, uint32_t stock_id, const char *stock_msg)
Set stock string translation.
 
void dc_set_webxdc_integration(dc_context_t *context, const char *file)
Set Webxdc file as integration.
 
int dc_set_chat_mute_duration(dc_context_t *context, uint32_t chat_id, int64_t duration)
Set mute duration of a chat.
 
dc_array_t * dc_wait_next_msgs(dc_context_t *context)
Waits for notification of new messages and returns an array of new message IDs.
 
int dc_get_fresh_msg_cnt(dc_context_t *context, uint32_t chat_id)
Get the number of fresh messages in a chat.
 
int dc_set_chat_name(dc_context_t *context, uint32_t chat_id, const char *name)
Set group name.
 
uint32_t dc_create_broadcast_list(dc_context_t *context)
Create a new broadcast list.
 
void dc_marknoticed_chat(dc_context_t *context, uint32_t chat_id)
Mark all messages in a chat as noticed.
 
int dc_set_chat_ephemeral_timer(dc_context_t *context, uint32_t chat_id, uint32_t timer)
Set the chat's ephemeral message timer.
 
int dc_remove_contact_from_chat(dc_context_t *context, uint32_t chat_id, uint32_t contact_id)
Remove a member from a group.
 
dc_array_t * dc_search_msgs(dc_context_t *context, uint32_t chat_id, const char *query)
Search messages containing the given query string.
 
int dc_may_be_valid_addr(const char *addr)
Rough check if a string may be a valid e-mail address.
 
int dc_is_configured(const dc_context_t *context)
Check if the context is already configured.
 
int dc_estimate_deletion_cnt(dc_context_t *context, int from_server, int64_t seconds)
Estimate the number of messages that will be deleted by the dc_set_config()-options delete_device_aft...
 
int dc_get_connectivity(dc_context_t *context)
Get the current connectivity, i.e.
 
char * dc_get_last_error(dc_context_t *context)
Get last error string.
 
char * dc_get_oauth2_url(dc_context_t *context, const char *addr, const char *redirect_uri)
Get URL that can be used to initiate an OAuth2 authorization.
 
uint32_t dc_get_chat_id_by_contact_id(dc_context_t *context, uint32_t contact_id)
Check, if there is a normal chat with a given contact.
 
char * dc_get_config(dc_context_t *context, const char *key)
Get a configuration option.
 
int dc_set_location(dc_context_t *context, double latitude, double longitude, double accuracy)
Set current location.
 
void dc_set_chat_visibility(dc_context_t *context, uint32_t chat_id, int visibility)
Set chat visibility to pinned, archived or normal.
 
int dc_get_push_state(dc_context_t *context)
Get the current push notification state.
 
int dc_add_contact_to_chat(dc_context_t *context, uint32_t chat_id, uint32_t contact_id)
Add a member to a group.
 
char * dc_get_msg_info(dc_context_t *context, uint32_t msg_id)
Get an informational text for a single message.
 
char * dc_get_connectivity_html(dc_context_t *context)
Get an overview of the current connectivity, and possibly more statistics.
 
dc_array_t * dc_get_chat_contacts(dc_context_t *context, uint32_t chat_id)
Get the contact IDs belonging to a chat.
 
dc_chat_t * dc_get_chat(dc_context_t *context, uint32_t chat_id)
Get a chat object by a chat ID.
 
uint32_t dc_get_id(dc_context_t *context)
Get the ID of a context object.
 
dc_context_t * dc_context_new(const char *os_name, const char *dbfile, const char *blobdir)
Create a new context object and try to open it without passphrase.
 
uint32_t dc_send_msg_sync(dc_context_t *context, uint32_t chat_id, dc_msg_t *msg)
Send a message defined by a dc_msg_t object to a chat, synchronously.
 
uint32_t dc_create_contact(dc_context_t *context, const char *name, const char *addr)
Add a single contact as a result of an explicit user action.
 
uint32_t dc_send_msg(dc_context_t *context, uint32_t chat_id, dc_msg_t *msg)
Send a message defined by a dc_msg_t object to a chat.
 
void dc_download_full_msg(dc_context_t *context, int msg_id)
Asks the core to start downloading a message fully.
 
char * dc_get_msg_html(dc_context_t *context, uint32_t msg_id)
Get uncut message, if available.
 
dc_event_emitter_t * dc_get_event_emitter(dc_context_t *context)
Create the event emitter that is used to receive events.
 
void dc_start_io(dc_context_t *context)
Start job and IMAP/SMTP tasks.
 
void dc_imex(dc_context_t *context, int what, const char *param1, const char *param2)
Import/export things.
 
char * dc_get_securejoin_qr_svg(dc_context_t *context, uint32_t chat_id)
Get QR code image from the QR code text generated by dc_get_securejoin_qr().
 
dc_array_t * dc_import_vcard(dc_context_t *context, const char *vcard)
Import a vCard.
 
char * dc_get_webxdc_status_updates(dc_context_t *context, uint32_t msg_id, uint32_t serial)
Get webxdc status updates.
 
dc_lot_t * dc_chatlist_get_summary2(dc_context_t *context, uint32_t chat_id, uint32_t msg_id)
Create a chatlist summary item when the chatlist object is already unref()'d.
 
uint32_t dc_create_chat_by_contact_id(dc_context_t *context, uint32_t contact_id)
Create a normal chat with a single user.
 
void dc_forward_msgs(dc_context_t *context, const uint32_t *msg_ids, int msg_cnt, uint32_t chat_id)
Forward messages to another chat.
 
int dc_send_webxdc_status_update(dc_context_t *context, uint32_t msg_id, const char *json, const char *descr)
A webxdc instance sends a status update to its other members.
 
dc_chatlist_t * dc_get_similar_chatlist(dc_context_t *context, uint32_t chat_id)
Returns a list of similar chats.
 
void dc_save_msgs(dc_context_t *context, const uint32_t *msg_ids, int msg_cnt)
Save a copy of messages in "Saved Messages".
 
int dc_set_config_from_qr(dc_context_t *context, const char *qr)
Set configuration values from a QR code.
 
void dc_str_unref(char *str)
Release a string returned by another deltachat-core function.
 
void dc_send_edit_request(dc_context_t *context, uint32_t msg_id, const char *new_text)
Send chat members a request to edit the given message's text.
 
int dc_delete_contact(dc_context_t *context, uint32_t contact_id)
Delete a contact so that it disappears from the corresponding lists.
 
void dc_delete_chat(dc_context_t *context, uint32_t chat_id)
Delete a chat.
 
void dc_block_contact(dc_context_t *context, uint32_t contact_id, int block)
Block or unblock a contact.
 
int dc_resend_msgs(dc_context_t *context, const uint32_t *msg_ids, int msg_cnt)
Resend messages and make information available for newly added chat members.
 
void dc_delete_msgs(dc_context_t *context, const uint32_t *msg_ids, int msg_cnt)
Delete messages.
 
void dc_configure(dc_context_t *context)
Configure a context.
 
uint32_t dc_place_outgoing_call(dc_context_t *context, uint32_t chat_id, const char *place_call_info)
Start an outgoing call.
 
uint32_t dc_join_securejoin(dc_context_t *context, const char *qr)
Continue a Setup-Contact or Verified-Group-Invite protocol started on another device with dc_get_secu...
 
void dc_markseen_msgs(dc_context_t *context, const uint32_t *msg_ids, int msg_cnt)
Mark messages as presented to the user.
 
uint32_t dc_create_group_chat(dc_context_t *context, int protect, const char *name)
Create a new group chat.
 
void dc_delete_all_locations(dc_context_t *context)
Delete all locations on the current device.
 
int dc_is_contact_in_chat(dc_context_t *context, uint32_t chat_id, uint32_t contact_id)
Check if a given contact ID is a member of a group chat.
 
int dc_context_is_open(dc_context_t *context)
Returns 1 if database is open.
 
int dc_accept_incoming_call(dc_context_t *context, uint32_t msg_id, const char *accept_call_info)
Accept incoming call.
 
void dc_accept_chat(dc_context_t *context, uint32_t chat_id)
Accept a contact request chat.
 
int dc_context_open(dc_context_t *context, const char *passphrase)
Opens the database with the given passphrase.
 
char * dc_initiate_key_transfer(dc_context_t *context)
Initiate Autocrypt Setup Transfer.
 
int dc_get_blocked_cnt(dc_context_t *context)
Get the number of blocked contacts.
 
int dc_context_change_passphrase(dc_context_t *context, const char *passphrase)
Changes the passphrase on the open database.
 
char * dc_get_chat_encrinfo(dc_context_t *context, uint32_t chat_id)
Get encryption info for a chat.
 
int dc_set_config(dc_context_t *context, const char *key, const char *value)
Configure the context.
 
Opaque object that is used to get events from a single context.
 
void dc_event_emitter_unref(dc_event_emitter_t *emitter)
Free a context event emitter object.
 
dc_event_t * dc_get_next_event(dc_event_emitter_t *emitter)
Get the next event from a context event emitter object.
 
Opaque object describing a single event.
 
void dc_event_unref(dc_event_t *event)
Free memory used by an event object.
 
int dc_event_get_data2_int(dc_event_t *event)
Get data associated with an event object.
 
char * dc_event_get_data1_str(dc_event_t *event)
Get data associated with an event object.
 
char * dc_event_get_data2_str(dc_event_t *event)
Get data associated with an event object.
 
uint32_t dc_event_get_account_id(dc_event_t *event)
Get the account ID this event belongs to.
 
int dc_event_get_id(dc_event_t *event)
Get the event ID from an event object.
 
int dc_event_get_data1_int(dc_event_t *event)
Get data associated with an event object.
 
Opaque object for using the json rpc api from the cffi bindings.
 
char * dc_jsonrpc_next_response(dc_jsonrpc_instance_t *jsonrpc_instance)
Get the next json_rpc response, blocks until there is a new event, so call this in a loop from a thre...
 
void dc_jsonrpc_unref(dc_jsonrpc_instance_t *jsonrpc_instance)
Free a jsonrpc instance.
 
char * dc_jsonrpc_blocking_call(dc_jsonrpc_instance_t *jsonrpc_instance, const char *input)
Make a JSON-RPC call and return a response.
 
void dc_jsonrpc_request(dc_jsonrpc_instance_t *jsonrpc_instance, const char *request)
Makes an asynchronous jsonrpc request, returns immediately and once the result is ready it can be ret...
 
An object containing a set of values.
 
int64_t dc_lot_get_timestamp(const dc_lot_t *lot)
Get the associated timestamp.
 
int dc_lot_get_state(const dc_lot_t *lot)
Get the associated state.
 
uint32_t dc_lot_get_id(const dc_lot_t *lot)
Get the associated ID.
 
int dc_lot_get_text1_meaning(const dc_lot_t *lot)
Get the meaning of the first string.
 
void dc_lot_unref(dc_lot_t *lot)
Frees an object containing a set of parameters.
 
char * dc_lot_get_text1(const dc_lot_t *lot)
Get first string.
 
char * dc_lot_get_text2(const dc_lot_t *lot)
Get second string.
 
An object representing a single message in memory.
 
void dc_msg_set_html(dc_msg_t *msg, const char *html)
Set the HTML part of a message object.
 
char * dc_msg_get_webxdc_blob(const dc_msg_t *msg, const char *filename, size_t *ret_bytes)
Return a file from inside a webxdc message.
 
uint32_t dc_msg_get_ephemeral_timer(const dc_msg_t *msg)
Get the ephemeral timer duration for a message.
 
char * dc_msg_get_filename(const dc_msg_t *msg)
Get an original attachment filename, with extension but without the path.
 
void dc_msg_set_override_sender_name(dc_msg_t *msg, const char *name)
Set different sender name for a message.
 
char * dc_msg_get_summarytext(const dc_msg_t *msg, int approx_characters)
Get a message summary as a single line of text.
 
int dc_msg_get_showpadlock(const dc_msg_t *msg)
Check if message was correctly encrypted and signed.
 
dc_lot_t * dc_msg_get_summary(const dc_msg_t *msg, const dc_chat_t *chat)
Get a summary for a message.
 
uint32_t dc_msg_get_chat_id(const dc_msg_t *msg)
Get the ID of the chat the message belongs to.
 
void dc_msg_set_quote(dc_msg_t *msg, const dc_msg_t *quote)
Set the message replying to.
 
int dc_msg_has_location(const dc_msg_t *msg)
Check if a message has a POI location bound to it.
 
char * dc_msg_get_text(const dc_msg_t *msg)
Get the text of the message.
 
uint32_t dc_msg_get_from_id(const dc_msg_t *msg)
Get the ID of the contact who wrote the message.
 
int64_t dc_msg_get_ephemeral_timestamp(const dc_msg_t *msg)
Get the timestamp of the ephemeral message removal.
 
int dc_msg_get_download_state(const dc_msg_t *msg)
Check if the message is completely downloaded or if some further action is needed.
 
void dc_msg_set_duration(dc_msg_t *msg, int duration)
Set the duration associated with message object.
 
void dc_msg_set_file_and_deduplicate(dc_msg_t *msg, const char *file, const char *name, const char *filemime)
Sets the file associated with a message.
 
int dc_msg_save_file(const dc_msg_t *msg, const char *path)
Save file copy at the user-provided path.
 
void dc_msg_set_text(dc_msg_t *msg, const char *text)
Set the text of a message object.
 
int64_t dc_msg_get_timestamp(const dc_msg_t *msg)
Get the message sending time.
 
uint32_t dc_msg_get_original_msg_id(const dc_msg_t *msg)
Get original message ID for a saved message from the "Saved Messages" chat.
 
char * dc_msg_get_quoted_text(const dc_msg_t *msg)
Get quoted text, if any.
 
char * dc_msg_get_override_sender_name(const dc_msg_t *msg)
Get the name that should be shown over the message (in a group chat) instead of the contact display n...
 
void dc_msg_set_subject(dc_msg_t *msg, const char *subject)
Sets the email's subject.
 
int dc_msg_get_width(const dc_msg_t *msg)
Get the width of an image or a video.
 
char * dc_msg_get_filemime(const dc_msg_t *msg)
Get the MIME type of a file.
 
void dc_msg_unref(dc_msg_t *msg)
Free a message object.
 
char * dc_msg_get_webxdc_href(const dc_msg_t *msg)
Get link attached to an webxdc info message.
 
int dc_msg_is_bot(const dc_msg_t *msg)
Check if an incoming message is a bot message, i.e.
 
char * dc_msg_get_setupcodebegin(const dc_msg_t *msg)
Get the first characters of the setup code.
 
void dc_msg_set_dimension(dc_msg_t *msg, int width, int height)
Set the dimensions associated with message object.
 
int dc_msg_is_forwarded(const dc_msg_t *msg)
Check if the message is a forwarded message.
 
int dc_msg_has_deviating_timestamp(const dc_msg_t *msg)
Check if a message has a deviating timestamp.
 
int dc_msg_is_info(const dc_msg_t *msg)
Check if the message is an informational message, created by the device or by another users.
 
void dc_msg_latefiling_mediasize(dc_msg_t *msg, int width, int height, int duration)
Late filing information to a message.
 
int dc_msg_is_edited(const dc_msg_t *msg)
Check if the message was edited.
 
int dc_msg_get_state(const dc_msg_t *msg)
Get the state of a message.
 
void dc_msg_set_location(dc_msg_t *msg, double latitude, double longitude)
Set any location that should be bound to the message object.
 
int dc_msg_is_setupmessage(const dc_msg_t *msg)
Check if the message is an Autocrypt Setup Message.
 
uint64_t dc_msg_get_filebytes(const dc_msg_t *msg)
Get the size of the file.
 
char * dc_msg_get_subject(const dc_msg_t *msg)
Get the subject of the e-mail.
 
dc_msg_t * dc_msg_get_quoted_msg(const dc_msg_t *msg)
Get quoted message, if available.
 
uint32_t dc_msg_get_info_contact_id(const dc_msg_t *msg)
Return the contact ID of the profile to open when tapping the info message.
 
dc_msg_t * dc_msg_get_parent(const dc_msg_t *msg)
Get parent message, if available.
 
dc_msg_t * dc_msg_new(dc_context_t *context, int viewtype)
Create new message object.
 
void dc_msg_force_plaintext(dc_msg_t *msg)
Force the message to be sent in plain text.
 
int dc_msg_has_html(dc_msg_t *msg)
Checks if the message has a full HTML version.
 
int dc_msg_get_duration(const dc_msg_t *msg)
Get the duration of audio or video.
 
uint32_t dc_msg_get_id(const dc_msg_t *msg)
Get the ID of the message.
 
uint32_t dc_msg_get_saved_msg_id(const dc_msg_t *msg)
Check if a message was saved and return its ID inside "Saved Messages".
 
int dc_msg_get_info_type(const dc_msg_t *msg)
Get the type of an informational message.
 
int dc_msg_get_viewtype(const dc_msg_t *msg)
Get the type of the message.
 
int64_t dc_msg_get_sort_timestamp(const dc_msg_t *msg)
Get the message time used for sorting.
 
int dc_msg_get_height(const dc_msg_t *msg)
Get the height of an image or a video.
 
char * dc_msg_get_error(const dc_msg_t *msg)
Gets the error status of the message.
 
int dc_msg_is_sent(const dc_msg_t *msg)
Check if a message was sent successfully.
 
char * dc_msg_get_file(const dc_msg_t *msg)
Find out full path of the file associated with a message.
 
int64_t dc_msg_get_received_timestamp(const dc_msg_t *msg)
Get the message receive time.
 
char * dc_msg_get_webxdc_info(const dc_msg_t *msg)
Get info from a webxdc message, in JSON format.
 
Opaque object containing information about one single e-mail provider.
 
int dc_provider_get_status(const dc_provider_t *provider)
Whether DC works with this provider.
 
char * dc_provider_get_before_login_hint(const dc_provider_t *provider)
Get hints to be shown to the user on the login screen.
 
char * dc_provider_get_overview_page(const dc_provider_t *provider)
URL of the overview page.
 
dc_provider_t * dc_provider_new_from_email_with_dns(const dc_context_t *context, const char *email)
Create a provider struct for the given e-mail address by local lookup.
 
dc_provider_t * dc_provider_new_from_email(const dc_context_t *context, const char *email)
Create a provider struct for the given e-mail address by local lookup.
 
void dc_provider_unref(dc_provider_t *provider)
Free the provider info struct.