-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
pivot aggregate issue #566
Comments
From what I understand:
|
@akhrail1996 what needs to be done for 2 and 3? how pushes need to be upgraded? how contact stickers look like in json? I can turn text labels with contact info into contact stickers if I know the new contact sticker structure. |
var dict: [String: Any] = [
"position": [position.x, position.y],
"zoom": zoom,
"rotation": rotation,
"icon": icon.absoluteString
"text": text
"kind": kind.rawValue
]
switch kind {
case .phone, .email: ()
case .deeplink:
dict["deeplink"] = deeplink!.absoluteString
dict["default_url"] = defaultURL!.absoluteString
} References: So an example would be: {"icon": "https://d20pncrvwjzpw9.cloudfront.net/Telegram?d=3304cb2e968756dbace49c4d6f81c3d8",
"kind": "deeplink",
"text": "@gugugui",
"zoom": 1.4656478783421008,
"deeplink": "tg://resolve?domain=gugugui",
"position": [70.3593604062259, 213.23329034850553],
"rotation": -21.53808336101298,
"default_url": "https://t.me/gugugui"} |
@akhrail1996 "icon" and "text" should be removed (there's already {
"question": "telegram",
"answer": "https://t.me/gugugui",
"value": "@gugugui",
"zoom": 1.47,
"position": [70.36, 213.23],
"rotation": -21.54
} https://t.me/apple-app-site-association telegram supports universal links |
agree 👍
|
We can release a new minor version of the app with support for backend-supplied error messages, if we do it now, I think many users would be on that version when the new major version comes out, and we'd be able to reply with descriptive error messages when they perform deprecated actions. I say no to both push notifications and force upgrade. |
what was the logic behind that design? |
Good idea. Let's do it. I can release this version today. |
logic was that everything is fetched from backend => doesn't depend on locally saved icons for contacts, locally created deeplink paths for different contact-types, etc. |
icons urls were always coming from backend but never stored there, they are rendered in the view layer. nothing media related should be stored in the app; as for kind = deeplink, did you want to be able to add new contact types without upgrading the app? so that even thought the current version doesn't know about tiktok deeplink, having the kind=deeplink and default_url=https://tiktok.com/asdfasdf set it would still be able to open it? this can be made possible with sticker-structure |
could you please send the link to code? cannot seem to find them |
test3/lib/t_web/views/view_helpers.ex Lines 49 to 57 in 44c3752
anything that's stored in the story is replaced by whatever |
@ruslandoga |
@akhrail1996 https://d20pncrvwjzpw9.cloudfront.net/Telegram?d=3304cb2e968756dbace49c4d6f81c3d8 this is a sticker, it's in |
yes
great, how would you design it? |
yes, this is a sticker that we no longer use. (but not an icon) |
same way that the web works, https:// or http:// schema = link -> deeplink http://example.com <- automatically is recognised as a link |
so why are you bringing them up? or why is it called icon in your payload? |
I never brought up stickers, only icons. Icons are currently stored only locally and not returned from backend. However this (adding new contact-type support) is not of great importance now. I think we can release this version without it. In future we will return all sticker categories (together with corresponding icons & answer options) from backend. |
it is important right now since if you release a version with that structure it'd need to be supported and I'd need to change backend, which can be easily avoided with a bit of thought |
I agreed to this structure earlier (so plan to release with it), or do you want to make some changes to it? |
no, it's perfect since it doesn't add anything new |
@akhrail1996 select count(*) from checked_profiles where "has_text_contact?"; -- 401
select count(*) from checked_profiles; -- 3020
select count(*) from profiles; -- 3020
select count(distinct from_user_id) from match_interactions where data ->> 'type' = 'contact_offer'; -- 379
select count(*) from (
select user_id from checked_profiles where "has_text_contact?"
union
select distinct from_user_id from match_interactions where data ->> 'type' = 'contact_offer'
) as c; -- 644 |
644 / 3020 = 21% is pretty good I looked at the users active in Feb: select count(*) from profiles where last_active > '2022-02-01 00:00:00'; -- 1103
SELECT
count(*)
FROM (
SELECT
*
FROM (
SELECT
user_id
FROM
checked_profiles
WHERE
"has_text_contact?"
UNION
SELECT DISTINCT
from_user_id
FROM
match_interactions
WHERE
data ->> 'type' = 'contact_offer') AS c) p
INNER JOIN LATERAL (
SELECT
user_id
FROM
profiles
WHERE
last_active > '2022-02-01 00:00:00'
AND user_id = p.user_id) pip ON TRUE; -- 503 so 503 / 1103 = 45% is even better |
@ruslandoga do you need help in converting them to contact stickers? (the manual part) |
@akhrail1996 no need, I'll write another tool to help with conversion. But I'll need your help on deciding what to do with text labels containing more than one contact. There are multiple "Пишите мне на тг/инст @durov" labels, and there's one user with three contacts in a single text label. |
select count(*) from profiles where story is not null; -- 1987
select count(*) from profiles where story is not null and last_active > '2022-02-01 00:00:00'; -- 895 So it's more like 30% and 55%. |
I think we should keep the info fully, so 2 contacts -> 2 stickers, 3 contacts -> 3 stickers |
even better, meaning that we are indeed making something users already want the numbers of null stories are very high, that's why new approach to onboarding is important as well imo |
@akhrail1996 this seems to be done |
mirroring https://github.com/getsince/test5/issues/208:
The text was updated successfully, but these errors were encountered: