{"add_contact",{ca_string,ca_string,ca_string,ca_none},do_add_contact,"add_contact <phone> <first name> <last name>\tTries to add user to contact list",NULL},
{"broadcast",{ca_user,ca_period,ca_string_end,ca_none},do_broadcast,"broadcast <user>+ <text>\tSends text to several users at once",NULL},
{"channel_info",{ca_channel,ca_none},do_channel_info,"channel_info <channel>\tPrints info about channel (id, members, admin, etc.)",NULL},
{"channel_list",{ca_number|ca_optional,ca_number|ca_optional,ca_none},do_channel_list,"channel_list [limit=100] [offset=0]\tList of last channels",NULL},
{"chat_add_user",{ca_chat,ca_user,ca_number|ca_optional,ca_none},do_chat_add_user,"chat_add_user <chat> <user> [msgs-to-forward]\tAdds user to chat. Sends him last msgs-to-forward message from this chat. Default 100",NULL},
{"chat_del_user",{ca_chat,ca_user,ca_none},do_chat_del_user,"chat_del_user <chat> <user>\tDeletes user from chat",NULL},
{"fwd_media",{ca_peer,ca_msg_id,ca_none},do_fwd_media,"fwd_media <peer> <msg-id>\tForwards message media to peer. Forward to secret chats is forbidden. Result slightly differs from fwd",NULL},
{"get_message",{ca_msg_id,ca_none},do_get_message,"get_message <msg-id>\tGet message by id",NULL},
{"get_self",{ca_none},do_get_self,"get_self \tGet our user info",NULL},
{"help",{ca_none},do_help,"help\tPrints this help",NULL},
{"help",{ca_command|ca_optional,ca_none},do_help,"help [command]\tPrints this help",NULL},
{"history",{ca_peer,ca_number|ca_optional,ca_number|ca_optional,ca_none},do_history,"history <peer> [limit] [offset]\tPrints messages with this peer (most recent message lower). Also marks messages as read",NULL},
{"import_card",{ca_string,ca_none},do_import_card,"import_card <card>\tGets user by card and prints it name. You can then send messages to him as usual",NULL},
{"import_chat_link",{ca_string,ca_none},do_import_chat_link,"import_chat_link <hash>\tJoins to chat by link",NULL},
{"view_video",{ca_msg_id,ca_none},do_open_video,"view_video <msg-id>\tDownloads file to downloads dirs. Then tries to open it with system default action",NULL},
{"view_video_thumb",{ca_msg_id,ca_none},do_open_video_thumb,"view_video_thumb <msg-id>\tDownloads file to downloads dirs. Then tries to open it with system default action",NULL},
{"view",{ca_msg_id,ca_none},do_open_any,"view <msg-id>\tTries to view message contents",NULL},
{"visualize_key",{ca_secret_chat,ca_none},do_visualize_key,"visualize_key <secret chat>\tPrints visualization of encryption key (first 16 bytes sha1 of it in fact}",NULL}
{"visualize_key",{ca_secret_chat,ca_none},do_visualize_key,"visualize_key <secret chat>\tPrints visualization of encryption key (first 16 bytes sha1 of it in fact)",NULL}