Hilfe & Wissen Welche Automatisierungstypen existieren?
Welche Automatisierungstypen existieren?
Wenn Sie die NO_CODE-Option verwenden, wird der Typ automatisch festgelegt, wenn Sie Automatisierungen erstellen. Wenn Sie jedoch eine Automatisierung von Grund auf programmieren möchten, zeigen wir Ihnen die verfügbaren Typen sowie die Input- und Output-Variablen.
Die Erstellung von Automatisierungen erfolgt über folgenden Link: Automatisierungen erstellen
Zeit gesteuert (cron)
Die Automation wird zu einer bestimmten Zeit aufgerufen.
Parameter
keine
Output
kein
Beispiel
# synchronisation mit einer URL wo in der csv es eine Spalte email,geschlecht gibt
download_csv = call_url('https://mein-newsletterverteiler.csv')
user_import = create_import(7, download_csv.get('body'), 'newsletterverteiler.csv')
mapping = ['email', 'sex']
user_import = update_import(7, user_import.get('id'), mapping, 'sync', 'start')
logging.info(json_dumps(user_import))
Event gesteuert
Das Event kann entweder durch ein Benutzerereignis (z. B. Öffnen oder Klicken) oder durch ein Moderatorereignis (z. B. Start des Imports) ausgelöst werden. Die Benutzerevents werden gespeichert und können auch in einer Selektion abgerufen werden, während die Moderatorevents nur virtuell existieren. Der User ist entweder der User der geklickt hat mit seinem kompletten Datensatz, oder der Moderator. Sollte das Event von einer Automation ausgelöst sein, ist die User Variable leer. Weitere Informationen zu den Events finden Sie hier: (Link zu den Events)
Parameter
user = {
'email': '..', # die E-Mail-Adresse
'list': '..', # die Liste
'firstname': '...', # der Vorname
'lastname': '...', # der Nachname
'user[1-x]': '...', # die Userfelder Bsp. user1
# ... und vieles mehr sie können mit logging.info(user) sich Beispielsweise das Userobjekt anschauen
}
event = {
'category': '..', # die category
'action': '..', # die action
'label': '..', # das label
'value': ..., # das Value (int)
}
client = {
'guid': '...' # public guid of the client can be used for event tracking
}
mailing_id = ... # mailing_id if a mailing_id is associated with the event
Output
kein
Beispiel
if user.get('cnf') in ['0','4'] and event.get('category') == 'KMSignup' and event.get('action') == 'sub' and user.get('list') == 10:
*code*
Webhook gesteuert
Sie haben die Möglichkeit, Webhooks zu erstellen und diese mit den Methoden GET
, POST
, DELETE
oder PUT
aufzurufen. Diese Webhooks können auch verwendet werden, um die Anmeldungsformulare zu ersetzen. Im unten stehenden Beispielcode sehen Sie, wie Sie das Anmeldungsformular durch Ihren eigenen Code ersetzen und zusätzlich eigene Funktionen aufrufen können.
Parameter
request = {
'arguments': {...},
'headers': {...},
'method': (GET|POST|PUT|DELETE),
'uri': '...',
'body': '...',
'remote_ip': '...'
}
Output
response = {
'headers': {}, # Header Bsp. {'Content-Type': 'text/html'}
'status': ..., # (Optional) der Status Code Bsp. 200
'body': '...', # (Optional) der Body Bsp. <html><body>Huhu</body></html> oder {'BIN': 'Json response'}
'redirect': '...', # (Optional) wenn es gesetzt wird, wird and die URL hierhin redirected
}
Beispiel
data = check_signature(request)
add_user(listnum_newsletter, user, response)
E-Mail gesteuert
Diese Automation wird durch eine eingehende E-Mail ausgelöst.
Parameter
mail = ... # die komplette E-Mail als Text
email = test@test.de # die E-Mail-Adresse die den Hook ausgelöst hat
Output
kein
Beispiel
mail_parsed = parse_mail(mail)
CSV Umwandler bzw. CSV Prozessor
Diese Automation wird ausgelöst, sollte sie bei einem Import ausgewählt werden. Diese Automation ändert nach dem hochladen das Input File und reicht es an den Import weiter. Ein CSV Umwandler wird nicht bei den Automationen erstellt sondern im Menupünkt: Abonnenten->Import->CSV Umwandler . Weiter Infomration und Hilfe zu den CSV Umwandler
Parameter
input = {
'filename': '..', # der Filename des upgeloadeten CSV - Files
'body': '...' # der body des upgeloadeten CSV Files
}
Output
output = {
'body': ... # der body des geänderten CSV Files
}
Beispiel
# hier wird dem CSV File einfach eine neues Feld unique ID hinzugefügt d.h. jedem USer wird diese Unique ID hinzugefügt
reader = csv_reader(input['body'], delimiter=';')
i = 0
new_rows = []
unique_id = uuid4()
for row in reader:
if i == 0:
row += ['user10,%s' % unique_id]
1 == 1
else:
row += [unique_id]
new_rows += [row]
i += 1
output['body'] = csv_writerows(new_rows)