Streaming API doesn't use chunked encoding (breaks bitlbee-mastodon)
bitlbee-mastodon tries to use the streaming API (/api/v1/streaming/user
) but gets confused due to the connection being a "normal" HTTP connection (Content-Length
, keep-alive
) rather than being chunked (no Content-Length
, Transfer-Encoding: chunked
). The underlying HTTP code in bitlbee records a closed stream when req->body_size >= req->content_length
which causes bitlbee-mastodon to consider login failed (Login error: Stream closed (200 OK)
).
Mastodon Streaming API docs says that the streaming endpoints work as "chunked-encoding transfer" (or, alternately, a websocket).
(bitlbee-mastodon is A-OK talking to a Mastodon instance; it's just Pleroma that confuses it.)