View Source GoogleApi.ContentWarehouse.V1.Model.AppsPeopleOzExternalMergedpeopleapiInAppNotificationTarget (google_api_content_warehouse v0.4.0)

How and where to send notifications to this person in other apps, and why the requester can do so. See go/reachability for more info. "How" and "where" identify the recipient in a P2P Bridge (glossary/p2p bridge), and "why" may be helpful in a UI to disambiguate which of several ways may be used to contact the recipient. How: Via a Google profile or a reachable-only phone number that the requester has access to. Specified in the target "type" and "value". Where: Apps in which the profile/phone number owner may receive notifications. Specified in the repeated "app". Why: Which fields in, e.g., a contact associated with this person make the notification target info visible to the requester. Specified in the repeated originating_field param. Example: Alice has a contact Bob, with: Email 0 = bob@gmail.com Phone 0 = +12223334444 Phone 1 = +15556667777 Email 0 and Phone 0 let Alice see Bob's public profile (obfuscated gaia ID = 123). Public profiles are visible by email by default, and Bob has explicitly made it visible via Phone 0. Bob says people can send notifications to his public profile in YouTube. Phone 2 is associated with another Google profile that Bob owns, but he doesn't want others to see it. He is okay with people sending notifications to him in Who's Down if they have this phone number, however. There will be separate InAppNotificationTargets: one for Bob's public Google profile, and one for the second phone number, which is in his private profile. IANT #1 - targeting Bob's public profile (visible via Email 0 and Phone 0): app = [YOUTUBE] type = OBFUSCATED_GAIA_ID value = 123 originating_field: [ { field_type = EMAIL, field_index = 0 } // For Email 0 { field_type = PHONE, field_index = 0 } // For Phone 0 ] IANT #2 - targeting Bob's private profile phone number Phone 1: app = [WHOS_DOWN] type = PHONE value = +15556667777 originating_field: [ { field_type = PHONE, field_index = 1 } // For Phone 1 ]

Attributes

  • app (type: list(String.t), default: nil) -
  • clientData (type: list(GoogleApi.ContentWarehouse.V1.Model.AppsPeopleOzExternalMergedpeopleapiInAppNotificationTargetClientData.t), default: nil) -
  • metadata (type: GoogleApi.ContentWarehouse.V1.Model.AppsPeopleOzExternalMergedpeopleapiPersonFieldMetadata.t, default: nil) -
  • originatingField (type: list(GoogleApi.ContentWarehouse.V1.Model.AppsPeopleOzExternalMergedpeopleapiInAppNotificationTargetOriginatingField.t), default: nil) - There may be more than one field from which this IANT originates, as in the case of Bob's public profile.
  • type (type: String.t, default: nil) -
  • value (type: String.t, default: nil) - The value of the target, used for delivery. E.g., the obfuscated gaia ID for a visible profile.

Summary

Functions

Unwrap a decoded JSON object into its complex fields.

Types

Functions

@spec decode(struct(), keyword()) :: struct()

Unwrap a decoded JSON object into its complex fields.