データソース一覧
概要
BFF はアダプターパターンを採用しており、バックエンドサービスへのアクセスは以下の2層で構成されています。
application/ports/— バックエンドサービスのインターフェース定義adapter/— インターフェースの実装(HTTP / Dapr / AWS SDK)
各リゾルバーはインターフェースのみに依存するため、バックエンドの通信方式が変わっても呼び出し側への影響を最小化できます。
アダプター構成図
graph LR
subgraph BFF内部
RESOLVER[リゾルバー]
PORT[application/ports/\nインターフェース]
end
subgraph adapter/
DAPR[Dapr クライアント]
HTTP[HTTP クライアント]
AWS[AWS SDK]
TCP[TCP クライアント]
end
RESOLVER --> PORT
PORT --> DAPR
PORT --> HTTP
PORT --> AWS
PORT --> TCP
サービス一覧
mloca-api
| 項目 | 内容 |
|---|---|
| 通信方式 | Dapr |
| URL 環境変数 | SOURCE_URL |
| インターフェース | application/ports/mloca/mloca.go |
| 実装 | adapter/mloca_client.go |
MLoca6 の主要バックエンド。ユーザー認証・端末情報・メッセージ・設定情報など多くの機能を提供します。
主な操作:
| カテゴリ | 操作 |
|---|---|
| 認証 | 公開鍵取得、ログイン、ログアウト、トークン更新、ログインセッション管理 |
| 顧客情報 | 顧客情報取得、オプション機能一覧取得 |
| ユーザーアカウント | ユーザー情報取得・一覧・作成・更新・削除 |
| 端末情報 | 端末一覧・個別取得・更新 |
| メッセージ | メッセージ検索・取得・作成・送信・再送・ステータス更新 |
| 定型文 | 定型文取得・一覧・作成・更新・削除 |
| 動態履歴 | 履歴検索、端末指定履歴検索、走行距離情報取得 |
| アイコン設定 | 表示アイコン・業務ボタン・ファイルアイコン設定の取得・編集 |
| イベント通知設定 | 取得・作成・更新・削除 |
| お知らせ | システムお知らせ検索 |
| ダッシュボード | 設定・ウィジェット取得・編集・削除 |
| 外部API連携 | 外部API設定の取得・編集・削除 |
| 利用規約 | 利用規約取得・同意状況取得・同意追加 |
| ショートカット | 目印ショートカット取得・登録・順番変更・削除 |
| タグ | タグ一覧取得・作成・編集・削除・紐づけ登録 |
| 履歴一括ダウンロード | 履歴取得・保存 |
| 運転日報 | 日報生成要求・結果取得 |
| WebAPIパスワード | パスワード取得・発行・削除 |
geo-api
| 項目 | 内容 |
|---|---|
| 通信方式 | Dapr |
| インターフェース | application/ports/geo/geo.go |
| 実装 | adapter/geo_client.go |
地図・地理情報サービス。地点(目印)情報とジオフェンス情報を管理します。
主な操作:
| カテゴリ | 操作 |
|---|---|
| 地点情報 | 地点検索、地点作成・更新・削除 |
| 地点カテゴリ | カテゴリ一覧取得・作成・更新・削除 |
| ジオフェンス | ジオフェンス履歴検索・削除、ジオフェンス済み地点一覧取得 |
voip-api
| 項目 | 内容 |
|---|---|
| 通信方式 | Dapr |
| インターフェース | application/ports/voip/voip.go |
| 実装 | adapter/viop_client.go |
音声通話サービス。通話グループ・履歴・録音データを提供します。
主な操作:
| カテゴリ | 操作 |
|---|---|
| 顧客情報 | 音声サービス顧客情報取得 |
| ユーザーエージェント | エージェント一覧取得、グループ指定での一覧取得 |
| グループ | 音声グループ一覧取得 |
| 通話履歴 | 通話履歴検索、録音ファイル取得、文字起こし履歴取得 |
chat-api
| 項目 | 内容 |
|---|---|
| 通信方式 | Dapr(一部 HTTP 直接) |
| URL 環境変数 | CHAT_API_URL / CHAT_API_KEY |
| インターフェース | application/ports/chat/chat.go |
| 実装 | adapter/chat_http_client.go / adapter/chat_api_client.go |
チャットサービス。チャンネル・投稿・ファイル添付・WebSocket 接続を提供します。
主な操作:
| カテゴリ | 操作 |
|---|---|
| チーム | チームチーム情報取得 |
| チャンネル | チャンネル一覧取得、ダイレクトチャンネル作成 |
| 投稿 | メッセージ履歴取得(時刻指定・全チャンネル対応)、投稿作成・取り消し・既読通知 |
| ファイル | ファイルダウンロードURL取得、位置情報・表示設定編集 |
| WebSocket | WebSocket URL取得、接続トークン取得・更新 |
| 緊急 | 緊急状態要求送信 |
realtime-event-api
| 項目 | 内容 |
|---|---|
| 通信方式 | HTTP |
| URL 環境変数 | REALTIME_EVENT_API_SOURCE_URL |
| 認証環境変数 | REALTIME_EVENT_API_CLIENTID / REALTIME_EVENT_API_SECURITYKEY |
| インターフェース | application/ports/realtimeevent/realtime_event.go |
| 実装 | adapter/realtime_event_http_client.go |
端末のリアルタイム状態を提供するサービス。GraphQL の realtimeEventAccessToken クエリで取得したトークンをフロントエンドが直接利用します。
主な操作:
| 操作 | 説明 |
|---|---|
| アクセストークン取得 | フロントエンドがリアルタイムAPIに接続するためのトークンを発行 |
| 端末状態検索 | 組織の端末状態をデータ種別(GPS 等)指定で取得 |
vpt-api
| 項目 | 内容 |
|---|---|
| 通信方式 | HTTP |
| URL 環境変数 | VPT_API_URL / VPT_API_KEY |
| 実装 | adapter/vpt_http_client.go |
音声グループサービス(VPT)。グループ情報の取得・設定を行います。
linebus-api
| 項目 | 内容 |
|---|---|
| 通信方式 | HTTP |
| URL 環境変数 | LINEBUS_API_URL / LINEBUS_ICON_BASE_URL |
| インターフェース | application/ports/linebus/line_bus.go |
| 実装 | adapter/line_bus_http_client.go |
LINE 連携(バスロケ edition・物流 edition)に必要な情報を提供します。
主な操作:
| カテゴリ | 操作 |
|---|---|
| チャンネル | チャンネル情報取得・設定・削除、パスワード設定 |
| 受付コード | 受付コード取得・設定・削除(物流 edition) |
| 運行計画 | GTFSフィード取得、運行計画設定(バスロケ edition) |
| 表示設定 | 端末・顧客ごとの表示設定 |
| 接近通知 | 接近通知設定の更新 |
| アイコン画像 | アイコン画像アップロード |
mobustation-api
| 項目 | 内容 |
|---|---|
| 通信方式 | HTTP |
| URL 環境変数 | MOBUSTATION_API_URL |
| インターフェース | application/ports/mobustation/mobustation.go |
| 実装 | adapter/mobustation_http_client.go |
バス停・運行状態を提供するサービス(Mobustation 連携)。
主な操作:
| 操作 | 説明 |
|---|---|
| 現在の運行状態取得 | 現在時刻の運行中・60分以内に終了した運行の状態を取得 |
Keycloak
| 項目 | 内容 |
|---|---|
| 通信方式 | HTTP |
| URL 環境変数 | KEYCLOAK_URL |
| 認証環境変数 | KEYCLOAK_REALM / KEYCLOAK_CLIENT_ID / KEYCLOAK_CLIENT_SECRET |
| インターフェース | application/ports/keycloak/keycloak.go |
| 実装 | adapter/keycloak_http_client.go |
外部 SSO サービス。BFF が Keycloak のアクセストークンを取得し、linebus-api 等の呼び出しに利用します。
主な操作:
| 操作 | 説明 |
|---|---|
| アクセストークン取得 | Client Credentials フローでトークンを取得(BFF内部で利用) |
mfa-api
| 項目 | 内容 |
|---|---|
| 通信方式 | HTTP |
| URL 環境変数 | MFA_API_URL / MFA_API_KEY |
| インターフェース | application/ports/mfa/mfa.go |
| 実装 | adapter/mfa_http_client.go |
多要素認証(MFA)サービス。OTP の発行・検証・MFA設定の管理を行います。
主な操作:
| 操作 | 説明 |
|---|---|
| MFAデータ取得・登録・削除 | MFA認証情報の管理 |
| OTP 発行 | ワンタイムパスワードの送信 |
| OTP 検証 | ワンタイムパスワードの認証 |
auditLog-api
| 項目 | 内容 |
|---|---|
| 通信方式 | HTTP |
| URL 環境変数 | AUDITLOG_API_URL / AUDITLOG_API_KEY |
| インターフェース | application/ports/auditLog/auditLog.go |
| 実装 | adapter/auditLog_http_client.go |
操作履歴(監査ログ)の記録・取得を行うサービス。
主な操作:
| 操作 | 説明 |
|---|---|
| 監査ログ検索 | 操作時刻・ユーザー・操作種別などで絞り込み検索 |
| 操作種別取得 | 操作種別マスターの一覧取得 |
| 監査ログ作成 | 操作履歴の登録・詳細情報の登録 |
p2relay-api / MCNS
| 項目 | 内容 |
|---|---|
| 通信方式 | HTTP(p2relay) / TCP(MCNS) |
| URL 環境変数 | RELAY_API_URL / MCNS_HOST / MCNS_PORT |
| インターフェース | application/ports/giop2server/relay_api.go / mcns.go |
| 実装 | adapter/giop2server/ |
GIOP2 音声サーバー連携。エスコート配車指示の送信と履歴取得、サーバー情報の問い合わせを行います。
主な操作:
| サービス | 操作 | 説明 |
|---|---|---|
| p2relay-api | エスコート送信 | 配車指示を端末へ送信 |
| p2relay-api | エスコート履歴取得 | 配車指示の送信履歴を検索 |
| p2relay-api | メッセージ送信 | P2 メッセージの送信 |
| MCNS | サーバー情報取得 | プロトコル指定でサーバーアドレスを取得(TCP通信) |
ext-api
| 項目 | 内容 |
|---|---|
| 通信方式 | HTTP |
| インターフェース | application/ports/externalapi/external_api.go |
| 実装 | adapter/ext_api_http_client.go |
外部API汎用クライアント。インフォセンス等の外部サービスへの GET / POST リクエストを担います。接続先 URL は mloca-api の外部API設定(ExternalApi)から動的に取得します。
AWS S3
| 項目 | 内容 |
|---|---|
| 通信方式 | AWS SDK |
| 環境変数(汎用) | AWS_S3_BUCKETNAME / AWS_S3_REGION |
| 環境変数(LineBus用) | LINEBUS_ICON_AWS_S3_BUCKETNAME / LINEBUS_ICON_AWS_S3_REGION |
| インターフェース | application/ports/aws/s3.go |
| 実装 | adapter/aws/s3_bucket_client.go |
ファイルの保存と取得に使用。バケットは用途別に2つ存在します。
主な操作:
| 操作 | 説明 |
|---|---|
| ファイルアップロード | PutObject / MultipartUpload(大容量対応) |
| 署名付きURL発行 | GetObjectPresignURL(ダウンロードURLの生成) |
AWS DynamoDB
| 項目 | 内容 |
|---|---|
| 通信方式 | AWS SDK |
| 環境変数 | AWS_DYNAMODB_REGION / AWS_DYNAMODB_TABLENAME |
| インターフェース | application/ports/aws/dynamodb.go |
| 実装 | adapter/aws/dynamodb_client.go |
運転日報の生成結果など、非同期処理の中間データ保存に使用。
主な操作:
| 操作 | 説明 |
|---|---|
| アイテム保存 | PutItem |
| アイテム取得 | GetItem |
AWS SQS
| 項目 | 内容 |
|---|---|
| 通信方式 | AWS SDK |
| 環境変数 | AWS_SQS_REGION / AWS_SQS_QUEUE_NAME |
| インターフェース | application/ports/aws/sqs.go |
| 実装 | adapter/aws/sqs_client.go |
非同期処理のキューイングに使用。運転日報生成リクエストをキューへ送信します。
主な操作:
| 操作 | 説明 |
|---|---|
| メッセージ送信 | SendMessage(処理リクエストをキューへエンqueue) |