CN113114560B - 司机端即时通信方法、司机端和司乘系统 - Google Patents
司机端即时通信方法、司机端和司乘系统 Download PDFInfo
- Publication number
- CN113114560B CN113114560B CN202110407653.1A CN202110407653A CN113114560B CN 113114560 B CN113114560 B CN 113114560B CN 202110407653 A CN202110407653 A CN 202110407653A CN 113114560 B CN113114560 B CN 113114560B
- Authority
- CN
- China
- Prior art keywords
- passenger
- driver
- imsdk
- service
- external
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000004891 communication Methods 0.000 claims abstract description 47
- 238000012546 transfer Methods 0.000 claims abstract description 17
- 238000010586 diagram Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 11
- 238000011156 evaluation Methods 0.000 description 9
- 238000004590 computer program Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000002085 persistent effect Effects 0.000 description 4
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000004659 sterilization and disinfection Methods 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000002355 dual-layer Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
- H04L51/046—Interoperability with other network applications or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0633—Lists, e.g. purchase orders, compilation or processing
- G06Q30/0635—Processing of requisition or of purchase orders
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/40—Business processes related to the transportation industry
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/146—Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Finance (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Accounting & Taxation (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Development Economics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Primary Health Care (AREA)
- Tourism & Hospitality (AREA)
- Telephonic Communication Services (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
公开了一种司机端即时通信方法、司机端和司乘系统。所述方法包括:获取派发的订单信息;从所述订单信息种获取指示乘客端使用的即时消息(IM)SDK种类的IM标识;根据所述IM标识,调取所述司机端内对应的IMSDK;以及使用调取的所述IMSDK与所述乘客端建立通信连接。本发明的即时通信解决方案会在订单派发的同时给出乘客端IM SDK的标识,由此方便司机端调取与其对应的IM SDK进行通信。如果乘客端使用外部渠道的自定义IM,则还能够经由消息中转服务来实现即时通信,从而实现司机端对接多种渠道乘客端的全面即时通信解决方案。
Description
技术领域
本公开涉及一种云技术,尤其涉及一种司机端即时通信方法,实现上述方法的司机端和包括上述司机端的司乘系统。
背景技术
网约车作为新型的互联网服务,不同于普通的电商或者O2O(Online To Offline,即,线上到线下),更加依赖线上的调度与全局性信息,尤其是对于信息时效性要远远高于电商与O2O,一笔交易的产生往往要求秒级响应。
在司乘订单匹配并下发给司机端之后,司乘之间往往有进行即时通信的需要,例如进一步明确上车地点和乘车意愿等。然而,在实际的使用场景中,司机端面对的乘客端往往来自不同的渠道,可以是使用与司机端相同出行服务的对应乘客APP,也可以在地图平台、旅行平台或是同城出行平台中请求出行服务的客户端APP。这些APP使用的即时通信(IM)系统五花八门,这使得司机端如何与不同渠道的乘客端进行通信成为了本领域需要解决的一个问题。
发明内容
本公开要解决的一个技术问题是提供一种即时通信解决方案,该方案会在订单派发的同时给出乘客端IM SDK的标识,由此方便司机端调取与其对应的IM SDK进行通信。如果乘客端使用自建IM,则还能够经由消息中转服务来实现即时通信,从而实现司机端对接多种渠道乘客端的全面即时通信解决方案。
根据本公开的第一个方面,提供了一种司机端即时通信的方法,包括:获取派发的订单信息;从所述订单信息种获取指示乘客端使用的IMSDK种类的IM标识;根据所述IM标识,调取所述司机端内对应的IMSDK;以及使用调取的所述IMSDK与所述乘客端建立通信连接。
可选地,根据所述IM标识,调取所述司机端内集成的对应IMSDK包括:当所述IM标识指示所述乘客端使用与所述司机端相同的内嵌IMSDK时,调取所述司机端的内嵌IMSDK。
可选地,根据所述IM标识,调取所述司机端内集成的对应IMSDK包括:当所述IM标识指示所述乘客端使用外部通用IMSDK时,调取所述司机端集成的所述外部通用IMSDK。
可选地,该方法还包括:当所述IM标识指示所述乘客端使用外部自定义IMSDK时,利用中转服务与所述乘客端建立通信连接。
可选地,,利用中转服务与所述乘客端建立通信连接包括:将所述司机端的消息发送给中转服务器,所述中转服务器用于将所述司机端的消息发送给与所述乘客端通信的外部服务器;以及获取所述中转服务器转发的所述乘客端的消息,所述中转服务器用于从与所述乘客端通信的所述外部服务器获取所述乘客端的消息。
根据本公开的第二个方面,提供了一种司乘服务系统,包括:服务器,用于为多个租户提供彼此隔离地司乘服务;以及多个司机端,用于各自与其对应的一个租户进行通信,其中,所述司机端用于:获取所述服务器派发的订单信息;从所述订单信息种获取指示乘客端使用的即时消息(IM)SDK种类的IM标识;根据所述IM标识,调取所述司机端内对应的IMSDK;以及使用调取的所述IMSDK与所述乘客端建立通信连接。
可选地,该系统还包括:所述乘客端,用于与所述租户进行通信,以获取出行服务,并且包括与所述司机端相同的内嵌IMSDK,其中,所述司机端用于:调取所述司机端的内嵌IMSDK与所述乘客端建立通信连接。
可选地,该系统还包括:对接出行接入服务的接口,其中所述出行接入服务将作为外部乘客端的所述乘客端接入所述司乘服务系统,并且所述外部乘客端集成有外部通用IMSDK,其中,所述司机端用于:调取所述司机端集成的所述外部通用IMSDK与所述乘客端建立通信连接。
可选地,该系统还包括:对接出行接入服务的接口,其中所述出行接入服务将作为外部乘客端的所述乘客端接入所述司乘服务系统,并且所述外部乘客端集成有外部自定义IMSDK,其中,所述司机端用于:利用所述司乘系统的中转服务与所述外部乘客端建立通信连接。
可选地,所述司机端用于:将消息发送给所述司乘系统的中转服务器,所述中转服务器用于将所述消息发送给与所述外部乘客端通信的所述出行接入服务;以及获取所述中转服务器转发的所述乘客端的消息,所述中转服务器用于从与所述外部乘客端通信的所述出行接入服务获取所述乘客端的消息。
根据本公开的第三个方面,提供了一种司机端,包括:内嵌IM SDK;以及集成的外部通用IM SDK,其中,所述司机端根据订单信息中包含的IM标识调取相应的IM SDK与乘客端进行通信。
可选地,该司机端还包括:通信模块,用于在所述IM标识指示所述乘客端使用外部自定义IMSDK时,利用中转服务与所述乘客端建立通信。
根据本公开的第四个方面,提供了一种计算设备,包括:处理器;以及存储器,其上存储有可执行代码,当可执行代码被处理器执行时,使处理器执行如上述第一方面所述的方法。
根据本公开的第五个方面,提供了一种非暂时性机器可读存储介质,其上存储有可执行代码,当可执行代码被电子设备的处理器执行时,使处理器执行如上述第一方面所述的方法。
由此,本发明的即时通信方案使得平台司机端能够与平台对应乘客端经由内建IMSDK进行通信,并能够与安装了外部通用IM SDK的外部渠道客户端进行便捷通信,对于其他自定义IM SDK,则可以通过平台转发实现通信。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
图1示出了用于实施本发明一个实施例的云计算环境的示意图。
图2示出了网约车APP的一个示例性页面。
图3示出了用于实施本发明一个实施例的云计算环境的示意图。
图4示出了根据本发明一个实施例的司机端即时通信方法的示意性流程图。
图5示出了本发明处理不同渠道IM通信的一个例子。
图6示出了根据本发明一个实施例的司机端所包括的功能模块示意图。
图7示出了根据本发明一个实施例可用于实现上述即时通信方法的计算设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
网约车平台优选由SaaS平台实现。SaaS平台是运行SaaS软件的云平台。软件即服务(SaaS,Software-as-a-Service)向消费者(例如,作为租户的第三方厂商)提供技术服务接口或是直接的图形化操作界面,以使得消费者能够使用云基础设施上运行的各类应用。在不同的实现中,该应用可以通过诸如网络浏览器的客户端接口或是经由安装的专用APP的客户端进行访问。除了有限的特定于用户的应用配置设置的可能例外,消费者并不管理或控制包括网络、服务器、操作系统、存储、乃至个体应用能力的下层云基础设施。
“云”或者“云计算”可以看作一种服务交付模型,用于实现对可配置计算资源的共享且按需的访问。可配置计算资源能够以最小的管理成本或与服务提供者的最少交互而被快速供应和释放。
在基本配置完成之后,云的消费者无需与服务提供者进行人为交互就能够单方面自动地按需获取诸如服务器时间和网络存储等之类的计算能力。提供者的计算资源被池化,以使用多租户模型服务于多个消费者,并且根据需求动态地分配和再分配不同的物理和虚拟资源。消费者通常不能控制或不知晓所提供的资源的确切位置。另外,云基础设施还要具有扩展和缩减的能力,以满足消费者的升级(例如,服务升级)需求。进一步地,云系统可以利用适于服务类型(例如存储、处理、带宽和用户账户)的某个抽象层面上的计量能力,自动地控制和优化资源使用。可以监测、控制和报告资源使用,从而为被利用的服务的提供者和消费者双方提供透明度。
云计算环境是面向服务的,聚焦于无状态性、低耦合性、模块性和语意互操作性。云计算的核心是包含互连节点的网络的基础设施。云计算网络中的节点是计算装置,包括但不限于个人计算机系统、服务器计算机系统、移动客户端等。由于网约车服务的实时性,实现网约车服务系统的SaaS平台还需要具有高时效性,能够同时处理大量来自移动客户端的请求,例如,在下单派单场景中,将用户请求(用户订单)分配给恰当接单方(司机接单)的司乘匹配操作,即,为乘客发送的每个订单匹配一个合适的司机。
图1示出了用于实施本发明一个实施例的云计算环境的示意图。如图所示,云计算环境100包括一个或多个云节点110,由云消费者使用的客户端装置120,例如台式计算机120_1、膝上型计算机120_2、智能电话120_3和车载计算系统120_4。客户端装置可以经由例如专门的应用、APP或是使用网络浏览器访问专门的URL地址来利用云平台100所提供的服务,例如与平台100中的一个或多个云节点110通信。如图所示,作为云平台100基础设施的计算节点110之间可以彼此通信,并且可以具有各种物理形态,例如具有与服务器和客户端计算机相同的属性,并且可以在一个或多个网络中被物理或虚拟地组成群(未示出),由此允许云环境100作为SaaS平台提供服务。应该理解的是,图示的节点110及其连接方式仅仅是示意性的,用来表示云平台中包括的庞大节点和复杂结构。
云服务的消费者不需要在本地计算装置上为其保持资源。同样应当理解,在图1中示出的计算装置120的类型旨在仅是说明性的,并且计算节点110和云环境100可以通过任何类型的网络和/或可网络寻址的连接(例如,通过使用网络浏览器)与任何类型的计算机化的装置通信,如下图2所示,可以通过抽象的外部路由功能130实现通信。
在为多个租户提供网约车服务的网约车平台中,第三方厂商(即,租户)可以通过例如台式计算机120_1和膝上型计算机120_2等访问云服务提供方提供的技术服务接口(例如,经由网络浏览器访问特定地址),以实现针对该租户的网约车服务的定制、运营和维护等操作。
利用上述网约车平台的用户,例如,下单的乘客和跑单的司机,则通常可以利用例如智能电话120_3上安装的专用网约车APP来获取平台提供的服务。在现有技术中,乘客和司机通常使用智能电话上安装的APP进行下单和接单,但可以理解的是,随着个人交通工具的智能化和通信技术的发展,用于载客的车辆在现在或是将来,可以如图1的车载计算系统120_4所示,连入云平台100,以直接作为司机侧的客户端来进行跑单操作。
在此,SaaS平台的“租户”指的是利用平台的存储和计算能力,自行运营出行品牌并维护客户的厂商。例如,云平台100可以同时为AA出行、BB专车、CC约车等租户提供出行服务,例如司乘匹配、司机和乘客数据存储等。在此,不同的租户可以开发不同的司机端和乘客端。例如,AA出行司机端、AA出行乘客端;BB专车司机端、BB专车乘客端;CC约车司机端、CC约车乘客端。用户可以根据需要,安装对应的APP。
尽管这些APP具有不同的名称,并且通常具有不同的页面布局与功能,但由于都使用了云平台100的服务,因此可以具有实质上相同或至少部分相同的服务,虽然这些服务可能具有不同的层级关系和外观。
具体地,由云平台提供的业务服务可以采用微服务的方式拆分,即采用积木式结构,使得系统内的每个功能被拆分成功能足够单一的单个微服务。图2示出了网约车APP的一个示例性页面。图2可以是例如AA出行面向乘客用户发布的网约车APK由用户在其智能手机上安装后,利用该网约车APP叫车并接收出行服务之后,在客户端上查看“我的行程”页面并点击进入特定行程时所显示的页面。该页面并非是一个静态的订单页面,而是由多个微服务API聚合而成的页面。如图所示,该页面包括上部显示行驶路径的地图模块1、司机信息模块2、费用模块3、评价模块4和客服模块5。上述每个模块都可以由一个或多个对应微服务进行支持。换句话说,当用户点击进入特定行程页面时,云平台100并非直接经由一个对应的“行程查询”服务器来提供整个图2页面的显示,而是根据请求信息所包含的内容(例如,该行程对应的订单号)以及该页面的页面框架,分别从对应的路径查询服务器、司机信息服务器、费用和发票服务器、评价服务器和客服服务器来获取相应的数据并聚合显示。
由于该页面的每个功能都拆分成了单个微服务,而非一个对应的“行程查询”大服务,因此各个对应的微服务器可以并发获取各自对应的内容。进一步地,该平台还可以包括动态配置模块,用于根据租户要求,动态选择和布置微服务。结合后台的动态配置模块,本发明那个实现微服务与微服务之间的自动搭配、按需组装、聚合达到个性化业务需求的能力。同样如图2所示,除了上述模块1-5之外,租户A的业务人员还可以根据需要,添加通知模块6以及消毒查询模块7。其中通知可以在地图上浮动显示,消毒查询模块则可以在相同页面的后续查询中不再显示。进一步地,在此页面中,评价模块4可以首先显示口罩评价,用户需要通过点击“去星级评价”来进入星级评价页面。而在今后司机不再有口罩佩戴的硬性要求时,租户A的业务人员也可以方便地将评价模块4修改为直接显示星级评价页面。
另外,图2所示订单查询页面内的一个或多个微服务还可以根据APP的结构设置在其他页面内复用,例如在客服页面内复用费用和/或发票微服务等。
由此,云平台100通过采取采用积木式微服务拆分结合动态配置租户架构,能够支持租户自由、简单地在后台通过微服务的选择和聚合(“拼积木”方式)上线。优选地,系统可以采用发布、部署、灵活及高性能的RPC(Remote Procedure Call,远程过程调用)框架,确保微服务之间的性能,避免运行时(runtime)卡点。
另外,同一个微服务在相同或不同机房的多个应用服务器上运行,并且利用选举机制确定为当前请求提供微服务的应用服务器。具体地,可以采用RAFT算法解决微服务应用缓存数据一致性问题,确保在系统多地双活场景下微服务缓存的一致性,达到跨积房微服务之间可互相调用。上述RPC框架和RAFT算法可以看作是实现业务调用路由140功能的基础。进一步地,路由调用方式也可以根据集群部署方式,自动选择Http方式(跨物理机房)与TCP RPC方式(同机房)
各个应用服务器在为分解成多个微服务的任务(例如,用户请求)提供服务时,可以通过系统的数据调用路由来访问所需的数据,具体可以用于根据服务调用,跨机房调用所需的业务数据和/或基础数据。例如,为了在用户点击之后显示图2所示的行程信息页面,对应的路径查询服务器、司机信息服务器、费用和发票服务器、评价服务器和客服服务器可以查询相应的数据库来获取相应的数据并返回用于页面显示。
另外,云平台100还可以提供即时通信服务,以满足司机端和乘客端之间即时通信的需要。在此,IM(Instant Messaging,即时通信,也可称为“即时通讯”或“即时消息”)指代允许两人或多人使用网络实时传递文字消息、文件、甚至语音和视频等以进行交流。云平台100不同租户的客户端(包括司机端和乘客端)都可以包括该云平台提供或是兼容的IMSDK(其后可以称为“内嵌的IMSDK”),由此方便同一租户的乘客和司机使用相同协议进行通信。
在现有场景中,乘客除了使用专门的网约车APP(例如,AA出行的乘客端APP)进行叫车服务之外,更多地会从其他渠道进行叫车服务。例如,用户可以利用地图APP进行线路查询,并使用地图APP所包含的叫车服务来实现约车出行。而地图服务平台通常不包括提供司乘服务的能力,为此,地图平台可以对接网约车平台,并将用户的乘车请求提供给网约车平台,以实现司乘匹配和后续的派单。
图3示出了用于实施本发明一个实施例的云计算环境的示意图。如图所示,提供网约车服务的云平台100除了连接租户以及租户的客户端(120_1~120_4)之外,还可以对接其他的云平台,例如图中示出的云平台200和300。
在一个实施例中,云平台200可以是地图服务平台,例如GG地图平台。用户可以通过在智能终端(例如,手机)中安装GG地图APP(例如,图示的客户端210)来与云平台200交互,从而获取导航、地址查询等服务。应该理解的是,虽然为了简明仅示出一个客户端210,但在实际场景中,会有成千上万甚至更多的客户端210与地图平台200相连接,以获取请求的地图服务。由于用户在进行路线查询之后,往往存在叫车出行的需要,因此GG地图APP中内嵌了叫车功能。例如,用户可以在叫车页面下进行路线查询,并获取出行厂商(往往不止一家)的预估报价。用户可以点选其中的一家或多家进行叫车,并在叫车成功后,直接在GG地图APP中与匹配的司机端进行交互,例如,进行即时通信、呼叫司机(需要跳转至外部通话应用)和支付车费等操作。
由于云平台200(例如,地图服务平台)无法提供司乘服务,因此在接收到来自客户端210的叫车请求后,需要与网约车云平台100交互。具体地,云平台200可以将用户的叫车请求发送给平台100,由平台100根据用户选择的出行厂商(例如,用户选择了AA出行和BB专车)进行司乘匹配,并且在有车辆符合要求时,生成订单,并将订单信息发送给司机端(例如,BB专车的某个司机的司机端),并经由平台200转发给客户端210。
类似地,云平台300也可以是与平台100对接以获取其网约车服务的平台,例如可以是同城服务平台或是旅游服务平台。云平台的客户端310也可以在其使用平台300的服务时,顺势发起叫车请求。例如,旅游平台300可以为用户提供接送机服务,用户预定了例如从XX机场到XX宾馆的接机服务。由于平台300本身无法提供司乘服务,因此需要将用户的用车请求发送给平台100,由平台100根据用户选择和/或平台300选择的出行厂商(例如,选择了AA出行和CC约车)进行司乘匹配,并且在有车辆符合要求时,生成订单,并将订单信息发送给司机端(例如,AA出行的某个司机的司机端),并经由平台300转发给客户端310。
在司乘订单匹配并下发给司机端之后,司乘之间往往有进行即时通信的需要,例如进一步明确上车地点和乘车意愿等。然而,如上结合图3描述的实际使用场景中,司机端面对的乘客端往往来自不同的渠道,可以是使用与司机端相同出行服务的对应乘客APP,也可以在地图平台、旅行平台或是同城出行平台中请求出行服务的客户端APP。这些APP使用的即时通信(IM)系统五花八门,这使得司机端与不同渠道的乘客端进行顺畅通信变得困难。
为此,本发明提出了一种即时通信解决方案,该方案会在订单派发的同时给出乘客端IM SDK的标识,由此方便司机端调取与其对应的IM SDK进行通信。如果乘客端使用自建IM,则还能够经由消息中转服务来实现即时通信,从而实现司机端对接多种渠道乘客端的全面即时通信解决方案。
图4示出了根据本发明一个实施例的司机端即时通信方法的示意性流程图。在实际使用中,该方法可由安装了由云平台100支持的对应租户的司机客户端的智能终端,例如,手机来执行。
在步骤S410,获取派发的订单信息。在此之前,平台100已从自己的乘客端(例如,手机客户端120_3中的乘客端)或从其他平台的转发信息中获取了叫车请求,并进行了相应的司乘匹配操作。根据司乘匹配的结果,确定了接单司机,并同时向司机端(肯定是平台100的司机端)和乘客端(可以是平台100的乘客端,也可以是其他平台的客户端)派发订单信息。该订单信息可以包括全局唯一的订单号,还可以包括司机信息(例如,车牌号、车型和司机星级等信息)和乘客信息(例如,路线信息、手机尾号等)。订单信息中还可以包括如下所示的IM标识。
在步骤S420,从所述订单信息种获取指示乘客端使用的即时消息(IM)SDK种类的IM标识。在此,IM标识旨在向司机端指示乘客端使用的IMSDK的种类。在一个实施例中,IM标识可以是乘客端使用的IMSDK的名称本身。在其他实施例中,IM标识也可以其他能够表明乘客端使用的IMSDK种类的信息。例如,IM标识可以是渠道信息本身。由此,IM标识可以指示:乘客端是该出行厂商对应的乘客客户端,从而使得司机端能够知晓该乘客客户端与其使用相同的内嵌IMSDK;乘客端不是该出行厂商对应的乘客客户端,例如是安装了兼容IMSDK的乘客端或是安装了不兼容IMSDK的乘客端,从而使得司机端能够知晓该乘客客户端与其使用相同的内嵌IMSDK不同的IM SDK,以便进行后续的操作。
在知晓了乘客端使用的IMSDK的种类之后,在步骤S430,可以根据所述IM标识,调取所述司机端内对应的IMSDK。随后,在步骤S440,使用调取的所述IMSDK与所述乘客端建立通信连接。
由此,使得司机端能够在订单生成并派发时,就能够基于订单中的IMSDK标识,调取对应的IMSDK进行通信。
具体地,当所述IM标识指示所述乘客端使用与所述司机端相同的内嵌IMSDK时,调取所述司机端的内嵌IMSDK,例如,调取平台100提供的平台100自建的IMSDK,由此实现平台内部的司机端和乘客端之间使用平台自建IMSDK进行通信。
在某些实施例中,司机端还可以集成有外部通用的IMSDK,例如DDSDK。此时,当所述IM标识指示所述乘客端使用外部通用IMSDK时,可以调取所述司机端集成的所述外部通用IMSDK。例如,GG地图APP中集成了一种通用的IMSDK,即,DDSDK。由于司机端中除了内嵌IMSDK之外,也集成该通用的IMSDK,即,DDSDK,因此GG地图客户端的用户(例如,平台200的客户端210)可以直接使用DDSDK与司机端进行通信。此时的通信需要经由外部的通信服务器,例如,DD通信服务器实现。
而在某些渠道的客户端使用该渠道自定义的IMSDK进行通信时,由于司机端无法集成这些SDK,因此可以借助中转机制进行通信。换句话说,当所述IM标识指示所述乘客端使用外部自定义IMSDK时,利用中转服务与所述乘客端建立通信连接。
具体地,利用中转服务与所述乘客端建立通信连接可以包括:将所述司机端的消息发送给中转服务器,所述中转服务器用于将所述司机端的消息发送给与所述乘客端通信的外部服务器;以及获取所述中转服务器转发的所述乘客端的消息,所述中转服务器用于从与所述乘客端通信的所述外部服务器获取所述乘客端的消息。
图5示出了本发明处理不同渠道IM通信的一个例子。
上述处理涉及两种场景。第一种场景如图上部所示,在基于司乘匹配结果成单时,订单信息会携带IM标识(例如,IMSDK名称)推送给司机端,司机端查询是否有对应的IMSDK(例如,司机端可以包括平台100自建的内嵌IMSDK或是外部通用IMSDK)。如果有,司机端就可以根据不同名称调用不同的IMSDK以实现即时通信功能用以与乘客端通信。
第二种场景则是在司机端判定不含有对应IMSDK之后,需要调用平台服务进行认证,并基于渠道消息服务(例如,平台200的消息服务)来进行二次转发,由此实现与渠道乘客端的通信。
具体地,当在第二种场景中司机给乘客发消息时,司机首先发送消息至IM消息中转服务,随后中转服务将消息进行协议等转换后推送至渠道服务端,渠道服务端再将消息推送至乘客端。
而当在第二种场景中乘客给司机发消息时,乘客首先发送消息至渠道服务端,渠道服务端随后将消息推送至中转服务,中转服务再将消息进行协议等转换后推送至司机端。
由此,本发明的即时通信方案使得平台司机端能够与平台对应乘客端经由内建IMSDK进行通信,并能够与安装了外部通用IM SDK的外部渠道客户端进行便捷通信,对于其他自定义IM SDK,则可以通过二次转发实现通信。
本发明还可以实现为一种司乘服务系统,包括:服务器,用于为多个租户提供彼此隔离地司乘服务;以及多个司机端,用于各自与其对应的一个租户进行通信。例如,在此服务器可以对应于图1和图3的云平台100,司机端则可以对应于图1和图3中与云平台100连接的司机的车辆客户端120_4以及手机的司机客户端120_3。
司机端可以用于:获取所述服务器派发的订单信息;从所述订单信息种获取指示乘客端使用的即时消息(IM)SDK种类的IM标识;根据所述IM标识,调取所述司机端内对应的IMSDK;以及使用调取的所述IMSDK与所述乘客端建立通信连接。
司乘系统还可以包括乘客端。在此乘客端可以是安装了对应租户的APP并与租户进行通信以获取出行服务的乘客端,例如AA出行的乘客端,并且可以对应于图1和图3中与云平台100连接的那部分乘客客户端120_3。
该乘客端可以包括与所述司机端相同的内嵌IMSDK。
当IM标识指示订单来自租户对应乘客端时,司机端可以用于:调取所述司机端的内嵌IMSDK与所述乘客端建立通信连接。
由于本发明的司乘服务系统还可以为外部渠道引入的乘车请求提供服务。因此,所述系统还可以包括:对接出行接入服务的接口,其中所述出行接入服务将作为外部乘客端的所述乘客端接入所述司乘服务系统。
在所述外部乘客端集成有外部通用IMSDK时(例如,乘客端是平台200的客户端210),所述司机端可以用于:调取所述司机端集成的所述外部通用IMSDK与所述乘客端建立通信连接。
而在所述外部乘客端集成有外部自定义IMSDK时(例如,乘客端是平台300的客户端310),所述司机端用于:利用所述司乘系统的中转服务与所述外部乘客端建立通信连接。进一步地,所述司机端用于:将消息发送给所述司乘系统的中转服务器,所述中转服务器用于将所述消息发送给与所述外部乘客端通信的所述出行接入服务;以及获取所述中转服务器转发的所述乘客端的消息,所述中转服务器用于从与所述外部乘客端通信的所述出行接入服务获取所述乘客端的消息。
本发明还可以实现为一种司机端。图6示出了根据本发明一个实施例的司机端所包括的功能模块示意图。
如图所示,司机端600可以包内嵌IM SDK 610、集成的外部通用IM SDK 620,由此司机端可以
根据订单信息中包含的IM标识调取相应的IM SDK与乘客端进行通信。
进一步地,司机端还可以包括:通信模块630,用于在所述IM标识指示所述乘客端使用外部自定义IMSDK时,利用中转服务与所述乘客端建立通信。该通信模块630还可用于与司乘服务平台(例如,云平台100)进行其他消息的交互。
应该理解的是,还可以根据其他条件,例如平台之间的合作等,为司机端集成更多的IMSDK,例如,可以集成不止一个外部通用IMSDK,还可以在深度合作的情况下,集成其他平台的自定义IMSDK。只要司机端包括这些IMSDK,则都可以根据订单中的IM标识进行调用,并由司乘双方利用相同IMSDK进行即时通信。
图7示出了根据本发明一个实施例可用于实现上述即时通信方法的计算设备的结构示意图。
参见图7,计算设备700包括存储器710和处理器720。
处理器720可以是一个多核的处理器,也可以包含多个处理器。在一些实施例中,处理器720可以包含一个通用的主处理器以及一个或多个特殊的协处理器,例如图形处理器(GPU)、数字信号处理器(DSP)等等。在一些实施例中,处理器720可以使用定制的电路实现,例如特定用途集成电路(ASIC,Application Specific Integrated Circuit)或者现场可编程逻辑门阵列(FPGA,Field Programmable Gate Arrays)。
存储器710可以包括各种类型的存储单元,例如系统内存、只读存储器(ROM),和永久存储装置。其中,ROM可以存储处理器720或者计算机的其他模块需要的静态数据或者指令。永久存储装置可以是可读写的存储装置。永久存储装置可以是即使计算机断电后也不会失去存储的指令和数据的非易失性存储设备。在一些实施方式中,永久性存储装置采用大容量存储装置(例如磁或光盘、闪存)作为永久存储装置。另外一些实施方式中,永久性存储装置可以是可移除的存储设备(例如软盘、光驱)。系统内存可以是可读写存储设备或者易失性可读写存储设备,例如动态随机访问内存。系统内存可以存储一些或者所有处理器在运行时需要的指令和数据。此外,存储器710可以包括任意计算机可读存储媒介的组合,包括各种类型的半导体存储芯片(DRAM,SRAM,SDRAM,闪存,可编程只读存储器),磁盘和/或光盘也可以采用。在一些实施方式中,存储器710可以包括可读和/或写的可移除的存储设备,例如激光唱片(CD)、只读数字多功能光盘(例如DVD-ROM,双层DVD-ROM)、只读蓝光光盘、超密度光盘、闪存卡(例如SD卡、min SD卡、Micro-SD卡等等)、磁性软盘等等。计算机可读存储媒介不包含载波和通过无线或有线传输的瞬间电子信号。
存储器710上存储有可执行代码,当可执行代码被处理器720处理时,可以使处理器720执行上文述及的即时通信方法。
上文中已经参考附图详细描述了根据本发明的司机端对接多渠道乘客即时通信的方案。,该方案会在订单派发的同时给出乘客端IM SDK的标识,由此方便司机端调取与其对应的IM SDK进行通信。如果乘客端使用自建IM,则还能够经由消息中转服务来实现即时通信,从而实现司机端对接多种渠道乘客端的全面即时通信解决方案。
此外,根据本发明的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本发明的上述方法中限定的上述各步骤的计算机程序代码指令。
或者,本发明还可以实施为一种非暂时性机器可读存储介质(或计算机可读存储介质、或机器可读存储介质),其上存储有可执行代码(或计算机程序、或计算机指令代码),当所述可执行代码(或计算机程序、或计算机指令代码)被电子设备(或计算设备、服务器等)的处理器执行时,使所述处理器执行根据本发明的上述方法的各个步骤。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。
附图中的流程图和框图显示了根据本发明的多个实施例的系统和方法的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标记的功能也可以以不同于附图中所标记的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (8)
1.一种司乘服务系统,包括:
服务器,用于为多个租户提供彼此隔离的司乘服务;以及
多个司机端,用于各自与其对应的一个租户进行通信,
其中,所述司机端用于:
获取所述服务器派发的订单信息;
从所述订单信息种获取指示乘客端使用的即时消息(IM)SDK种类的IM标识;
根据所述IM标识,调取所述司机端内对应的IMSDK;以及
使用调取的所述IMSDK与所述乘客端建立通信连接,
其中,所述系统还包括:
所述乘客端,用于与所述租户进行通信,以获取出行服务,并且包括与所述司机端相同的内嵌IMSDK,并且
所述司机端用于:
调取所述司机端的内嵌IMSDK与所述乘客端建立通信连接,
所述系统还包括:
对接出行接入服务的接口,其中所述出行接入服务将作为外部乘客端的所述乘客端接入所述司乘服务系统,并且所述外部乘客端集成有外部通用IMSDK或者外部自定义IMSDK,
其中,所述司机端用于:
调取所述司机端集成的所述外部通用IMSDK与所述乘客端建立通信连接,或者
利用所述司乘系统的中转服务与所述外部乘客端建立通信连接。
2.如权利要求1所述的系统,其中,所述司机端用于:
将消息发送给所述司乘系统的中转服务器,所述中转服务器用于将所述消息发送给与所述外部乘客端通信的所述出行接入服务;以及
获取所述中转服务器转发的所述乘客端的消息,所述中转服务器用于从与所述外部乘客端通信的所述出行接入服务获取所述乘客端的消息。
3.一种司机端即时通信的方法,包括:
获取派发的订单信息;
从所述订单信息种获取指示乘客端使用的即时消息(IM)SDK种类的IM标识;
根据所述IM标识,调取所述司机端内对应的IMSDK;以及
使用调取的所述IMSDK与所述乘客端建立通信连接,
其中,根据所述IM标识,调取所述司机端内集成的对应IMSDK包括:
当所述IM标识指示所述乘客端使用与所述司机端相同的内嵌IMSDK时,调取所述司机端的内嵌IMSDK;
当所述IM标识指示所述乘客端使用外部通用IMSDK时,调取所述司机端集成的所述外部通用IMSDK;及
当所述IM标识指示所述乘客端使用外部自定义IMSDK时,利用中转服务与所述乘客端建立通信连接,
其中,每个司机端与一个对应的租户通信,多个租户使用服务器提供彼此隔离地司乘服务。
4.如权利要求3所述的方法,其中,利用中转服务与所述乘客端建立通信连接包括:
将所述司机端的消息发送给中转服务器,所述中转服务器用于将所述司机端的消息发送给与所述乘客端通信的外部服务器;以及
获取所述中转服务器转发的所述乘客端的消息,所述中转服务器用于从与所述乘客端通信的所述外部服务器获取所述乘客端的消息。
5.一种司机端包括:
内嵌IM SDK;以及
集成的外部通用IM SDK,
其中,所述司机端根据订单信息中包含的IM标识调取相应的IM SDK与乘客端进行通信,并且包括:
当所述IM标识指示所述乘客端使用与所述司机端相同的内嵌IMSDK时,调取所述司机端的内嵌IMSDK;
当所述IM标识指示所述乘客端使用外部通用IMSDK时,调取所述司机端集成的所述外部通用IMSDK;及
当所述IM标识指示所述乘客端使用外部自定义IMSDK时,利用中转服务与所述乘客端建立通信连接,
其中,每个司机端与一个对应的租户通信,多个租户使用服务器提供彼此隔离的司乘服务。
6.如权利要求5所述的司机端,还包括:
通信模块,用于在所述IM标识指示所述乘客端使用外部自定义IMSDK时,利用中转服务与所述乘客端建立通信。
7.一种计算设备,包括:
处理器;以及
存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如权利要求3或4所述的方法。
8.一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如权利要求3或4所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110407653.1A CN113114560B (zh) | 2021-04-15 | 2021-04-15 | 司机端即时通信方法、司机端和司乘系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110407653.1A CN113114560B (zh) | 2021-04-15 | 2021-04-15 | 司机端即时通信方法、司机端和司乘系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113114560A CN113114560A (zh) | 2021-07-13 |
CN113114560B true CN113114560B (zh) | 2023-01-06 |
Family
ID=76717469
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110407653.1A Active CN113114560B (zh) | 2021-04-15 | 2021-04-15 | 司机端即时通信方法、司机端和司乘系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113114560B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020063783A1 (zh) * | 2018-09-26 | 2020-04-02 | 姜洪明 | 网约车、出租车的乘客和司机的安全保护系统 |
CN112035214A (zh) * | 2020-08-31 | 2020-12-04 | 北京白龙马云行科技有限公司 | 多租户隔离的司乘匹配方法和系统 |
CN112506661A (zh) * | 2020-12-14 | 2021-03-16 | 浙江商汤科技开发有限公司 | Ai云服务调用方法及装置、存储介质和ai云服务平台 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111612558A (zh) * | 2019-02-25 | 2020-09-01 | 福特全球技术公司 | 行程邀约的方法和系统 |
-
2021
- 2021-04-15 CN CN202110407653.1A patent/CN113114560B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020063783A1 (zh) * | 2018-09-26 | 2020-04-02 | 姜洪明 | 网约车、出租车的乘客和司机的安全保护系统 |
CN112035214A (zh) * | 2020-08-31 | 2020-12-04 | 北京白龙马云行科技有限公司 | 多租户隔离的司乘匹配方法和系统 |
CN112506661A (zh) * | 2020-12-14 | 2021-03-16 | 浙江商汤科技开发有限公司 | Ai云服务调用方法及装置、存储介质和ai云服务平台 |
Also Published As
Publication number | Publication date |
---|---|
CN113114560A (zh) | 2021-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11546293B2 (en) | Multi-tenant aware dynamic host configuration protocol (DHCP) mechanism for cloud networking | |
US11863509B2 (en) | Publish-subscribe message transformation | |
US9244817B2 (en) | Remote debugging in a cloud computing environment | |
CN112035213B (zh) | 多租户网约车系统及动态隔离方法 | |
US8676984B2 (en) | Live directory of cloud tenants to enable inter-tenant interaction via cloud | |
Bernstein et al. | A cloud PAAS for high scale, function, and velocity mobile applications-with reference application as the fully connected car | |
WO2019135207A1 (en) | Distributed processing system and method for the provision of location based services | |
US20140195663A1 (en) | Method and System for Providing Cloud-Based Common Distribution Applications | |
US11177974B2 (en) | Consistent provision of member node group information on virtual overlay network | |
US20210337452A1 (en) | Sharing geographically concentrated workload among neighboring mec hosts of multiple carriers | |
CN113139726A (zh) | 多租户派单方法和网约车系统 | |
US11422865B2 (en) | Dynamic workload migration to edge stations | |
CN112035214B (zh) | 多租户隔离的司乘匹配方法和系统 | |
US12074918B2 (en) | Network-based Media Processing (NBMP) workflow management through 5G Framework for Live Uplink Streaming (FLUS) control | |
US11044588B2 (en) | System and method for collaborative caching | |
CN102375894B (zh) | 一种管理不同类型文件系统的方法 | |
WO2024109543A1 (zh) | 基于面向服务架构的车云通信方法和存储介质 | |
US20200153749A1 (en) | Biased selection of dedicated physical connections to provider network | |
CN113114560B (zh) | 司机端即时通信方法、司机端和司乘系统 | |
Rocha et al. | CNS-AOM: design, implementation and integration of an architecture for orchestration and management of cloud-network slices | |
AU2020385682B2 (en) | Communication with an application flow in an integration system | |
CN112084247A (zh) | 一种应用程序服务扩展的方法和装置 | |
US20240246572A1 (en) | Consumer services in autonomous vehicles | |
CN116760704A (zh) | 算力网络状态更新方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |