char* remote_address;
} bt_map_client_session_info_s;
+typedef char* bt_map_client_message_object_t;
+
+typedef struct {
+ int16_t offset;
+ int16_t max_count;
+} bt_map_client_list_folders_filter_t;
+
+typedef struct {
+ int16_t offset;
+ int16_t max_count;
+ int8_t subject_length;
+ char *fields;
+ char *types;
+ char *period_begin;
+ char *period_end;
+ int is_read;
+ char *recipient;
+ char *sender;
+ int is_priority;
+} bt_map_client_list_messages_filter_t;
+
+typedef struct {
+ bt_map_client_message_object_t message_object;
+ char *folder;
+ char *subject;
+ char *timestamp;
+ char *sender;
+ char *sender_address;
+ char *reply_to;
+ char *recipient;
+ char *recipient_address;
+ char *type;
+ int64_t size;
+ int is_text;
+ char *status;
+ int64_t attachment_size;
+ int is_priority;
+ int is_read;
+ int is_sent;
+ int is_protected;
+} bt_map_client_message_item_t;
+
+typedef struct {
+ int is_transparent;
+ int is_retry;
+ char *charset;
+} bt_map_client_push_message_args_t;
+
+typedef struct {
+ char *folder;
+ char *subject;
+ char *timestamp;
+ char *sender;
+ char *sender_address;
+ char *reply_to;
+ char *recipient;
+ char *recipient_address;
+ char *type;
+ int64_t size;
+ char *status;
+ int is_priority;
+ int is_read;
+ int is_deleted;
+ int is_sent;
+ int is_protected;
+} bt_map_client_message_t;
+
typedef struct {
char **names; // holding %size null-terminated folder names
- int size;
+ int64_t size;
} bt_map_client_folders_s;
+typedef struct {
+ bt_map_client_message_item_t *message_items;
+ int64_t size;
+} bt_map_client_message_items_s;
+
+typedef struct {
+ const char* target_file;
+ void* user_data;
+} bt_get_message_callback_data;
/**
* Callback pointer type
int bluetooth_map_client_list_folders(
bt_map_client_session_info_s *session,
- int offset,
- int maxcount
+ bt_map_client_list_folders_filter_t *filter
);
/**
int bluetooth_map_client_list_messages(
bt_map_client_session_info_s *session,
const char *folder,
- GVariant *filter
+ bt_map_client_list_messages_filter_t *filter
);
int bluetooth_map_client_update_inbox(
bt_map_client_session_info_s *session,
const char *source_file,
const char *folder,
- GVariant *args
+ bt_map_client_push_message_args_t *args
);
int bluetooth_map_client_get_message(
bt_map_client_session_info_s *session,
- const char *message_object_name,
+ const bt_map_client_message_object_t message_object,
const char *target_file,
bool attachment
);