Skip to main content

Bugyo Cloud Client

Project description

OBC Bugyo Cloud client

OBC 奉行クラウド Pythonクライアント

Usage

BugyoCloudClientのインスタンスを作成します。

import bugyocloudclient as bcc


tenant_code = 'The first part of URL path.'
client = bcc.BugyoCloudClient(tenant_code)

最初にLoginTaskを実行して、ログイン状態にします。

auth_info = bcc.AuthInfo('login id', 'password')
login_task = bcc.LoginTask(auth_info)
client.exec(login_task)

ログインしてから、別のタスクを実行します。 (今は打刻タスクしかありません)。

punch_info = bcc.PunchInfo()
punch_info.clock_type = clock_type
punch_task = bcc.PunchTask(punch_info)
client.exec(punch_task)

Installing poetry

curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python3

Changing python command name from 'python' to 'python3'.

vi ~/.poetry/bin/poetry

Creating environment

poetry install

Testing

poetry run pytest

Build & Publish

poetry buid
poetry publish -r testpypi
poetry publish

画面あるいはAPI

認証画面

認証方法チェック

  • URL: https://id.obc.jp/{{テナント?}}/login/CheckAuthenticationMethod
  • METHOD: POST
  • Headers:
    • __RequestVerificationToken: 認証画面のフォームにあるhidden value
    • Content-Type: application/x-www-form-urlencoded; charset=UTF-8
    • X-Requested-With: XMLHttpRequest
  • Content:
    • "OBCiD" : ログインID
    • "isBugyoCloud" : "false"
  • Response:
    • Headers:
      • Content-Type: application/json; charset=utf-8
    • Content:
      • AuthenticationMethod
      • SAMLButtonText
      • PasswordButtonText

認証

  • URL: https://id.obc.jp/{{テナント?}}/login/login/?Length=5
  • METHOD: POST
  • Headers:
    • Content-Type: application/x-www-form-urlencoded; charset=UTF-8
  • Content:
    • "btnLogin" : ""
    • "OBCID" : ログインID
    • "Password_d1" : ""
    • "Password_d2" : ""
    • "Password_d3" : ""
    • "Password" : パスワード
    • "__RequestVerificationToken" : 認証画面のフォームにあるinput hidden value
    • "X-Requested-With" : "XMLHttpRequest"
  • Response:
    • Headers:
      • Content-Type: application/json; charset=utf-8
    • Content:
      • RedirectURL
      • LoginOBCiD

レスポンスにあるRedirectURLをGETすると302が返ります。 302に従うと、ユーザ初期画面へ遷移します。URLは、https://hromssp.obc.jp/{{テナント?}}/{{ユニーク文字列?}}/ のようになります。

ユーザ初期画面

認証後の302応答に従うとたどり着きます。

ユニーク文字列の部分を、このあとの処理で使います。

打刻画面

打刻

打刻種類

  • 出勤 = "ClockIn"
  • 退出 = "ClockOut"

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bugyocloudclient-0.3.0.tar.gz (9.1 kB view hashes)

Uploaded Source

Built Distribution

bugyocloudclient-0.3.0-py3-none-any.whl (13.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page