> For the complete documentation index, see [llms.txt](https://amfdocs.mftlabs.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://amfdocs.mftlabs.io/agile-messaging-framework/tutorials/usecases/uc03.md).

# UC03

### &#x20;**CD --> SFG--> AMF --> UFA**

**Use Case:** Partner05 (Sender) send files to AMF (Agile Messaging Framework) via CD protocol, we update the file name format and then deliver those files to Partner06 (Receiver) via AMF.&#x20;

**Sequence Diagram:**

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FKgxrxAJOrEehnc2acryW%2FUC03.drawio.png?alt=media&amp;token=1c3ba670-4ede-4c49-a1fb-ecdcb057eab7" alt=""><figcaption></figcaption></figure>

**Steps:**&#x20;

A. Onboard Partner05 in SFG via AMF and Partner06 in AMF.

B. Onboard Partner05 connect direct node in SFG using AMF (Customer Initiated Communication profiles (Inbound)).

C. Install UFA agent for Partner06.

D. Create Message Type or use the existing one in AMF.&#x20;

E. Create Message Mapping with Sender, Receiver, Message Type and File Name Pattern.

F. Create Deliver Action by adding file name format.

G. Create Workflow Definition and add Actions (Created in step F) as step1.

H. Create Workflow Rule with Sender, Receiver, Message Type and Workflow Definition Name (Created in step G).

I. Onboard Partner06 Customer Initiated Receive profile.

J. Verify the Message Activity in AMF once Partner05 uploads the file to SFG via CD protocol. If everything was configured correctly, the file will be delivered to Partner06 via UFA protocol.&#x20;

**Process:**

**A. Onboard Partner05 in SFG via AMF and Partner06 in AMF:**

Login to AMF

![](https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FXDRYzTDCobIMZoBP2J52%2F0?alt=media)

Go to Onboarding -> Users.

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2Fs9GJQY8aC6mkj89DbJxd%2Fimage.png?alt=media&amp;token=76899eef-980e-4afa-a78b-5c37088763e7" alt=""><figcaption></figcaption></figure>

Click on + icon at the top right corner.

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FpDrR8Ilyadyu4HQhJYBZ%2Fimage.png?alt=media&amp;token=991de3ef-10bc-4008-b659-e87b97a8135f" alt=""><figcaption></figcaption></figure>

Select Customer and give details of Partner05, select User Type, Authentication Type and click next.

1. **User Type**: Which Zone does the partner belongs to send or receive files? (DMZ or Trusted.)
2. **Authentication Type**: Where do we store the partner credentials? (LDAP or local (SFG/AMF) or Both)

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FDDfdSR2ikhTXf6QzEdOW%2Fimage.png?alt=media&amp;token=d780c207-de61-44c1-9326-afb6011acebe" alt=""><figcaption></figcaption></figure>

Select the provider the Partner belongs to and click next.

&#x20;  **1.  AMF:**  AMF provider is used to onboard Partners which use UFA.

&#x20;  **2. IBM:**  This will come from the providers config. We can choose several types based on the provider’s config.

&#x20;  **3. Open LDAP:** We need to select this if we selected the Authentication Type as LDAP in step2 **.**

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2F8CqJaZ3oHfEiu9WBBt1J%2Fimage.png?alt=media&amp;token=7699c611-4d35-4baf-b3db-3dec275a615d" alt=""><figcaption></figcaption></figure>

Verify the Partner details and click Onboard User.

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FJLMXqraI3fBS66wFnGLF%2Fimage.png?alt=media&amp;token=8b2e4110-c93a-4308-893b-eff2333f5885" alt=""><figcaption></figcaption></figure>

Repeat the same steps for Partner06 with AMF as provider.

**B. Onboard Partner05 connect direct node in SFG using AMF (Customer Initiated Communication profiles (Inbound)).** &#x20;

Double click on Partner05

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2Fuo4rPBhq9f1YBRqgAWgj%2Fimage.png?alt=media&amp;token=9870999c-6701-4054-98b5-836a5e8160fa" alt=""><figcaption></figcaption></figure>

Click on + icon at the top right corner

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FLPTsY0xCOKZ6XEtzzzqW%2Fimage.png?alt=media&amp;token=f0362674-0591-4f54-ab3e-34bbc76491a3" alt=""><figcaption></figcaption></figure>

Select the protocol CD, give the remaining details and click save

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2Fej9Aj08A1mrXxczsuERa%2Fimage.png?alt=media&amp;token=8b96713a-8dc7-466c-8857-9a052142192f" alt=""><figcaption></figcaption></figure>

1. **Operating System:** Operating system of the partner05
2. **SPOE:** Option to enable/disable Secure point of entry
3. **Node Name:** Node name of Partner05
4. **Host Name/IP:** Host/Ip of the Partner05 CD node
5. **Port:** Port of the Partner05 CD node
6. **Alternate IPs:** we can give here any alternate IPs for this CD node
7. **Secure+:** Option to enable/disable secure+ for SSL
8. **Cert File:** Public cert of the Partner05 CD node (In txt format with no headers)
9. **Common Name:** Common name of the Partner05 CD Cert
10. **TLS Version:** TLS version to be used in the communication
11. **Ciphers:** Ciphers to be used in the communication

Once the onboarding is done, we can see the status as completed.

![](https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2F03y6R4oS98lWt5gAiL47%2F9?alt=media)

**C. Install UFA agent for Partner06.**

Please refer the UFA installation document for this step

**D. Create Message Types or use the existing one in AMF:**

Go to Message Types under Onboarding

Click on + icon in the right corner to add a new message type

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FbMNpPdlAnmmkijZfjWZa%2Fimage.png?alt=media&amp;token=6c1310b1-f5a0-4335-8ce8-7f7afc49f019" alt=""><figcaption></figcaption></figure>

**Note**: In this scenario we will use the existing Message Type (**CD\_UC03\_UFA**)

**E. Create Message Mapping with Sender, Receiver and Message Type with a file pattern:**

Go to Message Mapping under Onboarding

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FjVnHRORUJFUJx38wfCkg%2Fimage.png?alt=media&amp;token=6c118348-3bd0-4146-a8da-ffb5df109637" alt=""><figcaption></figcaption></figure>

Click on + icon in the right corner to add a new Message Mapping.

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FfVOBvjsoLt5GKT5eq88G%2Fimage.png?alt=media&amp;token=9d51fdc7-1e6b-40fb-8aad-c226c6e4afe5" alt=""><figcaption></figcaption></figure>

Select Sender, Receiver and Message Type give pattern of the files that Partner05 will send and click save.

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2F803GJN50N50lZcX3YJQ6%2Fimage.png?alt=media&amp;token=899baef5-0cd4-4d04-ae67-1bfde15823e5" alt=""><figcaption></figcaption></figure>

**F. Create Deliver Action by adding file name format:**

Go to Actions under Onboarding->Workflow

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FqGv0Tif7nNAQDKgjtP51%2Fimage.png?alt=media&amp;token=246ee198-c633-435c-b3b7-1e2351dab17e" alt=""><figcaption></figcaption></figure>

Click on + icon to create new action

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FKEB04kamVSrzdyxNrCI2%2Fimage.png?alt=media&amp;token=7badff67-799a-4301-8ed9-02a8051d73cb" alt=""><figcaption></figcaption></figure>

Give Name, select Deliver as Action Type and in the file name format give the required name (${datetime}).

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FI6mGuzzyJYfATgMb7Sn5%2Fimage.png?alt=media&amp;token=c5b9820e-e7e0-42b5-a165-5f21c65fb00d" alt=""><figcaption></figcaption></figure>

**G. Create Workflow Definition and add Actions (Created in step F) as step1.**

Go to Definitions under Onboarding->Workflow

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FPQsawvYkJjfL1CuWAmwY%2Fimage.png?alt=media&amp;token=a55c5d02-bd24-4dcf-888f-418b0884104e" alt=""><figcaption></figcaption></figure>

Click on + icon at the top right corner

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FQ7O0PdHYNnjT07QuMbVj%2Fimage.png?alt=media&amp;token=55525953-4f71-4e03-b914-0c4cf1f25196" alt=""><figcaption></figcaption></figure>

Give Workflow Name, Description and click save

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FWLILuTtbZKjcKq0OR5RB%2Fimage.png?alt=media&amp;token=684145a1-a78a-48a9-a2df-930e254c9c4d" alt=""><figcaption></figcaption></figure>

Double click on the Workflow Definition Name

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FA9BZEDScptLS28uSOhTq%2Fimage.png?alt=media&amp;token=00d986b5-1291-42bc-8187-249b34301575" alt=""><figcaption></figcaption></figure>

Click on the + icon at the top right corner

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FIRSMOwOvGPhgAKqC88dk%2Fimage.png?alt=media&amp;token=6a9e4d84-3a01-4393-b185-608815c1fed5" alt=""><figcaption></figcaption></figure>

Select the Action that we created in (**step F)** as step1 and click save.

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FxyCZCRE1UFGY5ga1vkpf%2Fimage.png?alt=media&amp;token=468a74fd-b285-4ffa-a78f-92824075a6d6" alt=""><figcaption></figcaption></figure>

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FKx74Y25MQ5klgObpwIf9%2Fimage.png?alt=media&amp;token=6562f9fe-eba6-4469-b503-eb6f186bd7f7" alt=""><figcaption></figcaption></figure>

**H. Create Workflow Rule with Sender, Receiver, Message Type and Workflow Definition Name (Created in step G).**

Go to Rules under Onboarding -> Workflow

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FAHVuhdYgasyEQFFnURZM%2Fimage.png?alt=media&amp;token=4b0f6676-1066-4e93-8610-0671d18901c8" alt=""><figcaption></figcaption></figure>

Click on + icon at the top right

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2Fm2Tj5b7crFtevxrpbTFZ%2Fimage.png?alt=media&amp;token=0b15ccd8-bdd1-41aa-9d7d-cd1394a0c6fc" alt=""><figcaption></figcaption></figure>

Give Sender, Receiver, Message Type and Workflow (Created in **step G**) and click on save

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FPHIxrURaSbwbFGEZvew0%2Fimage.png?alt=media&amp;token=7b002a41-5666-41ab-80ee-e51a13425306" alt=""><figcaption></figcaption></figure>

**I. Onboard Partner06 Customer Initiated Receive profile:**

Double click on Partner06

**Note**: In this case we are using Partner06 as alternate user of NSFGR03V UFA agent. So we onboard this profile in that user.&#x20;

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2Faeih8I0A8MQQgjaMEgNB%2Fimage.png?alt=media&amp;token=31fdc7b4-7b82-49c2-9d9d-7c892ec21d7f" alt=""><figcaption></figcaption></figure>

Click on + icon at the top right corner

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FCEVybdTK5kuVbwTeWTH8%2Fimage.png?alt=media&amp;token=c79ad79d-6be1-4421-ad2f-baf1f40994ff" alt=""><figcaption></figcaption></figure>

Select the protocol as UFA, Operation as download, give the remaining details and click save.

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2F082cZyQpMHS2gd9bUYSr%2Fimage.png?alt=media&amp;token=f704cb1f-3990-41d9-a0e0-a1dc2eb2a403" alt=""><figcaption></figcaption></figure>

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FFmcpTbuQocqZfv43dyyV%2Fimage.png?alt=media&amp;token=d82bd5e4-b51b-4cd1-aaf5-4480d947bdc8" alt=""><figcaption></figcaption></figure>

1. **Download Folder**: Folder where the files will come from AMF.
2. **Sender**: Sender name who is sending files (Partner05 in this case)
3. **Receiver**: Receiver name to whom we are delivering files via AMF (Partner06 in this case).
4. **Message Type:** Message type we used in this case (GENERIC)
5. **Polling Interval:** The polling interval between the sync i.e., UFA agent and the server.
6. **Run Script After Download:** Script name with path if we want to run any scripts after the file was downloaded.
7. **Chunk Size:** Size of the files that will be transferred in bits when there is a large file transfer
8. **PGP Decrypt:** Option to decrypt the downloaded file.
9. **Cleanup on delivery:** Option to clean the files from filesystem after successful delivery
10. **Clean Large Files:** Option to clean only large file that meets the threshold given (Sample shown below)&#x20;
11. **Validate MD5 Check Sum:** Option to validate the MD5 Checksum on uploaded files.&#x20;

**J.  Verify the Message activity in AMF once Partner05 uploads the files to the upload folder. If everything was configured correctly, the file will be delivered to Partner06**.&#x20;

Go to Message activity under Track N Trace

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2F0AIFC2F7ZHBwSMpmm1VP%2Fimage.png?alt=media&amp;token=21229d5a-876d-4547-8cfe-ac72a77b2f89" alt=""><figcaption></figcaption></figure>

To see more details of the delivery double click on the record

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FnZFyijAMihK9XaBEHFpp%2Fimage.png?alt=media&amp;token=526612e0-75ef-4048-9b07-00bb249264d9" alt=""><figcaption></figcaption></figure>

Here we can see the details for the file delivered to Partner06

<figure><img src="https://529847091-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3lEcft4Hj193xOMx83Gm%2Fuploads%2FLPhPyTmWdjVB05FxNOWg%2Fimage.png?alt=media&amp;token=8d58641d-8073-4b41-a7d8-6ea766742854" alt=""><figcaption></figcaption></figure>
