Osticketプラグインを作成して、Osticketのインストールに機能を追加します。このオープンソースのチケットシステムは、企業が顧客を効率的に処理するのに役立ちます。

概要
ヘルプデスクチケットソフトウェアのシリーズの別の興味深いブログ投稿へようこそ。 人気のある無料チケットベースのヘルプデスクおよびカスタマーケアシステム、WordPressとOsticketを使用した自動チケットシステムなどのトピックに関するいくつかのブログ投稿を公開しました。ただし、Osticketは、顧客がスタッフをサポートするためにクエリと苦情を報告するために設計されたオープンソースのチケットベースのヘルプデスクシステムです。この無料サポートシステムは、電話、電子メール、フォームからの問い合わせをWebベースのチケットに変換する簡単な使用可能なお問い合わせモジュールを提供します。サポートスタッフが顧客に信じられないほどのクライアントサポートエクスペリエンスを提供できるようにする幅広い機能とオプションを提供します。 このオープンソースチケットシステム(Osticket)は、クライアント、ページ、通知に送信されるメッセージなど、クライアントサポートエクスペリエンスのすべての部分を調整するための多数のオプションを提供する完全に柔軟なサポートチケットフレームワークです。彼の記事では、Osticketプラグインの開発を学び、ニーズに応じて機能を強化します。そのために、次のトピックについて説明します。
なぜプラグインを使用するのですか?
このトピックでは、この ヘルプデスクソフトウェア (Osticket)のコア機能を拡張するためのシンプルなプラグインを作成する方法を学びます。プラグインはソフトウェアであり、アプリ/ソフトウェアのコア機能を拡張します。さらに、機能を拡張するプラグインの膨大なスタックを備えた多くのエンタープライズレベルのオープンソースソフトウェアがあります。さらに、これらの一般的なオープンソースソフトウェアには、WordPress、Joomlaなどが含まれます。何よりも、活気に満ちた生きているコミュニティは、ニーズに応じてプラグインをサポートおよび開発します。ただし、フレームワークは、プラグインの開発に関する包括的なドキュメントを提供します。以下は、アプリがプラグインをサポートするいくつかの理由です。
- サードパーティの開発者は、アプリケーションの機能を拡張するソフトウェアコンポーネントを作成できます。
- プラグインを使用すると、新機能を簡単に統合できます。
- また、アプリケーションのサイズと複雑さを高めることはありません。
- 開発者は、コアアプリケーションとは別にプラグインのコードを維持および管理できます。
要件
It HelpDeskソフトウェア ガイドのこのセクションでは、Osticketプラグインを開発するために必要な要件について説明します。
- PHPバージョン5.6以上
- Osticketのインストール
- 基本的なPHP知識
Osticketのプラグインを開発する方法は?
このセクションでは、このオープンソースチケットシステム(Osticket)のプラグイン開発の手順を進めます。
- プラグインのフォルダーを /include /pluginsディレクトリに作成します。このチュートリアルでは、 Osticketシステム をRedmineと統合するデモプラグインを作成します。
- 次の必要なファイルが必要です:Plugin.phpおよびconfig.php。- Plugin.phpファイルには、プラグインの一般的な説明が含まれています。 Plugin.phpファイルで次のサンプルコードを使用してください。
 
<?php
return array(
    'id' =>             'dynabic:redmine', # notrans
    'version' =>        '0.1',
    'name' =>           /* trans */ 'Dynabic Redmine',
    'author' =>         'Bilal Kiani',
    'description' =>    /* trans */ 'Integration with Dynabic.Redmine',
    'url' =>            '',
    'plugin' =>         'redmine.php:DynabicRedminePlugin',
);
?>
- 次に、上記のコードからID、名前、著者名、プラグインクラス名を置き換えます。
- その後、プラグイン構成オプションをOsticketのバックエンドに表示する必要があります。次のサンプルコードをconfig.phpファイルに追加します。
<?php
require_once INCLUDE_DIR . 'class.plugin.php';
class DynabicRedminePluginConfig extends PluginConfig {
    // Provide compatibility function for versions of osTicket prior to
    // translation support (v1.9.4)
    function translate() {
        if (!method_exists('Plugin', 'translate')) {
            return array(
                function($x) { return $x; },
                function($x, $y, $n) { return $n != 1 ? $y : $x; },
            );
        }
        return Plugin::translate('dynabic-redmine');
    }
    function getOptions() {
        list($__, $_N) = self::translate();        
        return array(
            'dynabicRedmineCredentials' => new SectionBreakField(array(
                'label' => $__('Redmine Credentials')
            )),
            'dynabic-Redmine-username' => new TextboxField(array(
                'label' => $__('Username'),
                'configuration' => array('size'=>60, 'length'=>100),                
            )),
            'dynabic-Redmine-password' => new PasswordField(array(
                'label' => $__('Password'),
                'configuration' => array('size'=>60, 'length'=>100),                
            )),
        );
    }
}
- その結果、これにより、ここに示すように、構成ページにユーザー名とパスワードフィールドが作成されます。

- 以下は、利用可能なクラスフィールドのリストで、「[install_root]/include/class.forms.php`で定義されています。 * TextBoxField - テキストボックス * Textareafield - テキストエリア * Threadentryfield - ディスカッションスレッドに使用される豊かなテキストエリア * DateTimeField - jQuery DatePicker
- 電話フィールド - 電話番号用に最適化されたテキストボックス
- ブールフィールド - チェックボックス * ChoiceField - ドロップダウン選択フィールド
- セクションブレイクフィールド - 水平セクションブレイク
- その後、プラグインの機能が定義されるファイルを作成する必要があります。
- ファイル名は、Plugin.phpファイルで定義されているものと同じである必要があります。つまり、redmine.php。
- これは、クラスdynabicredminepluginを保持する必要があります。次のサンプルコードをご覧ください。
class DynabicRedminePlugin extends Plugin {
    var $config_class = "DynabicRedminePluginConfig";
	 /**
     * The Redmine WSDL endpoint.
     */
    function bootstrap() {
        $config = $this->getConfig();
        # ----- Dynabic.Redmine credentials ---------------------
        $dynabicRedmine = json_decode($config->get('dynabicRedmine-enabled'));
		define('Redmine_USERNAME', $config->get('dynabic-Redmine-username'));
		define('Redmine_PASSWORD', $config->get('dynabic-Redmine-password'));
    }
- このコードは構成値を取得し、機能でこれらの値を使用できます。このファイルでは、プラグインの機能を要件として追加できます。
結論
これにより、このブログ投稿の最後になります。 Osticketは、開発者向けのプラグイン構造を提供するチケット管理ソフトウェアであるため、要件に応じて新しい機能を追加できます。プラグインは、任意のアプリ/ソフトウェアのコア機能を拡張するコンポーネントです。彼の記事では、この カスタマーサポートシステム (Osticket)のプラグイン開発について議論しました。これは、開発者が要件に応じてカスタム機能と拡張機能を追加するのに役立ちます。したがって、このブログ投稿は、あなたのビジネスのために helpdeskソフトウェア を展開しようとしている場合に本当に役立ちます。さらに、他の helpdeskチケットソフトウェア や、以下の「探索」セクションに記載されている記事があります。 最後に、containerize.comは、さらなるオープンソース製品とトピックに関するブログ投稿を継続的に執筆しています。したがって、定期的な更新については、ヘルプデスクチケットソフトウェアカテゴリに連絡してください。さらに、ソーシャルメディアアカウントFacebook、LinkedIn、およびTwitterでフォローできます。
探検
次のリンクが関連する場合があります。