mautic自动化营销中邮件的移动通知

移动通知将您的iOS和Android应用与One Signal集成使用您自己的OneSignal帐户,您现在可以将通知推送到联系人的移动设备(获得他们的许可)。在Mautic的配置中启用它们,以在菜单中的Channels下列出它们。

有关更多信息,请参阅One Signal iOS文档One Signal Android文档

建立

用于OneSignal集成的iOS代码

要在iOS应用中启用推送通知,请在您的applicationfunc中添加以下代码(或其变体)AppDelegate下面的代码示例使用Swift 3.1。如果您使用的是C#,请根据您的需要进行修改。

// Somehow determine the user email. If you have user accounts, it may be better to move// this outside of the `application` func of `AppDelegate` in order to determine the user email.// In this example, the address is hardcoded for ease of use.let userEmail = "you@domain.com"OneSignal.initWithLaunchOptions(launchOptions, appId: "YOUR-ONE-SIGNAL-APP-ID")OneSignal.syncHashedEmail(userEmail);OneSignal.idsAvailable({(_ userId, _ pushToken) in
    let pushId      = userId != nil ? userId : ""
    let pushEnabled = pushToken != nil ? true : false
    let userData    = UserData(email: userEmail, push_id: pushId!, enabled: pushEnabled)
    self.pushUserDataToMautic(userData, "https://dev.mautic.com/notification/appcallback")});

为了便于使用,我创建了以下struct和func,用于将用户数据发送到Mautic。在您的应用中创建此结构,并在适当的位置导入它。

UserData结构

struct UserData {
    var email   = String()
    var push_id = String()
    var enabled = Bool()
    static func toJSON(_ userData: UserData) -> String {
        let email   = userData.email
        let pushId  = userData.push_id
        let enabled = userData.enabled
        return "{\"email\":\"\(email)\",\"push_id\":\"\(pushId)\",\"enabled\":\(enabled)}"
    }}

pushUserDataToMautic func

这是将UserData结构推送到Mautic安装的基本功能。它将推送用户数据,然后将Mautic的响应显示为应用程序警报。修改以满足您的应用程序的需求。

func pushUserDataToMautic(_ userData: UserData, _ url: String) {
    var request = URLRequest(url: URL(string: url)!)
    request.httpMethod = "POST"
    let postString = UserData.toJSON(userData)
    request.httpBody = postString.data(using: .utf8)
    let task = URLSession.shared.dataTask(with: request) { data, response, error in
        guard let data = data, error == nil else {
            // check for fundamental networking error
            return
        }
        if let httpStatus = response as? HTTPURLResponse, httpStatus.statusCode != 200 {
            // check for http errors
            return
        }
        // Comment the next 4 lines to remove the alert 
        let responseString = String(data: data, encoding: .utf8)
        let alert = UIAlertController(title: "Response Data", message: responseString, preferredStyle: UIAlertControllerStyle.alert)
        alert.addAction(UIAlertAction(title: "OK", style: UIAlertActionStyle.default, handler: nil))
        self.window?.rootViewController?.present(alert, animated: true, completion: nil);
    }
    task.resume()}

用于OneSignal集成的Android代码

快来了...

通知统计

除了被推送到Mautic的UserData之外,您还可以通过发送带有附加statJSON密钥的UserData结构将开放/交互统计信息推送到Mautic 


0 条评论

目前没有人发表评论

发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
点击关闭
  • 在线客服1

    在线客服2

    在线客服3