不在着信と通話エラーの処理
通常、音声通話は、エージェントが電話を切ったときに終了します。ただし、エージェントが音声通話に応答しなかったときや、通話がエラー状態になったときにも終了する場合があります。このトピックでは、着信、発信、転送、折り返しなどの音声通話に応答がなかった場合や、通話エラーが発生した場合の処理方法について説明します。
通話を終了するには、call.reason を ended または error に設定するか、call.closeCallOnError を true または false に設定する必要があります。
通常は、エージェントが [通話を終了] ボタンをクリックし、ベンダーの endCall() メソッドを呼び出した時点で通話が終了します。この場合は、音声通話を完了としてマークするために call.reason を ended に設定し、HANGUP イベントを発生させるようにコネクタを設定します。
ただし、エージェントが通話に応答しない、または通話を拒否したときや、通話が失敗してエラー状態になったときも、通話は終了することがあります。
不在着信や通話の拒否、通話の失敗が発生した場合は、コネクタを次のように設定します。
- publishEvent() メソッドで call.reason を error に設定し、HANGUP イベントタイプを発生させます。
- 会話を開いたままにし、音声通話を「新規」の状態にしておくために、call.closeCallOnError を false に設定します。会話を終了して音声通話を完了としてマークするのではない限り、call.closeCallOnError は true に設定しないでください。
着信または折り返し通話で通話に応答がなかった、通話が拒否された、または通話が失敗した場合は、次も設定します。
- エージェントが通話に応答しなかった場合は、call.agentStatus を MissedCallAgent に設定します。
- エージェントが通話を拒否した場合は、call.agentStatus を DeclinedByAgent に設定します。
- エージェントが原因で通話が失敗した場合は、call.agentStatus を FailedConnectAgent に設定します。
- エージェントに関係のない理由で通話が失敗した場合は、call.agentStatus を FailedConnectCustomer に設定します。
- 顧客が通話に応答しなかった場合は、call.agentStatus を MissedCallStatus に設定します。
通話が拒否されたときにエージェントの状況を自動的に設定するには、[設定] | [プレゼンスに関する設定] | [拒否時に状況を更新] に移動して、エージェントが作業項目を拒否したときのプレゼンス状況を選択します。
通話が受けられなかった場合、または通話が拒否されたことが原因ではないエラーが発生した場合に、エージェントの状況を自動的に設定するには、[設定] | [プレゼンスに関する設定] | [転送のタイムアウト時に状況を更新] に移動して、プレゼンス状況を選択します。