架電に関する日時データは、秒単位で所有していますか?
回答済みお世話になっております。
Pigeon の連絡履歴の架電に関する日時は、時間:分 で表示されております。
できれば秒単位で把握したのですが、
連絡履歴画面での表示変更は可能ですか?
また実際のデータは秒単位までお持ちでしょうか?
以上、ご教示のほどよろしくお願いいたします。
-
連絡履歴の架電日時に関する情報取得には、下記のAPIを使用します。
GET /api/apps/pigeon/results/{resultId}
「架電履歴」にあたる情報は「calls」内に出力され、架電の開始・終了時間はその中の「createdAt」「updatedAt」が該当します。
また、curlコマンドを使用する場合、例えば下記のように実行します。
curl -H "X-Authorization: Token <APIトークン>" https://<スペース名>.cloud.kompira.jp/api/apps/pigeon/results/<連絡履歴ID>
コマンド例の中の「<APIトークン>」「<スペース名>」「<連絡履歴ID>」はお使いのスペースのものや、具体的なデータに合わせてご変更ください。
なお、連絡履歴IDは連絡履歴の詳細表示の右上(ステータス表示のすぐ下)に表示されており、クリックすることでコピーが可能です。 -
お世話になっております。
上記ご回答ありがとうございました。情報は採取できました。
採取した情報ですが、csv形式でexcelに取り込んだところ、各カラム(フィールド)情報について不明な点がありましたので、教えていただきたいと思います。
以下の質問に答えていただけますでしょうか?
①Column11 ~ Column34
instances情報としてコールフローの定義が羅列しているように見受けられますが、
Column14
currentLoop:1
Column18
hasLeft:false
は何の情報でしょうか?実働情報でなく定義としての表示ならば、
どこの定義となりますか?
②Column35 ~ Column43
ガイダンステンプレートの内容表示のみ、という事で間違いないでしょうか?
③Column44 ~ Column47
実働の架電結果情報に見えますが、同一のものが Column48 ~ のcalls情報にもあります。これは何でしょうか?
④Column57 ~ Column64
各カラム(フィールド)の意味を教えてください。
⑤連絡履歴画面の「最終更新日時」に当たるカラムはどれになりますか?
以下は投入したコマンドです。
curl -x https://<proxy-server-name>:xxxx https://xxxxxxxxxxx.cloud.kompira.jp/api/apps/pigeon/results/13375f24-f92c-419c-94da-a9e216cc77b6 -H "X-Authorization: Token トークンID" > file-name.csv
以上、よろしくお願いいたします。 -
API出力の読みかたについて
最初にご理解いただきたい点として、APIからの出力はJSON形式での出力にのみ対応しており、これを拡張子.csv付きのファイルに保存したとしても、データがCSV形式に変換されることはございません。
提示のコマンドにより出力したファイルをExcelで開くと見かけ上列に分かれて表示されるのは、JSONに含まれるカンマが区切り文字として解釈された結果となります。これは正確な情報分割ではなく、また何列目がどういった情報に対応するかはコールフロー内の連絡先の数や、連絡により発生した架電の回数など、さまざまな要素により変動します。
API出力をファイル保存する場合は拡張子jsonで保存の上、JSON形式の整形に対応したエディタで開くことを推奨いたします。
これを例えばMicrosoftの無料エディタ Visual Studio Code で整形を行うと下記のようなイメージでデータを確認することができます。必要と思われる情報の出力先について
架電を自動化した効果を測定するために、秒単位での架電開始/終了時間、各データステータスなどの情報が必要になりました。
APIから情報取得をしている目的について、先のコメントにて上記のように伺っております。これは架電情報 calls 内に、開始時刻の降順で出力されます。
個々の架電情報には連絡先 contact の表示名 displayName 、架電の最終ステータス status 、架電の開始時刻 createdAt および終了時刻 updatedAt が含まれ、こういった情報が今回必要とされている情報と考えられます。
なおAPIからの時刻情報の出力は世界標準時基準で行われますので、日本時間と9時間の時差があることにご注意ください。文面だけではわかりにくいかと思いますので、出力例を以下に添付いたします。
その他ご質問いただいた事項について
Excelによる読み込みは適切な手段ではないものの、JSONを読む上で役に立つ知識もあるかと思いますので詳細に回答いたします。
①Column11 ~ Column34
instances情報としてコールフローの定義が羅列しているように見受けられますが、
Column14
currentLoop:1
Column18
hasLeft:false
は何の情報でしょうか?実働情報でなく定義としての表示ならば、
どこの定義となりますか?currentLoop および hasLeft は実働情報にあたります。currentLoop はコールフローに登録された連絡先全てへの連絡を1ループとし、何ループ目の連絡で終了したかを示します。また hasLeft はコールフロー内の個々の連絡先がもつ情報で、ガイダンス定義にて「離脱」に設定されたキーの押下によりループ発生時の再連絡から離脱した場合は true 、そうでない場合は false が出力されます。
②Column35 ~ Column43
ガイダンステンプレートの内容表示のみ、という事で間違いないでしょうか?それで間違いございません。
これは先の callflow と併せて instances 情報の一環として出力しておりますが、コールフローやガイダンスが連絡後に変更されたとしても連絡当時の設定を確認できるように、連絡ごとに保存した値を出力しております。
③Column44 ~ Column47
実働の架電結果情報に見えますが、同一のものが Column48 ~ のcalls情報にもあります。これは何でしょうか?個々の架電ではなく、連絡全体としての最終キー入力や連絡ステータスとなります。
連絡履歴の詳細画面上部にて背景色付きで出力される情報に対応するとお考えください。④Column57 ~ Column64
各カラム(フィールド)の意味を教えてくださいこちらに関してはこの情報だけでは指しているフィールドの特定が難しく、回答不能となります。
必要であれば具体的なフィールド名をご提示ください。⑤連絡履歴画面の「最終更新日時」に当たるカラムはどれになりますか?
先に画像添付付きで提示した通り、架電履歴 calls 内の個々の架電履歴が持つ updatedAt が該当いたします。
以上、よろしくお願いいたします。
-
お世話になっております。
ご丁寧な回答をいただき、ありがとうございました。参考にさせていただいております。
Pigeon の「連絡処理結果の一覧取得(/api/apps/pigeon/rsults)」についても教えていただけますでしょうか。
ご紹介いただいた visual studio code ではありませんが、json対応ツールで整形し結果を参照しております。
・オフセット位置は、各アイテムの'0'から数えて'指定した整数' の位置ですか?
・status を succeeded でsort する場合、”sort" = "succeeded" でよろしいのでしょうか?
また、curl コマンドを利用する場合、itemに対する指定構文はどのようになるか、一例をあげていただいてもよろしいでしょうか?
以上、よろしくお願いいたします。 -
オフセット位置は、各アイテムの'0'から数えて'指定した整数' の位置ですか?
正しくご理解いただけているご様子ではございますが、念の為 limit と併せて整理して説明いたします。
一覧取得APIでは件数の多いデータを一定件数ごとに取得するためのパラメータとして、取得件数を指定するパラメータ limit と、何件目のデータから取得するかを決めるパラメータ offset の2つを用いることができます。
limit に関しては10件取得したいときは「10」、50件取得したいときは「50」といったように感覚の通り指定していただければ問題ございませんが、 offset の指定に関しては1件目から取得する場合は「0」、11件目から取得する場合は「10」といったように、1少ない数字を指定するイメージとなります。いくつか例を挙げますと、
- 1件目から10件目までを取得する場合: limit=10&offset=0
- 101件目から150件目までを取得する場合: limit=50&offset=100
といった指定になります。
なおこれらの指定は省略可能であり、limit を省略した場合は30、offset を省略した場合は0として扱われます。そのため両方を指定した場合、1件目から30件目が取得されることになります。
status を succeeded でsort する場合、”sort" = "succeeded" でよろしいのでしょうか?
また、curl コマンドを利用する場合、itemに対する指定構文はどのようになるか、一例をあげていただいてもよろしいでしょうか?sort パラメーターはステータスの具体的な値で絞り込むものではなく、「ステータス status」「架電開始日時 createdAt」「最終更新日時 updatedAt」の最大3つのフィールドを基準に昇順・降順の並び替えをするためのパラメーターとなります。このときフィールド名を単に指定すると昇順、「-」付きで指定しますと降順に並び替えが行われます。
例を挙げますと、
- ステータスの昇順に並び替える: sort=status
- ステータスの降順に並び替える: sort=-status
- ステータスの昇順かつ架電開始日の降順に並び替える: sort=status&sort=-createdAt
となります。
ステータスが succeeded のものを優先して取得したい場合、並び替えとしては「ステータスの昇順」が適しているかと思います。実用上はその上で新しい履歴を優先(架電開始日の降順)して取得するかと思いますので、コマンド例は下記のようになります。
curl -H "X-Authorization: Token <APIトークン>" -x <プロキシサーバーアドレス> "https://<スペース名>.cloud.kompira.jp/api/apps/pigeon/results?sort=status&sort=-createdAt"
「<APIトークン>」「<プロキシサーバーアドレス>」「<スペース名>」は適宜ご利用のものに置き換えください。
また、ステータスによるソート時の出力順に関しては過去により詳しく回答しているものがございますので、こちらも併せてご参照ください。
連絡履歴画面の「ステータス」「架電開始日時」「理由」の表示切替について への回答
よろしくお願いたします。
サインインしてコメントを残してください。
コメント
9件のコメント