コンテンツにスキップ

データソース一覧

概要

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)