{"safe_quit",{ca_none},do_safe_quit,"safe_quit\tWaits for all queries to end, then quits",NULL},
{"safe_quit",{ca_none},do_safe_quit,"safe_quit\tWaits for all queries to end, then quits",NULL},
{"search",{ca_peer|ca_optional,ca_number|ca_optional,ca_number|ca_optional,ca_number|ca_optional,ca_number|ca_optional,ca_string_end},do_search,"search [peer] [limit] [from] [to] [offset] pattern\tSearch for pattern in messages from date from to date to (unixtime) in messages with peer (if peer not present, in all messages)",NULL},
{"search",{ca_peer|ca_optional,ca_number|ca_optional,ca_number|ca_optional,ca_number|ca_optional,ca_number|ca_optional,ca_string_end},do_search,"search [peer] [limit] [from] [to] [offset] pattern\tSearch for pattern in messages from date from to date to (unixtime) in messages with peer (if peer not present, in all messages)",NULL},
//{"secret_chat_rekey", { ca_secret_chat, ca_none}, do_secret_chat_rekey, "generate new key for active secret chat", NULL},
//{"secret_chat_rekey", { ca_secret_chat, ca_none}, do_secret_chat_rekey, "generate new key for active secret chat", NULL},
{"send_audio",{ca_peer,ca_file_name,ca_none},do_send_audio,"send_audio <peer> <file>\tSends audio to peer",NULL},
{"send_audio",{ca_peer,ca_file_name,ca_string_end|ca_optional,ca_none},do_send_audio,"send_audio <peer> <file>\tSends audio to peer",NULL},