Lines Matching full:script

70 	if ((chat == NULL) || (chat->script == NULL)) {  in modem_chat_script_stop()
76 LOG_DBG("%s: complete", chat->script->name); in modem_chat_script_stop()
78 LOG_WRN("%s: aborted", chat->script->name); in modem_chat_script_stop()
80 LOG_WRN("%s: timed out", chat->script->name); in modem_chat_script_stop()
84 if (chat->script->callback != NULL) { in modem_chat_script_stop()
85 chat->script->callback(chat, result, chat->user_data); in modem_chat_script_stop()
88 /* Clear parse_match in case it is stored in the script being stopped */ in modem_chat_script_stop()
96 /* Clear reference to script */ in modem_chat_script_stop()
97 chat->script = NULL; in modem_chat_script_stop()
110 /* Clear script running state */ in modem_chat_script_stop()
113 /* Store result of script for script stoppted indication */ in modem_chat_script_stop()
116 /* Indicate script stopped */ in modem_chat_script_stop()
136 &chat->script->script_chats[chat->script_chat_it]; in modem_chat_script_set_response_matches()
151 &chat->script->script_chats[chat->script_chat_it]; in modem_chat_script_chat_has_request()
159 &chat->script->script_chats[chat->script_chat_it]; in modem_chat_script_chat_has_matches()
167 &chat->script->script_chats[chat->script_chat_it]; in modem_chat_script_chat_get_send_timeout()
197 /* Check if end of script reached */ in modem_chat_script_next()
198 if (chat->script_chat_it == chat->script->script_chats_size) { in modem_chat_script_next()
204 LOG_DBG("%s: step: %u", chat->script->name, chat->script_chat_it); in modem_chat_script_next()
206 script_chat = &chat->script->script_chats[chat->script_chat_it]; in modem_chat_script_next()
208 /* Continue script */ in modem_chat_script_next()
220 static void modem_chat_script_start(struct modem_chat *chat, const struct modem_chat_script *script) in modem_chat_script_start() argument
222 /* Save script */ in modem_chat_script_start()
223 chat->script = script; in modem_chat_script_start()
226 chat->matches[MODEM_CHAT_MATCHES_INDEX_ABORT] = script->abort_matches; in modem_chat_script_start()
227 chat->matches_size[MODEM_CHAT_MATCHES_INDEX_ABORT] = script->abort_matches_size; in modem_chat_script_start()
229 LOG_DBG("running script: %s", chat->script->name); in modem_chat_script_start()
231 /* Set first script command */ in modem_chat_script_start()
234 /* Start timeout work if script started */ in modem_chat_script_start()
235 if (chat->script != NULL) { in modem_chat_script_start()
236 k_work_schedule(&chat->script_timeout_work, K_SECONDS(chat->script->timeout)); in modem_chat_script_start()
244 /* Start script */ in modem_chat_script_run_handler()
253 /* Abort script */ in modem_chat_script_timeout_handler()
261 /* Validate script is currently running */ in modem_chat_script_abort_handler()
262 if (chat->script == NULL) { in modem_chat_script_abort_handler()
266 /* Abort script */ in modem_chat_script_abort_handler()
274 &chat->script->script_chats[chat->script_chat_it]; in modem_chat_send_script_request_part()
315 if (chat->script == NULL) { in modem_chat_script_send_handler()
354 /* Validate script is currently running */ in modem_chat_script_send_timeout_handler()
355 if (chat->script == NULL) { in modem_chat_script_send_timeout_handler()
508 /* Abort script */ in modem_chat_on_command_received_abort()
524 /* Advance script */ in modem_chat_on_command_received_resp()
846 int modem_chat_run_script_async(struct modem_chat *chat, const struct modem_chat_script *script) in modem_chat_run_script_async() argument
854 /* Validate script */ in modem_chat_run_script_async()
855 if (script->script_chats == NULL || in modem_chat_run_script_async()
856 (script->script_chats_size == 0 in modem_chat_run_script_async()
857 && script->script_chats != modem_chat_empty_script_chats) || in modem_chat_run_script_async()
858 (script->abort_matches_size == 0 in modem_chat_run_script_async()
859 && script->abort_matches != NULL in modem_chat_run_script_async()
860 && script->abort_matches != modem_chat_empty_matches)) { in modem_chat_run_script_async()
864 /* Validate script commands */ in modem_chat_run_script_async()
865 for (uint16_t i = 0; i < script->script_chats_size; i++) { in modem_chat_run_script_async()
866 if ((script->script_chats[i].request_size == 0) && in modem_chat_run_script_async()
867 (script->script_chats[i].response_matches_size == 0) && in modem_chat_run_script_async()
868 (script->script_chats[i].timeout == 0)) { in modem_chat_run_script_async()
882 chat->pending_script = script; in modem_chat_run_script_async()
887 int modem_chat_run_script(struct modem_chat *chat, const struct modem_chat_script *script) in modem_chat_run_script() argument
891 ret = modem_chat_run_script_async(chat, script); in modem_chat_run_script()
926 chat->script = NULL; in modem_chat_release()
1033 void modem_chat_script_init(struct modem_chat_script *script) in modem_chat_script_init() argument
1035 memset(script, 0, sizeof(struct modem_chat_script)); in modem_chat_script_init()
1036 script->name = ""; in modem_chat_script_init()
1039 void modem_chat_script_set_name(struct modem_chat_script *script, const char *name) in modem_chat_script_set_name() argument
1041 script->name = name; in modem_chat_script_set_name()
1044 int modem_chat_script_set_script_chats(struct modem_chat_script *script, in modem_chat_script_set_script_chats() argument
1052 script->script_chats = script_chats; in modem_chat_script_set_script_chats()
1053 script->script_chats_size = script_chats_size; in modem_chat_script_set_script_chats()
1057 int modem_chat_script_set_abort_matches(struct modem_chat_script *script, in modem_chat_script_set_abort_matches() argument
1065 script->abort_matches = abort_matches; in modem_chat_script_set_abort_matches()
1066 script->abort_matches_size = abort_matches_size; in modem_chat_script_set_abort_matches()
1070 void modem_chat_script_set_callback(struct modem_chat_script *script, in modem_chat_script_set_callback() argument
1073 script->callback = callback; in modem_chat_script_set_callback()
1076 void modem_chat_script_set_timeout(struct modem_chat_script *script, uint32_t timeout_s) in modem_chat_script_set_timeout() argument
1078 script->timeout = timeout_s; in modem_chat_script_set_timeout()