@@ -437,7 +437,14 @@ func (t *HookTask) AfterLoad() {
437437
438438 t .RequestInfo = & HookRequest {}
439439 if err := json .Unmarshal ([]byte (t .RequestContent ), t .RequestInfo ); err != nil {
440- log .Error (3 , "Unmarshal[%d]: %v" , t .ID , err )
440+ log .Error (3 , "Unmarshal RequestContent[%d]: %v" , t .ID , err )
441+ }
442+
443+ if len (t .ResponseContent ) > 0 {
444+ t .ResponseInfo = & HookResponse {}
445+ if err := json .Unmarshal ([]byte (t .ResponseContent ), t .ResponseInfo ); err != nil {
446+ log .Error (3 , "Unmarshal ResponseContent[%d]: %v" , t .ID , err )
447+ }
441448 }
442449}
443450
@@ -619,6 +626,10 @@ func (t *HookTask) deliver() {
619626 log .Trace ("Hook delivery failed: %s" , t .UUID )
620627 }
621628
629+ if err := UpdateHookTask (t ); err != nil {
630+ log .Error (4 , "UpdateHookTask [%d]: %v" , t .ID , err )
631+ }
632+
622633 // Update webhook last delivery status.
623634 w , err := GetWebhookByID (t .HookID )
624635 if err != nil {
@@ -671,10 +682,6 @@ func DeliverHooks() {
671682 // Update hook task status.
672683 for _ , t := range tasks {
673684 t .deliver ()
674-
675- if err := UpdateHookTask (t ); err != nil {
676- log .Error (4 , "UpdateHookTask [%d]: %v" , t .ID , err )
677- }
678685 }
679686
680687 // Start listening on new hook requests.
@@ -695,10 +702,6 @@ func DeliverHooks() {
695702 }
696703 for _ , t := range tasks {
697704 t .deliver ()
698- if err := UpdateHookTask (t ); err != nil {
699- log .Error (4 , "UpdateHookTask [%d]: %v" , t .ID , err )
700- continue
701- }
702705 }
703706 }
704707}
0 commit comments