63 lines
2 KiB
QBasic
63 lines
2 KiB
QBasic
PARAM session_id AS STRING LIKE "uuid" DESCRIPTION "ID da sessão atendida" OPTIONAL
|
|
PARAM status AS STRING LIKE "resolved" DESCRIPTION "Finalizar o chat ou aguardar (resolved, pending_customer)" OPTIONAL
|
|
PARAM summary AS STRING LIKE "Dúvida resolvida com sucesso" DESCRIPTION "Breve resumo da solução" OPTIONAL
|
|
|
|
DESCRIPTION "Resolve a conversa, registrando o final no CRM (atividade) ou deixa pendente pelo cliente."
|
|
|
|
IF NOT status THEN
|
|
status = "resolved"
|
|
END IF
|
|
|
|
IF status = "resolved" THEN
|
|
IF NOT summary THEN
|
|
TALK "A sessão foi totalmente concluída? Qual seria o resumo?"
|
|
HEAR summary AS STRING
|
|
END IF
|
|
END IF
|
|
|
|
' Tratar ID da sessão conversacionalmente
|
|
IF NOT session_id THEN
|
|
my_sessions = GET "/api/attendance/queue?status=active"
|
|
IF UBOUND(my_sessions) = 0 THEN
|
|
TALK "Você não tem nenhuma sessão de atendimento ativa no momento."
|
|
RETURN
|
|
END IF
|
|
IF UBOUND(my_sessions) = 1 THEN
|
|
session_id = FIRST(my_sessions).session_id
|
|
ELSE
|
|
TALK "Você tem várias sessões ativas. Qual delas quer resolver? Diga o nome do cliente."
|
|
FOR EACH s IN my_sessions
|
|
TALK "- **" + s.user_name + "**"
|
|
NEXT s
|
|
HEAR query AS STRING
|
|
FOR EACH s IN my_sessions
|
|
IF INSTR(LCASE(s.user_name), LCASE(query)) > 0 THEN
|
|
session_id = s.session_id
|
|
END IF
|
|
NEXT s
|
|
IF NOT session_id THEN
|
|
TALK "Sessão não identificada."
|
|
RETURN
|
|
END IF
|
|
END IF
|
|
END IF
|
|
|
|
resolution_payload = #{
|
|
status: status,
|
|
resolution_summary: summary,
|
|
resolved_by: GET "session.user_id",
|
|
resolved_at: FORMAT(NOW(), "YYYY-MM-DD HH:mm:ss")
|
|
}
|
|
|
|
PUT "/api/attendance/sessions/" + session_id + "/resolve", resolution_payload
|
|
|
|
IF status = "resolved" THEN
|
|
TALK "✅ **Atendimento Encerrado!**"
|
|
TALK "A conversa foi marcada como **Resolvida**."
|
|
TALK "Resumo: " + summary
|
|
ELSE
|
|
TALK "⏳ **Aguardando Cliente**"
|
|
TALK "O atendimento ficará pausado aguardando retorno do cliente."
|
|
END IF
|
|
|
|
RETURN session_id
|