# KERIOX TDA app notification system
```plantuml
actor "Actor 1" as a1
participant "Witness 1" as w1
box "TDA" #LightBlue
participant "App" as tda2
participant "KERIOX" as k1
end box
actor "Actor 2" as a2
a1 -> w1 : Sends delegation request\nto mailbox of Actor 2
w1 --> a1: ACK
w1 -> w1: Processes delegation request\nand stores it in the Actor 2\nmailbox
w1 -> tda2: Notify via Firebase\nabout new msg in mailbox
tda2 -> tda2: Process notification\nreceived from Firebase
tda2 -> tda2: Show prompt in device UI\nand inform user via\n"New pending activity" msg
tda2 <- a2: user clicks on prompt\nand is being redirected\ninto TDA app
tda2 -> k1: Runs `poll_mailbox_msgs` fn
k1 -> w1: Queries witness for new\nmessages stored in mailbox
k1 <- w1: New messages
k1 -> k1: Processes new msgs
k1 -> k1: Stores msgs on KERIOX internal stack\nthat require user digital signature
tda2 -> k1: Periodically runs\n`get_signature_required_msgs`\nfn
tda2 -> a2: For each msg, sign message
tda2 <- a2: Signed msg
tda2 -> k1: Add signed msgs
k1 -> w1: Sends IXN event as a confirmation of delegation\nto Actor 1 mailbox
```