1 #ifndef UTOX_H 2 #define UTOX_H 3 4 #include <stdint.h> 5 6 /* uTox client thread messages (received by the client thread) */ 7 typedef enum utox_msg_id { 8 /* General core and networking messages */ 9 TOX_DONE, // 0 10 DHT_CONNECTED, 11 12 /* OS interaction/integration messages*/ 13 AUDIO_IN_DEVICE, 14 AUDIO_OUT_DEVICE, 15 16 /* Client/User Interface messages. */ 17 REDRAW, 18 TOOLTIP_SHOW, 19 SELF_AVATAR_SET, 20 UPDATE_TRAY, 21 PROFILE_DID_LOAD, 22 23 /* File transfer messages */ 24 FILE_SEND_NEW, 25 FILE_INCOMING_NEW, 26 FILE_INCOMING_NEW_INLINE, 27 FILE_INCOMING_NEW_INLINE_DONE, 28 FILE_INCOMING_ACCEPT, 29 FILE_STATUS_UPDATE, 30 FILE_STATUS_UPDATE_DATA, 31 FILE_STATUS_DONE, 32 33 /* Friend interaction messages. */ 34 /* Handshake */ 35 FRIEND_ONLINE, 36 FRIEND_NAME, 37 FRIEND_STATUS_MESSAGE, 38 FRIEND_STATE, 39 FRIEND_AVATAR_SET, 40 FRIEND_AVATAR_UNSET, 41 /* Interactions */ 42 FRIEND_TYPING, 43 FRIEND_MESSAGE, 44 FRIEND_MESSAGE_UPDATE, 45 /* Adding and deleting */ 46 FRIEND_INCOMING_REQUEST, 47 FRIEND_ACCEPT_REQUEST, 48 FRIEND_SEND_REQUEST, 49 FRIEND_ADD_NO_REQ, 50 FRIEND_REMOVE, 51 52 /* Audio & Video calls, */ 53 AV_CALL_INCOMING, 54 AV_CALL_RINGING, 55 AV_CALL_ACCEPTED, 56 AV_CALL_DISCONNECTED, 57 AV_VIDEO_FRAME, 58 AV_INLINE_FRAME, 59 AV_CLOSE_WINDOW, 60 61 /* Group interactions, commented out for the new groupchats (coming soon maybe?) */ 62 GROUP_ADD, 63 GROUP_MESSAGE, 64 GROUP_PEER_ADD, 65 GROUP_PEER_DEL, 66 GROUP_PEER_NAME, 67 GROUP_PEER_CHANGE, 68 GROUP_TOPIC, 69 GROUP_AUDIO_START, 70 GROUP_AUDIO_END, 71 GROUP_UPDATE, 72 } UTOX_MSG; 73 74 void postmessage_utox(UTOX_MSG msg, uint16_t param1, uint16_t param2, void *data); 75 76 void utox_message_dispatch(UTOX_MSG utox_msg_id, uint16_t param1, uint16_t param2, void *data); 77 78 #endif 79