Fixed SMS and Email cloud services
This commit is contained in:
@@ -6644,6 +6644,7 @@ type CloudSyncJob struct {
|
||||
SecondaryItem string `json:"secondary_item" datastore:"secondary_item"`
|
||||
ThirdItem string `json:"third_item" datastore:"third_item"`
|
||||
FourthItem string `json:"fourth_item" datastore:"fourth_item"`
|
||||
FifthItem string `json:"fifth_item" datastore:"fifth_item"`
|
||||
Created string `json:"created" datastore:"created"`
|
||||
}
|
||||
|
||||
@@ -7231,7 +7232,7 @@ func runInit(ctx context.Context) {
|
||||
job := func() {
|
||||
err := remoteOrgJobHandler(org, interval)
|
||||
if err != nil {
|
||||
log.Printf("Failed request with remote org setup (2): %s", err)
|
||||
log.Printf("[ERROR] Failed request with remote org setup (2): %s", err)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7844,7 +7845,7 @@ func handleCloudSetup(resp http.ResponseWriter, request *http.Request) {
|
||||
job := func() {
|
||||
err := remoteOrgJobHandler(*org, interval)
|
||||
if err != nil {
|
||||
log.Printf("Failed request with remote org setup (1): %s", err)
|
||||
log.Printf("[ERROR] Failed request with remote org setup (1): %s", err)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1817,6 +1817,108 @@ func saveWorkflow(resp http.ResponseWriter, request *http.Request) {
|
||||
} else if hook.Id == "" {
|
||||
trigger.Status = "stopped"
|
||||
}
|
||||
} else if trigger.TriggerType == "USERINPUT" {
|
||||
// E.g. check email
|
||||
sms := ""
|
||||
email := ""
|
||||
triggerType := ""
|
||||
triggerInformation := ""
|
||||
for _, item := range trigger.Parameters {
|
||||
if item.Name == "alertinfo" {
|
||||
triggerInformation = item.Value
|
||||
} else if item.Name == "type" {
|
||||
triggerType = item.Value
|
||||
} else if item.Name == "email" {
|
||||
email = item.Value
|
||||
} else if item.Name == "sms" {
|
||||
sms = item.Value
|
||||
}
|
||||
}
|
||||
|
||||
// FIXME: This is not the right time to send them, BUT it's well served for testing. Save -> send email / sms
|
||||
if strings.Contains(triggerType, "email") {
|
||||
if email == "test@test.com" {
|
||||
log.Printf("Email isn't specified during save.")
|
||||
resp.WriteHeader(401)
|
||||
resp.Write([]byte(fmt.Sprintf(`{"success": false, "reason": "Email field in user input can't be empty"}`)))
|
||||
return
|
||||
}
|
||||
|
||||
// triggerid, start node, workflowid, argument
|
||||
/*
|
||||
startNode := ""
|
||||
referenceExecutionId := ""
|
||||
action := CloudSyncJob{
|
||||
Type: "user_input",
|
||||
Action: "send_email",
|
||||
OrgId: user.ActiveOrg.Id,
|
||||
PrimaryItemId: workflow.ID,
|
||||
SecondaryItem: startNode,
|
||||
ThirdItem: triggerInformation,
|
||||
FourthItem: email,
|
||||
FifthItem: referenceExecutionId,
|
||||
}
|
||||
|
||||
org, err := getOrg(ctx, user.ActiveOrg.Id)
|
||||
if err != nil {
|
||||
log.Printf("Failed email send to cloud", err)
|
||||
resp.WriteHeader(401)
|
||||
resp.Write([]byte(fmt.Sprintf(`{"success": false, "reason": "%s"}`, err)))
|
||||
return
|
||||
}
|
||||
|
||||
err = executeCloudAction(action, org.SyncConfig.Apikey)
|
||||
if err != nil {
|
||||
log.Printf("Failed email send to cloud", err)
|
||||
resp.WriteHeader(401)
|
||||
resp.Write([]byte(fmt.Sprintf(`{"success": false, "reason": "%s"}`, err)))
|
||||
return
|
||||
}
|
||||
*/
|
||||
|
||||
log.Printf("Should send email to %s during execution.", email)
|
||||
}
|
||||
if strings.Contains(triggerType, "sms") {
|
||||
if sms == "0000000" {
|
||||
log.Printf("Email isn't specified during save.")
|
||||
resp.WriteHeader(401)
|
||||
resp.Write([]byte(fmt.Sprintf(`{"success": false, "reason": "SMS field in user input can't be empty"}`)))
|
||||
return
|
||||
}
|
||||
|
||||
/*
|
||||
startNode := ""
|
||||
referenceExecutionId := ""
|
||||
action := CloudSyncJob{
|
||||
Type: "user_input",
|
||||
Action: "send_sms",
|
||||
OrgId: user.ActiveOrg.Id,
|
||||
PrimaryItemId: workflow.ID,
|
||||
SecondaryItem: startNode,
|
||||
ThirdItem: triggerInformation,
|
||||
FourthItem: sms,
|
||||
FifthItem: referenceExecutionId,
|
||||
}
|
||||
|
||||
org, err := getOrg(ctx, user.ActiveOrg.Id)
|
||||
if err != nil {
|
||||
log.Printf("Failed email send to cloud", err)
|
||||
resp.WriteHeader(401)
|
||||
resp.Write([]byte(fmt.Sprintf(`{"success": false, "reason": "%s"}`, err)))
|
||||
return
|
||||
}
|
||||
|
||||
err = executeCloudAction(action, org.SyncConfig.Apikey)
|
||||
if err != nil {
|
||||
log.Printf("Failed email send to cloud", err)
|
||||
resp.WriteHeader(401)
|
||||
resp.Write([]byte(fmt.Sprintf(`{"success": false, "reason": "%s"}`, err)))
|
||||
return
|
||||
}
|
||||
*/
|
||||
|
||||
log.Printf("Should send SMS to %s during execution.", sms)
|
||||
}
|
||||
}
|
||||
|
||||
//log.Println("TRIGGERS")
|
||||
|
||||
@@ -1924,7 +1924,7 @@ const AngularWorkflow = (props) => {
|
||||
"errors": null,
|
||||
"is_valid": true,
|
||||
"label": "User input",
|
||||
"environment": "onprem",
|
||||
"environment": "cloud",
|
||||
"long_description": "Take user input to continue execution",
|
||||
},
|
||||
{
|
||||
@@ -4995,7 +4995,8 @@ const AngularWorkflow = (props) => {
|
||||
fullWidth
|
||||
color="primary"
|
||||
placeholder={"mail1@company.com,mail2@company.com"}
|
||||
onChange={(event) => {
|
||||
defaultValue={workflow.triggers[selectedTriggerIndex].parameters[3].value}
|
||||
onBlur={(event) => {
|
||||
workflow.triggers[selectedTriggerIndex].parameters[3].value = event.target.value
|
||||
setWorkflow(workflow)
|
||||
setUpdate(Math.random())
|
||||
@@ -5018,7 +5019,8 @@ const AngularWorkflow = (props) => {
|
||||
fullWidth
|
||||
color="primary"
|
||||
placeholder={"+474823212,+460203042"}
|
||||
onChange={(event) => {
|
||||
defaultValue={workflow.triggers[selectedTriggerIndex].parameters[4].value}
|
||||
onBlur={(event) => {
|
||||
workflow.triggers[selectedTriggerIndex].parameters[4].value = event.target.value
|
||||
setWorkflow(workflow)
|
||||
setUpdate(Math.random())
|
||||
|
||||
Reference in New Issue
Block a user