订票助手NET 2019.12.20.17 更新
本版本主要是一个稳定性更新,与此同时添加了一些新功能。
变更如下:
- 对内置票价查询以及候补状态查询进行调整,调整为可选功能且默认关闭,并仅专业版可用;
- 增加提交候补订单时,自动默认添加当前查询联系人的功能;
- 下线远程打码,并开放远程打码接口(更多参考博客)
- 修正当启用服务器加速时,加速成功后登录将始终系统繁忙的问题
- 修正在特定情况下,不允许提交订单的问题(距离开车时间近)
- 其它细节更新
以下针对上面标红内容简单介绍下。
内置功能调整
订票助手之前版本内置有两大自动化查询功能:自动查询候补状态;自动查询票价。这俩功能虽然比较有用,但是受制于12306提供的接口,这俩功能的实现是基于大量的查询实现的。所以为了稳定性考虑,在此版本中,这俩功能做了如下调整:
- 增加选项可控制,可以开关,并可调整功能的请求参数
- 默认不开启
- 调整为专业版可用(含捐助版、内部版)
选项面板参见如下。
下线远程打码功能,并开放相关接口
为啥要下线远程打码功能?原因很简单,之前集成的UU云以及若快都跪了。
但是又有一部分同学会觉得这是刚需。所以这个版本开放了相关接口,有兴趣也有需要的可以自己实现,方法很简单,分为以下三步。
- 新建.NET类库项目,语言不限,名字建议命名为 TOBA.***(即以TOBA.开头),并添加订票助手.NET目录中的 bin下面的TOBA.AutoVc.dll引用
- 新建一个自己的服务类,并继承自 AbstractVerifyCodeRecognizeService,实现 IVerifyCodeRecognizeService 接口
- 实现必须的功能(登录、查分、通过Image获得代码)
- 编译,并将生成的 TOBA.**.dll (文件名必须符合这个格式)复制到订票助手.NET目录下的extensions目录中,再启动订票助手.NET,即可在设置中看到此扩展
例如,如下的一个最简单的例子。
class TestVcService : AbstractVerifyCodeRecognizeService
{
public TestVcService()
{
Author = "木魚(iFish)";
ErrorCodeQueryUrl = "http://查询错误地址";
Name = "测试远程打码";
WebUrl = "http://WEB网址";
ProviderName = "测试远程打码";
}
/// <summary>
/// 加载
/// </summary>
public override void Load()
{
base.Load();
Verified = true;
ErrorCode = 0;
}
/// <summary>
/// 登录
/// </summary>
/// <returns></returns>
public override bool DoLogin()
{
//执行登录动作,成功返回true
return true;
}
/// <summary>
/// 注销
/// </summary>
/// <returns></returns>
public override bool Logout()
{
//执行注销动作,成功返回true
return true;
}
/// <summary>
/// 刷新题分
/// </summary>
/// <returns></returns>
public override bool RefreshScore()
{
//刷新题分
return true;
}
/// <summary>
/// 插件ID
/// </summary>
public override string Id => "testvc";
/// <summary>
/// 标记识别结果
/// </summary>
/// <param name="result"></param>
/// <param name="correct"></param>
public override void MarkResult(IVerifyCodeRecognizeResult result, bool correct)
{
//标记结果错误
}
/// <summary>
///
/// </summary>
/// <param name="image"></param>
/// <returns></returns>
public override IVerifyCodeRecognizeResult GetCode(Image image)
{
//识别图片,失败返回null
return null;
}
}
得到的结果是这样的:
转载自:https://blog.fishlee.net/?p=4555