Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Info

NiFi URL: http://192.168.1.229:8070/nifi
Demo Workbench URL: http://192.168.1.229:8080/ucs-nifi-test-workbench/
NiFi endpoint: http://192.168.1.229:8888/contentListener

Relevant Tasks

Esteban:

  • SG-88: Alerting Interface Implementation                   -> DEMO ON LOCAL WORKBENCH
  • SG-211: UCS/Alert Client Interfaces implementation -> DEMO ON LOCAL WORKBENCH
  • SG-180: Integrate CHAT processors                          -> ALREADY DEMOED

Pavan:

  • SG-183: Failed to respond handler (timeout)             -> DEMO:  
  • SG-174: Implement Router Transformation (bodies) -> DEMO:
  • SG-172: Implement User Resolution                         -> NOT YET INTEGRATED (code review + intergration integration missing)
  • SG-67: Chat processor                                              -> ALREADY DEMOED
  • SG-65: SMS workflow                                               -> ALREADY DEMOED

Basit:

  • SG-109, SG-192/195: Email processors                   -> NOT YET INTEGRATED (code review + intergration integration missing)

Test Messages

SG-183183

Original message is to ealivert/CHAT. If the message is not responded in 1 minute, another message is sent to 2 recipients: ealiverti/CHAT (again) and jhughes/SMS.

The original message body is "Some Body". The body of the escalation message is "Escalation Message sent by CHAT" and "Escalation Message sent by SMS" respectively.

Code Block
languagexml
titleResponse Timeout
linenumberstrue
collapsetrue
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<messageWrapper xmlns:model="http://org.socraticgrid.hl7.services.uc.model" xmlns:exceptions="http://org.socraticgrid.hl7.services.uc.exceptions">
    <message xsi:type="model:simpleMessage" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
        <model:parts>
            <model:content>Some Body</model:content>
            <model:type>text/plain</model:type>
            <model:tag></model:tag>
        </model:parts>
        <model:simpleMessageHeader>
            <model:messageId>ff26b0af-0b7d-47ee-89f9-06ed13cf7fee</model:messageId>
            <model:relatedConversationId>testC</model:relatedConversationId>
            <model:sender>
                <model:physicaladdress>
                    <model:address>eafry</model:address>
                    <model:serviceId>SMS</model:serviceId>
                </model:physicaladdress>
            </model:sender>
            <model:recipientsList>
                <model:recipientId>01776550-f815-4458-a304-11d8422d538a</model:recipientId>
                <model:deliveryAddress>
                    <model:physicaladdress>
                        <model:address>ealiverti</model:address>
                        <model:serviceId>CHAT</model:serviceId>
                    </model:physicaladdress>
                </model:deliveryAddress>
                <model:deliveryReceipt>false</model:deliveryReceipt>
                <model:readReceipt>false</model:readReceipt>
                <model:role/>
                <model:visibility>Public</model:visibility>
            </model:recipientsList>
            <model:subject>Some Subject</model:subject>
            <model:created>2015-02-26T14:54:19.740+01:00</model:created>
            <model:lastModified>2015-02-26T14:54:19.739+01:00</model:lastModified>
            <model:deliveryGuarantee>BestEffort</model:deliveryGuarantee>
            <model:dynamics>Asynchronous</model:dynamics>
            <model:priority>0</model:priority>
            <model:receiptNotification>true</model:receiptNotification>
            <model:retainFullyInLog>false</model:retainFullyInLog>
            <model:timeout>30000</model:timeout>
            <model:respondBy>1</model:respondBy>
            <model:onNoResponseAll xsi:type="model:simpleMessage">
                <model:parts>
                    <model:content>Escalation Message sent by CHAT</model:content>
                    <model:type>text/plain</model:type>
                    <model:tag></model:tag>
                </model:parts>
                <model:simpleMessageHeader>
                    <model:messageId>ff26b0af-0b7d-47ee-89f9-06ed13cf7fee<06ed13cf7fe1</model:messageId>
                    <model:relatedConversationId>testC</model:relatedConversationId>
                    <model:sender>
                        <model:physicaladdress>
                            <model:address>eafry</model:address>
                            <model:serviceId>SMS</model:serviceId>
                        </model:physicaladdress>
                    </model:sender>
                    <model:recipientsList>
                        <model:recipientId>0ea44e6e-5ffa-4009-84eb-7c0f782112ed</model:recipientId>
                        <model:deliveryAddress>
                            <model:physicaladdress>
                                <model:address>ealiverti</model:address>
                                <model:serviceId>CHAT</model:serviceId>
                            </model:physicaladdress>
                        </model:deliveryAddress>
                        <model:deliveryReceipt>false</model:deliveryReceipt>
                        <model:readReceipt>false</model:readReceipt>
                        <model:role/>
                        <model:visibility>Public</model:visibility>
                    </model:recipientsList>
                    <model:subject>This is an escalation message</model:subject>
                    <model:created>2015-02-26T14:54:19.740+01:00</model:created>
                    <model:lastModified>2015-02-26T14:54:19.739+01:00</model:lastModified>
                    <model:deliveryGuarantee>BestEffort</model:deliveryGuarantee>
                    <model:dynamics>Asynchronous</model:dynamics>
                    <model:priority>0</model:priority>
                    <model:receiptNotification>true</model:receiptNotification>
                    <model:retainFullyInLog>false</model:retainFullyInLog>
                    <model:timeout>30000</model:timeout>
                    <model:respondBy>0</model:respondBy>
                </model:simpleMessageHeader>
            </model:onNoResponseAll>
            <model:onNoResponseAll xsi:type="model:simpleMessage">
                <model:parts>
                    <model:content>Escalation Message sent by SMS</model:content>
                    <model:type>text/plain</model:type>
                    <model:tag></model:tag>
                </model:parts>
                <model:simpleMessageHeader>
                    <model:messageId>ff26b0af-0b7d-47ee-89f9-06ed13cf7fee<06ed13cf7fe2</model:messageId>
                    <model:relatedConversationId>testC</model:relatedConversationId>
                    <model:sender>
                        <model:physicaladdress>
                            <model:address>eafry</model:address>
                            <model:serviceId>SMS</model:serviceId>
                        </model:physicaladdress>
                    </model:sender>
                    <model:recipientsList>
                        <model:recipientId>32388849-233b-4f6b-b19f-44000f574ae3</model:recipientId>
                        <model:deliveryAddress>
                            <model:physicaladdress>
                                <model:address>jhughes</model:address>
                                <model:serviceId>SMS</model:serviceId>
                            </model:physicaladdress>
                        </model:deliveryAddress>
                        <model:deliveryReceipt>false</model:deliveryReceipt>
                        <model:readReceipt>false</model:readReceipt>
                        <model:role/>
                        <model:visibility>Public</model:visibility>
                    </model:recipientsList>
                    <model:subject>This is an escalation message</model:subject>
                    <model:created>2015-02-26T14:54:19.740+01:00</model:created>
                    <model:lastModified>2015-02-26T14:54:19.739+01:00</model:lastModified>
                    <model:deliveryGuarantee>BestEffort</model:deliveryGuarantee>
                    <model:dynamics>Asynchronous</model:dynamics>
                    <model:priority>0</model:priority>
                    <model:receiptNotification>true</model:receiptNotification>
                    <model:retainFullyInLog>false</model:retainFullyInLog>
                    <model:timeout>30000</model:timeout>
                    <model:respondBy>0</model:respondBy>
                </model:simpleMessageHeader>
            </model:onNoResponseAll>
        </model:simpleMessageHeader>
    </message>
</messageWrapper>

SG-174

Original message is to ealivert/CHAT and jhughes/CHAT. The message has a specific body for each recipient: "Chat for Esteban" and "Chat for Jonathan" respectively.

Code Block
languagexml
titleRoute by Recipient
linenumberstrue
collapsetrue
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<messageWrapper xmlns:model="http://org.socraticgrid.hl7.services.uc.model" xmlns:exceptions="http://org.socraticgrid.hl7.services.uc.exceptions">
    <message xsi:type="model:simpleMessage" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
        <model:parts>
            <model:content>Chat for Esteban</model:content>
            <model:type>text/plain</model:type>
            <model:tag>[RECIPIENT-ID]:ealiverti</model:tag>
        </model:parts>
        <model:parts>
            <model:content>Chat for Jonathan</model:content>
            <model:type>text/plain</model:type>
            <model:tag>[RECIPIENT-ID]:jhughes</model:tag>
        </model:parts>
        <model:simpleMessageHeader>
            <model:messageId>ff26b0af-0b7d-47ee-89f9-06ed13cf7fee<06ed13cf7fe3</model:messageId>
            <model:relatedConversationId>testC</model:relatedConversationId>
            <model:sender>
                <model:physicaladdress>
                    <model:address>eafry</model:address>
                    <model:serviceId>SMS</model:serviceId>
                </model:physicaladdress>
            </model:sender>
            <model:recipientsList>
                <model:recipientId>95c8f2f8-2cea-40d0-b300-a0f58e2b1d90</model:recipientId>
                <model:deliveryAddress>
                    <model:physicaladdress>
                        <model:address>ealiverti</model:address>
                        <model:serviceId>CHAT</model:serviceId>
                    </model:physicaladdress>
                </model:deliveryAddress>
                <model:deliveryReceipt>false</model:deliveryReceipt>
                <model:readReceipt>false</model:readReceipt>
                <model:role/>
                <model:visibility>Public</model:visibility>
            </model:recipientsList>
            <model:recipientsList>
                <model:recipientId>f60b62b5-a12e-465f-9fb4-cde15fbe500b</model:recipientId>
                <model:deliveryAddress>
                    <model:physicaladdress>
                        <model:address>jhughes</model:address>
                        <model:serviceId>CHAT</model:serviceId>
                    </model:physicaladdress>
                </model:deliveryAddress>
                <model:deliveryReceipt>false</model:deliveryReceipt>
                <model:readReceipt>false</model:readReceipt>
                <model:role/>
                <model:visibility>Public</model:visibility>
            </model:recipientsList>
            <model:subject>Some Subject</model:subject>
            <model:created>2015-02-26T14:54:19.740+01:00</model:created>
            <model:lastModified>2015-02-26T14:54:19.739+01:00</model:lastModified>
            <model:deliveryGuarantee>BestEffort</model:deliveryGuarantee>
            <model:dynamics>Asynchronous</model:dynamics>
            <model:priority>0</model:priority>
            <model:receiptNotification>true</model:receiptNotification>
            <model:retainFullyInLog>false</model:retainFullyInLog>
            <model:timeout>30000</model:timeout>
            <model:respondBy>0</model:respondBy>
        </model:simpleMessageHeader>
    </message>
</messageWrapper>

 

Original message is to ealivert/CHAT and jhughes/SMS. The message has a specific body for each service: "Content for CHAT" and "CONTENT for SMS" respectively.

Code Block
languagexml
titleRoute by Service
linenumberstrue
collapsetrue
 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<messageWrapper xmlns:model="http://org.socraticgrid.hl7.services.uc.model" xmlns:exceptions="http://org.socraticgrid.hl7.services.uc.exceptions">
    <message xsi:type="model:simpleMessage" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <model:parts>
                <model:content>Content for CHAT</model:content>
                <model:type>text/plain</model:type>
                <model:tag>[SERVICE-ID]:CHAT</model:tag>
            </model:parts>
            <model:parts>
                <model:content>Content for SMS</model:content>
                <model:type>text/plain</model:type>
                <model:tag>[SERVICE-ID]:SMS</model:tag>
            </model:parts>
        <model:simpleMessageHeader>
            <model:messageId>ff26b0af-0b7d-47ee-89f9-06ed13cf7fee<06ed13cf7fe4</model:messageId>
            <model:relatedConversationId>testC</model:relatedConversationId>
            <model:sender>
                <model:physicaladdress>
                    <model:address>eafry</model:address>
                    <model:serviceId>SMS</model:serviceId>
                </model:physicaladdress>
            </model:sender>
                        <model:recipientsList>
                            <model:recipientId>e6757c78-3dd3-406e-b6cc-9da167044609</model:recipientId>
                            <model:deliveryAddress>
                                <model:physicaladdress>
                                    <model:address>ealiverti</model:address>
                                    <model:serviceId>CHAT</model:serviceId>
                                </model:physicaladdress>
                            </model:deliveryAddress>
                            <model:deliveryReceipt>false</model:deliveryReceipt>
                            <model:readReceipt>false</model:readReceipt>
                            <model:role/>
                            <model:visibility>Public</model:visibility>
                        </model:recipientsList>
                        <model:recipientsList>
                            <model:recipientId>0716d671-291c-46da-8a9c-f8e7321a8bc7</model:recipientId>
                            <model:deliveryAddress>
                                <model:physicaladdress>
                                    <model:address>jhughes</model:address>
                                    <model:serviceId>SMS</model:serviceId>
                                </model:physicaladdress>
                            </model:deliveryAddress>
                            <model:deliveryReceipt>false</model:deliveryReceipt>
                            <model:readReceipt>false</model:readReceipt>
                            <model:role/>
                            <model:visibility>Public</model:visibility>
                        </model:recipientsList>
            <model:subject>Some Subject</model:subject>
            <model:created>2015-02-26T14:54:19.740+01:00</model:created>
            <model:lastModified>2015-02-26T14:54:19.739+01:00</model:lastModified>
            <model:deliveryGuarantee>BestEffort</model:deliveryGuarantee>
            <model:dynamics>Asynchronous</model:dynamics>
            <model:priority>0</model:priority>
            <model:receiptNotification>true</model:receiptNotification>
            <model:retainFullyInLog>false</model:retainFullyInLog>
            <model:timeout>30000</model:timeout>
            <model:respondBy>0</model:respondBy>
        </model:simpleMessageHeader>
    </message>
</messageWrapper>