{{#api_declaration}} /* * Asterisk -- An open source telephony toolkit. * * {{{copyright}}} * * {{{author}}} * * See http://www.asterisk.org for more information about * the Asterisk project. Please do not directly contact * any of the maintainers of this project for assistance; * the project provides a web site, mailing lists and IRC * channels for your use. * * This program is free software, distributed under the terms of * the GNU General Public License Version 2. See the LICENSE file * at the top of the source tree. */ /*! \file * * \brief Generated file - declares stubs to be implemented in * res/ari/resource_{{name}}.c * * {{{description}}} * * \author {{{author}}} */ /* {{> do-not-edit}} * This file is generated by a mustache template. Please see the original * template in rest-api-templates/ari_resource.h.mustache */ #ifndef _ASTERISK_RESOURCE_{{name_caps}}_H #define _ASTERISK_RESOURCE_{{name_caps}}_H #include "asterisk/ari.h" {{#apis}} {{#operations}} /*! Argument struct for ast_ari_{{c_name}}_{{c_nickname}}() */ struct ast_ari_{{c_name}}_{{c_nickname}}_args { {{#parameters}} {{#description}} {{/description}} {{^allow_multiple}} {{#description}} /*! {{{description}}} */ {{/description}} {{c_data_type}}{{c_space}}{{c_name}}; {{/allow_multiple}} {{#allow_multiple}} /*! Array of {{{description}}} */ {{c_data_type}}{{c_space}}*{{c_name}}; /*! Length of {{c_name}} array. */ size_t {{c_name}}_count; /*! Parsing context for {{c_name}}. */ char *{{c_name}}_parse; {{/allow_multiple}} {{/parameters}} }; {{#is_req}} {{#parse_body}} /*! * \brief Body parsing function for {{path}}. * \param body The JSON body from which to parse parameters. * \param[out] args The args structure to parse into. * \retval zero on success * \retval non-zero on failure */ int ast_ari_{{c_name}}_{{c_nickname}}_parse_body( struct ast_json *body, struct ast_ari_{{c_name}}_{{c_nickname}}_args *args); {{/parse_body}} /*! * \brief {{summary}} {{#notes}} * * {{{notes}}} {{/notes}} * {{#is_binary_response}} * \param ser TCP/TLS session instance {{/is_binary_response}} * \param headers HTTP headers * \param args Swagger parameters * \param[out] response HTTP response */ {{^is_binary_response}} void ast_ari_{{c_name}}_{{c_nickname}}(struct ast_variable *headers, struct ast_ari_{{c_name}}_{{c_nickname}}_args *args, struct ast_ari_response *response); {{/is_binary_response}} {{#is_binary_response}} void ast_ari_{{c_name}}_{{c_nickname}}(struct ast_tcptls_session_instance *ser, struct ast_variable *headers, struct ast_ari_{{c_name}}_{{c_nickname}}_args *args, struct ast_ari_response *response); {{/is_binary_response}} {{/is_req}} {{#is_websocket}} /*! * \brief {{summary}} {{#notes}} * * {{{notes}}} {{/notes}} * * \retval 0 success * \retval -1 error */ int ast_ari_websocket_{{c_name}}_{{c_nickname}}_init(void); /*! * \brief {{summary}} {{#notes}} * * {{{notes}}} {{/notes}} * * \return Nothing */ void ast_ari_websocket_{{c_name}}_{{c_nickname}}_dtor(void); /*! * \brief {{summary}} {{#notes}} * * {{{notes}}} {{/notes}} * * \param ser HTTP TCP/TLS Server Session * \param headers HTTP headers * \param args Swagger parameters * \param session_id The id of the current session. * * \retval 0 success * \retval non-zero error */ int ast_ari_websocket_{{c_name}}_{{c_nickname}}_attempted(struct ast_tcptls_session_instance *ser, struct ast_variable *headers, struct ast_ari_{{c_name}}_{{c_nickname}}_args *args, const char *session_id); /*! * \brief {{summary}} {{#notes}} * * {{{notes}}} {{/notes}} * * \param session ARI WebSocket. * \param headers HTTP headers. * \param args Swagger parameters. * \param session_id The id of the current session. */ void ast_ari_websocket_{{c_name}}_{{c_nickname}}_established(struct ast_ari_websocket_session *session, struct ast_variable *headers, struct ast_ari_{{c_name}}_{{c_nickname}}_args *args); {{/is_websocket}} {{/operations}} {{/apis}} #endif /* _ASTERISK_RESOURCE_{{name_caps}}_H */ {{/api_declaration}}