{"id":20284171,"url":"https://github.com/clebert/node-d-bus","last_synced_at":"2025-03-04T03:41:59.931Z","repository":{"id":57102463,"uuid":"359824287","full_name":"clebert/node-d-bus","owner":"clebert","description":"A Node.js implementation of D-Bus with native TypeScript support.","archived":false,"fork":false,"pushed_at":"2023-11-12T09:33:46.000Z","size":157,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-02-23T05:35:25.886Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/clebert.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,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-04-20T13:23:34.000Z","updated_at":"2023-03-25T13:23:51.000Z","dependencies_parsed_at":"2023-11-12T10:26:29.961Z","dependency_job_id":"56b9e3a2-0d0a-4f1e-99d6-6bf0550990f9","html_url":"https://github.com/clebert/node-d-bus","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clebert%2Fnode-d-bus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clebert%2Fnode-d-bus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clebert%2Fnode-d-bus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clebert%2Fnode-d-bus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/clebert","download_url":"https://codeload.github.com/clebert/node-d-bus/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241780465,"owners_count":20019058,"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-11-14T14:18:35.759Z","updated_at":"2025-03-04T03:41:59.910Z","avatar_url":"https://github.com/clebert.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Node.js D-Bus\n\n\u003e A Node.js implementation of D-Bus with native TypeScript support.\n\n## Installation\n\n```\nnpm install @clebert/node-d-bus d-bus-message-protocol d-bus-type-system\n```\n\n## Features\n\n- Designed from the ground up with TypeScript.\n- Depends only on\n  [d-bus-message-protocol](https://github.com/clebert/d-bus-message-protocol)\n  and [d-bus-type-system](https://github.com/clebert/d-bus-type-system).\n- Built-in support for the system message bus connected via Unix domain socket\n  path.\n  - The default path (`unix:path=/var/run/dbus/system_bus_socket`) can be\n    overwritten with the environment variable `DBUS_SYSTEM_BUS_ADDRESS`.\n- Built-in support for authentication as external.\n\n## Usage example\n\n### Call the `org.freedesktop.DBus.Hello` method\n\n```js\nimport {SystemDBus} from '@clebert/node-d-bus';\nimport {MessageType} from 'd-bus-message-protocol';\n\nconst dBus = new SystemDBus();\n\nawait dBus.connectAsExternal();\n\ntry {\n  const helloReturnMessage = await dBus.callMethod({\n    messageType: MessageType.MethodCall,\n    objectPath: `/org/freedesktop/DBus`,\n    interfaceName: `org.freedesktop.DBus`,\n    memberName: `Hello`,\n    serial: dBus.nextSerial,\n    destination: `org.freedesktop.DBus`,\n  });\n\n  console.log(JSON.stringify(helloReturnMessage));\n} finally {\n  dBus.disconnect();\n}\n```\n\n```json\n{\n  \"messageType\": 2,\n  \"replySerial\": 1,\n  \"serial\": 1,\n  \"noReplyExpected\": true,\n  \"noAutoStart\": false,\n  \"allowInteractiveAuthorization\": false,\n  \"destination\": \":1.811\",\n  \"sender\": \"org.freedesktop.DBus\",\n  \"type\": {\"typeCode\": \"s\", \"bytePadding\": 4},\n  \"body\": \":1.811\"\n}\n```\n\nNote: The preceding message can also be conveniently sent using the\n`await dBus.hello()` method.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclebert%2Fnode-d-bus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fclebert%2Fnode-d-bus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclebert%2Fnode-d-bus/lists"}