
@startuml

!define MS_SERVICE security-management-v2
!define MS_OPERATION generate-mfa-opt
!define LAST_UPDATE %date[yyyy.MM.dd 'at' HH:mm]%
!define module(x) component x <<module>> 
!define send(a,b,c) a->b : c
!define response(a,b) a-->b : Response

title
 MS: MS_SERVICE/MS_OPERATION
 Last update: LAST_UPDATE
 
end title

/' 
 ' This is our suppression for the footbox (aka. our diagrams box a the bottom of each flow
 ' tower - comment out the next line and regenerate the diagram, to see what I mean)
 '/
hide footbox


/'
 ' The spacing in the following text is important. 
 ' 
 ' Trust me.
 '/ 
center footer
 
 
Copyright (c) 2019 Amdocs.
 
Information Security Level 1 - Confidential
 
CONTAINS RESTRICTED - PROPRIETARY INFORMATION
 
This document is strictly confidential and proprietary; to be used only by authorized persons
on a need to know basis, and must not be distributed without specific permission.
 
In the event of unauthorized use of this document or the confidential information it contains,
violators will be subject to sever disciplinary action, based on Amdocs regulations, as well as
any other sanctions applicable by law.
 
endfooter

participant Channel
participant "security-\nmanagement-v2\nMS" as SME
participant "subscriber-management-V3 \nMS" as SM
participant Tuxedo
participant REDIS

skinparam sequenceArrowThickness 2
skinparam ArrowColor  #blue 

Channel -> SME: generate-mfa-opt\n JWT Token
Activate SME #lightgreen

send(SME,SM,searchSubscriber)
Activate SM #lightgreen

ref over SM 
searchSubscriber 
end

response(SM,SME)
Deactivate SM

SME -> SME : JWT authentication

send(SME,REDIS,	Store generated genCode in Redis)
Activate REDIS #lightgreen
Deactivate REDIS

send(SME,Tuxedo,	csSendSms)
Activate Tuxedo #lightgreen
response(Tuxedo,SME)
Deactivate Tuxedo


response(SME,Channel)
Deactivate SME

@enduml