define("LIVEZILLA_PATH", "../../"); @set_time_limit(30); require LIVEZILLA_PATH . "_definitions/definitions.inc.php"; require LIVEZILLA_PATH . "_lib/objects.global.users.inc.php"; require LIVEZILLA_PATH . "_lib/functions.global.inc.php"; require LIVEZILLA_PATH . "_definitions/definitions.dynamic.inc.php"; require LIVEZILLA_PATH . "_definitions/definitions.protocol.inc.php"; require LIVEZILLA_PATH . "_lib/functions.internal.inc.php"; require LIVEZILLA_PATH . "_lib/objects.internal.inc.php"; @set_error_handler("handleError"); @error_reporting(E_ALL); header("Pragma: no-cache"); header("Cache-Control: no-cache, must-revalidate"); header("Keep-Alive: timeout=5, max=100"); initDataProvider(); initData(array("INTERNAL", "INPUTS")); validate(true); if (isValidated() && is("CALLER_SYSTEM_ID")) { if ($INTERNAL[CALLER_SYSTEM_ID]->GetPermission(46) != PERMISSION_NONE) { require "objects.apiv2.inc.php"; $apiv2 = new ApiV2(isset($_POST["p_json_pretty"])); if ($apiv2->RunActions() && empty($apiv2->ErrorField) && !empty($apiv2->JSONOutput)) { exit($apiv2->JSONOutput); } else { header("HTTP/1.1 400 Bad Request"); exit("HTTP/1.1 400 Bad Request" . $apiv2->GetErrorCodes()); } } } header("HTTP/1.1 403 Forbidden"); exit("HTTP/1.1 403 Forbidden");
require LIVEZILLA_PATH . "_definitions/definitions.dynamic.inc.php"; require LIVEZILLA_PATH . "_definitions/definitions.protocol.inc.php"; require LIVEZILLA_PATH . "_lib/objects.internal.inc.php"; @set_error_handler("handleError"); @error_reporting(E_ALL); header("Pragma: no-cache"); header("Cache-Control: no-cache, must-revalidate"); header("Keep-Alive: timeout=5, max=100"); Server::DefineURL("api.php"); Server::InitDataProvider(); Server::InitDataBlock(array("INTERNAL", "INPUTS", "DBCONFIG")); OperatorRequest::Validate(true); if (OperatorRequest::IsValidated() && Is::Defined("CALLER_SYSTEM_ID")) { if (Server::$Operators[CALLER_SYSTEM_ID]->GetPermission(46) != PERMISSION_NONE) { require "objects.apiv2.inc.php"; $apiv2 = new ApiV2(isset($_POST["p_json_pretty"])); if ($apiv2->RunActions() && empty($apiv2->ErrorField) && !empty($apiv2->JSONOutput)) { exit($apiv2->JSONOutput); } else { APIErrorExit($apiv2->GetErrorCodes()); } } else { APIErrorExit("LZAV20002"); } } else { APIErrorExit("LZAV20001"); } APIErrorExit("LZAV20000"); function APIErrorExit($_code) { if (defined("AUTH_RESULT")) {
static function GetObjectDefinitions($_operatorA, $_chatA, $_ticketA, $_voucherA, $_ticketMessageA, $_ticketEditorA, $_kbEntry) { $objects["Operator"]["Fields"] = ApiV2::GetObjectFields("Operator"); foreach ($objects["Operator"]["Fields"] as $fid => $field) { if (isset($field["Code"])) { $_operatorA->{$fid} = $field["Code"]; } else { $_operatorA->{$fid} = $field["Example"]; } } $_operatorOut = ApiV2::ClearObject($objects["Operator"]["Fields"], $_operatorA, true); $objects["Operator"]["Functions"]["List"]["Version"] = "5.2.5.0"; $objects["Operator"]["Functions"]["List"]["Title"] = "List Operators"; $objects["Operator"]["Functions"]["List"]["Call"] = "POST /api/v2/api.php"; $objects["Operator"]["Functions"]["List"]["Param"] = "POST /api/v2/api.php p_operators_list=1"; $objects["Operator"]["Functions"]["List"]["CURL"] = "curl {yourdomain}{livezilla_folder}/api/v2/api.php<br>-d {authenthication}<br>-d p_operators_list=1"; $objects["Operator"]["Functions"]["List"]["Response"] = "JSON code of operator(s)"; $objects["Operator"]["Functions"]["List"]["Fields"] = array("true"); $objects["Operator"]["Functions"]["List"]["Filters"] = array("UserId" => array("Type" => "string", "Required" => false, "Comment" => "Response will be the Operator matching this login Id.", "Example" => "john_doe"), "Status" => array("Type" => "int", "Required" => false, "Comment" => "Returns all operators having this status.", "Example" => "1"), "Group" => array("Type" => "string", "Required" => false, "Comment" => "Returns all operators that are member of this group.", "Example" => "groupid1"), "Full Chats" => array("Type" => "bool", "Required" => false, "Comment" => "Return full list of external chat objects (LiveZilla 5.4.0.1).", "Example" => "1")); $objects["Operator"]["Functions"]["List"]["OutputObject"] = array("Operators" => array(array("Operator" => $_operatorOut), array("Operator" => $_operatorOut))); $objects["Operator"]["Functions"]["Create"]["Version"] = "5.2.5.0"; $objects["Operator"]["Functions"]["Create"]["Title"] = "Create Operator"; $objects["Operator"]["Functions"]["Create"]["Call"] = "POST /api/v2/api.php"; $objects["Operator"]["Functions"]["Create"]["Param"] = "POST /api/v2/api.php p_operator_create=1"; $objects["Operator"]["Functions"]["Create"]["CURL"] = "curl {yourdomain}{livezilla_folder}/api/v2/api.php<br>-d {authenthication}<br>-d p_operator_create=1"; $objects["Operator"]["Functions"]["Create"]["Response"] = "JSON code of created operator"; $objects["Operator"]["Functions"]["Create"]["Fields"] = array("true"); $objects["Operator"]["Functions"]["Create"]["Filters"] = array(); $objects["Operator"]["Functions"]["Create"]["OutputObject"] = array("Operator" => $_operatorOut); $objects["Operator"]["Functions"]["Create"]["InputObject"] = $objects["Operator"]["Fields"]; $objects["Operator"]["Functions"]["Delete"]["Version"] = "5.2.5.0"; $objects["Operator"]["Functions"]["Delete"]["Title"] = "Delete Operator"; $objects["Operator"]["Functions"]["Delete"]["Call"] = "POST /api/v2/api.php"; $objects["Operator"]["Functions"]["Delete"]["Param"] = "POST /api/v2/api.php p_operator_delete=1"; $objects["Operator"]["Functions"]["Delete"]["CURL"] = "curl {yourdomain}{livezilla_folder}/api/v2/api.php<br>-d {authenthication}<br>-d p_operator_delete=1"; $objects["Operator"]["Functions"]["Delete"]["Response"] = "JSON code of deleted operator"; $objects["Operator"]["Functions"]["Delete"]["Fields"] = array("UserId"); $objects["Operator"]["Functions"]["Delete"]["Filters"] = array(); $objects["Operator"]["Functions"]["Delete"]["OutputObject"] = array("Operator" => $_operatorOut); $objects["Operator"]["Functions"]["Delete"]["InputObject"] = array("UserId" => array("Input" => true, "Output" => true, "Type" => "string", "Description" => "The alphanumeric login ID of the operators.", "Required" => true, "Example" => "john_doe")); $objects["Chat"]["Fields"] = ApiV2::GetObjectFields("Chat"); foreach ($objects["Chat"]["Fields"] as $fid => $field) { if (isset($field["Code"])) { $_chatA->{$fid} = $field["Code"]; } else { $_chatA->{$fid} = $field["Example"]; } } $_chatOut = ApiV2::ClearObject($objects["Chat"]["Fields"], $_chatA); $objects["Chat"]["Functions"]["List"]["Version"] = "5.2.5.0"; $objects["Chat"]["Functions"]["List"]["Title"] = "List Chat Transcripts"; $objects["Chat"]["Functions"]["List"]["Call"] = "POST /api/v2/api.php"; $objects["Chat"]["Functions"]["List"]["Param"] = "POST /api/v2/api.php p_chats_list=1"; $objects["Chat"]["Functions"]["List"]["CURL"] = "curl {yourdomain}{livezilla_folder}/api/v2/api.php<br>-d {authenthication}<br>-d p_chats_list=1<br>-d p_limit=10"; $objects["Chat"]["Functions"]["List"]["Response"] = "JSON code of chat transcript(s)"; $objects["Chat"]["Functions"]["List"]["Fields"] = array("true"); $objects["Chat"]["Functions"]["List"]["Filters"] = array("ChatId" => array("Type" => "string", "Required" => false, "Comment" => "Return the chat matching this chat Id.", "Example" => "11123"), "Group" => array("Type" => "string", "Required" => false, "Comment" => "Return all chats of this group.", "Example" => "groupid1"), "Operator" => array("Type" => "string", "Required" => false, "Comment" => "Return all chats of this operator.", "Example" => "john_doe"), "Start After" => array("Type" => "string", "Required" => false, "Comment" => "Return all chats with start time later than<br>YYYY-MM-DD HH:MM:SS", "Example" => "2014-01-01 23:59:59"), "Start Before" => array("Type" => "string", "Required" => false, "Comment" => "Return all chats with start time earlier than<br>YYYY-MM-DD HH:MM:SS", "Example" => "2014-01-03 00:00:00"), "Output" => array("Type" => "string", "Required" => false, "Comment" => "HTML | Plaintext", "Example" => "Plaintext"), "Limit" => array("Type" => "int", "Required" => false, "Comment" => "Maximum number of chats to return.", "Example" => "100")); $objects["Chat"]["Functions"]["List"]["OutputObject"] = array("Chats" => array(array("Chat" => $_chatOut))); $objects["Ticket"]["Fields"] = ApiV2::GetObjectFields("Ticket"); foreach ($objects["Ticket"]["Fields"] as $fid => $field) { if (isset($field["Code"])) { $_ticketA->{$fid} = $field["Code"]; } else { $_ticketA->{$fid} = $field["Example"]; } } $_ticketA = ApiV2::ClearObject($objects["Ticket"]["Fields"], $_ticketA); $objects["Ticket"]["Functions"]["List"]["Version"] = "5.2.5.0"; $objects["Ticket"]["Functions"]["List"]["Title"] = "List Tickets"; $objects["Ticket"]["Functions"]["List"]["Call"] = "POST /api/v2/api.php"; $objects["Ticket"]["Functions"]["List"]["Param"] = "POST /api/v2/api.php p_tickets_list=1"; $objects["Ticket"]["Functions"]["List"]["CURL"] = "curl {yourdomain}{livezilla_folder}/api/v2/api.php<br>-d {authenthication}<br>-d p_tickets_list=1<br>-d p_limit=10"; $objects["Ticket"]["Functions"]["List"]["Response"] = "JSON code of ticket(s)"; $objects["Ticket"]["Functions"]["List"]["Fields"] = array("true"); $objects["Ticket"]["Functions"]["List"]["Filters"] = array("Id" => array("Type" => "string", "Required" => false, "Comment" => "Return the ticket matching this Id.", "Example" => "11123"), "Group" => array("Type" => "string", "Required" => false, "Comment" => "Return all tickets of this group.", "Example" => "groupid1"), "Operator" => array("Type" => "string", "Required" => false, "Comment" => "Return all tickets of this operator.", "Example" => "john_doe"), "Created After" => array("Type" => "string", "Required" => false, "Comment" => "Return all tickets created later than<br>YYYY-MM-DD HH:MM:SS", "Example" => "2014-01-01 23:59:59"), "Created Before" => array("Type" => "string", "Required" => false, "Comment" => "Return all tickets created earlier than<br>YYYY-MM-DD HH:MM:SS", "Example" => "2014-01-03 00:00:00"), "Limit" => array("Type" => "int", "Required" => false, "Comment" => "Maximum number of tickets to return.", "Example" => "100")); $objects["Ticket"]["Functions"]["List"]["OutputObject"] = array("Tickets" => array(array("Ticket" => $_ticketA))); $objects["Ticket"]["Functions"]["Create"]["Version"] = "5.2.5.0"; $objects["Ticket"]["Functions"]["Create"]["Title"] = "Create Ticket"; $objects["Ticket"]["Functions"]["Create"]["Call"] = "POST /api/v2/api.php"; $objects["Ticket"]["Functions"]["Create"]["Param"] = "POST /api/v2/api.php p_ticket_create=1"; $objects["Ticket"]["Functions"]["Create"]["CURL"] = "curl {yourdomain}{livezilla_folder}/api/v2/api.php<br>-d {authenthication}<br>-d p_ticket_create=1"; $objects["Ticket"]["Functions"]["Create"]["Response"] = "JSON code of created ticket"; $objects["Ticket"]["Functions"]["Create"]["Fields"] = array("true"); $objects["Ticket"]["Functions"]["Create"]["Filters"] = array(); $objects["Ticket"]["Functions"]["Create"]["OutputObject"] = array("Ticket" => $_ticketA); $objects["Ticket"]["Functions"]["Create"]["InputObject"] = $objects["Ticket"]["Fields"]; $objects["TicketMessage"]["Fields"] = ApiV2::GetObjectFields("TicketMessage"); $objects["TicketMessage"]["Parent"] = "Ticket"; foreach ($objects["TicketMessage"]["Fields"] as $fid => $field) { if (isset($field["Code"])) { $_ticketMessageA->{$fid} = $field["Code"]; } else { $_ticketMessageA->{$fid} = $field["Example"]; } } $_ticketMessageA = ApiV2::ClearObject($objects["TicketMessage"]["Fields"], $_ticketMessageA); $objects["TicketMessage"]["Functions"]["Create"]["Version"] = "5.2.5.0"; $objects["TicketMessage"]["Functions"]["Create"]["Title"] = "Create Ticket Message"; $objects["TicketMessage"]["Functions"]["Create"]["Call"] = "POST /api/v2/api.php"; $objects["TicketMessage"]["Functions"]["Create"]["Param"] = "POST /api/v2/api.php p_ticketmessage_create=1"; $objects["TicketMessage"]["Functions"]["Create"]["CURL"] = "curl {yourdomain}{livezilla_folder}/api/v2/api.php<br>-d {authenthication}<br>-d p_ticketmessage_create=1"; $objects["TicketMessage"]["Functions"]["Create"]["Response"] = "JSON code of created ticket message"; $objects["TicketMessage"]["Functions"]["Create"]["Fields"] = array("true"); $objects["TicketMessage"]["Functions"]["Create"]["Filters"] = array("SendEmailResponder" => array("Input" => true, "Output" => false, "Type" => "bool", "Comment" => "Send autoresponder email to sender of message", "Required" => false, "Example" => "1"), "SendEmailReply" => array("Input" => true, "Output" => false, "Type" => "bool", "Comment" => "Send operator reply email to receiver of message", "Required" => false, "Example" => "1"), "QuoteMessageId" => array("Input" => true, "Output" => false, "Type" => "string", "Comment" => "The Ticket Message ID of the Message the Operator is replying to.", "Required" => false, "Example" => "90f9cf...")); $objects["TicketMessage"]["Functions"]["Create"]["OutputObject"] = array("TicketMessage" => $_ticketMessageA); $objects["TicketMessage"]["Functions"]["Create"]["InputObject"] = $objects["TicketMessage"]["Fields"]; $objects["TicketEditor"]["Fields"] = ApiV2::GetObjectFields("TicketEditor"); $objects["TicketEditor"]["Parent"] = "Ticket"; foreach ($objects["TicketEditor"]["Fields"] as $fid => $field) { if (isset($field["Code"])) { $_ticketEditorA->{$fid} = $field["Code"]; } else { $_ticketEditorA->{$fid} = $field["Example"]; } } $_ticketEditorA = ApiV2::ClearObject($objects["TicketEditor"]["Fields"], $_ticketEditorA); $objects["TicketEditor"]["Functions"]["Assign"]["Version"] = "5.2.5.0"; $objects["TicketEditor"]["Functions"]["Assign"]["Title"] = "Assign Ticket Editor"; $objects["TicketEditor"]["Functions"]["Assign"]["Call"] = "POST /api/v2/api.php"; $objects["TicketEditor"]["Functions"]["Assign"]["Param"] = "POST /api/v2/api.php p_ticketeditor_assign=1"; $objects["TicketEditor"]["Functions"]["Assign"]["CURL"] = "curl {yourdomain}{livezilla_folder}/api/v2/api.php<br>-d {authenthication}<br>-d p_ticketeditor_assign=1"; $objects["TicketEditor"]["Functions"]["Assign"]["Response"] = "JSON code of ticket editor"; $objects["TicketEditor"]["Functions"]["Assign"]["Fields"] = array("true"); $objects["TicketEditor"]["Functions"]["Assign"]["Filters"] = array(); $objects["TicketEditor"]["Functions"]["Assign"]["OutputObject"] = array("TicketEditor" => $_ticketEditorA); $objects["TicketEditor"]["Functions"]["Assign"]["InputObject"] = $objects["TicketEditor"]["Fields"]; $objects["CommercialChatVoucher"]["Fields"] = ApiV2::GetObjectFields("CommercialChatVoucher"); foreach ($objects["CommercialChatVoucher"]["Fields"] as $fid => $field) { if (isset($field["Code"])) { $_voucherA->{$fid} = $field["Code"]; } else { $_voucherA->{$fid} = $field["Example"]; } } $_voucherOut = ApiV2::ClearObject($objects["CommercialChatVoucher"]["Fields"], $_voucherA, true); $objects["CommercialChatVoucher"]["Functions"]["Create"]["Version"] = "5.2.5.0"; $objects["CommercialChatVoucher"]["Functions"]["Create"]["Title"] = "Create Commercial Chat Voucher"; $objects["CommercialChatVoucher"]["Functions"]["Create"]["Call"] = "POST /api/v2/api.php"; $objects["CommercialChatVoucher"]["Functions"]["Create"]["Param"] = "POST /api/v2/api.php p_commercialchatvoucher_create=1"; $objects["CommercialChatVoucher"]["Functions"]["Create"]["CURL"] = "curl {yourdomain}{livezilla_folder}/api/v2/api.php<br>-d {authenthication}<br>-d p_commercialchatvoucher_create=1"; $objects["CommercialChatVoucher"]["Functions"]["Create"]["Response"] = "JSON code of chat voucher"; $objects["CommercialChatVoucher"]["Functions"]["Create"]["Fields"] = array("true"); $objects["CommercialChatVoucher"]["Functions"]["Create"]["Filters"] = array(); $objects["CommercialChatVoucher"]["Functions"]["Create"]["OutputObject"] = array("CommercialChatVoucher" => $_voucherOut); $objects["CommercialChatVoucher"]["Functions"]["Create"]["InputObject"] = $objects["CommercialChatVoucher"]["Fields"]; $objects["KnowledgeBaseEntry"]["Fields"] = ApiV2::GetObjectFields("KnowledgeBaseEntry"); $_kbEntryOut = ApiV2::ClearObject($objects["KnowledgeBaseEntry"]["Fields"], $_kbEntry, true); $objects["KnowledgeBaseEntry"]["Functions"]["List"]["Version"] = "6.0.0.0"; $objects["KnowledgeBaseEntry"]["Functions"]["List"]["Title"] = "List Knowledgebase Entries"; $objects["KnowledgeBaseEntry"]["Functions"]["List"]["Call"] = "POST /api/v2/api.php"; $objects["KnowledgeBaseEntry"]["Functions"]["List"]["Param"] = "POST /api/v2/api.php p_knowledgebase_entries_list=1"; $objects["KnowledgeBaseEntry"]["Functions"]["List"]["CURL"] = "curl {yourdomain}{livezilla_folder}/api/v2/api.php<br>-d {authenthication}<br>-d p_knowledgebase_entries_list=1"; $objects["KnowledgeBaseEntry"]["Functions"]["List"]["Response"] = "JSON code of List of Knowledgebase entries"; $objects["KnowledgeBaseEntry"]["Functions"]["List"]["Fields"] = array("true"); $objects["KnowledgeBaseEntry"]["Functions"]["List"]["Filters"] = array("Show Private" => array("Input" => true, "Output" => false, "Type" => "bool", "Comment" => "Private entries will be returned.", "Required" => false, "Example" => "1"), "Id" => array("Input" => true, "Output" => false, "Type" => "string", "Comment" => "Will return the entry matching the given Id.", "Required" => false, "Example" => "14t733d03f64db3b72af327d0d835ebd"), "Limit" => array("Type" => "int", "Required" => false, "Comment" => "Maximum number of tickets to return.", "Example" => "100"), "Offset" => array("Type" => "int", "Required" => false, "Comment" => "Index where to start returning records (requires Limit parameter).", "Example" => "101")); $objects["KnowledgeBaseEntry"]["Functions"]["List"]["OutputObject"] = array("KnowledgeBaseEntries" => array(array("KnowledgeBaseEntry" => $_kbEntryOut))); $objects["KnowledgeBaseEntry"]["Functions"]["Create"]["Version"] = "6.0.0.0"; $objects["KnowledgeBaseEntry"]["Functions"]["Create"]["Title"] = "Create Knowledgebase Entry"; $objects["KnowledgeBaseEntry"]["Functions"]["Create"]["Call"] = "POST /api/v2/api.php"; $objects["KnowledgeBaseEntry"]["Functions"]["Create"]["Param"] = "POST /api/v2/api.php p_knowledgebase_entry_create=1"; $objects["KnowledgeBaseEntry"]["Functions"]["Create"]["CURL"] = "curl {yourdomain}{livezilla_folder}/api/v2/api.php<br>-d {authenthication}<br>-d p_knowledgebase_entry_create=1"; $objects["KnowledgeBaseEntry"]["Functions"]["Create"]["Response"] = "JSON code of chat voucher"; $objects["KnowledgeBaseEntry"]["Functions"]["Create"]["Fields"] = array("true"); $objects["KnowledgeBaseEntry"]["Functions"]["Create"]["Filters"] = array(); $objects["KnowledgeBaseEntry"]["Functions"]["Create"]["OutputObject"] = array("KnowledgeBaseEntry" => $_kbEntryOut); $objects["KnowledgeBaseEntry"]["Functions"]["Create"]["InputObject"] = $objects["KnowledgeBaseEntry"]["Fields"]; return $objects; }
static function GetObjectDefinitions($_operatorA, $_chatA, $_ticketA, $_voucherA, $_ticketMessageA, $_ticketEditorA) { $objects["Operator"]["Fields"] = ApiV2::GetObjectFields("Operator"); foreach ($objects["Operator"]["Fields"] as $fid => $field) { if (isset($field["Code"])) { $_operatorA->{$fid} = $field["Code"]; } else { $_operatorA->{$fid} = $field["Example"]; } } $_operatorOut = ApiV2::ClearObject($objects["Operator"]["Fields"], $_operatorA, true); $objects["Operator"]["Functions"]["List"]["Version"] = "5.2.5.0"; $objects["Operator"]["Functions"]["List"]["Title"] = "List Operators"; $objects["Operator"]["Functions"]["List"]["Call"] = "POST /api/v2/api.php"; $objects["Operator"]["Functions"]["List"]["Param"] = "POST /api/v2/api.php p_operators_list=1"; $objects["Operator"]["Functions"]["List"]["CURL"] = "curl {yourdomain}{livezilla_folder}/api/v2/api.php<br>-d {authenthication}<br>-d p_operators_list=1"; $objects["Operator"]["Functions"]["List"]["Response"] = "JSON code of operator(s)"; $objects["Operator"]["Functions"]["List"]["Fields"] = array("true"); $objects["Operator"]["Functions"]["List"]["Filters"] = array("UserId" => array("Type" => "string", "Required" => false, "Comment" => "Response will be the Operator matching this login Id.", "Example" => "john_doe"), "Status" => array("Type" => "int", "Required" => false, "Comment" => "Returns all operators having this status.", "Example" => "1"), "Group" => array("Type" => "string", "Required" => false, "Comment" => "Returns all operators that are member of this group.", "Example" => "groupid1")); $objects["Operator"]["Functions"]["List"]["OutputObject"] = array("Operators" => array(array("Operator" => $_operatorOut), array("Operator" => $_operatorOut))); $objects["Operator"]["Functions"]["Create"]["Version"] = "5.2.5.0"; $objects["Operator"]["Functions"]["Create"]["Title"] = "Create Operator"; $objects["Operator"]["Functions"]["Create"]["Call"] = "POST /api/v2/api.php"; $objects["Operator"]["Functions"]["Create"]["Param"] = "POST /api/v2/api.php p_operator_create=1"; $objects["Operator"]["Functions"]["Create"]["CURL"] = "curl {yourdomain}{livezilla_folder}/api/v2/api.php<br>-d {authenthication}<br>-d p_operator_create=1"; $objects["Operator"]["Functions"]["Create"]["Response"] = "JSON code of created operator"; $objects["Operator"]["Functions"]["Create"]["Fields"] = array("true"); $objects["Operator"]["Functions"]["Create"]["Filters"] = array(); $objects["Operator"]["Functions"]["Create"]["OutputObject"] = array("Operator" => $_operatorOut); $objects["Operator"]["Functions"]["Create"]["InputObject"] = $objects["Operator"]["Fields"]; $objects["Operator"]["Functions"]["Delete"]["Version"] = "5.2.5.0"; $objects["Operator"]["Functions"]["Delete"]["Title"] = "Delete Operator"; $objects["Operator"]["Functions"]["Delete"]["Call"] = "POST /api/v2/api.php"; $objects["Operator"]["Functions"]["Delete"]["Param"] = "POST /api/v2/api.php p_operator_delete=1"; $objects["Operator"]["Functions"]["Delete"]["CURL"] = "curl {yourdomain}{livezilla_folder}/api/v2/api.php<br>-d {authenthication}<br>-d p_operator_delete=1"; $objects["Operator"]["Functions"]["Delete"]["Response"] = "JSON code of deleted operator"; $objects["Operator"]["Functions"]["Delete"]["Fields"] = array("UserId"); $objects["Operator"]["Functions"]["Delete"]["Filters"] = array(); $objects["Operator"]["Functions"]["Delete"]["OutputObject"] = array("Operator" => $_operatorOut); $objects["Operator"]["Functions"]["Delete"]["InputObject"] = array("UserId" => array("Input" => true, "Output" => true, "Type" => "string", "Description" => "The alphanumeric login ID of the operators.", "Required" => true, "Example" => "john_doe")); $objects["Chat"]["Fields"] = ApiV2::GetObjectFields("Chat"); foreach ($objects["Chat"]["Fields"] as $fid => $field) { if (isset($field["Code"])) { $_chatA->{$fid} = $field["Code"]; } else { $_chatA->{$fid} = $field["Example"]; } } $_chatOut = ApiV2::ClearObject($objects["Chat"]["Fields"], $_chatA); $objects["Chat"]["Functions"]["List"]["Version"] = "5.2.5.0"; $objects["Chat"]["Functions"]["List"]["Title"] = "List Chat Transcripts"; $objects["Chat"]["Functions"]["List"]["Call"] = "POST /api/v2/api.php"; $objects["Chat"]["Functions"]["List"]["Param"] = "POST /api/v2/api.php p_chats_list=1"; $objects["Chat"]["Functions"]["List"]["CURL"] = "curl {yourdomain}{livezilla_folder}/api/v2/api.php<br>-d {authenthication}<br>-d p_chats_list=1<br>-d p_limit=10"; $objects["Chat"]["Functions"]["List"]["Response"] = "JSON code of chat transcript(s)"; $objects["Chat"]["Functions"]["List"]["Fields"] = array("true"); $objects["Chat"]["Functions"]["List"]["Filters"] = array("ChatId" => array("Type" => "string", "Required" => false, "Comment" => "Return the chat matching this chat Id.", "Example" => "11123"), "Group" => array("Type" => "string", "Required" => false, "Comment" => "Return all chats of this group.", "Example" => "groupid1"), "Operator" => array("Type" => "string", "Required" => false, "Comment" => "Return all chats of this operator.", "Example" => "john_doe"), "Start After" => array("Type" => "string", "Required" => false, "Comment" => "Return all chats with start time later than<br>YYYY-MM-DD HH:MM:SS", "Example" => "2014-01-01 23:59:59"), "Start Before" => array("Type" => "string", "Required" => false, "Comment" => "Return all chats with start time earlier than<br>YYYY-MM-DD HH:MM:SS", "Example" => "2014-01-03 00:00:00"), "Output" => array("Type" => "string", "Required" => false, "Comment" => "HTML | Plaintext", "Example" => "Plaintext"), "Limit" => array("Type" => "int", "Required" => false, "Comment" => "Maximum number of chats to return.", "Example" => "100")); $objects["Chat"]["Functions"]["List"]["OutputObject"] = array("Chats" => array(array("Chat" => $_chatOut))); $objects["Ticket"]["Fields"] = ApiV2::GetObjectFields("Ticket"); foreach ($objects["Ticket"]["Fields"] as $fid => $field) { if (isset($field["Code"])) { $_ticketA->{$fid} = $field["Code"]; } else { $_ticketA->{$fid} = $field["Example"]; } } $_ticketA = ApiV2::ClearObject($objects["Ticket"]["Fields"], $_ticketA); $objects["Ticket"]["Functions"]["List"]["Version"] = "5.2.5.0"; $objects["Ticket"]["Functions"]["List"]["Title"] = "List Tickets"; $objects["Ticket"]["Functions"]["List"]["Call"] = "POST /api/v2/api.php"; $objects["Ticket"]["Functions"]["List"]["Param"] = "POST /api/v2/api.php p_tickets_list=1"; $objects["Ticket"]["Functions"]["List"]["CURL"] = "curl {yourdomain}{livezilla_folder}/api/v2/api.php<br>-d {authenthication}<br>-d p_tickets_list=1<br>-d p_limit=10"; $objects["Ticket"]["Functions"]["List"]["Response"] = "JSON code of ticket(s)"; $objects["Ticket"]["Functions"]["List"]["Fields"] = array("true"); $objects["Ticket"]["Functions"]["List"]["Filters"] = array("Id" => array("Type" => "string", "Required" => false, "Comment" => "Return the ticket matching this Id.", "Example" => "11123"), "Group" => array("Type" => "string", "Required" => false, "Comment" => "Return all tickets of this group.", "Example" => "groupid1"), "Operator" => array("Type" => "string", "Required" => false, "Comment" => "Return all tickets of this operator.", "Example" => "john_doe"), "Created After" => array("Type" => "string", "Required" => false, "Comment" => "Return all tickets created later than<br>YYYY-MM-DD HH:MM:SS", "Example" => "2014-01-01 23:59:59"), "Created Before" => array("Type" => "string", "Required" => false, "Comment" => "Return all tickets created earlier than<br>YYYY-MM-DD HH:MM:SS", "Example" => "2014-01-03 00:00:00"), "Limit" => array("Type" => "int", "Required" => false, "Comment" => "Maximum number of tickets to return.", "Example" => "100")); $objects["Ticket"]["Functions"]["List"]["OutputObject"] = array("Tickets" => array(array("Ticket" => $_ticketA))); $objects["Ticket"]["Functions"]["Create"]["Version"] = "5.2.5.0"; $objects["Ticket"]["Functions"]["Create"]["Title"] = "Create Ticket"; $objects["Ticket"]["Functions"]["Create"]["Call"] = "POST /api/v2/api.php"; $objects["Ticket"]["Functions"]["Create"]["Param"] = "POST /api/v2/api.php p_ticket_create=1"; $objects["Ticket"]["Functions"]["Create"]["CURL"] = "curl {yourdomain}{livezilla_folder}/api/v2/api.php<br>-d {authenthication}<br>-d p_ticket_create=1"; $objects["Ticket"]["Functions"]["Create"]["Response"] = "JSON code of created ticket"; $objects["Ticket"]["Functions"]["Create"]["Fields"] = array("true"); $objects["Ticket"]["Functions"]["Create"]["Filters"] = array(); $objects["Ticket"]["Functions"]["Create"]["OutputObject"] = array("Ticket" => $_ticketA); $objects["Ticket"]["Functions"]["Create"]["InputObject"] = $objects["Ticket"]["Fields"]; $objects["TicketMessage"]["Fields"] = ApiV2::GetObjectFields("TicketMessage"); $objects["TicketMessage"]["Parent"] = "Ticket"; foreach ($objects["TicketMessage"]["Fields"] as $fid => $field) { if (isset($field["Code"])) { $_ticketMessageA->{$fid} = $field["Code"]; } else { $_ticketMessageA->{$fid} = $field["Example"]; } } $_ticketMessageA = ApiV2::ClearObject($objects["TicketMessage"]["Fields"], $_ticketMessageA); $objects["TicketMessage"]["Functions"]["Create"]["Version"] = "5.2.5.0"; $objects["TicketMessage"]["Functions"]["Create"]["Title"] = "Create Ticket Message"; $objects["TicketMessage"]["Functions"]["Create"]["Call"] = "POST /api/v2/api.php"; $objects["TicketMessage"]["Functions"]["Create"]["Param"] = "POST /api/v2/api.php p_ticketmessage_create=1"; $objects["TicketMessage"]["Functions"]["Create"]["CURL"] = "curl {yourdomain}{livezilla_folder}/api/v2/api.php<br>-d {authenthication}<br>-d p_ticketmessage_create=1"; $objects["TicketMessage"]["Functions"]["Create"]["Response"] = "JSON code of created ticket message"; $objects["TicketMessage"]["Functions"]["Create"]["Fields"] = array("true"); $objects["TicketMessage"]["Functions"]["Create"]["Filters"] = array(); $objects["TicketMessage"]["Functions"]["Create"]["OutputObject"] = array("TicketMessage" => $_ticketMessageA); $objects["TicketMessage"]["Functions"]["Create"]["InputObject"] = $objects["TicketMessage"]["Fields"]; $objects["TicketEditor"]["Fields"] = ApiV2::GetObjectFields("TicketEditor"); $objects["TicketEditor"]["Parent"] = "Ticket"; foreach ($objects["TicketEditor"]["Fields"] as $fid => $field) { if (isset($field["Code"])) { $_ticketEditorA->{$fid} = $field["Code"]; } else { $_ticketEditorA->{$fid} = $field["Example"]; } } $_ticketEditorA = ApiV2::ClearObject($objects["TicketEditor"]["Fields"], $_ticketEditorA); $objects["TicketEditor"]["Functions"]["Assign"]["Version"] = "5.2.5.0"; $objects["TicketEditor"]["Functions"]["Assign"]["Title"] = "Assign Ticket Editor"; $objects["TicketEditor"]["Functions"]["Assign"]["Call"] = "POST /api/v2/api.php"; $objects["TicketEditor"]["Functions"]["Assign"]["Param"] = "POST /api/v2/api.php p_ticketeditor_assign=1"; $objects["TicketEditor"]["Functions"]["Assign"]["CURL"] = "curl {yourdomain}{livezilla_folder}/api/v2/api.php<br>-d {authenthication}<br>-d p_ticketeditor_assign=1"; $objects["TicketEditor"]["Functions"]["Assign"]["Response"] = "JSON code of ticket editor"; $objects["TicketEditor"]["Functions"]["Assign"]["Fields"] = array("true"); $objects["TicketEditor"]["Functions"]["Assign"]["Filters"] = array(); $objects["TicketEditor"]["Functions"]["Assign"]["OutputObject"] = array("TicketEditor" => $_ticketEditorA); $objects["TicketEditor"]["Functions"]["Assign"]["InputObject"] = $objects["TicketEditor"]["Fields"]; $objects["CommercialChatVoucher"]["Fields"] = ApiV2::GetObjectFields("CommercialChatVoucher"); foreach ($objects["CommercialChatVoucher"]["Fields"] as $fid => $field) { if (isset($field["Code"])) { $_voucherA->{$fid} = $field["Code"]; } else { $_voucherA->{$fid} = $field["Example"]; } } $_voucherOut = ApiV2::ClearObject($objects["CommercialChatVoucher"]["Fields"], $_voucherA, true); $objects["CommercialChatVoucher"]["Functions"]["Create"]["Version"] = "5.2.5.0"; $objects["CommercialChatVoucher"]["Functions"]["Create"]["Title"] = "Create Commercial Chat Voucher"; $objects["CommercialChatVoucher"]["Functions"]["Create"]["Call"] = "POST /api/v2/api.php"; $objects["CommercialChatVoucher"]["Functions"]["Create"]["Param"] = "POST /api/v2/api.php p_commercialchatvoucher_create=1"; $objects["CommercialChatVoucher"]["Functions"]["Create"]["CURL"] = "curl {yourdomain}{livezilla_folder}/api/v2/api.php<br>-d {authenthication}<br>-d p_voucher_create=1"; $objects["CommercialChatVoucher"]["Functions"]["Create"]["Response"] = "JSON code of chat voucher"; $objects["CommercialChatVoucher"]["Functions"]["Create"]["Fields"] = array("true"); $objects["CommercialChatVoucher"]["Functions"]["Create"]["Filters"] = array(); $objects["CommercialChatVoucher"]["Functions"]["Create"]["OutputObject"] = array("CommercialChatVoucher" => $_voucherOut); $objects["CommercialChatVoucher"]["Functions"]["Create"]["InputObject"] = $objects["CommercialChatVoucher"]["Fields"]; return $objects; }