B
electron
) клиент, а вот для линукса клиентов вроде нет, что не крутоSize: a a a
B
electron
) клиент, а вот для линукса клиентов вроде нет, что не крутоAM
electron
) клиент, а вот для линукса клиентов вроде нет, что не крутоŹR
LL
AUR
только чтоa
LL
pathex
погибает в безызвестностиLL
ŹR
ŹR
VS
ŹR
VS
mermaid
по подходу не отличаются,@startuml
autonumber
actor Client
control SmsGW_E
control Client_E
entity Log
entity ClientQ
entity SmsGW_Q
Client -> Client_E: send_sms(message_id)
Client_E -> SmsGW_Q: type=sms.publish, route=smsgw.Client
SmsGW_Q -> SmsGW
SmsGW -> SMPP: submit_sm(registered_delivery=0)
alt successful SMSC resp
SmsGW <-- SMPP:submit_sm_resp()
else Transient SMSC error, success
group while message_ttl
SmsGW <-- SMPP:submit_sm_resp(ESME_RX_T_APPN) | not_connected
SmsGW_Q <-- SmsGW: nack
SmsGW_Q -> SmsGW
SmsGW -> SMPP: submit_sm(registered_delivery=0)
end
SmsGW <-- SMPP:submit_sm_resp()
else Transient SMSC error, message expired
group while message_ttl
SmsGW <-- SMPP:submit_sm_resp(ESME_RX_T_APPN) | not_connected
SmsGW_Q <-- SmsGW: nack
SmsGW_Q -> SmsGW
SmsGW -> SMPP: submit_sm(registered_delivery=0)
end
SmsGW_Q -> SmsGW_E:dead_message(message_id)
SmsGW_E -> ClientQ: dead_message(message_id), route=smsgw.Client
SmsGW_E -> Log: dead_message(message_id), client=Client
ClientQ -> Client: dead_message(message_id)
end
@enduml
SM
SM
SM
LL
a
pathex
погибает в безызвестностиLL
LL
gen_state_machine