一种信息发送方法及装置的制造方法

文档序号:10539646阅读:369来源:国知局
一种信息发送方法及装置的制造方法
【专利摘要】本发明提供一种信息发送方法及装置。该方法包括:车载蓝牙系统获得信息发送指令,并响应于所述信息发送指令,创建空的队列;获得待发送信息以及至少两个接收方标识;根据所述待发送信息和所述至少两个接收方标识,设置所述队列中的队列对象;其中,单个队列对象包含所述待发送信息及单个接收方标识;从设置完成的队列中读取各队列对象,并向与所述车载蓝牙系统建立连接的终端进行发送。本发明解决了现有技术存在的信息发送效率较低的问题。
【专利说明】
_种信息发送方法及装置
技术领域
[0001]本发明实施例涉及无线通信技术领域,尤其涉及一种信息发送方法及装置。
【背景技术】
[0002]目前,通过蓝牙技术,可以将车载蓝牙系统与移动终端进行连接,以便在车辆行驶的过程中,可以通过车载蓝牙系统收发信息(比如收发短信或邮件)及进行免提通话等。
[0003]现有技术中,为了实现通过车载蓝牙系统收发信息,需要在车载蓝牙系统与移动终端之间建立连接,然后再基于该连接,实现通过车载蓝牙系统【发收发】(不通顺)信息的功能。比如,车载蓝牙系统与移动终端基于蓝牙协议栈建立无线连接后,若车载蓝牙系统接收到信息发送指令,则根据消息访问(Message Acess Profile, MAP)协议封装数据包发送给移动终端,以触发移动终端自动根据数据包中包含的接收方标识,向接收方设备发送数据包中的信息。
[0004]上述信息发送方式存在的问题在于,根据MAP协议,车载蓝牙系统每次接收到信息发送指令后,仅能发送包含一个接收方标识和待发送的信息的数据包,从而效率较低。

【发明内容】

[0005]本发明提供一种信息发送方法及装置,用以解决现有技术存在的信息发送效率较低的问题。
[0006]本发明提供一种信息发送方法,包括:
[0007]车载蓝牙系统获得信息发送指令,并响应于所述信息发送指令,创建空的队列;
[0008]获得待发送信息以及至少两个接收方标识;
[0009]根据所述待发送信息和所述至少两个接收方标识,设置所述队列中的队列对象;其中,单个队列对象包含所述待发送信息及单个接收方标识;
[0010]从设置完成的队列中读取各队列对象,并向与所述车载蓝牙系统建立连接的终端进行发送。
[0011]本发明还提供一种信息发送装置,包括:
[0012]指令接收单元,用于获得信息发送指令,并响应于所述信息发送指令,创建空的队列;
[0013]信息获得单元,用于获得待发送信息以及至少两个接收方标识;
[0014]队列对象设置单元,用于根据所述待发送信息和所述至少两个接收方标识,设置所述队列中的队列对象;其中,单个队列对象包含所述待发送信息及单个接收方标识;
[0015]发送单元,用于从设置完成的队列中读取各队列对象,并向与所述车载蓝牙系统建立连接的终端进行发送。
[0016]本发明提供的一种信息发送方法,由于车载蓝牙系统可以在获得信息发送指令后,创建空的队列,而队列这种数据结构,可以包含至少两个队列对象,单个队列对象可以包含由一个接收方标识和待发送的信息组成的数据包,从而车载蓝牙系统每次接收到信息发送指令后,可以发送至少两个包含一个接收方标识和待发送的信息的数据包,因此相比于现有技术提供的信息发送方式而言,信息发送效率较高。
【附图说明】
[0017]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0018]图1为本发明实施例提供的一种信息发送方法的具体实现流程示意图;
[0019]图2为本发明实施例提供的一种队列的结构示意图;
[0020]图3为本发明实施例提供的一种链表的结构示意图;
[0021]图4为本发明实施例提供的一种移动终端系统框架的结构示意图;
[0022]图5为本发明实施例提供的一种通过车载蓝牙系统向与该系统建立连接的移动终端设备发送信息的具体流程示意图;
[0023]图6为本发明实施例提供的一种信息发送装置的结构示意图。
【具体实施方式】
[0024]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0025]实施例1
[0026]本发明实施例提供一种信息发送方法,用以解决采用现有技术进行信息发送时,存在信息发送效率较低的问题。
[0027]本发明实施例提供的该信息发送方法的执行主体可以是蓝牙系统,比如可以是车载蓝牙系统以及停车场蓝牙系统等。所述的执行主体并不构成对本发明的限定,为了便于描述,本发明实施例均以执行主体是车载蓝牙系统为例进行说明。
[0028]具体地,本发明实施例提供的该方法的具体实现流程示意图如图1所示,主要包括下述步骤:
[0029]步骤11,获得信息发送指令,并响应于所述信息发送指令,创建空的队列;
[0030]需要说明的是,获得的信息发送指令,可以是由用户通过车载蓝牙系统的语音接口(如,话筒或麦克风)通过语音输入的。
[0031]例如,假设在行车过程中,用户A期望通过车载蓝牙系统触发与该车载蓝牙系统建立连接的手机向用户B发送短信,则可以通过车载蓝牙系统的话筒输入语音:“向用户B发送短信”,车载蓝牙系统即可获得信息发送指令,并响应于所述信息发送指令,创建一个空的队列。
[0032]还需要说明的是,获得的信息发送指令,也可以是通过用户对车载蓝牙系统的指令输入接口执行特定操作而触发的。
[0033]例如,用户可以点击车载蓝牙系统的“发送信息”按钮,车载蓝牙系统即可获得信息发送指令。
[0034]步骤12,获得待发送信息以及至少两个接收方标识;根据所述待发送信息和所述至少两个接收方标识,设置所述队列中的队列对象;
[0035]—般地,获得的待发送的信息,可以是通过车载蓝牙系统的文本信息输入接口,输入到车载蓝牙系统的文本信息;也可以是通过车载蓝牙系统的语音接口(如话筒)输入的语音信息;还可以是通过对该语音信息进行语音识别而得到的文本信息。比如,车载蓝牙系统可以获得用户输入的语音指令;并通过对所述语音指令进行语音识别,获得相应的作为待发送信息的文本信息。
[0036]其中,以通过车载蓝牙系统发送短信为例,所述的接收方标识,可以是接收方的地址信息或者与接收方地址信息具有关联关系的信息。比如,接收方标识可以为:通讯录中联系人的手机号或姓名等唯一标识;或邮箱地址。
[0037]比如,车载蓝牙系统在与手机等设备建立连接后,基于该连接,可以访问设备的通讯录,并将通讯录中的手机号(或联系人名字)显示在安装有该车载蓝牙系统的车载设备的显示屏上,以供用户选取。进一步地,可以获得用户选定的手机号(或联系人名字)。
[0038]又比如,以用户通过车载蓝牙系统发送短信为例,假设用户A期望通过车载蓝牙系统触发与该车载蓝牙系统建立连接的手机分别向用户B、用户C以及用户D发送信息,则用户A可以通过车载蓝牙系统的话筒输入语音:“向联系人姓名B、联系人姓名C以及联系人姓名D发送短信”。其中,用户通过车载蓝牙系统输入的“联系人姓名B”、“联系人姓名C”以及“联系人姓名D”,即为用户B、用户C以及用户D的接收方标识。
[0039]需要说明的是,可以根据所述待发送信息和所述至少两个接收方标识,为通过执行步骤11创建的队列生成队列对象。比如,在一种实施方式中,本申请实施例提供的方法包括:根据所述待发送信息和所述至少两个接收方标识,设置作为所述队列对象的链表结点。
[0040]其中,如图2所示,队列中的各对象均包含所述待发送信息及单个接收方标识。
[0041]还需要说明的是,根据所述待发送信息和所述至少两个接收方标识,设置作为所述队列对象的链表结点,包括:利用在蓝牙协议栈的MAP协议中添加的信息发送sendmessage函数,根据所述待发送信息和所述至少两个接收方标识,设置作为所述队列对象的链表结点。
[0042]其中,所述sendmessage函数,是现有技术中一种用于实现按照指定的结构体发送信息的函数。其中,所述指定的结构体,比如可以是短消息的结构体,或者邮件的结构体。在本申请实施例中,通过所述的sendmessage函数,可以实现将信息按照所述指定的结构体封装,进而向与所述车载蓝牙系统建立连接的终端进行发送。
[0043]需要说明的是,sendmessage函数主要包括两个参数:Msg和返回值。其中,Msg的值为被指定发送的信息,在本申请实施例中,将前文所述的待发送的信息以及接收方标识作为sendmessage函数的Msg的值。返回值为指定发送的信息的处理结果。
[0044]在一种实施方式中,本申请实施例提供的方法包括:调用sendmessage函数建立如图3所示的链表,并根据Msg的值,设置链表的每个结点。比如,sendmessage函数按照指定的结构体,利用MAP协议,对MAP协议层接收到的待发送的信息以及所述至少两个接收方标识中的单个接收方标识进行封装,并将封装得到的数据包,存储在所述链表中的一个结点中。采用这样的方式,sendmessage函数可以使得所述链表中的各个结点均包含待发送的信息以及所述至少两个接收方标识中的某个单个接收方标识。所述链表中的各结点,即作为通过执行步骤11创建的队列中的队列对象。
[0045]步骤13,从设置完成的队列中读取各队列对象,并向与所述车载蓝牙系统建立连接的终端进行发送。
[0046]在一种实施方式,从设置完成的队列中读取各队列对象,并向与所述车载蓝牙系统建立连接的终端进行发送,包括:从设置完成的队列中读取各队列对象,并针对读取到的各队列对象分别执行:发送该队列对象,并确定该队列对象的发送状态;若发送状态为发送成功,则从所述设置完成的队列中删除该队列对象,并生成信息发送成功报告;若发送状态为发送失败,则从所述设置完成的队列中删除该队列对象,并生成信息发送失败报告。
[0047]需要说明的是,可以按照队列的特点,按照先进先出的方式,依次从设置完成的队列中读取各队列对象,并向与车载蓝牙系统建立连接的终端进行发送,并在信息发送完成后,将包含该信息的队列对象从队列最前端删除。
[0048]例如,假设用户A期望通过车载蓝牙系统触发与该车载蓝牙系统建立连接的手机分别向用户B、用户C以及用户D发送短信,通过执行步骤11创建的队列如图2所示,其中,图中“对象I”中包含用户B的手机号以及待发送的短信;“对象2”中包含用户C的手机号以及待发送的短信;“对象3”中包含用户D的手机号以及待发送的短信。则按照从“对象1”、“对象2”至“对象3”的顺序,依次从如图2所示的队列中读取各队列对象,进而首先向与车载蓝牙系统建立连接的手机发送“对象I”所包含的用户B的手机号以及待发送的短信,并在信息发送结束后,将“对象I ”从队列中删除,再按照类似的发送和删除方式,依次完成对于“对象2”,“对象3”所包含的信息的发送与删除。
[0049]需要说明的是,为了使用户可以获得待发送的信息的发送进度,在一种实施方式中,本申请实施例提供的方法包括:发送队列对象所包含的接收方标识以及待发送信息,并确定信息发送状态,根据确定的信息发送状态生成相应的信息发送报告。
[0050]具体包括以下两种情况:
[0051]情况1:若确定信息发送状态为发送成功时,则从所述设置完成的队列中删除该队列对象,并生成信息发送成功报告;
[0052]例如,假设用户A期望使用车载蓝牙系统触发与该系统建立连接的手机向用户B发送信息,通过执行步骤11、步骤12、以及步骤13,成功的向与该系统建立连接的手机发送了用户B的标识信息以及待发送的信息,则此时会生成一条:“已成功发送用户B的信息”的信息发送报告,并可以将该信息发送报告显示在车载蓝牙系统的可视界面,以使得用户可以查看到该条信息的发送结果。
[0053]情况2:若信息发送状态为发送失败,则可以从所述设置完成的队列中删除该队列对象,并生成信息发送失败报告。
[0054]例如,假设用户A期望使用车载蓝牙系统触发与该系统建立连接的手机向用户B以及用户C发送信息,通过执行步骤11、步骤12、以及步骤13,成功的向与该系统建立连接的手机发送了用户B的接收方标识以及待发送的信息,但是未能成功的向与该系统建立连接的手机发送用户C的接收方标识以及待发送的信息,则此时会分别生成:“已成功发送用户B的信息”以及“未成功发送用户C的消息”的信息发送报告,并将上述两条信息发送报告显示在车载蓝牙系统的可视界面,以使得用户可以查看到该条信息的发送结果。
[0055]还可以是,若信息发送状态为发送失败,则可以从所述设置完后的队列的最前端删除该队列对象,并在所述队列的队尾添加该队列对象,并生成信息发送失败报告。
[0056]需要说明的是,在对所述队列中的队列对象进行发送时,可能出现长时间未发送成功,但也未发送失败的队列对象(后文“超时对象”),按照队列发送的规则,“超时对象”的出现将将会影响队列中其他信息的发送进度,在一中实施方式中,本申请实施例提供的方法包括:为队列中的各队列对象设置一个发送超时时间,当队列中的某个队列对象未能在所述超时时间内发送成功时,则可以将该“超时对象”从所述队列的最前端删除,并在该队列的队尾添该“超时对象”。一般地,当某队列对象连续两次未能在超时时间内发送完成,则可以判定向与所述车载蓝牙系统建立连接的终端发送该队列对象的发送状态为发送失败,并按上述情况2所述的方法处理该“超时对象”。
[0057]还需要说明的是,为了使移动终端可以接收车载蓝牙系统通过sendmessage函数发送的信息,需要对移动终端的系统框架中的协议进行相应的修改,需要进行修改的协议如图4所示,包括:操作系统框架(Framework)协议、服务(Service/Java NativeInterface Layout, Service/JNI Layout)协议以及消息访问(Message Acess Profile,MAP)协议。
[0058]其中,具体的修改方式如下:
[0059]在Framework 协议中,增加 sendmessage 函数;在 Service/JNI Layout 协议中也增加相应的sendmessage函数;在MAP协议中增加sendmessage函数,MAP协议中增加的该sendmessage函数,具备根据所述待发送信息和至少两个接收方标识设置作为所述队列对象的链表结点的功能。
[0060]—般地,Framework协议是由java语言编写的,而MAP协议是由C语言编写的。因而在Framework协议中增加的sendmessage函数后,也需要在Service/JNI Layout协议中增加相应的sendmessage函数。其中,为Framework协议中增加的sendmessage函数的参数设置头文件,该头文件用于向下层协议(Service/JNI Layout协议)表明该sendmessage函数中的参数的结构以及参数所表示的意义,以使得Service/JNI Layout协议可以接收并处理上述sendmessage函数中的参数。并为Service/JNI Layout协议中相应增加的sendmessage函数的参数设置头文件,该头文件用于向下层协议(MAP协议)表明Service/JNI Layout协议中的sendmessage函数中的参数的结构以及参数所表示的意义,以使得MAP协议可以接收并处理上层协议(Service/JNI Layout协议)发送的sendmessage函数中的参数。
[0061]需要说明的是,通过执行步骤11、步骤12以及步骤13,通过车载蓝牙系统向与该系统建立连接的移动终端设备发送信息的具体流程示意图如图5所示,主要包括下述步骤:
[0062]步骤21:获得信息发送指令;
[0063]需要说明的是,获得的信息发送指令,可以是由用户通过车载蓝牙系统的语音接口(如,话筒或麦克风)通过语音输入的。
[0064]步骤22:响应于所述信息发送指令,创建空的信息队列;
[0065]步骤23:添加短信对象至队列队尾;
[0066]获得待发送信息以及至少两个接收方标识;根据所述待发送信息和所述至少两个接收方标识,设置所述队列中的队列对象。具体设置的过程详见上述步骤12设置所述队列对象的相关描述,此时不再赘述。
[0067]步骤24:判断队列是否为空;
[0068]当判断结果为否时,执行步骤25 ;
[0069]当判断结果为是时,结束流程。
[0070]步骤25:从设置完成的队列中读取各队列对象,并向与所述车载蓝牙系统建立连接的终端进行发送;
[0071]具体的信息发送过程,详见上述步骤13的相关描述,此处不再赘述。
[0072]步骤26:生成信息发送报告;
[0073]发送该队列对象,并确定该队列对象的发送状态;
[0074]若发送状态为发送成功,则从所述设置完成的队列中删除该队列对象,并生成信息发送成功报告;
[0075]若发送状态为发送失败,则从所述设置完成的队列中删除该队列对象,并生成信息发送失败报告。
[0076]具体的生成信息发送报告过程,详见上述步骤13的相关描述,此处不再赘述。
[0077]本发明实施例提供的方法,由于车载蓝牙系统可以在获得信息发送指令后,创建空的队列,而队列这种数据结构,可以包含至少两个队列对象,单个队列对象可以包含由一个接收方标识和待发送的信息组成的数据包,从而车载蓝牙系统每次接收到信息发送指令后,可以发送至少两个包含一个接收方标识和待发送的信息的数据包,因此相比于现有技术提供的信息发送方式而言,信息发送效率较高。
[0078]实施例2
[0079]本发明实施例提供一种信息发送装置,用以解决采用现有技术进行信息发送时,存在信息发送效率较低的问题。该装置的具体结构示意图如图6所示,包括下述功能单元:
[0080]指令接收单元31,用于获得信息发送指令,并响应于所述信息发送指令,创建空的队列;
[0081]信息获得单元32,用于获得待发送信息以及至少两个接收方标识;
[0082]队列对象设置单元33,用于根据所述待发送信息和所述至少两个接收方标识,设置所述队列中的队列对象;其中,单个队列对象包含所述待发送信息及单个接收方标识;
[0083]发送单元34,用于从设置完成的队列中读取各队列对象,并向与所述车载蓝牙系统建立连接的终端进行发送。
[0084]在一种实施方式中,指令接收单元31,用于:获得用户输入的语音指令;通过对所述语音指令进行语音识别,获得相应的作为待发送信息的文本信息。
[0085]在一种实施方式中,队列对象设置单元33,用于:根据所述待发送信息和所述至少两个接收方标识,设置作为所述队列对象的链表结点。
[0086]在一种实施方式中,队列对象设置单元33,用于:利用在蓝牙协议栈的消息访问协议MAP中添加的信息发送sendmessage函数,根据所述待发送信息和所述至少两个接收方标识,设置作为所述队列对象的链表结点。
[0087]在一种实施方式中,发送单元34,用于:从设置完成的队列中读取各队列对象,并针对读取到的各队列对象分别执行:发送该队列对象,并确定该队列对象的发送状态;若信息发送状态为发送成功,则从所述设置完成的队列中删除该队列对象,并生成信息发送成功报告;若信息发送状态为发送失败,则从所述设置完成的队列中删除该队列对象,并生成信息发送失败报告。
[0088]本发明实施例中可以通过硬件处理器(hardware processor)来实现上述相关功能丰吴块。
[0089]本发明实施例提供的装置,由于车载蓝牙系统可以在获得信息发送指令后,创建空的队列,而队列这种数据结构,可以包含至少两个队列对象,单个队列对象可以包含由一个接收方标识和待发送的信息组成的数据包,从而车载蓝牙系统每次接收到信息发送指令后,可以发送至少两个包含一个接收方标识和待发送的信息的数据包,因此相比于现有技术提供的信息发送方式而言,信息发送效率较高。
[0090]以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0091]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如R0M/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0092]最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
【主权项】
1.一种信息发送方法,其特征在于,包括: 车载蓝牙系统获得信息发送指令,并响应于所述信息发送指令,创建空的队列; 获得待发送信息以及至少两个接收方标识; 根据所述待发送信息和所述至少两个接收方标识,设置所述队列中的队列对象;其中,单个队列对象包含所述待发送信息及单个接收方标识; 从设置完成的队列中读取各队列对象,并向与所述车载蓝牙系统建立连接的终端进行发送。2.根据权利要求1所述的方法,其特征在于,获得待发送信息,包括: 获得用户输入的语音指令; 通过对所述语音指令进行语音识别,获得相应的作为待发送信息的文本信息。3.根据权利要求1所述的方法,其特征在于,根据所述待发送信息和所述至少两个接收方标识,设置所述队列中的队列对象,包括: 根据所述待发送信息和所述至少两个接收方标识,设置作为所述队列对象的链表结点。4.根据权利要求3所述的方法,其特征在于,根据所述待发送信息和所述至少两个接收方标识,设置作为所述队列对象的链表结点,包括: 利用在蓝牙协议桟的消息访问协议MAP中添加的信息发送sendmessage函数,根据所述待发送信息和所述至少两个接收方标识,设置作为所述队列对象的链表结点。5.根据权利要求1所述的方法,其特征在于,从设置完成的队列中读取各队列对象,并向与所述车载蓝牙系统建立连接的终端进行发送,包括: 从设置完成的队列中读取各队列对象,并针对读取到的各队列对象分别执行: 发送该队列对象,并确定该队列对象的发送状态; 若发送状态为发送成功,则从所述设置完成的队列中删除该队列对象,并生成信息发送成功报告; 若发送状态为发送失败,则从所述设置完成的队列中删除该队列对象,并生成信息发送失败报告。6.一种信息发送装置,其特征在于,包括: 指令接收单元,用于获得信息发送指令,并响应于所述信息发送指令,创建空的队列; 信息获得单元,用于获得待发送信息以及至少两个接收方标识; 队列对象设置单元,用于根据所述待发送信息和所述至少两个接收方标识,设置所述队列中的队列对象;其中,单个队列对象包含所述待发送信息及单个接收方标识; 发送单元,用于从设置完成的队列中读取各队列对象,并向与所述车载蓝牙系统建立连接的终端进行发送。7.根据权利要求6所述的装置,其特征在于,指令接收单元,用于: 获得用户输入的语音指令; 通过对所述语音指令进行语音识别,获得相应的作为待发送信息的文本信息。8.根据权利要求6所述的装置,其特征在于,队列对象设置单元,用于: 根据所述待发送信息和所述至少两个接收方标识,设置作为所述队列对象的链表结点。9.根据权利要求8所述的装置,其特征在于,队列对象设置单元,用于: 利用在蓝牙协议桟的消息访问协议MAP中添加的信息发送sendmessage函数,根据所述待发送信息和所述至少两个接收方标识,设置作为所述队列对象的链表结点。10.根据权利要求6所述的装置,其特征在于,发送单元,用于: 从设置完成的队列中读取各队列对象,并针对读取到的各队列对象分别执行: 发送该队列对象,并确定该队列对象的发送状态; 若信息发送状态为发送成功,则从所述设置完成的队列中删除该队列对象,并生成信息发送成功报告; 若信息发送状态为发送失败,则从所述设置完成的队列中删除该队列对象,并生成信息发送失败报告。
【文档编号】H04L12/861GK105898673SQ201510679206
【公开日】2016年8月24日
【申请日】2015年10月19日
【发明人】周珍有
【申请人】乐卡汽车智能科技(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1