feat: added smardigo callback to msteams

master
Sven Ketelsen 4 years ago
parent 4ffaedc869
commit 8e72c0c948

@ -756,97 +756,23 @@ Keycloak Realm mit Administrator Account
<bpmn2:startEvent id="Event_14clga5" camunda:formKey="simple-connect-create">
<bpmn2:outgoing>Flow_1nu8qqa</bpmn2:outgoing>
</bpmn2:startEvent>
<bpmn2:task id="Activity_1trolu7" name="MS-Teams Benachrichtigung erzeugen">
<bpmn2:extensionElements>
<camunda:inputOutput>
<camunda:outputParameter name="smardigoUrl">https://${cluster.stage}-management-smardigo-01-connect.smardigo.digital/api/redirect/process/${contextScopeId}/dossier/simple-connect/${contextProcessId}</camunda:outputParameter>
<camunda:outputParameter name="section">
<camunda:map>
<camunda:entry key="activityTitle">${activityTitle}</camunda:entry>
<camunda:entry key="activitySubtitle">${activitySubtitle}</camunda:entry>
<camunda:entry key="activityImage">https://smardigo.de/wp-content/uploads/2020/01/smardigo-min.png</camunda:entry>
</camunda:map>
</camunda:outputParameter>
</camunda:inputOutput>
</bpmn2:extensionElements>
<bpmn2:incoming>Flow_1nu8qqa</bpmn2:incoming>
<bpmn2:outgoing>Flow_1f6k0y9</bpmn2:outgoing>
</bpmn2:task>
<bpmn2:sequenceFlow id="Flow_1nu8qqa" sourceRef="Event_14clga5" targetRef="Activity_1trolu7" />
<bpmn2:sequenceFlow id="Flow_1f6k0y9" sourceRef="Activity_1trolu7" targetRef="Activity_1d8c2rh" />
<bpmn2:sequenceFlow id="Flow_0vyypeb" sourceRef="Activity_0iybt30" targetRef="Activity_0330hjg" />
<bpmn2:sequenceFlow id="Flow_1nu8qqa" sourceRef="Event_14clga5" targetRef="Activity_1ipajwe" />
<bpmn2:sequenceFlow id="Flow_127qqnb" sourceRef="Activity_1ipajwe" targetRef="Event_063hewk" />
<bpmn2:sequenceFlow id="Flow_1imukyy" sourceRef="Activity_1d8c2rh" targetRef="Activity_0iybt30" />
<bpmn2:endEvent id="Event_063hewk">
<bpmn2:incoming>Flow_127qqnb</bpmn2:incoming>
<bpmn2:terminateEventDefinition id="TerminateEventDefinition_1fa14zr" />
</bpmn2:endEvent>
<bpmn2:serviceTask id="Activity_1ipajwe" name="MS-Teams Benachrichtigung senden" camunda:delegateExpression="${rest.post(&#39;teams&#39;, &#39;/&#39;).responseJSONObject(&#39;teamsResponse&#39;).bodyJSONMap(teamsRequestBody)}">
<bpmn2:extensionElements>
<camunda:inputOutput>
<camunda:inputParameter name="teamsRequestBody">
<camunda:map>
<camunda:entry key="@type">MessageCard</camunda:entry>
<camunda:entry key="@context">http://schema.org/extensions</camunda:entry>
<camunda:entry key="themeColor">0076D7</camunda:entry>
<camunda:entry key="summary">Neue Aufgabe: ${comment}</camunda:entry>
<camunda:entry key="sections">${sections}</camunda:entry>
<camunda:entry key="potentialAction">${potentialActions}</camunda:entry>
</camunda:map>
<camunda:script scriptFormat="groovy" resource="create-teams-message.groovy" />
</camunda:inputParameter>
</camunda:inputOutput>
</bpmn2:extensionElements>
<bpmn2:incoming>Flow_18kjr7f</bpmn2:incoming>
<bpmn2:incoming>Flow_1nu8qqa</bpmn2:incoming>
<bpmn2:outgoing>Flow_127qqnb</bpmn2:outgoing>
</bpmn2:serviceTask>
<bpmn2:sequenceFlow id="Flow_18kjr7f" sourceRef="Activity_0330hjg" targetRef="Activity_1ipajwe" />
<bpmn2:task id="Activity_1d8c2rh" name="MS-Teams Benachrichtigung erzeugen">
<bpmn2:extensionElements>
<camunda:inputOutput>
<camunda:outputParameter name="target">
<camunda:list>
<camunda:value>${smardigoUrl}</camunda:value>
</camunda:list>
</camunda:outputParameter>
</camunda:inputOutput>
</bpmn2:extensionElements>
<bpmn2:incoming>Flow_1f6k0y9</bpmn2:incoming>
<bpmn2:outgoing>Flow_1imukyy</bpmn2:outgoing>
</bpmn2:task>
<bpmn2:task id="Activity_0iybt30" name="MS-Teams Benachrichtigung erzeugen">
<bpmn2:extensionElements>
<camunda:inputOutput>
<camunda:outputParameter name="potentialAction">
<camunda:map>
<camunda:entry key="@context">http://schema.org</camunda:entry>
<camunda:entry key="@type">ViewAction</camunda:entry>
<camunda:entry key="name">Open in Smardigo</camunda:entry>
<camunda:entry key="target">${target}</camunda:entry>
</camunda:map>
</camunda:outputParameter>
<camunda:outputParameter name="sections">
<camunda:list>
<camunda:value>${section}</camunda:value>
</camunda:list>
</camunda:outputParameter>
</camunda:inputOutput>
</bpmn2:extensionElements>
<bpmn2:incoming>Flow_1imukyy</bpmn2:incoming>
<bpmn2:outgoing>Flow_0vyypeb</bpmn2:outgoing>
</bpmn2:task>
<bpmn2:task id="Activity_0330hjg" name="MS-Teams Benachrichtigung erzeugen">
<bpmn2:extensionElements>
<camunda:inputOutput>
<camunda:outputParameter name="potentialActions">
<camunda:list>
<camunda:value>${potentialAction}</camunda:value>
</camunda:list>
</camunda:outputParameter>
</camunda:inputOutput>
</bpmn2:extensionElements>
<bpmn2:incoming>Flow_0vyypeb</bpmn2:incoming>
<bpmn2:outgoing>Flow_18kjr7f</bpmn2:outgoing>
</bpmn2:task>
<bpmn2:endEvent id="Event_063hewk">
<bpmn2:incoming>Flow_127qqnb</bpmn2:incoming>
<bpmn2:terminateEventDefinition id="TerminateEventDefinition_1fa14zr" />
</bpmn2:endEvent>
</bpmn2:process>
<bpmn2:message id="Message_15bdtij" name="process-approved-${contextProcessId}" />
<bpmndi:BPMNDiagram id="BPMNDiagram_1">
@ -1144,9 +1070,6 @@ Keycloak Realm mit Administrator Account
<dc:Bounds x="185" y="285" width="90" height="20" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Gateway_1mpu33m_di" bpmnElement="Gateway_0ppveul">
<dc:Bounds x="685" y="825" width="50" height="50" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1pzykoz_di" bpmnElement="Activity_1pzykoz" isExpanded="true">
<dc:Bounds x="770" y="210" width="290" height="200" />
</bpmndi:BPMNShape>
@ -1343,6 +1266,9 @@ Keycloak Realm mit Administrator Account
<dc:Bounds x="673" y="1256" width="83" height="27" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Gateway_1mpu33m_di" bpmnElement="Gateway_0ppveul">
<dc:Bounds x="685" y="825" width="50" height="50" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="TextAnnotation_0friy7d_di" bpmnElement="TextAnnotation_0friy7d">
<dc:Bounds x="2200" y="1470" width="220" height="124" />
</bpmndi:BPMNShape>
@ -1475,52 +1401,24 @@ Keycloak Realm mit Administrator Account
<dc:Bounds x="1382" y="2152" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Participant_0r2nfs7_di" bpmnElement="Participant_0r2nfs7" isHorizontal="true">
<dc:Bounds x="160" y="2370" width="950" height="320" />
<dc:Bounds x="160" y="2370" width="370" height="320" />
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="Flow_18kjr7f_di" bpmnElement="Flow_18kjr7f">
<di:waypoint x="870" y="2540" />
<di:waypoint x="910" y="2540" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1imukyy_di" bpmnElement="Flow_1imukyy">
<di:waypoint x="560" y="2540" />
<di:waypoint x="610" y="2540" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_127qqnb_di" bpmnElement="Flow_127qqnb">
<di:waypoint x="1010" y="2540" />
<di:waypoint x="1042" y="2540" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0vyypeb_di" bpmnElement="Flow_0vyypeb">
<di:waypoint x="710" y="2540" />
<di:waypoint x="770" y="2540" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1f6k0y9_di" bpmnElement="Flow_1f6k0y9">
<di:waypoint x="420" y="2540" />
<di:waypoint x="460" y="2540" />
<di:waypoint x="410" y="2540" />
<di:waypoint x="452" y="2540" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1nu8qqa_di" bpmnElement="Flow_1nu8qqa">
<di:waypoint x="258" y="2540" />
<di:waypoint x="320" y="2540" />
<di:waypoint x="310" y="2540" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNShape id="Event_14clga5_di" bpmnElement="Event_14clga5">
<dc:Bounds x="222" y="2522" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1trolu7_di" bpmnElement="Activity_1trolu7">
<dc:Bounds x="320" y="2500" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_063hewk_di" bpmnElement="Event_063hewk">
<dc:Bounds x="1042" y="2522" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1ipajwe_di" bpmnElement="Activity_1ipajwe" bioc:stroke="black" bioc:fill="white">
<dc:Bounds x="910" y="2500" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1d8c2rh_di" bpmnElement="Activity_1d8c2rh">
<dc:Bounds x="460" y="2500" width="100" height="80" />
<dc:Bounds x="310" y="2500" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0iybt30_di" bpmnElement="Activity_0iybt30">
<dc:Bounds x="610" y="2500" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0330hjg_di" bpmnElement="Activity_0330hjg">
<dc:Bounds x="770" y="2500" width="100" height="80" />
<bpmndi:BPMNShape id="Event_063hewk_di" bpmnElement="Event_063hewk">
<dc:Bounds x="452" y="2522" width="36" height="36" />
</bpmndi:BPMNShape>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>

@ -0,0 +1,45 @@
def smardigoUrl = "https://" + cluster.stage + "-management-smardigo-01-connect.smardigo.digital/api/redirect/process/" + contextScopeId + "/dossier/simple-connect/" + contextProcessId
def smardigoMessageUrl = "https://" + cluster.stage + "-management-smardigo-01-connect.smardigo.digital/api/v1/scopes/" + contextScopeId + "/processes/" + contextProcessId + "/messages"
def message = [:]
message["@type"] = "MessageCard"
message["@context"] = "http://schema.org/extensions"
message["themeColor"] = "0076D7"
message["summary"] = "Neue Aufgabe: " + comment
def section = [:]
section["activityTitle"] = activityTitle
section["activitySubtitle"] = activitySubtitle
section["activityImage"] = "https://smardigo.de/wp-content/uploads/2020/01/smardigo-min.png"
section["facts"] = [
[name:"Stage",value:cluster.stage],
[name:"Name",value:cluster.name],
[name:"Service",value:cluster.service],
[name:"Mandant",value:tenant.name]
]
message.sections = [section]
def potentialAction = []
def openInSmardigo = [:]
openInSmardigo["@type"] = "ViewAction"
openInSmardigo["@context"] = "http://schema.org"
openInSmardigo["name"] = "Vorgang öffnen"
openInSmardigo["target"] = [smardigoUrl]
potentialAction.add(openInSmardigo)
if (vorgang_status < 30) {
def approveInSmardigo = [:]
approveInSmardigo["@type"] = "HttpPOST"
approveInSmardigo["name"] = "Server freigeben"
approveInSmardigo["target"] = smardigoMessageUrl
approveInSmardigo["body"] = "{\"message\":\"process-approved-" + contextProcessId + "\"}"
approveInSmardigo["headers"] = [
[name:"Smardigo-User-Token",value:"eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..rCRO1cVFgkyZ45D5cJNK5g.fc6JVOo5ja5sqe-0PQTfJGOivJ6tyiD-rwgY6rXJ3-U.tOgqgJ2zTjB3_M9BGtvVjQ"]
]
potentialAction.add(approveInSmardigo)
}
message.potentialAction = potentialAction
message
Loading…
Cancel
Save