1 /* 2 * Copyright (c) 2023 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #ifndef DISC_EVENT_FORM_H 17 #define DISC_EVENT_FORM_H 18 19 #include <stdint.h> 20 21 #include "event_form_enum.h" 22 23 #ifdef __cplusplus 24 extern "C" { 25 #endif 26 27 typedef enum { 28 EVENT_SCENE_INIT = 1, 29 EVENT_SCENE_DISC = 2, 30 EVENT_SCENE_BLE = 3, 31 EVENT_SCENE_SHARE_BLE = 4, 32 EVENT_SCENE_APPROACH_BLE = 5, 33 EVENT_SCENE_COAP = 6, 34 EVENT_SCENE_RESERVED_7 = 7, 35 EVENT_SCENE_RESERVED_8 = 8, 36 EVENT_SCENE_RESERVED_9 = 9, 37 EVENT_SCENE_RESERVED_10 = 10, 38 EVENT_SCENE_RESERVED_11 = 11, 39 EVENT_SCENE_RESERVED_12 = 12, 40 EVENT_SCENE_RESERVED_OOP = 13, 41 } DiscEventScene; 42 43 typedef enum { 44 EVENT_STAGE_INIT = 1, 45 EVENT_STAGE_SOFTBUS_BLE_INIT = 2, 46 EVENT_STAGE_SHARE_BLE_INIT = 3, 47 EVENT_STAGE_APPROACH_BLE_INIT = 4, 48 EVENT_STAGE_VLINK_BLE_INIT = 5, 49 EVENT_STAGE_TOUCH_BLE_INIT = 6, 50 EVENT_STAGE_USB_INIT = 7, 51 EVENT_STAGE_OOP_BLE_INIT = 8, 52 } DiscEventInitStage; 53 54 typedef enum { 55 EVENT_STAGE_DISC_SDK = 1, 56 EVENT_STAGE_DISC_SERVICE = 2, 57 EVENT_STAGE_ADD_INFO = 3, 58 EVENT_STAGE_CALL_INTERFACE = 4, 59 EVENT_STAGE_DEVICE_FOUND = 5, 60 } DiscEventDiscStage; 61 62 typedef enum { 63 EVENT_STAGE_BLE_PROCESS = 1, 64 EVENT_STAGE_BLE_HANDLER = 2, 65 EVENT_STAGE_STATE_TURN = 3, 66 EVENT_STAGE_BROADCAST = 4, 67 EVENT_STAGE_SCAN = 5, 68 EVENT_STAGE_SCAN_RECV = 6, 69 } DiscEventBleStage; 70 71 typedef enum { 72 EVENT_STAGE_TOUCH_DISC = 1, 73 EVENT_STAGE_TOUCH_SCAN = 2, 74 } DiscEventTouchBleStage; 75 76 typedef enum { 77 EVENT_STAGE_OOP_DISC = 1, 78 EVENT_STAGE_OOP_SCAN = 2, 79 } DiscEventOopBleStage; 80 81 typedef enum { 82 EVENT_STAGE_VLINK_SCAN = 1, 83 } DiscEventVlinkStage; 84 85 typedef enum { 86 EVENT_STAGE_SHARE_BLE_PROCESS = 1, 87 EVENT_STAGE_SHARE_BLE_UPDATE_DEVICE = 2, 88 } DiscEventShareBleStage; 89 90 typedef enum { 91 EVENT_STAGE_APPROACH_BLE_PROCESS = 1, 92 EVENT_STAGE_APPROACH_DISC = 2, 93 EVENT_STAGE_APPROACH_SCAN = 3, 94 } DiscEventApproachBleStage; 95 96 typedef enum { 97 EVENT_STAGE_COAP = 1, 98 EVENT_STAGE_UPDATE_IP = 2, 99 EVENT_STAGE_UPDATE_DEVICE = 3, 100 EVENT_STAGE_REGISTER = 4, 101 EVENT_STAGE_SET_FILTER = 5, 102 EVENT_STAGE_DISCOVERY_START = 6, 103 EVENT_STAGE_DISCOVERY_STOP = 7, 104 } DiscEventCoapStage; 105 106 typedef enum { 107 EVENT_STAGE_ADV_START = 1, 108 EVENT_STAGE_ADV_STOP = 2, 109 EVENT_STAGE_ADV_REPLACE = 3, 110 EVENT_STAGE_SCAN_START = 4, 111 EVENT_STAGE_ONLINE_STATE = 5, 112 } DiscEventBroadcastStage; 113 114 typedef enum { 115 SERVER_PUBLISH = 1, 116 SERVER_STOP_PUBLISH = 2, 117 SERVER_DISCOVERY = 3, 118 SERVER_STOP_DISCOVERY = 4, 119 } DiscServerType; 120 121 typedef struct { 122 int32_t isOn; // BROADCAST_STATUS 123 int32_t result; // STAGE_RES 124 int32_t errcode; // ERROR_CODE 125 int32_t initType; // INIT_TYPE 126 const char *serverType; // SERVER_TYPE 127 int32_t advHandle; // ADV_HANDLE 128 int32_t bcOverMaxCnt; // BROADCAST_OVER_MAX_COUNT 129 int32_t interFuncType; // INTERFACE_FUNC_TYPE 130 int32_t capabilityBit; // CAPABILITY_BIT 131 const char *capabilityData; // CAPABILITY_DATA 132 int32_t bleTurnState; // BLE_TURN_STATE 133 int32_t ipLinkStatus; // IP_LINK_STATUS 134 int32_t coapChangeType; // COAP_CHANGE_TYPE 135 int32_t broadcastType; // BROADCAST_TYPE 136 int32_t broadcastFreq; // BROADCAST_FREQ 137 int32_t minInterval; // MIN_INTERVAL 138 int32_t maxInterval; // MAX_INTERVAL 139 int32_t currentNum; // BROADCAST_CURRENT_NUM 140 int32_t scanType; // SCAN_TYPE 141 int32_t scanCount; // SCAN_COUNT 142 const char *scanCycle; // SCAN_CYCLE 143 int32_t discType; // DISC_TYPE 144 int32_t discMode; // DISC_MODE 145 int64_t startTime; // BROADCAST_START_TIME 146 int64_t stopTime; // BROADCAST_STOP_TIME 147 int64_t costTime; // COST_TIME 148 int32_t successCnt; // SUCCESS_COUNT 149 int32_t failCnt; // FAIL_COUNT 150 const char *localNetworkId; // LOCAL_NET_ID 151 const char *peerIp; // PEER_IP 152 const char *peerBrMac; // PEER_BR_MAC 153 const char *peerBleMac; // PEER_BLE_MAC 154 const char *peerWifiMac; // PEER_WIFI_MAC 155 const char *peerPort; // PEER_PORT 156 const char *peerNetworkId; // PEER_NET_ID 157 const char *peerDeviceType; // PEER_DEV_TYPE 158 const char *callerPkg; // HOST_PKG 159 } DiscEventExtra; 160 161 typedef enum { 162 ALARM_SCENE_DISC_RESERVED = 1, 163 } DiscAlarmScene; 164 165 typedef struct { 166 int32_t errcode; 167 int32_t result; 168 int32_t originalFreq; 169 int32_t abnormalFreq; 170 int32_t duration; 171 } DiscAlarmExtra; 172 173 typedef enum { 174 STATS_SCENE_DISC_RESERVED = 1, 175 } DiscStatsScene; 176 177 typedef struct { 178 int32_t reserved; 179 } DiscStatsExtra; 180 181 typedef enum { 182 AUDIT_SCENE_BLE_PUBLISH = 1, 183 AUDIT_SCENE_BLE_SUBSCRIBE = 2, 184 AUDIT_SCENE_BLE_ADVERTISE = 3, 185 AUDIT_SCENE_BLE_SCAN = 4, 186 AUDIT_SCENE_COAP_PUBLISH = 5, 187 AUDIT_SCENE_COAP_DISCOVERY = 6, 188 AUDIT_SCENE_USB_PUBLISH = 7, 189 AUDIT_SCENE_USB_SUBSCRIBE = 8, 190 } DiscAuditScene; 191 192 typedef enum { 193 DISC_AUDIT_CONTINUE = 1, 194 DISC_AUDIT_DISCONTINUE = 2, 195 DISC_AUDIT_TRY_AGAIN = 3, 196 } DiscAuditResult; 197 198 typedef struct { 199 const char *callerPkg; // HOST_PKG 200 int32_t result; // RESULT 201 int32_t errcode; // ERROR_CODE 202 SoftbusAuditType auditType; // AUDIT_TYPE 203 int32_t broadcastType; // BROADCAST_TYPE 204 int32_t broadcastFreq; // BROADCAST_FREQ 205 int32_t advCount; // ADV_COUNT 206 int32_t advDuration; // ADV_DURATION 207 int32_t scanInterval; // SCAN_INTERVAL 208 int32_t scanWindow; // SCAN_WINDOW 209 int32_t discMode; // DISC_MODE 210 int32_t mediumType; // MEDIUM_TYPE 211 int32_t advChannel; // ADV_CHANNEL 212 int32_t scanType; // SCAN_TYPE 213 int32_t scanId; // SCAN_ID 214 int32_t scanListenerId; // SCAN_LISTENER_ID 215 const char *localUdid; // LOCAL_UDID 216 const char *localDeviceName; // LOCAL_DEV_NAME 217 const char *localDeviceType; // LOCAL_DEV_TYPE 218 const char *localAccountHash; // LOCAL_ACCOUNT_HASH 219 int32_t localCapabilityBitmap; // LOCAL_CAPABILITY_BITMAP 220 const char *localCustData; // LOCAL_CUST_DATA 221 const char *localIp; // LOCAL_IP 222 int32_t localPort; // LOCAL_PORT 223 const char *localBrMac; // LOCAL_BR_MAC 224 const char *localBleMac; // LOCAL_BLE_MAC 225 const char *peerUdid; // PEER_UDID 226 const char *peerDeviceName; // PEER_DEV_NAME 227 const char *peerDeviceType; // PEER_DEV_TYPE 228 const char *peerAccountHash; // PEER_ACCOUNT_HASH 229 int32_t peerCapabilityBitmap; // PEER_CAPABILITY_BITMAP 230 const char *peerCustData; // PEER_CUST_DATA 231 const char *peerIp; // PEER_IP 232 int32_t peerPort; // PEER_PORT 233 const char *peerBrMac; // PEER_BR_MAC 234 const char *peerBleMac; // PEER_BLE_MAC 235 const char *errMsg; // ERR_MSG 236 const char *additionalInfo; // ADDITIONAL_INFO 237 } DiscAuditExtra; 238 239 #ifdef __cplusplus 240 } 241 #endif /* __cplusplus */ 242 #endif // DISC_EVENT_FORM_H 243