Django

アプリケーションと同じくらい Pythonic なカスタマーサポート

Djangoモデル、管理コマンド、管理画面統合、Inertia.jsビュー。EscalatedはネイティブアプリとしてDjangoプロジェクトにプラグイン。

ターミナル
$ pip install escalated-django

フレームワークネイティブ

なぜDjangoにEscalatedか

Djangoプロジェクトの一部のように感じるよう構築 — 後付けではなく。

Django ORMモデル

チケット、返信、タグ、アクティビティはDjangoモデル。プロジェクトの他のモデルと同様にクエリセット、マネージャー、完全なORMを使用。

管理コマンド

python manage.pyコマンドで設定インストール、マイグレーション実行、データシード、チケット管理。

管理画面統合

Django AdminにEscalatedモデルをデフォルトで登録。管理パネルからチケット、ユーザー、設定を表示・管理。

始めましょう

仕組み

pip installからライブサポートチケットまで3ステップ。

1

パッケージをインストール

pip install escalated-django
2

INSTALLED_APPSに追加

INSTALLED_APPSに'escalated'を追加し、python manage.py migrateを実行

3

URLを含める

urlpatternsにpath('support/', include('escalated.urls'))を追加すれば稼働。

機能

必要なすべて

EscalatedはDjangoエコシステムと深く統合。

Django ORMクエリセット

チケットは標準のDjangoクエリセットを使用。ORMの全パワーでフィルタ、アノテーション、集約、クエリチェーン。

Celeryタスクキュー

メール通知とWebhookディスパッチはCeleryタスクとして実行。既存のブローカーを使用 — Redis、RabbitMQ、または任意のCeleryバックエンド。

パーミッションクラス

認可はDjangoのパーミッションフレームワークを使用。ユーザーとグループにパーミッションを割り当ててチケットと管理機能へのアクセスを制御。

Djangoシグナル

すべてのチケットアクションがDjangoシグナルを発信。ticket_created、reply_added、status_changedなどにレシーバーを接続。

ミドルウェアサポート

既存のミドルウェアをEscalatedビューに適用。認証、CSRF、テナントスコーピングが期待通りに動作。

テストフィクスチャーとファクトリー

factory_boyファクトリーとフィクスチャー付き。馴染みのパターンでpytest-djangoまたはDjangoのTestCaseでテストを記述。

実際に見る

Djangoのように感じる

標準のDjangoパターン。新しい抽象化を学ぶ必要なし。

Python
# urls.py
from django.urls import path, include

urlpatterns = [
    path('support/', include('escalated.urls')),
]

# models.py
from escalated.mixins import HasTickets

class User(HasTickets, AbstractUser):
    pass

# Anywhere in your application
ticket = user.tickets.create(
    subject='Need help with billing',
    priority='high',
)

ticket.replies.create(
    body="We've updated your invoice.",
    user=agent,
)

Djangoアプリにサポートチケットを追加する準備はできましたか?

Escalatedを数分でインストール。オープンソース、セルフホスト、Django開発者向けに構築。