https://github.com/4350pchris/matrix-transcriptions

Transcribe those annoying voice messages.

https://github.com/4350pchris/matrix-transcriptions

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.0%) to scientific vocabulary

Keywords

gladia matrix text-to-speech typescript voice
Last synced: 6 months ago · JSON representation

Repository

Transcribe those annoying voice messages.

Basic Info
  • Host: GitHub
  • Owner: 4350pChris
  • License: mit
  • Language: TypeScript
  • Default Branch: main
  • Homepage:
  • Size: 94.7 KB
Statistics
  • Stars: 3
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 1
Topics
gladia matrix text-to-speech typescript voice
Created almost 2 years ago · Last pushed 9 months ago
Metadata Files
Readme Funding License

README.md

Matrix Transcriptions

Hate listening to voice messages? Yeah, me too

This project can transcribe voice messages sent to your Matrix account, so you don't have to listen to them. It uses Gladia to do that for now, but the aim is to integrate multiple backends in the future.

How To Use

  1. Create a Gladia account and get an API key.
  2. Create a bot user for this project on your Matrix server.
  3. Get the access token of the user you want to receive transcriptions (probably your own) and your bot user. See this Stackexchange post for an example on how to do that.
  4. Copy .env.sample to .env and fill in the required values. For now you won't know the channel ID, so just leave it empty. We'll get to that later.
  5. Start the bot by using either of the methods mentioned below.
  6. (Will probably change in the future) For now, you'll have to text the bot from your user account once to get the bot to join the room and get the room ID in the output of your docker container or terminal. You can then copy the room ID to the .env file.
  7. Restart the bot. It should now be able to transcribe voice messages sent to your user account and text you the transcription.

Docker

There's a docker image available at ghcr.io/4350pchris/matrix-transcriptions and chris5896/matrix-transcriptions. Also, there's a docker-compose file available in the repository which you can use to start the bot.

Node

You can also run the bot using Node. Make sure you have pnpm installed.

Prepare

  • pnpm install
  • pnpm run build

Run

  • pnpm run prod

Environment Variables

There's a .env.sample file in the repository which you can copy to .env and fill in the required values.

  • GLADIA_API_KEY: The API key you get from Gladia.
  • GLADIA_SUMMARIZATION_TYPE: The type of summarization you want to use. Can be general, bullet_points or concise.
  • SUMMARIZE: Whether you want to summarize the transcription or not. Defaults to true. Can be true or false.
  • MATRIX_HOMESERVER: The URL of your Matrix homeserver. Something like https://matrix.org.
  • MATRIX_USER_ID: The user ID of the user account that should receive transcriptions. Most likely this will be your own user ID.
  • MATRIX_USER_ACCESS_TOKEN: The access token of the user account that should receive transcriptions.
  • MATRIX_BOT_USER_ID: The user ID of the bot user you created.
  • MATRIX_BOT_ACCESS_TOKEN: The access token of the bot user you created.
  • MATRIX_CHANNEL_ID: The ID of the room the bot should join. You can get this by sending a message to the bot and checking the output of the docker container or terminal as described above.

Owner

  • Name: Chris-Robin Ennen
  • Login: 4350pChris
  • Kind: user
  • Location: Germany

Full-Stack developer from Germany. Open Source rules. Contributor @vikejs

GitHub Events

Total
  • Delete event: 2
  • Push event: 9
  • Create event: 4
Last Year
  • Delete event: 2
  • Push event: 9
  • Create event: 4

Committers

Last synced: 7 months ago

All Time
  • Total Commits: 26
  • Total Committers: 1
  • Avg Commits per committer: 26.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 10
  • Committers: 1
  • Avg Commits per committer: 10.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Chris-Robin Ennen c****n@e****v 26
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 0
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 0
  • Total pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Dependencies

package.json npm
  • @biomejs/biome ^1.7.0 development
  • @types/node ^20.12.7 development
  • tsx ^4.7.2 development
  • typescript ^5.4.5 development
  • dotenv ^16.4.5
  • formdata-node ^6.0.3
  • ky ^1.2.3
  • matrix-js-sdk ^32.0.0
  • openai ^4.38.2
pnpm-lock.yaml npm
  • @biomejs cli-darwin-arm64@1.7.0 development
  • @biomejs biome@1.7.0 development
  • @biomejs cli-linux-arm64-musl@1.7.0 development
  • @biomejs cli-darwin-x64@1.7.0 development
  • @biomejs cli-win32-arm64@1.7.0 development
  • @biomejs cli-linux-arm64@1.7.0 development
  • @biomejs cli-linux-x64-musl@1.7.0 development
  • @biomejs cli-linux-x64@1.7.0 development
  • @biomejs cli-win32-x64@1.7.0 development
  • @esbuild darwin-arm64@0.19.12 development
  • @esbuild aix-ppc64@0.19.12 development
  • @esbuild android-arm64@0.19.12 development
  • @esbuild android-arm@0.19.12 development
  • @esbuild android-x64@0.19.12 development
  • @esbuild linux-riscv64@0.19.12 development
  • @esbuild darwin-x64@0.19.12 development
  • @esbuild freebsd-arm64@0.19.12 development
  • @esbuild freebsd-x64@0.19.12 development
  • @esbuild linux-arm64@0.19.12 development
  • @esbuild linux-arm@0.19.12 development
  • @esbuild linux-ia32@0.19.12 development
  • @esbuild linux-loong64@0.19.12 development
  • @esbuild linux-mips64el@0.19.12 development
  • @esbuild linux-ppc64@0.19.12 development
  • @esbuild sunos-x64@0.19.12 development
  • @esbuild linux-s390x@0.19.12 development
  • @esbuild linux-x64@0.19.12 development
  • @esbuild netbsd-x64@0.19.12 development
  • @esbuild openbsd-x64@0.19.12 development
  • @esbuild win32-x64@0.19.12 development
  • @esbuild win32-arm64@0.19.12 development
  • @esbuild win32-ia32@0.19.12 development
  • esbuild@0.19.12 development
  • fsevents@2.3.3 development
  • get-tsconfig@4.7.3 development
  • resolve-pkg-maps@1.0.0 development
  • tsx@4.7.2 development
  • typescript@5.4.5 development
  • @babel runtime@7.24.4
  • @matrix-org matrix-sdk-crypto-wasm@4.9.0
  • @types node@20.12.7
  • @types node-fetch@2.6.11
  • @types events@3.0.3
  • @types node@18.19.31
  • @types retry@0.12.0
  • abort-controller@3.0.0
  • agentkeepalive@4.5.0
  • another-json@0.2.0
  • asynckit@0.4.0
  • base-x@4.0.0
  • bs58@5.0.0
  • combined-stream@1.0.8
  • content-type@1.0.5
  • delayed-stream@1.0.0
  • dotenv@16.4.5
  • event-target-shim@5.0.1
  • events@3.3.0
  • form-data-encoder@1.7.2
  • form-data@4.0.0
  • formdata-node@4.4.1
  • formdata-node@6.0.3
  • humanize-ms@1.2.1
  • jwt-decode@4.0.0
  • ky@1.2.3
  • loglevel@1.9.1
  • matrix-events-sdk@0.0.1
  • matrix-js-sdk@32.0.0
  • matrix-widget-api@1.6.0
  • mime-db@1.52.0
  • mime-types@2.1.35
  • ms@2.1.3
  • node-domexception@1.0.0
  • node-fetch@2.7.0
  • oidc-client-ts@3.0.1
  • openai@4.38.2
  • p-retry@4.6.2
  • regenerator-runtime@0.14.1
  • retry@0.13.1
  • sdp-transform@2.14.2
  • tr46@0.0.3
  • undici-types@5.26.5
  • unhomoglyph@1.0.6
  • uuid@9.0.1
  • web-streams-polyfill@3.3.3
  • web-streams-polyfill@4.0.0-beta.3
  • webidl-conversions@3.0.1
  • whatwg-url@5.0.0