请教一个问题啊.现在不是有这种自动回复的功能吗
1.xxx
2.yyy
如果用户回复1之后.
然后又出来一个菜单
1.aa
2.bb
然后这个时候。用户输入:2这个时候进入2.
我想请问下。他输入2的时候。不是第一个菜单。而是第二个菜单。这个是怎么定位的啊.
很多微信公众平台的SDK都带有session支持,可以暂存一些状态。
谢谢两位的回答,我后来想了半天.使用了变量树完美解决了.
微信的我不了解,前几天做的 C 语言作业就有一个类似的功能,代码大概是这样:
//some code here...
main()
{
int operate_code;
printf("1.xxx\n2.yyy\n");
scanf("%d",&operate_code);
switch(operate_code)
{
case 1:
sub_menu_1();
break;
case 2:
sub_menu_2();
break;
//some code here...
}
//some code here...
}
void sub_menu_1()
{
int operate_code;
printf("1.aa\n2.bb\n");
scanf("%d",&operate_code);
//some code here
}
//some code here
大概原理应该就是这样吧,在第一个菜单输入 1
之后就调用子菜单1的函数,这时候的输入就理解为 sub_menu_1()
里的那个输入语句。
微信上的具体实现应该像 @akirakazu 说的那样: SDK 带有 session 支持,用来存储当前用户的状态,根据用户的不同状态调用不同的菜单功能函数。代码也应该变成了这样:
//some code here...
{
int operate_code,status;
printf("1.xxx\n2.yyy\n");
scanf("%d",&operate_code);
sub_menu(status,operate_code);
//some code here...
}
void sub_menu(int status,int operate_code)
{
//some code here
}
//some code here
上面这答案越写越觉得不靠谱,可是写了那么长了又不舍得删掉,于是提交了,希望能够给题主一些灵感吧,不对的地方恳请前辈指出。