nextcloud / social

🎉 Social can be used for work, or to connect to the fediverse!
https://apps.nextcloud.com/apps/social
GNU Affero General Public License v3.0
488 stars 59 forks source link

Searching for/following writefreely instances doesn’t work. (webfinger acct: issue) #1750

Open Moonbase59 opened 1 year ago

Moonbase59 commented 1 year ago

Describe the bug Searching for/following writefreely instances doesn’t work in Nextcloud: Going to "Social" and doing a search doesn’t give any results, so I can’t follow. In Mastodon, this works without problem.

Examples:

Following a Mastodon account (@azuracast@fosstodon.org) did work.

To Reproduce Steps to reproduce the behavior:

  1. Go to 'Social'
  2. Click on 'Search'
  3. Enter one of the above
  4. No results

Expected behavior A search result should appear that I’m able to follow.

Screenshots

Client details:

Server details **Social app version:** 0.6.0-rc2 **Operating system**: Ubuntu 22.04-LTS **Web server:** **Database:** **PHP version:** **Nextcloud version:** AIO v5.0.0
Logs #### Nextcloud log (data/nextcloud.log) ``` Insert your Nextcloud log here ``` #### Browser log ``` Insert your browser log here, this could for example include: a) The javascript console log b) The network log c) ... ```
srijansaxena11 commented 1 year ago

I don't think blog.syvi.net is using the webfinger protocol which allows Nextcloud Social to search for accounts. Because https://blog.syvi.net/.well-known/webfinger?resource=acct:@tech-snippets gives error page instead of account details. Therefore, it is not the error at Social app side but it's at the other end.

Moonbase59 commented 1 year ago

Thanks for investigating! In Nextcloud, as an example, I was searching for "@tech-snippets@blog.syvi.net", and a manual request in the browser

https://blog.syvi.net/.well-known/webfinger?resource=acct:tech-snippets@blog.syvi.net

actually returns

Auswahl_207

Unfortunately, I don’t (yet) know enough about the specs as to be sure how an "acct:" request must look like, but including the leading "@", as in

https://blog.syvi.net/.well-known/webfinger?resource=acct:@tech-snippets@blog.syvi.net

seems to get rewritten to

https://blog.syvi.net/.well-known/webfinger?resource=acct:tech-snippets@blog.syvi.net

and returns the same result as above.

Also on Mastodon, following "@tech-snippets@blog.syvi.net" works like a treat:

Auswahl_208

So there must be at least some subtle difference.

Moonbase59 commented 1 year ago

Further investigation shows the extra "@" might have been a Firefox caching issue. When I use a new private window for each manual webfinger test, I only get a result using

https://blog.syvi.net/.well-known/webfinger?resource=acct:tech-snippets@blog.syvi.net

The following tries all result in an empty page:

https://blog.syvi.net/.well-known/webfinger?resource=acct:@tech-snippets@blog.syvi.net
https://blog.syvi.net/.well-known/webfinger?resource=acct:tech-snippets
https://blog.syvi.net/.well-known/webfinger?resource=acct:@tech-snippets

Neither of the following Nextcloud searches yields a result, though:

@tech-snippets@blog.syvi.net
tech-snippets@blog.syvi.net
Moonbase59 commented 1 year ago

The Mastodon docs appear saying that the initial "@" has to be left out on the "acct:" webfinger request:

https://docs.joinmastodon.org/spec/webfinger/

At least, all examples translate the example "@Gargron@mastodon.social" mention to a webfinger acct: request without the initial "@":

https://mastodon.social/.well-known/webfinger?resource=acct:gargron@mastodon.social

and this works with all Mastodon instances I tried, also for my writefreely blog.

Also, RFC 7565 indicates to use a "mailto:" scheme like "user@domain.tld".

So I think the Nextcloud search should translate the "@tech-snippets@blog.syvi.net" mention into a webfinger "acct:tech-snippets@blog.syvi.net" request directed at my domain, which in turn will provide a valid JSON answer, which can then be used for further AcitivityPub protocol interactions.

srijansaxena11 commented 1 year ago

You did great debugging! It's confusing now what is the actual issue here. I verified everything posted by you and it is pin point correct. Also mastodon's webfinger also works with username@domain.com only, not with @username@domain.com, @username, or only username which is the same behaviour as that of blog.syvi.net. But mastodon users can be searched fine whereas blog.syvi.net users cannot be. I wonder why. Will wait for someone more experienced to comment and share some insights.

Moonbase59 commented 1 year ago

Thanks, and looking forward to whatever good things you may find (and implement)… ;-)

Note that writefreely instances are kinda ActivityPub "bridge into the Fediverse", meant to be followed only. They don’t support "two-way" communication like commenting back. That is supposed to happen on Mastodon, Nextcloud, wherever. It is just a way to have a minimalist blog (with longer posts than usual) and being able to follow it elsewhere. So they might not offer the full functionality (but work great on Mastodon and hopefully soon on Nextcloud).

Moonbase59 commented 11 months ago

Seems "Social" doesn’t get much love… Any progress on this?

Stumbled again on the search not working today when searching for !jellyfin@lemmy.ml from this page.

Auswahl_280