{"_id":"@akashic/master-agent-rpc","name":"@akashic/master-agent-rpc","dist-tags":{"latest":"7.1.0"},"versions":{"7.1.0":{"name":"@akashic/master-agent-rpc","version":"7.1.0","description":"masterとagentのRPC用パッケージ","main":"lib/index.js","types":"lib/index.d.ts","scripts":{"build":"npm run compile","pretest":"npm run lint && npm run compile:spec","test":"npm run lint && jest","lint":"tslint --project tsconfig.json","precompile":"npm run clean:lib","compile":"tsc","precompile:spec":"npm run clean:tmp","compile:spec":"tsc -p tsconfig.spec.json","clean:lib":"shx rm -rf lib/*","clean:tmp":"shx rm -rf tmp/*","format":"tslint -p tsconfig.json --fix"},"publishConfig":{"access":"public","@akashic:registry":"https://registry.npmjs.org/"},"repository":{"type":"git","url":"git+https://github.com/akashic-games/akashic-system.git","directory":"packages/master-agent-rpc"},"author":{"name":"DWANGO Co., Ltd."},"license":"MIT","devDependencies":{"@akashic-system/jest-config":"^2.0.53","@types/jest":"29.5.14","@types/node":"8.10.8","@types/rx-lite":"4.0.5","@types/thrift":"0.10.7","jest":"^29.7.0","shx":"~0.2.2","source-map-support":"~0.5.4","ts-jest":"29.4.6","tslint":"~5.9.1","typescript":"~5.5.4"},"dependencies":{"@akashic/server-engine-data-types":"~6.0.100","rx-lite":"~4.0.7","thrift":"~0.11.0"},"jest":{"preset":"@akashic-system/jest-config","setupFilesAfterEnv":["../../packages/jest-config/jest.setup.js"]},"gitHead":"cd733a5c70b515f3837b6216cfb8f8cf21a92db5","_id":"@akashic/master-agent-rpc@7.1.0","bugs":{"url":"https://github.com/akashic-games/akashic-system/issues"},"homepage":"https://github.com/akashic-games/akashic-system#readme","_nodeVersion":"24.13.1","_npmVersion":"11.8.0","dist":{"integrity":"sha512-Oiawtn6Q5zMDr1FIErok2NCDWGX05zWbDvls8J39xrPT/svHzXKh2aNbChkaxQcDGbATI+r1FOiZ+Yq2SUk9sg==","shasum":"713fc3e5f0831c6551809c5000c94c4a17cfc648","tarball":"https://registry.npmjs.org/@akashic/master-agent-rpc/-/master-agent-rpc-7.1.0.tgz","fileCount":34,"unpackedSize":127501,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDagSQ4myVPAFBLWfRoL5079OCg2VWLr869LE4XfAcY6QIgArpDFarzO+XxAHh8Qa8gqtybjgiyCou0hXc6644Gx9M="}]},"_npmUser":{"name":"akashic-owner","email":"akashic@dwango.co.jp"},"directories":{},"maintainers":[{"name":"akashic-owner","email":"akashic@dwango.co.jp"},{"name":"akashic-extension-owner","email":"akashic@dwango.co.jp"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/master-agent-rpc_7.1.0_1772435732203_0.9338824192947917"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-02T07:15:32.122Z","7.1.0":"2026-03-02T07:15:32.349Z","modified":"2026-03-02T07:15:32.592Z"},"maintainers":[{"name":"akashic-owner","email":"akashic@dwango.co.jp"},{"name":"akashic-extension-owner","email":"akashic@dwango.co.jp"}],"description":"masterとagentのRPC用パッケージ","homepage":"https://github.com/akashic-games/akashic-system#readme","repository":{"type":"git","url":"git+https://github.com/akashic-games/akashic-system.git","directory":"packages/master-agent-rpc"},"author":{"name":"DWANGO Co., Ltd."},"bugs":{"url":"https://github.com/akashic-games/akashic-system/issues"},"license":"MIT","readme":"# master-agent-rpc\n\nmasterとagent間のthrift-RPC用のプロトコル\n\n## インストール\n\n```sh\n$ npm install @akashic/master-agent-rpc\n```\n\n## src/thrift/ への出力方法\n\nthrift/cluster.thrift を編集した場合、 src/thrift/ に変更内容を反映する必要があります。\n以下の手順で行います。\n\nDocker を利用して、下記セットアップ手順を行うことなくビルドを行います。\n\n```sh\ndocker build -t thrift-generator .\ndocker run --rm -it -v ./src/thrift:/home/master-agent-rpc/output thrift-generator\n```\n\n一般的に配布されている thrift ではなく、 type script での出力ができるようにカスタマイズしたもの (ext_libs/thrift) を使います。\n`docker build` でカスタマイズ版 thrift がインストールされた docker image を作成し、\n`docker run` で出力を行います。\n\n出力されたファイルはコミットに含めてください。\n\n## ビルド方法\n\n`npm run build` によりgulpを使ってビルドできます。\n\n```\nnpm install\nnpm run build\n```\n\n[thrift-install]: http://thrift.apache.org/docs/install/\n\n## 使い方\n\n### client\n\n```typescript\nimport thrift = require(\"thrift\");\nimport RPC = require(\"@akashic/master-agent-rpc\");\nvar connection = thrift.createConnection(host, port, {});\nconnection.once(\"connect\", () => {\n  var client = thrift.createClient(RPC.Agent, connection);\n  client.instanceAssign(instanceTask);\n});\n```\n\n### server\n\n```typescript\nimport thrift = require(\"thrift\");\nimport RPC = require(\"@akashic/master-agent-rpc\");\n\nclass Handler implements RPC.Master.MasterLike {\n  // implement it!\n}\n\nvar handler = new Handler();\nthis.server = thrift.createServer(RPC.Master, handler, {});\n```\n\n## ライセンス\n\n本リポジトリは MIT License の元で公開されています。\n詳しくは [LICENSE](./LICENSE) をご覧ください。\n","readmeFilename":"README.md","_rev":"1-666219d72b1f4081c63a8abed2f48a98"}