mirror of
https://github.com/zkldi/Tachi.git
synced 2026-10-08 06:48:04 +03:00
feat: add inohara as a default client (#1090)
This commit is contained in:
@@ -336,6 +336,13 @@ function ImportInfoDisplayer({ game }: { game: Game }) {
|
||||
);
|
||||
} else if (game === "ongeki") {
|
||||
Content.unshift(
|
||||
<ImportInfoCard
|
||||
name="Inohara"
|
||||
href="inohara"
|
||||
desc="Automatically import scores, whenever you get them."
|
||||
key="Inohara"
|
||||
moreInfo="This is the recommended way to import O.N.G.E.K.I. scores; data is submitted at the end of each play."
|
||||
/>,
|
||||
<ImportInfoCard
|
||||
name="ARTEMiS Exporter"
|
||||
href="ongeki-artemis-exporter"
|
||||
|
||||
@@ -4,7 +4,7 @@ import ExternalLink from "components/util/ExternalLink";
|
||||
import { TachiConfig } from "lib/config";
|
||||
import React from "react";
|
||||
|
||||
export default function OngekiArtemisExport() {
|
||||
export default function OngekiArtemisExportPage() {
|
||||
useSetSubheader(["Import Scores", "O.N.G.E.K.I. ARTEMiS Exporter"]);
|
||||
|
||||
return (
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
import useSetSubheader from "components/layout/header/useSetSubheader";
|
||||
import Divider from "components/util/Divider";
|
||||
import ExternalLink from "components/util/ExternalLink";
|
||||
import { TachiConfig } from "lib/config";
|
||||
import React from "react";
|
||||
import Alert from "react-bootstrap/Alert";
|
||||
|
||||
export default function OngekiInoharaPage() {
|
||||
useSetSubheader(["Import Scores", "Inohara"]);
|
||||
|
||||
return (
|
||||
<div>
|
||||
<h1 className="text-center mb-4">What is Inohara?</h1>
|
||||
<div>
|
||||
Inohara automatically sends O.N.G.E.K.I. scores to a server. {TachiConfig.NAME} is
|
||||
compatible with what Inohara sends, so you can use her to submit scores!
|
||||
</div>
|
||||
<Divider />
|
||||
<h1 className="text-center my-4">Setup Instructions</h1>
|
||||
<ol className="instructions-list">
|
||||
<li>
|
||||
Download the latest version of <code>inohara.zip</code>{" "}
|
||||
<ExternalLink href="https://gitea.tendokyu.moe/akanyan/inohara/releases">
|
||||
here
|
||||
</ExternalLink>
|
||||
.
|
||||
</li>
|
||||
<li>
|
||||
Download your <code>inohara.cfg</code> config file{" "}
|
||||
<ExternalLink href="/client-file-flow/CXInohara">here</ExternalLink>
|
||||
. <br />
|
||||
<Alert variant="warning" className="mt-2">
|
||||
This file contains an API Key, which is meant to be kept secret!
|
||||
</Alert>
|
||||
</li>
|
||||
<li>
|
||||
Follow the installation instructions on{" "}
|
||||
<ExternalLink href="https://gitea.tendokyu.moe/akanyan/inohara/src/branch/main/README.md#installation">
|
||||
Tendokyu
|
||||
</ExternalLink>
|
||||
.
|
||||
</li>
|
||||
<li>Your scores are now automatically uploaded to {TachiConfig.NAME}!</li>
|
||||
</ol>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
@@ -29,8 +29,9 @@ import ChunithmSiteImportPage from "app/pages/dashboard/import/ChunithmSiteImpor
|
||||
import SaekawaPage from "app/pages/dashboard/import/SaekawaPage";
|
||||
import AquaArtemisExport from "app/pages/dashboard/import/AquaArtemisExportPage";
|
||||
import ChunithmMYTExport from "app/pages/dashboard/import/ChunithmMYTExportPage";
|
||||
import OngekiArtemisExport from "app/pages/dashboard/import/OngekiArtemisExportPage";
|
||||
import OngekiArtemisExportPage from "app/pages/dashboard/import/OngekiArtemisExportPage";
|
||||
import MytIntegrationPage from "components/imports/MYTIntegrationPage";
|
||||
import OngekiInoharaPage from "app/pages/dashboard/import/OngekiInoharaPage";
|
||||
|
||||
export default function ImportRoutes() {
|
||||
const { user } = useContext(UserContext);
|
||||
@@ -238,7 +239,11 @@ export default function ImportRoutes() {
|
||||
</Route>
|
||||
|
||||
<Route exact path="/import/ongeki-artemis-exporter">
|
||||
<OngekiArtemisExport />
|
||||
<OngekiArtemisExportPage />
|
||||
</Route>
|
||||
|
||||
<Route exact path="/import/inohara">
|
||||
<OngekiInoharaPage />
|
||||
</Route>
|
||||
</>
|
||||
)}
|
||||
|
||||
@@ -223,6 +223,47 @@ import = '/ir/direct-manual/import'
|
||||
# Your Tachi API key
|
||||
api_key = '%%TACHI_KEY%%'`,
|
||||
},
|
||||
{
|
||||
clientID: "CXInohara",
|
||||
requestedPermissions: ["submit_score"],
|
||||
name: "Inohara",
|
||||
redirectUri: null,
|
||||
webhookUri: null,
|
||||
apiKeyFilename: "inohara.cfg",
|
||||
apiKeyTemplate: `[Options]
|
||||
|
||||
# Whether to enable score submissions
|
||||
Enable = true
|
||||
|
||||
# Timeout for web requests, in seconds
|
||||
Timeout = 3
|
||||
|
||||
# Tachi instance base URL
|
||||
BaseUrl = ${ServerConfig.OUR_URL}
|
||||
|
||||
# Tachi status endpoint
|
||||
Status = /api/v1/status
|
||||
|
||||
# Tachi score import endpoint
|
||||
Import = /ir/direct-manual/import
|
||||
|
||||
# Whether to display status on-screen (rudimentarily)
|
||||
EnableOSD = false
|
||||
|
||||
# Whether to export your PBs for batch-manual (saved to batch-manual.json)
|
||||
# This is very, very bad and should only be used as last resort
|
||||
ExportPBs = false
|
||||
|
||||
[Keys]
|
||||
|
||||
* = %%TACHI_KEY%%
|
||||
|
||||
# If you have a multi-user setup, you can configure
|
||||
# keys per-profile:
|
||||
# InGameUsername = TachiApiKey
|
||||
#
|
||||
# An * matches everyone else`,
|
||||
},
|
||||
];
|
||||
|
||||
const BokuDefaultClients: DefaultClients = [
|
||||
|
||||
Reference in New Issue
Block a user