Пользовательские атрибуты 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])
}
Я успешно отправляю "name" и "email", но мои "custom_attributes" не работают. Я думаю, что мой синтаксис правильный в соответствии с документацией Интеркома: https://docs.intercom.io/Install-on-your-mobile-product/configuring-intercom-for-ios
Но я новичок в Swift и не имею опыта работы с Obj-C.
Также важно отметить, что о моих событиях сообщают должным образом.
Intercom.logEventWithName(eventName)
Что-то не так с моим синтаксисом? Или что-нибудь еще? Пожалуйста помоги!
1 ответ
Оказывается, было две проблемы:
1) Неправильная документация по внутренней связи и тег "custom_attributes" не нужен для пользовательских атрибутов
2) мои форматы URL были NSURL, а не Strings, и поэтому весь объект был отклонен
Исправлено сейчас! Спасибо Дейлу из Интеркома за поддержку
код просто:
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)