Пользовательские атрибуты Intercom.io для Swift не работают

Я пытаюсь внедрить пользовательские атрибуты для Intercom.io в свое приложение для iOS. Я использую XCode 7, Swift 2 и iOS 9.

Вот мой код:

class func updateUser(user: User) {
    Intercom.updateUserWithAttributes([
        "name": user.name,
        "email": user.email
    ])

    let userAttributes = ([
        "role": "customer",
        "phone": user.phone,
        "First Name": user.firstName,
        "Last Name": user.lastName,
        "Referral Code": user.referralCode,
        "Avatar Pic": user.avatarURL,
        "Profile Pic": user.profilePicURL
    ])

    Intercom.updateUserWithAttributes(["custom_attributes": userAttributes])
}

Я успешно отправляю «имя» и «адрес электронной почты», но мои «пользовательские_атрибуты» не работают. Я думаю, что мой синтаксис правильный в соответствии с документацией Intercom: https://docs.intercom.io/Install-on-your-mobile-product/configuring-intercom-for-ios

Но я новичок в Swift и не имею опыта работы с Obj-C.

Также важно отметить, что мои события правильно отражаются.

Intercom.logEventWithName(eventName)

Что-то не так с моим синтаксисом?? Или что-то еще? Пожалуйста помоги!


person Nash Islam    schedule 17.10.2015    source источник


Ответы (1)


Оказалось, что проблем было две:

1) Неправильная документация внутренней связи и тег "custom_attributes" не нужен для пользовательских атрибутов.

2) мои форматы URL были NSURL, а не строками, и поэтому весь объект отклонялся

Исправлено сейчас! Спасибо Дейлу из Intercom за поддержку

код просто:

let userAttributes = [
        "name": user.name,
        "email": user.email,
        "role": "customer",
        "phone": user.phone,
        "first_name": user.firstName,
        "last_name": user.lastName,
        "referral_code": user.referralCode,
        "avatar_pic": user.avatarURLString,
        "profile_pic": user.profilePicURLString
    ]

Intercom.updateUserWithAttributes(userAttributes)
person Nash Islam    schedule 19.10.2015