@@ -76,17 +76,33 @@ pub fn encode(protocol: &BaseProtocol, req: BaseMessage) -> Buffer {
76
76
request_keys:: TYPE : request_types:: REGISTER_HOOK_RESPONSE ,
77
77
} ) ,
78
78
79
- BaseMessage :: TriggerHookRequest { request_id, hook } => json!( {
80
- request_keys:: REQUEST_ID : request_id,
81
- request_keys:: TYPE : request_types:: TRIGGER_HOOK_REQUEST ,
82
- request_keys:: HOOK : hook,
83
- } ) ,
79
+ BaseMessage :: TriggerHookRequest {
80
+ request_id,
81
+ hook,
82
+ data,
83
+ } => {
84
+ let json_data: Value = data. into( ) ;
85
+ json!( {
86
+ request_keys:: REQUEST_ID : request_id,
87
+ request_keys:: TYPE : request_types:: TRIGGER_HOOK_REQUEST ,
88
+ request_keys:: HOOK : hook,
89
+ request_keys:: DATA : json_data,
90
+ } )
91
+ }
84
92
85
- BaseMessage :: TriggerHookResponse { request_id, hook } => json!( {
86
- request_keys:: REQUEST_ID : request_id,
87
- request_keys:: TYPE : request_types:: TRIGGER_HOOK_RESPONSE ,
88
- request_keys:: HOOK : hook
89
- } ) ,
93
+ BaseMessage :: TriggerHookResponse {
94
+ request_id,
95
+ hook,
96
+ data,
97
+ } => {
98
+ let json_data: Value = data. into( ) ;
99
+ json!( {
100
+ request_keys:: REQUEST_ID : request_id,
101
+ request_keys:: TYPE : request_types:: TRIGGER_HOOK_RESPONSE ,
102
+ request_keys:: HOOK : hook,
103
+ request_keys:: DATA : json_data,
104
+ } )
105
+ }
90
106
91
107
BaseMessage :: DeclareFunctionRequest {
92
108
request_id,
@@ -207,16 +223,32 @@ fn decode_internal(data: &[u8]) -> Option<BaseMessage> {
207
223
} else if r#type == 7 {
208
224
let request_id = result[ request_keys:: REQUEST_ID ] . as_str ( ) ?. to_string ( ) ;
209
225
let hook = result[ request_keys:: HOOK ] . as_str ( ) ?. to_string ( ) ;
226
+ let data = result
227
+ . get ( request_keys:: DATA )
228
+ . unwrap_or ( & Value :: Null )
229
+ . clone ( ) ;
210
230
211
- Some ( BaseMessage :: TriggerHookRequest { request_id, hook } )
231
+ Some ( BaseMessage :: TriggerHookRequest {
232
+ request_id,
233
+ hook,
234
+ data : data. into ( ) ,
235
+ } )
212
236
} else if r#type == 8 {
213
237
let request_id = result[ request_keys:: REQUEST_ID ] . as_str ( ) ?. to_string ( ) ;
214
238
let hook = match result[ request_keys:: HOOK ] . as_str ( ) {
215
239
Some ( string) => Some ( string. to_string ( ) ) ,
216
240
None => None ,
217
241
} ;
242
+ let data = result
243
+ . get ( request_keys:: DATA )
244
+ . unwrap_or ( & Value :: Null )
245
+ . clone ( ) ;
218
246
219
- Some ( BaseMessage :: TriggerHookResponse { request_id, hook } )
247
+ Some ( BaseMessage :: TriggerHookResponse {
248
+ request_id,
249
+ hook,
250
+ data : data. into ( ) ,
251
+ } )
220
252
} else if r#type == 9 {
221
253
let request_id = result[ request_keys:: REQUEST_ID ] . as_str ( ) ?. to_string ( ) ;
222
254
let function = result[ request_keys:: FUNCTION ] . as_str ( ) ?. to_string ( ) ;
0 commit comments