{"id":13553963,"url":"https://github.com/RocketChat/hubot-freddie","last_synced_at":"2025-04-03T06:30:40.226Z","repository":{"id":77807605,"uuid":"99529979","full_name":"RocketChat/hubot-freddie","owner":"RocketChat","description":"hubot bridge between Rocket.Chat and synapse (home) server from matrix.org ","archived":false,"fork":false,"pushed_at":"2022-12-12T21:14:27.000Z","size":35,"stargazers_count":12,"open_issues_count":0,"forks_count":4,"subscribers_count":4,"default_branch":"develop","last_synced_at":"2024-11-04T01:33:00.591Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RocketChat.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2017-08-07T02:46:40.000Z","updated_at":"2024-04-08T02:02:30.000Z","dependencies_parsed_at":"2023-03-11T20:16:18.208Z","dependency_job_id":null,"html_url":"https://github.com/RocketChat/hubot-freddie","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RocketChat%2Fhubot-freddie","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RocketChat%2Fhubot-freddie/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RocketChat%2Fhubot-freddie/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RocketChat%2Fhubot-freddie/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RocketChat","download_url":"https://codeload.github.com/RocketChat/hubot-freddie/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246947742,"owners_count":20859308,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T12:02:36.898Z","updated_at":"2025-04-03T06:30:39.789Z","avatar_url":"https://github.com/RocketChat.png","language":"JavaScript","funding_links":[],"categories":["JavaScript","others"],"sub_categories":[],"readme":"hubot-freddie\n=============\n\nFreddie is Rocket.Chat's Hubot for Federation via matrix.org\n\nFreddie pairs a Rocket.Chat server with a Synapse Home Server.\n\nFrom Rocket.Chat:\n\n![Rocket.Chat in federated channel](https://raw.githubusercontent.com/Sing-Li/bbug/master/images/rcsnynapse.png)\n\nTo Home Server:\n\n![Synapse in federated room](https://raw.githubusercontent.com/Sing-Li/bbug/master/images/synapserc.png)\n\nOut to the rest of the federated world - Slack, IRC, and beyond ... via matrix.org\n\nNOTE: This project is a work in progress.\n\n# Installation\n\n```\nnpm install --save @rocket.chat/hubot-freddie\n```\n\nNext, you must edit the `external-scripts.json` file to load Freddie:\n\n```\n[\n  ...\n  \"hubot-freddie\"\n]\n```\n\n# Home Server Application Service Registration\n\nIn the `node_modules/hubot-freddie` directory:\n\n```\nnpm install\nnode src/matrix/genASRegFile.js -r -u \u003cURL of hubot-freddie's incoming webhook\u003e\n```\n\nThis will generate a `rocketchat-registration.yaml` file in the same directory.\n\nCopy this file to both your Rocket.Chat server and Synapse Home Server.  Note the absolute path(s).\n\nThe format of the generated file is somewhat outdated, please add the following line at the top of the Synapse Home Server's copy:\n\n```\nid: \"rocketchat\"\n```\n\nOn your home server, make sure to add an entry in `homeserver.yaml` to point to this file:\n\n```\napp_service_config_files: [\"/absolute/path/to/rocketchat-registration.yaml\"]\n```\n\nYou will also need to configure Freddie for your Rocket.Chat server and Synapse Home sever..\n\n\n#Configuration\n\nYou can configure Freddie via environment variables.\n\n#### Configuration Options\n\nHere are all of the options you can specify to configure hubot-freddie.\n\nNote that these options are in addition to the options available with the hubot-rocketchat adpaters.  Please see [hubot-rocketchat  adapter configuration options](https://github.com/RocketChat/hubot-rocketchat#configuration-options) for more information.\n\nConfigure via: `export VAR=Value` or add to pm2 etc\n\nEnvironment Variable | Description\n:---- | :----\nHOMESERVER_URL | the URL where your Home Server is running, as seen by the bot, specify as `http://host:port`  with no trailing slash\nHOMESERVER_DOMAIN | the domain of the Home Server\nHOMESERVER_ROOM_ID | the id of the federated room on the Home Server;  note this **must** be the ID and not the textual name of the room\nROCKETCHAT_ROOM_ID | the id of the federated room on the Rocket.Chat Server; note this **must** be the ID and not the textual name of the room\nHOMESERVER_SENDER_LOCAL | the local user on the Home Server that will create new users and send messages on behalf of incoming Rocket.Chat messages\nINCOMING_PORT | the port at which this bot will listen to incoming messages from the Home Server\nROCKETCHAT_USER_PREFIX | the prefix added to the Rocket.Chat user name when messages are sent on his/her behalf to the Home Server\nWRITABLE_CONFIG_PATH |  the absolute path of the directory where the bot's Matrix bridge can find the `rocketchat-registration.yaml` Application Service configuration file, this file **must** be identical to the one registered with the Home Server\nROOM_MAP | a list of rooms to map, use `ID_ROCKETCHAT=ID_MATRIX,...,...` same as `HOMESERVER_ROOM_ID` `ROCKETCHAT_ROOM_ID`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FRocketChat%2Fhubot-freddie","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FRocketChat%2Fhubot-freddie","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FRocketChat%2Fhubot-freddie/lists"}