quirrc: dfghdf dfg hdfgh dfgdfg (Default)
quirrc ([personal profile] quirrc) wrote in [site community profile] dw_dev2020-07-20 04:55 pm
Entry tags:

Few questions about friends

Hello. I want to make support of DW friends in Semagic client. I have 3 questions/bugs

1) It looks like communities and feeds when added to access list without groupmask, are added not with zero groupmask but with one particular groupmask ("2305843009213693952" or 0x2000000000000000) while personal accounts are added with another ("2305843009213693953" or 0x2000000000000001).  Both are added through editcircle add edge=1, i.e. without groupmask explicitly specified.

2)Are DW groups 64bit as opposed to LJ 32bit? Or it is an error?

3) Journal name that is returned by getcirle equals to username. When I added dw_news via editcirle, it returns fullname as "Dreamwidth news", but after that getcirle returns dw_news as fullname.

Update: also, groupmask for trustgroups in getcirle is not returned at all, only id and sortorder, which do not correspond to the actual group bit number.
pauamma: Cartooney crab wearing hot pink and acid green facemask holding drink with straw (Default)

[personal profile] pauamma 2020-07-21 03:52 am (UTC)(link)
2: yes, DW groups are 64 bits. Not sure about answers to 1 and 3.
alierak: (Default)

[personal profile] alierak 2020-07-22 02:39 am (UTC)(link)
3: definitely a bug. editcircle uses the "name" method to get fullname, while getcircle, by way of list_users, uses the "display_name" method, and that's wrong. That will just return the username, unless it's an OpenID account, in which case it produces a displayable version of the URL.
alierak: (Default)

[personal profile] alierak 2020-07-22 02:59 am (UTC)(link)
1: DW has split access lists into separate concepts of watching (I subscribe to you) and trusting (I allow you to see certain posts). I believe 0x2000000000000000 (1 << 61) is a flag indicating that it's a watch edge as opposed to a trust edge. The lower 61 bits probably contain what was previously known as a groupmask, but I'm fuzzy on the details.