WCFサービスで公開しているインタフェース定義です。※20220118/u 以降
using System.Collections.Generic; using System.ServiceModel; namespace AssistantSeika { [ServiceContract(SessionMode = SessionMode.Required)] public interface IScAPIs { /// <summary> /// AssistantSeikaのバージョンを返す /// </summary> /// <returns>バージョン文字列</returns> [OperationContract] string Verson(); /// <summary> /// AssistantSeikaの製品スキャン実行 /// </summary> [OperationContract] void ProductScan(); /// <summary> /// PetitGateHttpwの起動実行 /// </summary> [OperationContract] void BootHttpService(); /// <summary> /// 利用可能話者の一覧を返す /// </summary> /// <returns>話者一覧</returns> [OperationContract] Dictionary<int, string> AvatorList(); /// <summary> /// 少し詳しい情報を持った話者一覧を返す /// </summary> /// <returns>話者一覧</returns> [OperationContract] Dictionary<int, Dictionary<string, string>> AvatorList2(); /// <summary> /// 更に詳しい情報を持った話者一覧を返す /// </summary> /// <returns>話者一覧</returns> [OperationContract] Dictionary<int, Dictionary<string, string>> AvatorListDetail2(); /// <summary> /// デフォルトのパラメタ情報を得る /// </summary> /// <param name="cid">話者</param> /// <returns>デフォルトのパラメタ情報</returns> [OperationContract] Dictionary<string, Dictionary<string, Dictionary<string, decimal>>> GetDefaultParams2(int cid); /// <summary> /// 現在のパラメタ情報を得る /// </summary> /// <param name="cid">話者</param> /// <returns>現在のパラメタ情報</returns> [OperationContract] Dictionary<string, Dictionary<string, Dictionary<string, decimal>>> GetCurrentParams2(int cid); /// <summary> /// パラメタを初期化する /// </summary> /// <param name="cid">話者</param> [OperationContract] void ResetParams2(int cid); /// <summary> /// 発声する /// </summary> /// <param name="cid">話者</param> /// <param name="talktext">発声させるテキスト</param> /// <param name="filepath">音声を保存するファイル名(フルパス)</param> /// <param name="effects">適用する音声効果情報</param> /// <param name="emotions">適用する感情情報</param> /// <returns>再生時間(ミリ秒)</returns> [OperationContract] double Talk(int cid, string talktext, string filepath, Dictionary<string, decimal> effects, Dictionary<string, decimal> emotions); /// <summary> /// 発声する /// </summary> /// <param name="cid">話者</param> /// <param name="talktexts">発声テキストの配列</param> /// <param name="filepath">音声を保存するファイル名(フルパス)</param> /// <param name="effects">適用する音声効果情報</param> /// <param name="emotions">適用する感情情報</param> /// <returns>再生時間(ミリ秒)</returns> [OperationContract] double Talk2(int cid, string[] talktexts, string filepath, Dictionary<string, decimal> effects, Dictionary<string, decimal> emotions); /// <summary> /// 非同期に発声する /// </summary> /// <param name="cid">話者</param> /// <param name="talktext">発声させるテキスト</param> /// <param name="effects">適用する音声効果情報</param> /// <param name="emotions">適用する感情情報</param> [OperationContract] void TalkAsync(int cid, string talktext, Dictionary<string, decimal> effects, Dictionary<string, decimal> emotions); /// <summary> /// 非同期に発声する /// </summary> /// <param name="cid">話者</param> /// <param name="talktexts">発声テキストの配列</param> /// <param name="effects">適用する音声効果情報</param> /// <param name="emotions">適用する感情情報</param> [OperationContract] void TalkAsync2(int cid, string[] talktexts, Dictionary<string, decimal> effects, Dictionary<string, decimal> emotions); } }