npm package: @one-view/pd-oneview-chat-ticket-types
Description: chat ticket plugin that will integrate case-management-agent service into 1vu
Latest version: 0.0.5


FORMAT: 1A
HOST: https://api.pd-oneview.net/chat-ticket

# pd-oneview-chat-ticket

chat ticket plugin that will integrate case-management-agent service into 1vu




## Agent Tickets [/v1/{agentID}/tickets]

agent assigned tickets

+ Parameters
    + agentID (required, string, `f4b8f8e5-365a-4ed1-a122-0f4ba1afef44`)

+ Attributes (array[Ticket])

### Get agent tickets [GET]

+ Request

    + Headers

            Authorization: bearer token

+ Response 200 (application/json)
    + Attributes (array[Ticket])

+ Response 400 (application/json)
    + Attributes (Error_400)

+ Response 403 (application/json)
    + Attributes (Error_403)

+ Response 404 (application/json)
    + Attributes (Error_404)

+ Response 500 (application/json)
    + Attributes (Error)

## Agent Online Status [/v1/{agentID}/online]
update agent status as online to begin receive ticket

+ Parameters
    + agentID (required, string, `f4b8f8e5-365a-4ed1-a122-0f4ba1afef44`)

### Get agent login status [PUT]

+ Request

    + Headers

            Authorization: bearer token

+ Response 200 (application/json)
    + Attributes (AgentInfo)

+ Response 400 (application/json)
    + Attributes (Error_400)

+ Response 403 (application/json)
    + Attributes (Error_403)

+ Response 404 (application/json)
    + Attributes (Error_404)

+ Response 500 (application/json)
    + Attributes (Error)

## Agent Online Status [/v1/{agentID}/offline]
update agent status as offline to stop receive ticket

+ Parameters
    + agentID (required, string, `f4b8f8e5-365a-4ed1-a122-0f4ba1afef44`)

### Get agent login status [PUT]

+ Request

    + Headers

            Authorization: bearer token

+ Response 200 (application/json)
    + Attributes (AgentInfo)

+ Response 400 (application/json)
    + Attributes (Error_400)

+ Response 403 (application/json)
    + Attributes (Error_403)

+ Response 404 (application/json)
    + Attributes (Error_404)

+ Response 500 (application/json)
    + Attributes (Error)
# Data Structures

## int32 (number)
## int64 (number)

## `Error` (object)
+ errorCode (int64)
+ errorMessage (string)

## `Error_401` (object)
+ errorCode : 401 (int64)
+ errorMessage : `not authorize` (string)

## `Error_404` (object)
+ errorCode : 404 (int64)
+ errorMessage : `not found` (string)

## `Error_403` (object)
+ errorCode : 403 (int64)
+ errorMessage : `forbidden` (string)

## `Error_400` (object)
+ errorCode : 400 (int64)
+ errorMessage : `bad request` (string)

## `Error_500` (object)
+ errorCode : 500 (int64)
+ errorMessage : `internal server error` (string)

## AgentInfo
+ id                : `f4b8f8e5-365a-4ed1-a122-0f4ba1afef44` (string, required) - agent id
+ name              : `somename` (string) - agent name
+ lastLoginTime     : 1572499999 (int64) - time at which agent login last time
+ updatedAt         : 1572499999 (int64) - time at which agent status updated
+ agentTimeInStatus : 1572499999 (int64) - duration of current agent status

## Ticket
+ id                    : `f4b8f8e5-365a-4ed1-a122-0f4ba1afef44` (string, required) - ticket id
+ ticketStatus          (TicketStatus) - ticket latest status
+ assignedTime          : 1572499999 (int64) - time at which this ticket assigned to agent
+ createdAt             : 1572499999 (int64) - time at which this ticket created
+ queue                 : `english` (string) - ticket queue name
+ channel               : `chat` (string) - ticket channel type
+ content               (object) - ticket contents
+ metadata              (Metadata) - ticket metadata, this metadata only showing particular metadata to agent
+ statusReason          : `Internal State Change by Workflow Server` (string) - why the ticket has current status
+ priority              : 1 (int32) - priority of the ticket, use this as sort reference
+ customer              (Customer) - customer which ticket created for

## Metadata
+ ccr                   : `delivery - wrong address` (string) - costumer contact reason
+ agentJwt              : `token` (string) - agent jwt
+ roomId                : `token` (string) - chat room id
+ roomName              : `token` (string) - chat room name
+ roomSubscriptionToken : `token` (string) - token for room subscription
+ orderId               : `sdw-srr`(string) - order id
+ agentAccesses         (array[string]) - agent accesses information

## Customer
+ id                   : '989899854090030232934sdfdsdf32dd4sdfdsddffdummycustomerid2' (string) - customer id
+ firstName            : 'hugo' (string) - customer first name
+ lastName             : 'dan' (string) - customer last name

## TicketStatus (enum)
+ ASSIGNED
+ ESCALATED
+ CLOSED