No description
Find a file
Benjamin Neff 8859c960ac
Don't log encrypted private messages
Rails logs the content of received json as parameters, but this is a bad
idea for federation messages. It only makes the logfiles bigger without
any benefit, because it's encrypted anyway ...
2017-04-30 23:34:19 +02:00
app/controllers/diaspora_federation use head method instead of :nothing option 2016-08-30 01:18:12 +02:00
bin Update spring binstubs 2017-01-19 01:53:07 +01:00
config Don't log encrypted private messages 2017-04-30 23:34:19 +02:00
docs Update xml_serialization.md 2017-03-01 14:23:18 +02:00
lib Release version 0.1.8 2017-03-02 21:05:56 +01:00
spec Fix factories 2017-01-19 01:53:07 +01:00
test Update spring binstubs 2017-01-19 01:53:07 +01:00
.codeclimate.yml add .codeclimate.yml 2015-06-25 02:23:59 +02:00
.editorconfig add .editorconfig 2015-06-19 01:05:06 +02:00
.envrc add .envrc for direnv 2015-06-23 01:09:56 +02:00
.gitignore fix travis for ruby 2.1 and rails 4 2016-12-28 20:53:31 +01:00
.rspec WIP: move test dependencies to gemspec 2015-06-24 03:09:14 +02:00
.rubocop.yml Remove "try", because it is a rails feature 2017-01-26 02:21:51 +01:00
.ruby-gemset initial commit 2015-06-10 03:13:44 +02:00
.ruby-version Add ruby 2.4 2017-01-19 01:53:07 +01:00
.travis.yml Add ruby 2.4 2017-01-19 01:53:07 +01:00
.yardopts add changelog to gems and documentation 2016-07-14 20:02:46 +02:00
Changelog.md Update changelog for 0.1.8 2017-03-02 21:05:15 +01:00
CONTRIBUTING.md Overhaul README, add contributing notes. 2016-06-26 03:37:48 +02:00
COPYRIGHT Add AGPL-3.0 license text 2017-02-12 20:56:37 +01:00
diaspora_federation-rails.gemspec Disallow newer rails versions 2016-11-17 00:27:38 +01:00
diaspora_federation-test.gemspec Add "uuid" as dependency for diaspora_federation-test 2017-01-25 02:37:51 +01:00
diaspora_federation.gemspec Bump faraday and faraday_middleware 2017-01-19 01:53:07 +01:00
Gemfile Bump simplecov 2017-03-02 20:46:41 +01:00
Gemfile.lock Release version 0.1.8 2017-03-02 21:05:56 +01:00
Guardfile add guard-rubocop 2016-01-16 00:31:02 +01:00
LICENSE Add AGPL-3.0 license text 2017-02-12 20:56:37 +01:00
Rakefile split rails part into separate gem 2015-07-04 20:01:37 +02:00
README.md Use https link for protocol documentation link 2017-01-05 01:19:18 +01:00

diaspora* federation library

A library that provides functionalities needed for the diaspora* federation protocol

master: Build Status master | develop: Build Status develop

Code Climate Test Coverage Dependency Status Inline docs Gem Version

Gem Documentation | Protocol Documentation | Bugtracker

This repository contains two gems:

  • diaspora_federation provides the functionality for de-/serialization and de-/encryption of Entities in the protocols used for communication among the various installations of diaspora*.
  • diaspora_federation-rails is a rails engine that adds the diaspora* federation protocol to a rails app.

Usage

Add the gem to your Gemfile:

gem "diaspora_federation-rails"

Mount the routes in your config/routes.rb:

mount DiasporaFederation::Engine => "/"

Configure the engine in config/initializers/diaspora_federation.rb:

DiasporaFederation.configure do |config|
  # the pod url
  config.server_uri = AppConfig.pod_uri

  config.define_callbacks do
    on :fetch_person_for_webfinger do |diaspora_id|
      person = Person.find_local_by_diaspora_id(diaspora_id)
      if person
        DiasporaFederation::Discovery::WebFinger.new(
          # ...
        )
      end
    end

    on :fetch_person_for_hcard do |guid|
      # ...
    end
  end
end

Contributing

See our contribution guide for more information on how to contribute to the diaspora* federation library.

License

GNU Affero General Public License.