CN115885287A - 多部分代码系统 - Google Patents

多部分代码系统 Download PDF

Info

Publication number
CN115885287A
CN115885287A CN202180047400.6A CN202180047400A CN115885287A CN 115885287 A CN115885287 A CN 115885287A CN 202180047400 A CN202180047400 A CN 202180047400A CN 115885287 A CN115885287 A CN 115885287A
Authority
CN
China
Prior art keywords
computing device
code
interaction
information
network
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.)
Pending
Application number
CN202180047400.6A
Other languages
English (en)
Inventor
特雷弗·菲尔特
扎卡里·基尔戈尔
泰勒·罗伯特·斯伯丁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fraser Networks
Original Assignee
Fraser Networks
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fraser Networks filed Critical Fraser Networks
Publication of CN115885287A publication Critical patent/CN115885287A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1439Methods for optical code recognition including a method step for retrieval of the optical code
    • G06K7/1443Methods for optical code recognition including a method step for retrieval of the optical code locating of the code in an image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06018Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking one-dimensional coding
    • G06K19/06028Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking one-dimensional coding using bar codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06037Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06046Constructional details
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10544Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
    • G06K7/10821Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices
    • G06K7/1095Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices the scanner comprising adaptations for scanning a record carrier that is displayed on a display-screen or the like
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1408Methods for optical code recognition the method being specifically adapted for the type of code
    • G06K7/14131D bar codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1408Methods for optical code recognition the method being specifically adapted for the type of code
    • G06K7/14172D bar codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1439Methods for optical code recognition including a method step for retrieval of the optical code
    • G06K7/1447Methods for optical code recognition including a method step for retrieval of the optical code extracting optical codes from image or text carrying said optical code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1439Methods for optical code recognition including a method step for retrieval of the optical code
    • G06K7/1456Methods for optical code recognition including a method step for retrieval of the optical code determining the orientation of the optical code with respect to the reader and correcting therefore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/146Methods for optical code recognition the method including quality enhancement steps
    • G06K7/1491Methods for optical code recognition the method including quality enhancement steps the method including a reconstruction step, e.g. stitching two pieces of bar code together to derive the full bar code

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Electromagnetism (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Quality & Reliability (AREA)
  • Cash Registers Or Receiving Machines (AREA)

Abstract

一种方法包括由多部分代码系统的网络计算装置从第一计算装置和第二计算装置中的一个或多个接收关于所述第一计算装置与所述第二计算装置之间的交互的交互信息。所述方法进一步包括生成不个别地含有有意义的信息的代码的第一部分和第二部分。所述代码的所述第一部分和所述第二部分的对齐光学地产生表示所述交互信息的所述代码。所述第一计算装置和所述第二计算装置中的所述一个或多个可操作以捕获光学产生的代码。所述方法进一步包括将所述代码的所述第一部分和所述第二部分发送到所述第一计算装置和所述第二计算装置中的一个或多个。当所述光学产生的代码已经被捕获时,所述方法进一步包括由所述网络计算装置的交互终结模块终结所述交互。

Description

多部分代码系统
相关申请的交叉引用
不适用。
关于联邦资助的研究或开发的声明
不适用。
通过引用并入以光盘形式提交的材料
不适用。
技术领域
本发明一般涉及用于数据交换的代码生成,并且更具体地涉及用于交互的多部分代码系统,其中多部分代码的各部分无法个别地使用。
背景技术
代码将信息从一种格式转换成另一种格式或表示。编码过程将信息转换成用于通信或存储的符号。加密是将数据、程序、图像或其它信息转换成不可读的密码的保密类型。加密密钥通常是使用算法生成的随机位串,以确保每个密钥是唯一并且不可预测的。加密密钥用于基于所使用的加密软件的类型来加密、解密或执行这两种功能。例如,非对称加密使用由用于加密数据的公共加密密钥和用于解密数据的私有加密密钥组成的加密密钥对。通常需要密码短语来使用私有加密密钥。
数据的图形编码表示用于经由光学扫描技术传送数据。光学扫描技术使用光或相机成像来检测数据的图形编码表示。光学扫描技术通常包括解码器电路,以解码数据的图形编码表示,并且将解码的数据发送到输出端口或附加的处理电路。条形码是一种数据的图形编码表示。线性或一维(1D)条形码由不同宽度的平行线和间隔组成以表示文本信息。
二维(2D)条形码由水平和竖直图案组成,并且可以包括比1D条形码更多的信息,诸如价格、数量、网址、图像等。快速响应(QR)码是在许多应用程序中使用的一种2D条形码。例如,消费者生成QR码以完成店内购买,其中QR码含有消费者的支付信息(例如,预付账户、借记或信用账户等)。临时QR码可以用于一次性验证码或其它时变数据。作为另一实例,QR码可以为诸如网站链路的产品提供营销信息。作为另一实例,QR码用于发送和接收各种加密货币。
诸如QR码的光学可扫描码可以保存诸如支付信息和个人账户数据的敏感消费者数据,使得它们易受盗窃和欺诈的影响。例如,数据窃贼可以将QR码的屏幕截图从航空公司登机证上传到在线QR码读取器,并且获得个人信息,诸如飞机常客号码、忠诚计划信息、飞行确认号码、与航空公司账户相关联的个人数据等。此外,与活动票券相关联的代码可以被再现并且重新出售多次。
为了防止与光学扫描代码相关联的欺诈,代码可以经由装置绑定到特定用户、加密和/或每几秒刷新一次。此外,面部识别和区块链技术有助于将代码链接到正确的用户并且维持代码的安全监管链。
附图说明
图1A至1C是一维条形码的实例的示意性框图;
图2A至2D是二维条形码的实例的示意性框图;
图3是根据本发明的多部分代码系统的实施例的示意性框图;
图4A至4D是多部分代码的实例,其中个别部分不含有意义的数据;
图5A至5D是根据本发明的多部分代码的实例,其中个别部分包括不可读数据;
图6A至6C是根据本发明的多部分代码系统的实施例的示意性框图;
图7是根据本发明的由多部分代码系统的网络计算装置执行的方法的实例的流程图;
图8A至8B是根据本发明的多部分代码系统的拖放对齐功能的实例的示意性框图;
图9A至9C是根据本发明的多部分代码系统的拖放对齐功能的另一实例的示意性框图;
图10A至10B是根据本发明的多部分代码系统的拖放对齐功能的另一实例的示意性框图;
图11A至11B是根据本发明的具有生物测定扫描的拖放对齐功能的实例的示意性框图;
图12是根据本发明的用于多部分代码系统的拖放对齐功能的方法的实例的流程图;
图13A至13B是根据本发明的多部分代码系统的移动对齐功能的实例的示意性框图;
图14A至14B是根据本发明的多部分代码系统的移动对齐和缩放功能的实例的示意性框图;
图15是根据本发明的用于多部分代码系统的移动对齐功能的方法的实例的流程图;
图16是根据本发明的多部分代码系统的移动对齐功能的实例的示意性框图;
图17是根据本发明的多部分代码系统的移动对齐和缩放功能的实例的示意性框图;
图18是根据本发明的用于多部分代码系统的移动对齐功能的方法的实例的流程图;
图19A至19C是根据本发明的为交互选择代码部分选项的实例的示意图;
图20是根据本发明的为交互选择代码部分选项的方法的实例的流程图;
图21A至21B是根据本发明的为交互选择多个代码部分选项中的一个代码部分选项的实例的示意图;
图22是根据本发明的为交互选择多个代码部分选项中的一个代码部分选项的另一实例的示意图;
图23是根据本发明的为交互选择多个代码部分选项中的一个代码部分选项的方法的实例的流程图;
图24是根据本发明的多源多部分代码系统的实施例的示意性框图;
图24A至24E是根据本发明的多源多部分代码的实例的示意性框图;
图25A至25E是根据本发明的多源多部分代码系统的实施例的示意性框图;
图26A至26D是根据本发明的多源多部分代码系统的票据拆分选项的实例的示意性框图;
图27A至27B是根据本发明的多源多部分代码系统的票据拆分选项的实例的示意性框图;
图28A至28B是根据本发明的多源多部分代码系统的票据拆分错误的实例的示意性框图;
图29A至29C是根据本发明的多源多部分代码系统的错误补救的实例的示意性框图;以及
图30是根据本发明的用于由多源多部分代码的网络计算装置执行的方法的实例的流程图。
具体实施方式
图1A至1C是一维条形码10的实例的示意性框图。线性或一维(1D)条形码由不同宽度的平行线和间隔组成,以表示文本信息(例如,数位、字符等)。如图1A所示,典型的1D条形码10包括开始符号12,其后是数据符号14,并且以停止符号16结束。符号12至16由平行线(“条”)和间隔18组成。条形码读取器水平地读取1D条形码10,并且基于开始符号12和停止符号16的位置来识别何时读取数据符号14。
图1B至1C是通用产品代码-A(UPC-A)条形码20的实例。UPC-A条形码20是表示12位数字的1D条形码。每个数位由两个条和两个可变宽度的间隔的唯一图案表示。宽度变化包括1、2、3和4个模块宽,并且每个数位包括总共七个模块。在图1B中,UPC-A码20包括开始符号(S)、六个左数位(L)、中间符号(M)、六个右数位(R)和结束符号(E)。每个数位和符号包括条和间隔18的图案。开始(S)、中间(M)和结束(E)是在每个UPC-A码上相同的保护图案。“L”和“R”区段表示12位代码,并且保护图案将两组分开并且建立定时。第一个“L”数位指示将由以下数位使用的第一数字系统。最后的“R”数位是检错校验数位。
图1C包括图1B的UPC-A条形码20的示例编码表22。黑色平行线是条,并且白色平行线是间隔。静止区是空白间隔,以帮助将代码与其周围分开。“L”区段数位具有奇数奇偶性(例如,总条宽度是奇数个模块),而“R”区段数字具有偶数奇偶性(例如,总间隔宽度是奇数个模块)。
例如,左区段中的零由三个模块宽度间隔、两个模块宽度条、一个模块宽度间隔和一个模块条(即,四个模块总间隔宽度和三个模块总条宽度)表示。右区段中的零具有三个模块宽度条、两个模块宽度间隔、一个模块宽度条和一个模块间隔(即,三个模块总间隔宽度和四个模块总条宽度)。UPC条形码扫描器基于区段的奇偶性差异来确定它是从左向右还是从右向左(即,颠倒)扫描。
图2A至2D是二维条形码24的实例的示意性框图。如图2A所示,二维(2D)条形码24包括基于图案(点、像素、条、蜂窝结构、多行条形码等)的竖直和水平排列的编码信息,允许它包括比1D条形码更多的信息,诸如价格、数量、网址、图像等。图案的水平和竖直排列包括表示实际数据和纠错密钥的数据符号14、取向符号26和各种非数据信息符号28(例如,版本信息、格式化信息等)。
图2B至2D是快速响应(QR)码30的实例。QR码30是在许多应用程序中使用的一种2D条形码。图2B示出了完整的QR码30,并且图2C至2D示出了QR码30的不完整版本,以便突出其不同的组件。图2C包括QR码30的取向符号26和非数据信息符号28。
QR码30的取向符号26和非数据信息符号28包括定位标记32、定时图案34、版本信息36、对齐标记38、格式信息40和静止区42。定位标记32(在三个角上)指示打印代码的方向。定时图案34(示出为白色正方形)帮助扫描器确定QR码有多大。
版本信息36(示出为黑色正方形的集合)指定所使用的QR版本(例如,存在多于40个不同的QR版本)。对齐标记38为扫描器提供附加的取向信息。当扫描大的QR码时,对齐标记38是有帮助的。格式信息40(示出为深灰色标记)包括关于容错和数据掩模图案的信息。静止区42是将QR码与其周围环境区分开的空白边界。
图2D示出了图2C中未包括的QR码图案的剩余部分,其包括数据符号14。数据符号14是表示实际数据和纠错密钥的编码数据。数据符号14表示多达7089个数位或4296个字符,包括特殊字符。数据符号14包括冗余,使得高达30%的QR码可以被破坏并且仍然是可读的。
图3是多部分代码系统44的实施例的示意性框图,该多部分代码系统包括网络计算装置46、第一计算装置48、第二计算装置50和接口构件52。多部分代码系统44便于使用多部分代码来完成两方或更多方之间的交互60。
多部分代码是由至少两个无法个别地使用的部分组成的任何类型的光学可读代码。不可用意味着这些部分无法被光学读取器/扫描器光学读取,或者从光学读取器获得的信息不完整和/或不含有有意义的信息。光学可读代码包括一维(1D)条形码、二维(2D)条形码、数字代码、字母数字代码、图像和表示数据的任何图形图案中的一个或多个,使得光学扫描、解码和处理光学可读代码产生信息。
网络计算装置46、第一计算装置48和第二计算装置50可以是便携式计算装置和/或固定计算装置。便携式计算装置可以是社交网络装置、游戏装置、蜂窝电话、智能手机、数字助理、数字音乐播放器、数字视频播放器、膝上型计算机、手持式计算机、平板电脑、视频游戏控制器、便携式商家销售点(POS)装置(例如,具有POS能力的移动装置)和/或包括计算核心的任何其它便携式装置。固定计算装置可以是计算机(PC)、计算机服务器、有线机顶盒、卫星接收器、电视机、打印机、传真机、家庭娱乐设备、视频游戏控制台、固定商家销售点(POS)装置(例如,收银机)和/或任何类型的家庭或办公室计算设备。
第一计算装置48和第二计算装置50包括一个或多个光学扫描器68,其可操作以光学扫描/检测/读取数据和/或图像数据的图形编码表示。光学扫描器68使用光和/或相机成像来检测数据的图形编码表示。光学扫描器68可以包括笔型读取器、激光扫描器、全向条形码扫描器、电荷耦合装置(CCD)读取器、基于相机的读取器和大视场读取器中的一个或多个。
笔型读取器由彼此相邻地放置在笔状装置的尖端中的光源和光电二极管组成。为了读取代码,笔在代码上移动,使得当尖端穿过编码信息时光电二极管测量从光源反射回的光的强度。例如,对于条形码,黑条吸收光而空白间隔反射光。光电二极管生成波形(例如,电压波形)作为条和空间图案的表示。
激光扫描器与笔型读取器类似地工作,除了它使用激光束作为光源之外,并且通常使用往复反射镜或旋转棱镜来在代码上来回扫描激光。光电二极管用于测量从代码反射的光强度并且生成表示图案的波形。全向代码扫描器使用一系列具有变化方向的直线或曲线扫描线(例如,激光)来投影在图像上,使得图像的所有区域将被扫描而不管取向或角度。
CCD读取器(或发光二极管(LED)扫描器)使用在读取器的头部排成一排的数百个小光传感器的阵列。与笔和激光扫描器相比,每个传感器测量从代码发出的环境光,以生成图形代码的数字图像。
基于相机的读取器使用图像处理和解码算法来定位捕获图像内的图形代码并且解码检测到的代码中的信息。作为实例,许多智能手机包括依赖于智能手机的相机来捕获图形代码的图像的代码扫描应用程序。自动聚焦技术有助于智能手机相机光学扫描的准确性。
摄像机读取器使用小型摄像机来实施与CCD读取器相同的CCD技术,除了摄像机具有布置在二维区域中以生成图像的数百行传感器之外。大视场读取器使用高分辨率工业相机来同时捕获多个代码。出现在图像中的所有代码被立即解码或通过使用插件解码。
第一计算装置48和第二计算装置50包括将各个装置与网络计算装置46相关联的网络应用程序(“app”)54。网络计算装置46包括多部分代码生成模块56和交互终结模块58。网络应用程序54包括图像处理模块45,该图像处理模块包括图像处理和编码/解码电路以分析光学扫描的(例如,经由光学扫描器68)、保存的(例如,代码的屏幕截图、存储在存储器中的代码)或以其它方式检测到的图像数据,诸如数据的图形编码表示。
第一计算装置48和第二计算装置50经由接口构件52参与交互60。交互60是数据交换。例如,交互60是第一计算装置48与第二计算装置50之间的数字支付交易。作为另一实例,交互60是第一计算装置48与第二计算装置50之间的协议(例如,签订合同)。作为另一实例,交互60是第一计算装置48与第二计算装置50之间的身份验证(例如,安全检查点交互)。作为另一实例,交互60是用于参加活动的第一计算装置48与第二计算装置50之间的票券验证。作为另一实例,交互60在第一计算装置48与第二计算装置50之间共享机密信息。
接口构件52包括以下中的一个或多个:第一计算装置或第二计算装置中的一个或多个的光学扫描器68、直接链路(例如,近场通信(NFC))和网络连接。网络连接包括一个或多个局域网(LAN)和/或一个或多个广域网(WAN),其可以是公共网络和/或专用网络。LAN可以是无线LAN(例如,Wi-Fi接入点、蓝牙、ZigBee等)和/或有线LAN(例如,火线、以太网等)。WAN可以是有线和/或无线WAN。例如,LAN是个人家庭或企业的无线网络,而WAN是因特网、蜂窝电话基础设施和/或卫星通信基础设施。
作为实例,第一计算装置48是智能手机,第二计算装置50是固定商家POS装置(例如,POS记录器),并且接口构件52是固定商家POS装置的光学扫描器68。作为另一实例,第一计算装置48是智能手机,第二计算装置50是固定商家POS装置(例如,POS记录器),并且接口构件52是智能手机相机形式的第一计算装置48的光学扫描器68。
作为另一实例,第一计算装置48是智能手机,第二计算装置50是电子商务平台,并且接口构件52是网络连接。例如,智能手机使用因特网浏览器应用程序(经由蜂窝或无线因特网连接)来访问电子商务平台。作为另一实例,第一计算装置48是智能手机,第二计算装置50是智能手机,并且接口构件52是蓝牙连接。
在操作的实例中,网络计算装置46从第一计算装置48和第二计算装置50中的一个或多个中接收交互信息(“信息”)62。交互信息62是关于第一计算装置48与第二计算装置50之间的交互60。交互信息62包括第一计算装置标识符(ID)、第二计算装置标识符(ID)、支付金额、数据文件、签名页、活动信息、期望的支付方法、支付账户信息、折扣信息、促销信息、忠诚度账户信息和个人信息(例如,电子邮件、电话号码、地址、社会保障号码等)中的一个或多个。
作为实例,交互60是从第一计算装置48到第二计算装置50的数字支付交易。第一计算装置48向网络计算装置46发送涉及第一计算装置48并且关于支付交易的交互信息62(例如,经由网络应用程序54,其中网络应用程序54是在第一计算装置48上下载的数字钱包应用程序),诸如第一计算装置48标识符(ID)、支付金额、期望使用的货币和/或支付方法、客户忠诚度信息、促销代码、账单地址、个人信息、数据文件等。
第二计算装置50发送网络计算装置46交互信息62(例如,经由网络应用程序54,其中网络应用程序54是与安装在第二计算装置50(例如,POS装置)上的网络计算装置46相关联的支付软件),该交互信息涉及第二计算装置50并且关于支付交易,诸如第二计算装置50标识符(例如,商家ID)、支付金额、期望形式的支付方法、所提供的折扣等。
网络计算装置46的多部分代码生成模块56生成代码的第一部分64和代码的第二部分66,使得代码的第一部分64和代码的第二部分66无法个别地使用。使代码的第一部分64和代码的第二部分66对齐,光学地产生表示交互信息62的代码。第一计算装置48和第二计算装置50中的一个或多个的网络应用程序54的图像处理模块45可操作来检测、捕获和处理光学产生的代码。
在该实例中,网络计算装置46将代码的第一部分64发送到第一计算装置48,并且将代码的第二部分66发送到第二计算装置50。代码的第一部分64和代码的第二部分66必须通过网络应用程序54的对齐功能(例如,第一计算装置48和第二计算装置50中的一个或多个的手动动作)来对齐,使得光学地产生完整代码。利用传统的光学可读代码,可以意外地扫描或欺骗性地再现代码。需要对齐功能来产生完整代码表明用户旨在完成交互60并且减少欺诈使用。参考图8A至18更详细地讨论了对齐功能。
当光学产生的代码已经被捕获(例如,经由网络应用程序54的图像处理模块45)时,网络应用程序54与网络计算装置46的交互终结模块58通信以终结交互60。例如,所捕获和解码的完整代码含有指示交互终结模块58将金额从与第一计算装置48相关联的账户转移到与第二计算装置50相关联的账户的信息。
如果光学产生的代码没有被捕获(例如,在对齐功能完成之前经过了一段时间之后,通过错误等),则网络计算装置46可以实施一个或多个补救。例如,网络计算装置46在适当对齐之前经过了一定量的时间之后生成并且递送新的代码的第一部分和第二部分(例如,在对齐之前每30秒到一分钟生成并且发送新的代码的第一部分和第二部分)。
作为另一实例,网络计算装置46通知第一计算装置48和第二计算装置50中的一个或多个关于对齐(例如,发送重试对齐的通知、发送关于是否重新生成新代码的查询、发送涉及代码的第一部分和第二部分中的一个或多个的错误的通知等)。
图4A至4D是多部分代码的实例,其中个别部分不含有有意义的数据。图4A包括多部分代码,其中代码的第一部分64和代码的第二部分66包括快速响应(QR)代码30的不完整数据。虽然这些部分可以由QR扫描器读取(例如,在这两个部分中都存在取向标记和非数据信息),但是所读取的实际数据没有有意义的信息。当代码的第一部分64和代码的第二部分66对齐时(例如,一个放置在另一个之上),产生完整的QR代码30并且可以读取有意义的数据。
图4B包括多部分代码,其中代码的第一部分64和代码的第二部分66包括UPC-A条形码20的不完整数据。虽然这些部分可以由条形码扫描器读取(例如,存在栅栏符号),但是实际数据是不完整并且无意义的。当代码的第一部分64和代码的第二部分66对齐时(例如,一个放置在另一个之上),产生UPC-A条形码20并且可以光学地读取数据。
图4C包括多部分代码,其中代码的第一部分64和代码的第二部分66包括诸如加密密钥的字母数字代码的不完整数据。代码的第一部分64和代码的第二部分66不包括足够的数据,使代码具有根据所使用的加密密钥类型的意义,并且代码之间的间隙可能导致光学读取错误。当代码的第一部分64和代码的第二部分66对齐时(例如,一个放置在另一个之上),产生完整的字母数字代码70,并且可以精确地读取数据。
图4D是描绘可以使用任何图形图案来表示数据的实例。图4D中的代码70包括代码的第一部分64和代码的第二部分66,它们分别是完整图形代码的缺失部分。代码的第一部分64和代码的第二部分66不包括足够的数据使代码部分具有意义。当代码的第一部分64和代码的第二部分66对齐时(例如,一个放置在另一个之上),产生完整的图形代码70,并且可以光学地读取数据。
图5A至5D是多部分代码的实例,其中部分包括不可读数据。图5A包括多部分代码,其中代码的第一部分64和代码的第二部分66包括快速响应(QR)代码30的不可读数据。因为这些部分分散了取向信息,QR扫描器无法正确地读取个别部分。当代码的第一部分64和代码的第二部分66对齐(例如,彼此相邻地放置)时,产生具有正确取向符号的完整QR代码30,并且可以正确地读取数据。
图5B包括多部分代码,其中代码的第一部分64和代码的第二部分66包括UPC-A条形码20的不可读数据。因为这些部分使栅栏符号分散并且在整个过程中破坏了栅栏符号,所以条形码扫描器无法正确地读取个别部分。当代码的第一部分64和代码的第二部分66对齐(例如,彼此相邻放置)时,产生UPC-A条形码20,并且可以正确地读取数据。
图5C和5D是示出可以使用任何图形图案来表示数据并且任何分段都可以创建代码的不可读部分的实例。图5C包括多部分代码,其中代码的第一部分64和代码的第二部分66包括类似双条形码的图形编码数据表示的不可读数据。因为代码的第一部分64缺少内部区域并且代码的第二部分缺少周边区域,所以扫描器无法正确地读取个别部分。当代码的第一部分64和代码的第二部分66对齐时(例如,通过将一个定位在另一个之上),产生完整代码70,并且可以光学地精确地读取数据。
在图5D中,代码的第一部分64含有数据缺失的孔,并且代码的第二部分66包括第一部分的缺失孔。当扫描器正在寻找要扫描的代码的特定形状,诸如矩形,时,将不会读取代码的第一部分64和代码的第二部分66,因为在任一个中都没有可辨别的矩形边界。当代码的第一部分64和代码的第二部分66对齐时,产生所需形状的完整图形代码70,并且可以精确地读取数据。
图6A至6C是多部分代码系统44的实施例的示意性框图,该多部分代码系统包括网络计算装置46、第一计算装置48、第二计算装置50和接口构件52。图6A至6C描绘了将代码的部分递送到第一计算装置48和第二计算装置50中的一个或多个的实例。
在图6A中,第一计算装置48和第二计算装置50具有用于连接到网络计算装置46和光学扫描器68的网络应用程序54。网络应用程序54包括图像处理模块45。在步骤1a和/或1b,第一计算装置48和第二计算装置50中的一个或多个经由接口构件52或其它构件发起交互60。
作为实例,交互60是支付交易,其中第一计算装置48向第二计算装置50支付商品或服务,接口构件52是网络连接,第二计算装置是商家电子商务平台装置,并且第一计算装置48是智能手机。为了在步骤1a发起交互60,第一计算装置48使用接口构件52(例如,网络连接)以使用因特网浏览器应用程序访问电子商务网站。第一计算装置48的用户从电子商务网站中选择要购买的项目,并且将这些项目放入在线购物车中进行结帐。结账过程触发该图的下一个步骤。
作为另一实例,交互60是签订合同,接口构件52是网络连接,并且第一计算装置48和第二计算装置50是智能手机。为了发起交互60,在步骤1a,第一计算装置48经由接口构件52(例如,经由电子邮件)与第二计算装置50共享合同。替代地,在步骤1b,第二计算装置50经由接口构件52(例如,经由电子邮件)与第一计算装置48共享合同。共享合同触发了该图的下一个步骤。
在步骤2a,第一计算装置48经由其网络应用程序54将关于交互60的第一交互信息62-1发送到网络计算装置46。在步骤2b,第二计算装置50经由其网络应用程序54将关于交互60的第二交互信息62-2发送到网络计算装置46。步骤2a和2b可以同时或在不同时间发生。
继续上述实例,其中交互60是支付交易,在步骤2a,当第一计算装置48的用户选择电子商务网站上的结账选项以使用网络应用程序54来促进支付时,第一计算装置48的网络应用程序54(例如,数字钱包应用程序)打开。将第一交互信息62-1经由网络应用程序54发送到网络计算装置46。第一交互信息62-1涉及第一计算装置48的关于支付的信息,诸如第一计算装置48的标识符(ID)、支付金额、期望使用的货币和/或支付方法、客户忠诚度信息、促销代码、账单地址等。
同样地,在步骤2b,当第一计算装置48的用户选择结账选项以使用其网络应用程序54时,第二计算装置50经由其网络应用程序54(例如,安装在电子商务平台中的软件)访问网络计算装置46,并且经由其网络应用程序54将第二交互信息62-2发送到网络计算装置46。第二交互信息62-2涉及第二计算装置50的关于接收支付的信息,诸如第二计算装置50的标识符(例如,商家ID)、支付金额、银行路由信息、期望形式的支付方法、所提供的折扣等。
继续上述实例,其中交互60是签订合同,在步骤2a和/或2b,第一计算装置48和/或第二计算装置50经由其各自的网络应用程序54将第一交互信息和第二交互信息发送到网络计算装置46。例如,第一计算装置48和第二计算装置50中的一个或多个将合同的完整副本上传到其网络应用程序54上。替代地,第一计算装置48和/或第二计算装置50可以提供以下各项中的一项或多项:作为第一交互信息和第二交互信息的合同概要、个人信息(例如,地址、电子邮件、社会保障号码等)、签名信息(例如,签名的副本、数字签名等)、所选条文、所选条款、签名页和安全信息(例如,私钥、加密信息等)。
在步骤3a至3b,网络计算装置46的多部分代码生成模块56生成代码的第一部分64和代码的第二部分66。例如,多部分代码生成模块56生成表示在步骤3a从第一计算装置48和第二计算装置50接收的第一交互信息62-1和第二交互信息62-2的代码70。代码70可以包括第一交互信息62-1和第二交互信息62-2中的一些或全部。替换地,代码70可以随机生成(例如,临时字母数字代码)以表示由网络计算装置46接收的信息,使得代码70不含有第一交互信息62-1和第二交互信息62-2中的任一个。
在步骤3b,多部分代码生成模块56生成代码的第一部分64和代码的第二部分66,使得代码的第一部分64和代码的第二部分66无法个别地使用。如在图4A至5D中所讨论的,不可用意指这些部分含有无意义的数据、不完整数据,和/或这些部分无法被光学扫描器正确地读取。
作为替代实例,在步骤3a,网络计算装置46的多部分代码生成模块56基于第一交互信息62-1生成代码的第一部分64,并且在步骤3b,基于第二交互信息62-2和代码的第一部分64生成代码的第二部分64(例如,生成第二部分以与第一部分的形状对齐)。
在步骤4a,网络计算装置46将代码的第一部分64发送到第一计算装置48。在步骤4b,网络计算装置46将代码的第二部分66发送到第二计算装置50。
代码的第一部分64和代码的第二部分66在步骤5通过网络应用程序54的对齐功能(例如,第一计算装置48和第二计算装置50中的一个或多个的手动动作)来对齐,使得第一计算装置48和第二计算装置50中的一个或多个的网络应用程序可操作以捕获光学产生的代码70,并且表明各方完成交互60的意图。参考图8A至18更详细地讨论了对齐功能。
当代码的第一部分64和代码的第二部分66在步骤5对齐时,第一计算装置48和第二计算装置50中的一个或多个的网络应用程序54的图像处理模块45在步骤6a至6b处检测、捕获和处理光学产生的代码70,并且与网络计算装置46通信以完成交互60。网络计算装置46的交互终结模块58终结了交互60。
例如,当交互60是支付时,交互终结模块58将金额从与第一计算装置48相关联的账户转移到与第二计算装置50相关联的账户。作为另一实例,当交互60是签订合同时,交互终结模块58生成签订的合同并且将其发送到第一计算装置48和第二计算装置50。
图6B的操作类似于图6A,除了仅一个装置(例如,第一计算装置48)之外,包括用于连接到网络计算装置46并且捕获光学产生的代码的网络应用程序54。第一计算装置48和第二计算装置50经由接口构件52或其它构件(例如,在步骤1a和1b)发起交互60。
作为实例,交互60是支付交易,其中第一计算装置48正在向第二计算装置50付款,接口构件52是蓝牙连接,并且第一计算装置48和第二计算装置50是智能手机。为了在步骤1a或1b发起交互60,第一计算装置48或第二计算装置50使用接口构件52(例如,蓝牙连接)来发起支付。例如,第二计算装置50将发票发送到第一计算装置48,其中该发票包括到支付账户的链路、待支付金额等。
作为另一实例,交互60将敏感数据从第一计算装置交换到第二计算装置50,接口构件52是网络连接,并且第一计算装置48和第二计算装置50是智能手机。为了发起交互60,在步骤1a,第一计算装置48经由接口构件52(例如,经由电子邮件)与第二计算装置50共享数据交换请求。替代地,在步骤1b,第二计算装置50经由接口构件52(例如,经由文本消息)与第一计算装置48共享数据交换请求。
在步骤2,第一计算装置48经由其网络应用程序54(例如,数字钱包应用程序)将关于交互60的交互信息62发送到网络计算装置46。例如,当交互是从第一计算装置48到第二计算装置50的支付时,第一计算装置48经由接口构件52接收继续进行支付所需的来自第二计算装置50的任何信息。
交互信息62包括关于支付的信息,诸如第一计算装置48标识符(ID)、支付金额、期望使用的货币和/或支付方法、客户忠诚度信息、促销代码、账单地址、第二计算装置50标识符(例如,商家ID)、支付金额、银行路由信息、期望形式的支付方法、所提供的折扣等。
继续上述实例,其中交互60正在共享敏感信息,在步骤2,第一计算装置48经由其网络应用程序54将交互信息62发送到网络计算装置46。例如,交互信息62可以包括第一计算装置想要与第二计算装置共享的敏感数据、敏感信息的概要、涉及第一计算装置和/或第二计算装置的标识信息、发送信息的位置(例如,第二计算装置的电子邮件地址、在线云存储等)、安全信息等。
在步骤3a至3b,网络计算装置46的多部分代码生成模块56生成代码的第一部分64和代码的第二部分66。例如,多部分代码生成模块56生成表示在步骤3a从第一计算装置48接收的交互信息62的代码70。代码70可以包括交互信息62的一些或全部。替代地,代码70可以随机生成(例如,临时字母数字代码)以表示由网络计算装置46接收的信息,使得代码70不含有任何交互信息62。
在步骤3b,多部分代码生成模块56生成代码的第一部分64和代码的第二部分66,使得代码的第一部分64和代码的第二部分66无法个别地使用。如在图4A至5D中所讨论的,不可用意指这些部分含有无意义的数据、不完整数据,和/或这些部分无法被光学扫描器正确地读取。
作为替换实例,在步骤3a,网络计算装置46的多部分代码生成模块56基于交互信息62生成代码的第一部分64,并且在步骤3b,基于交互信息62和代码的第一部分64生成代码的第二部分64(例如,生成第二部分以与第一部分的形状对齐)。
在步骤4,网络计算装置46将代码的第一部分64和代码的第二部分66发送到第一计算装置48。在该实例中,因为第二计算装置50不与网络计算装置46相关联,所以完成交互60的意图仅依赖于第一计算装置48。
代码的第一部分64和代码的第二部分66在步骤5通过网络应用程序54的对齐功能(例如,第一计算装置48的手动动作)来对齐,使得第一计算装置48的网络应用程序54的图像处理模块45可操作以检测、捕获和处理光学产生的代码70,并且表明各方完成交互60的意图。参考图8A至18更详细地讨论了对齐功能。
当代码的第一部分64和代码的第二部分66在步骤5对齐时,第一计算装置48的网络应用程序的图像处理模块45检测、捕获和处理光学产生的代码70,并且在步骤6将代码中获得的信息与网络计算装置46通信以终结交互60。网络计算装置46的交互终结模块58终结了交互60。
例如,当交互60是支付时,交互终结模块58将金额从与第一计算装置48相关联的账户转移到与第二计算装置50相关联的账户(如交互信息中所指示的)。作为另一实例,当交互60共享信息时,交互终结模块58将信息发送(并且任选地加密)到在交互信息62中识别的位置(例如,第二计算装置50的电子邮件地址)。
图6C的操作类似于图6A,除了网络计算装置46的多部分生成模块56个别地并且在不同时间生成代码的部分64-66。第一计算装置48和第二计算装置50包括用于连接到网络计算装置46并且用于捕获光学产生的代码的网络应用程序54。在步骤1a和/或1b,第一计算装置48和第二计算装置50中的一个或多个经由接口构件52或其它构件发起交互60(例如,步骤1a和1b)。
作为实例,交互60是支付交易,其中第一计算装置48从第二计算装置50接收对商品或服务的支付,第一计算装置是商家销售点(POS)装置(例如,记录器),第二计算装置50是智能手机,并且接口构件52是直接链路(例如,NFC、蓝牙等)。为了在步骤1a和/或1b发起交互60,第一计算装置48和/或第二计算装置50开始结账过程。例如,第二计算装置48的用户经由NFC链路发起结账。
在步骤2,第一计算装置48经由其网络应用程序54将关于交互60的第一交互信息62-1发送到网络计算装置46。例如,当交互60是来自第二计算装置50的支付时,第一交互信息62-1包括第一计算装置48(例如,商家)标识符(ID)、选择购买的项目、欠额、支付账户信息、期望形式的支付方法、提供的折扣等。
在步骤3,网络计算装置46的多部分代码生成模块56生成表示从第一计算装置48接收的第一交互信息62-1的代码的第一部分64。代码的第一部分64可以包括第一交互信息62-1中的一些或全部。替代地,代码的第一部分64可以随机生成(例如,临时字母数字代码)以表示第一交互信息62-1,使得代码的第一部分64不含有任何第一交互信息62-1。
在步骤4,网络计算装置46将代码的第一部分64发送到第一计算装置48。在步骤5,第一计算装置48向第二计算装置50显示代码的第一部分64。例如,代码的第一部分64显示在第一计算装置48的数字显示器上。作为另一实例,第一计算装置48将代码的第一部分64打印在纸(例如,收据)上以呈现给第二计算装置50。作为另一实例,第一计算装置48经由接口构件52(例如,网络连接(例如,发送到电子邮件)、蓝牙连接、SMS文本消息等)将代码的第一部分64递送到第二计算装置50。
在步骤6,第二计算装置50经由光学扫描器68(例如,智能手机相机)捕获代码的第一部分64,其中由网络应用程序54的图像处理模块45对其进行分析。作为另一实例,当第二计算装置不扫描代码的第一部分64时(例如,其在电子邮件、文本消息等中被接收),第二计算装置50手动地或自动地将代码的第一部分64保存/上传到网络应用程序54的图像处理模块45。网络应用程序54的图像处理模块45可操作以使用图像检测和解码技术分析来自所保存或下载的图像的信息(例如,不仅仅直接来自光学扫描器68)。
基于从代码的第一部分64获得的信息,在步骤7,第二计算装置50经由其网络应用程序54将第二交互信息62-2发送到网络计算装置46。第二交互信息62-2可以包括代码的第一部分64、要使用的期望货币和/或支付方法、客户忠诚度信息、促销代码、账单地址等。
在步骤8,网络计算装置46的多部分代码生成模块56生成表示从第二计算装置50接收的第二交互信息62-2并且基于代码的第一部分64的代码的第二部分66。代码的第二部分66可以包括第二交互信息62-2中的一些或全部。替代地,代码的第二部分66可以随机生成(例如,临时字母数字代码)以表示第二交互信息62-2,使得代码的第二部分66不含有任何第二交互信息62-2。
多部分代码生成模块56生成代码的第一部分64和代码的第二部分66,使得第一部分64和代码的第二部分66无法个别地使用。如在图4A至5D中所讨论的,不可用意指这些部分含有不真实数据、不完整数据,和/或这些部分无法被光学扫描器正确地读取。
在步骤9,网络计算装置46将代码的第二部分66发送到第二计算装置50。代码的第一部分64和代码的第二部分66在步骤5通过网络应用程序54的对齐功能(例如,第一计算装置48和第二计算装置50中的一个或多个的手动动作)来对齐,使得第一计算装置48和第二计算装置50中的一个或多个的网络应用程序的图像处理模块45可操作以捕获光学产生的代码70,并且表明各方完成交互60的意图。参考图8A至18更详细地讨论了对齐功能。
当代码的第一部分64和代码的第二部分66在步骤10对齐时,第一计算装置48和第二计算装置50中的一个或多个的网络应用程序的图像处理模块45在步骤11a至11b捕获光学产生的代码70并且与网络计算装置46通信以终结交互60。网络计算装置46的交互终结模块58终结了交互60。
例如,当交互60是支付时,交互终结模块58基于交互信息将金额从与第二计算装置50相关联的账户转移到与第一计算装置48相关联的账户。
图7是由多部分代码系统的网络计算装置执行的方法的实例的流程图。网络计算装置便于使用多部分代码来完成两方或更多方之间的交互。多部分代码是由至少两个无法个别地使用的部分组成的任何类型的光学可读代码。不可用意味着这些部分无法被光学读取器/扫描器光学读取,或者从光学读取器获得的信息不完整和/或不含有有意义的信息。光学可读代码包括一维(1D)条形码、二维(2D)条形码、数字代码、字母数字代码、图像和表示数据的任何图形图案中的一个或多个,使得光学扫描、解码和处理光学可读代码产生信息。
该方法从步骤72开始,其中网络计算装置从多部分代码系统的第一计算装置和第二计算装置中的一个或多个接收交互信息。第一计算装置和第二计算装置中的一个或多个包括将第一计算装置和第二计算装置中的一个或多个与网络计算装置相关联的网络应用程序。该网络应用程序包括图像处理模块,该图像处理模块包括图像处理和编码/解码电路以分析光学扫描的(例如,经由第一计算装置和第二计算装置中的一个或多个的光学扫描器)、保存的(例如,代码的屏幕截图、存储在第一计算装置和第二计算装置中的一个或多个的存储器中的代码)或以其它方式检测到的图像数据(例如,数据的图形编码表示)。
交互是数据交换。例如,交互是第一计算装置与第二计算装置之间的支付交易。作为另一实例,交互是第一计算装置与第二计算装置之间的协议(例如,合同)。作为另一实例,交互是第一计算装置与第二计算装置之间的身份验证。作为另一实例,交互是用于参加活动的第一计算装置与第二计算装置之间的票券验证。作为另一实例,交互在第一计算装置与第二计算装置之间共享机密信息。
交互经由接口构件发生。接口构件包括第一计算装置或第二计算装置(例如,智能手机相机)中的一个或多个的光学扫描器、直接链路(例如,近场通信(NFC))和网络连接中的一个或多个。网络连接包括一个或多个局域网(LAN)和/或一个或多个广域网(WAN),其可以是公共网络和/或专用网络。LAN可以是无线LAN(例如,Wi-Fi接入点、蓝牙、ZigBee等)和/或有线LAN(例如,火线、以太网等)。WAN可以是有线和/或无线WAN。例如,LAN是个人家庭或企业的无线网络,而WAN是因特网、蜂窝电话基础设施和/或卫星通信基础设施。
交互信息包括第一计算装置标识符(ID)、第二计算装置标识符(ID)、支付金额、数据文件、签名页、活动信息、期望的支付方法、支付账户信息、折扣信息、促销信息、忠诚账户信息和个人信息(例如,电子邮件、电话号码、地址、社会保障号码等)中的一个或多个。
该方法继续到步骤74,其中网络计算装置的多部分代码生成模块生成代码的第一部分和代码的第二部分,使得代码的第一部分和第二部分无法个别地使用。不可用意指这些部分无法被光学读取器/扫描器光学读取,或者从光学读取器获得的信息不完整或不产生有意义的数据。代码的第一部分和第二部分的对齐光学地产生表示交互信息的代码。第一计算装置和第二计算装置中的一个或多个的网络应用程序的图像处理模块可操作以检测、捕获和处理光学产生的代码。
在多部分代码生成的实例中,多部分代码生成模块生成表示交互信息的代码,并且然后将代码划分为代码的第一部分和第二部分(例如,将代码物理地分割为两个部分,从这些部分剥离信息等)。作为另一实例,多部分代码生成模块基于从第一计算装置接收的交互信息的第一交互信息来生成代码的第一部分。然后多部分代码生成模块基于从第二计算装置接收的交互信息的第二交互信息和代码的第一部分来生成代码的第二部分(例如,生成代码的第二部分以与代码的第一部分的形状对齐)。
该方法继续到步骤76,其中网络计算装置将代码的第一部分和第二部分发送到第一计算装置和第二计算装置中的一个或多个。例如,网络计算装置将代码的第一部分发送到第一计算装置并且将代码的第二部分发送到第二计算装置。作为另一实例,网络计算装置将代码的第一部分和第二部分发送到第一计算装置。作为另一实例,网络计算装置生成代码的第一部分并且将其发送到第一计算装置。将代码的第一部分提供给第二计算装置(例如,第二计算装置用光学扫描器扫描代码的第一部分),并且第二计算装置基于代码的第一部分生成第二交互信息并且将其发送到网络计算装置。网络计算装置基于第二交互信息生成代码的第二部分,并且将代码的第二部分发送到第二计算装置。
代码的第一部分和第二部分必须通过第一计算装置和第二计算装置中的一个或多个的网络应用程序的对齐功能来对齐,使得光学地产生完整代码以指示完成交互的意图。参考图8A至18更详细地讨论了对齐功能。
当在步骤78光学产生的代码已经被捕获(例如,经由第一计算装置和第二计算装置中的一个或多个的网络应用程序的图像处理模块)时,该方法继续到步骤80,其中网络计算装置终结交互。例如,第一计算装置和第二计算装置中的一个或多个的网络应用程序将所捕获的代码信息与网络计算装置的交互终结模块通信,以终结该交互。作为实例,所捕获和解码的代码含有指示交互终结模块将金额从与第一计算装置相关联的账户转移到与第二计算装置相关联的账户的信息。
如果在步骤78没有捕获到光学产生的代码(例如,在经过了一段时间之后,通过第一计算装置或第二计算装置的错误等),则网络计算装置在步骤82实施一个或多个补救。例如,在光学产生的代码没有被捕获之前,网络计算装置在经过了一定量的时间之后生成并且递送代码的新的第一部分和第二部分。作为另一实例,网络计算装置向第一计算装置和第二计算装置中的一个或多个查询关于是否创建代码的一个或多个新的第一部分和第二部分。作为另一实例,网络计算装置通知第一计算装置和第二计算装置中的一个或多个关于对齐的情况(例如,发送重试对齐的通知、校正与对齐有关的错误的通知等)。
图8A至8B是包括第一计算装置48和第二计算装置50的多部分代码系统的拖放对齐功能的实例的示意性框图。第一计算装置48和第二计算装置50包括网络应用程序(“app”)54和一个或多个光学扫描器88-90。网络应用程序54将各个装置与网络计算装置相关联。网络应用程序54包括图像处理模块,该图像处理模块包括图像处理和编码/解码电路以分析光学扫描的(例如,经由光学扫描器68)、保存的(例如,代码的屏幕截图、存储在存储器中的代码)或以其它方式检测到的图像数据,诸如数据的图形编码表示。
当在装置上打开时,网络应用程序54显示以代码显示区域86和取景器/显示区域84为特征的交互式显示区域。在该实例中,第一计算装置48和第二计算装置50的交互式显示区域是触摸屏显示器。代码显示区域86显示由网络计算装置生成的代码部分,并且由该装置的用户私人使用。取景器/显示区域84显示由光学扫描器88-90捕获的图像、从代码显示区域86选择用于显示的图像,以及从装置存储和/或其它装置应用程序选择用于上传的图像(例如,来自网站的屏幕截图、保存到装置存储器的图像(例如,相机胶卷或相册)、来自保存的电子邮件的图像等)。取景器/显示区域84可操作以通过网络应用程序54的图像处理和编码/解码电路来辨别、捕获和检测在取景器/显示区域84内对齐的光学产生的代码。
在图8A中,第一计算装置48从网络计算装置接收代码的第一部分64。代码的第一部分64显示在第一计算装置48的代码显示区域86中。第一计算装置48的用户选择在第一计算装置48的取景器/显示区域84中显示代码的第一部分64的选项,以允许第二计算装置50的用户扫描代码的第一部分64。
第二计算装置50从网络计算装置接收代码的第二部分66。代码的第二部分66显示在第二计算装置50的代码显示区域86中。第二计算装置50的用户使用第二计算装置50的后光学扫描器88(例如,智能手机相机应用程序)选择扫描选项来扫描第一计算装置48的取景器/显示区域84。
第一计算装置48的取景器/显示区域84由第二计算装置50的后光学扫描器88扫描,并且代码的第一部分64显示在第二计算装置50的取景器/显示区域84中。
在图8B中,第二计算装置50的用户将代码的第二部分66拖到取景器/显示区域84中以与代码的第一部分64对齐。一旦对齐,用户将代码的第二部分66“放”(例如,释放触摸)到取景器/显示区域84中以产生完整代码。取景器/显示区域84可操作以在正确对齐时捕获完整代码,并且将成功对齐和完整代码与网络计算装置通信。然后网络计算装置终结交互。当对齐成功并且交互终结时,出现消息以通知第二计算装置50的用户交互完成。
图9A至9C是包括第一计算装置48和第二计算装置50的多部分代码系统的拖放对齐功能的另一实例的示意性框图。图9A至9C继续图8A至8B的实例。在图8A至8B中,第二计算装置的用户将代码的第二部分与第二计算装置50的取景器/显示区域84中的代码的第一部分对齐,以完成与第一计算装置48的交互。在图9A至9C中,第一计算装置的用户还必须对齐代码的这些部分以完成交互。
图9A继续图8B的实例,除了第二计算装置50的用户接收显示代码的第二部分66以供第一计算装置48扫描的请求,而不是接收交互完成的消息。在图9B中,第二计算装置50的用户在第二计算装置50的取景器/显示区域84中显示代码的第二部分66。
第一计算装置48的用户选择第一计算装置48的取景器/显示区域84内的扫描选项,以使用第一计算装置48的后光学扫描器88(例如,智能手机相机应用程序)来扫描第二计算装置50的取景器/显示区域84。
第二计算装置50的取景器/显示区域84由第一计算装置48的后光学扫描器88扫描,并且代码的第二部分66显示在第一计算装置48的取景器/显示区域84中。
在图9C中,第一计算装置48的用户将代码的第一部分64拖到取景器/显示区域84中,以与代码的第二部分66对齐。一旦对齐,用户将代码的第一部分64“放”(例如,释放触摸)到取景器/显示区域84中以产生完整代码。取景器/显示区域84可操作以在正确对齐时捕获完整代码,并且将成功对齐和完整代码与网络计算装置通信。然后网络计算装置终结交互。当对齐成功并且交互终结时,出现消息以通知第一计算装置48和第二计算装置50的用户交互完成。
图10A至10B是包括第一计算装置48的多部分代码系统的拖放对齐功能的另一实例的示意性框图。图10A至10B类似于图8A至9C的实例,除了图10A至10B示出第一计算装置48经由网络连接(例如,WiFi、蜂窝等)与第二计算装置50连接并且第二计算装置50物理上不在第一计算装置48附近的实例。
例如,在图10A中,第二计算装置50是电子商务平台装置,并且第一计算装置48是智能手机。第一计算装置48的用户经由因特网浏览器应用程序92和网络连接打开与第二计算装置50相关联的电子商务网站94。在交互启动(例如,将项目添加到在线购物车)之后,网站的结帐区域显示由网络计算装置基于该交互生成的代码的第二部分66。
作为另一实例,第一计算装置48的用户打开网站94以经由因特网浏览器应用程序92和网络连接来访问电子邮件。电子邮件显示由网络计算装置基于与第二计算装置50的交互而生成的代码66的第二部分。
网络应用程序54的图像处理模块可以自动检测在第一计算装置48的其它应用程序中显示的代码的部分,并且自动打开第一计算装置的网络应用程序54以在取景器/显示区域84中显示所检测到的代码的部分。替代地,第一计算装置48的用户屏幕截图或以其它方式复制代码的第二部分66,并且将其保存到第一计算装置48的存储器(例如,照片存储装置、网络应用程序存储器等),其中如果需要,用户可以稍后将其上传到网络应用程序。作为另一选项,当经由网络应用程序54的图像处理模块检测到代码的一部分时,查询第一计算装置48的用户是否将所检测到的代码的部分复制/上传到装置的网络应用程序54(如图所示)。
当将代码的第二部分66上传到网络应用程序54打开时(例如,自动地或手动地),代码的第二部分66在第一计算装置48的取景器/显示区域84中产生。第一计算装置48从网络计算装置接收表示与第二计算装置50的交互的代码的第一部分64。代码的第一部分64显示在第一计算装置48的代码显示区域86中。
在图10B中,第一计算装置48的用户将代码的第一部分64拖到取景器/显示区域84中,以与代码的第二部分66对齐。一旦对齐,用户将代码的第一部分64“放”(例如,释放触摸)到取景器/显示区域84中以产生完整代码。取景器/显示区域84可操作以在正确对齐时捕获完整代码,并且将成功对齐和完整代码与网络计算装置通信。
然后网络计算装置终结交互(例如,与第二计算装置连接以终结支付)。当对齐成功并且交互终结时,出现消息以通知第一计算装置48的用户交互完成。可以在代码显示区域86中显示附加选项或消息,诸如“返回到网站”选项。“返回到网站”选项退出网络应用程序54并且返回到最后访问的网站的页面。
图11A至11B是具有生物测定扫描的拖放对齐功能的实例的示意性框图。图11A至11B类似于图8A至8B操作,除了基于第一计算装置与第二计算装置之间的交互类型,第一计算装置和第二计算装置中的一个或多个需要诸如用于身份验证的生物测定扫描的附加安全性。例如,交互是要求身份通过安全检查点的活动或机票。
在图11A中,第一计算装置48在第一计算装置48的取景器/显示区域84中显示代码的第一部分64。第二计算装置50使用第二计算装置50的后光学扫描器88(例如,智能手机相机应用程序)扫描第一计算装置48的取景器/显示区域84。代码的第一部分64显示在第二计算装置50的取景器/显示区域84中。
第二计算装置50从网络计算装置接收代码的第二部分66。代码的第二部分66显示在第二计算装置50的代码显示区域86中。基于由网络应用程序的图像处理模块检测到的代码的第一部分64中的信息或从网络计算装置接收的关于交互的消息,将代码的第二部分66锁定到第二计算装置50的用户。为了解锁代码的第二部分66以供使用,第二计算装置的用户必须进行生物测定扫描以验证身份。
生物测定扫描可以包括指纹扫描、视网膜和/或面部识别扫描(例如,使用第二计算装置50的前光学扫描器90),和/或任何其它识别特征扫描。网络应用程序54存储第二计算装置的用户的识别信息(例如,作为网络应用程序54设置的一部分进行生物特征扫描的用户),使得当辨别出识别特征时,验证用户的身份。
图11B示出了其中生物测定扫描是使用第二计算装置50的前光学扫描器90的面部识别(ID)扫描的实例。要求用户将他或她的面部置于取景器/显示区域84的中心以完成扫描。如果被验证,则代码的第二部分66被解锁,并且第二计算装置50的用户能够在取景器/显示区域84中拖放代码的第二部分66,以与代码的第一部分64对齐并且完成如先前附图中所讨论的交互。
图12是用于多部分代码系统的拖放对齐功能的方法的实例的流程图。该方法从步骤96开始,其中多部分代码系统的第一计算装置获得与多部分代码系统的第二计算装置相关联的代码的第二部分。例如,第一计算装置经由光学扫描器扫描第二计算装置的显示器以检索代码的第二部分的扫描图像。作为另一实例,第一计算装置屏幕截图和/或保存来自在第一计算装置的因特网浏览器应用程序上打开的网站或电子邮件的代码的第二部分。
该方法继续到步骤98,其中第一计算装置在网络应用程序的交互式显示器的取景器/显示区域中显示代码的第二部分。例如,当在取景器/显示区域中显示代码的第二部分的网络应用程序打开时,第一计算装置的用户扫描代码的第二部分。作为另一实例,第一计算装置的用户从存储或另一应用程序中选择代码的第二部分,用于在网络应用程序的取景器/显示区域中上传和显示。作为另一示实例,当在存储装置或另一应用程序中检测到代码的第二部分时(例如,网络应用程序可访问第一计算装置的照片存储装置,使得可以检测代码或代码部分的屏幕截图用于立即使用),网络应用程序自动打开并且显示代码取景器/显示区域的第二部分。
网络应用程序将第一计算装置与多部分代码系统的网络计算装置相关联。网络应用程序包括图像处理模块,该图像处理模块包括图像处理和编码/解码电路以分析光学扫描的(例如,经由光学扫描器)、保存的(例如,代码的屏幕截图、存储在存储器中的代码)或以其它方式检测到的图像数据,诸如数据的图形编码表示。
该方法继续到步骤100,其中第一计算装置接收用于在交互式显示器的代码显示区域中显示的代码的第一部分。网络计算装置为第一计算装置与第二计算装置之间的交互生成代码的第一部分和第二部分。例如,网络计算装置基于来自一个或多个第一计算装置和第二计算装置的交互信息生成代码,并且分割该代码以产生该代码的第一部分和第二部分。作为另一实例,网络计算装置基于从第二计算装置接收的交互信息的第二交互信息来生成代码的第二部分,并且然后基于从第一计算装置接收的交互信息的第一交互信息和由第一计算装置扫描的代码的第二部分来生成代码的第一部分。
该方法继续到步骤102,其中第一计算装置的用户将代码的第一部分从代码显示区域拖到取景器/显示区域,以将代码的第一部分与代码的第二部分对齐。该方法继续到步骤104,其中当代码的第一部分与代码的第二部分对齐时,用户将代码的第一部分放在取景器/显示区域中,以光学地产生完整代码。
该方法继续到步骤106,其中第一计算装置将终结交互通知发送到网络计算装置。例如,取景器/显示区域可操作以在正确对齐时捕获完整代码,并且将成功对齐和完整代码与网络计算装置通信。
图13A至13B是包括第一计算装置48和第二计算装置50的多部分代码系统的移动对齐功能的实例的示意性框图。第一计算装置48和第二计算装置50包括网络应用程序(“app”)54和一个或多个光学扫描器88-90。网络应用程序54将各个装置与网络计算装置相关联。网络应用程序54包括图像处理模块,该图像处理模块包括图像处理和编码/解码电路以分析光学扫描的(例如,经由光学扫描器88-90)、保存的(例如,代码的屏幕截图、存储在存储器中的代码)或以其它方式检测到的图像数据,诸如数据的图形编码表示。
当在装置上打开时,网络应用程序54显示以代码显示区域86和取景器/显示区域84为特征的交互式显示区域。在该实例中,第一计算装置48和第二计算装置50的交互式显示区域是触摸屏显示器。然而,在移动对齐功能的情况下,不需要触摸屏显示器来完成交互。代码显示区域86显示由网络计算装置生成的代码部分,并且由该装置的用户私人使用。
取景器/显示区域84显示由光学扫描器88-90捕获的图像、从代码显示区域86选择用于显示的图像,以及从装置存储和/或其它装置应用程序选择用于上传的图像(例如,来自网站的屏幕截图、保存到装置存储器的图像(例如,相机胶卷或相册)、来自保存的电子邮件的图像等)。取景器/显示区域84可操作以通过网络应用程序54的图像处理和编码/解码电路来辨别、捕获和检测在取景器/显示区域84内对齐的光学产生的代码。
在图13A中,第一计算装置48从网络计算装置接收代码的第一部分64。代码的第一部分64显示在第一计算装置48的代码显示区域86中。第一计算装置48的用户选择代码显示区域86内的选项以在第一计算装置48的取景器/显示区域84中显示代码的第一部分64。在第一计算装置不是触摸屏装置的实施例中,可以自动显示代码的第一部分64。
第二计算装置50从网络计算装置接收代码的第二部分66。代码的第二部分66显示在第二计算装置50的代码显示区域86中。第二计算装置50的用户选择代码显示区域86内的选项以在第二计算装置50的取景器/显示区域84中显示代码的第二部分66。在第二计算装置不是触摸屏装置的实施例中,可以自动显示代码的第二部分66。
图13B示出了第一计算装置48被放置在第二计算装置50附近(例如,在顶部、悬停在、在可扫描范围内)使得第一计算装置48的后光学扫描器88扫描第二计算装置50的取景器/显示区域84以捕获代码的第二部分66以供在第一计算装置48的取景器/显示区域84中显示的实例。
在继续扫描第二计算装置50的取景器/显示区域84以显示代码的第二部分66的同时,第一计算装置48的用户移动第一计算装置48,直到在取景器/显示区域84中显示的代码的第二部分66的扫描图像与代码的第一部分64对齐。例如,代码的第一部分64以固定位置显示在第一计算装置48的取景器/显示区域84中。移动第一计算装置48使第一计算装置48的后光学扫描器88移动,使得代码的第二部分50的扫描图像在第一计算装置48的取景器/显示区域84上移动。
第一计算装置48的取景器/显示区域84可操作以在这些部分被正确对齐时捕获完整代码,并且将成功对齐和完整代码与网络计算装置通信。然后网络计算装置终结交互。当对齐成功并且交互终结时,出现消息以通知第一计算装置48的用户交互完成。
图14A至14B是包括第一计算装置48和第二计算装置50的多部分代码系统的移动对齐和缩放功能的实例的示意性框图。图14A类似于图13A至13B的实例,除了第一计算装置48的取景器/显示区域84包括对齐窗口108并且第二计算装置50的取景器/显示区域84小于第一计算装置48的取景器/显示区域84。当第一计算装置48的后光学扫描器88扫描第二计算装置50的取景器/显示区域84时,代码的第二部分66太小而无法与代码的第一部分64正确对齐。
网络应用程序54的图像处理模块自动缩放第一计算装置48的取景器/显示区域84的对齐窗口108内的代码的第二部分66。对齐窗口108的大小取决于代码的第一部分64的大小。在另一实施例中,第一计算装置的用户通过触摸命令(例如,双指触摸和扩展)将代码的第二部分66手动缩放为对齐窗口108的大小。
随着代码的第二部分66按比例缩放到对齐窗口108,第一计算装置48的用户能够移动第一计算装置48,直到在对齐窗口108中显示的代码的第二部分66的扫描图像与固定的代码的第一部分64对齐。例如,对齐窗口108与代码的第二部分66一起移动,以在第一计算装置48移动时维持适当的缩放。
图14B类似于图14A的实例,除了第二计算装置50的取景器/显示区域84大于第一计算装置48的取景器/显示区域84。当第一计算装置48的后光学扫描器88扫描第二计算装置50的取景器/显示区域84时,代码的第二部分66太大而无法与代码的第一部分64正确对齐。
网络应用程序54的图像处理模块自动缩放第一计算装置48的取景器/显示区域84的对齐窗口108内的代码的第二部分66。在另一实施例中,第一计算装置的用户通过触摸命令(例如,双指触摸和缩小)将代码的第二部分66手动缩放为对齐窗口108的大小。
随着代码的第二部分66按比例缩放到对齐窗口108,第一计算装置48的用户能够移动第一计算装置48,直到在对齐窗口108中显示的代码的第二部分66的扫描图像与固定的代码的第一部分64对齐。对齐窗口108与代码的第二部分66一起移动。
图15是用于多部分代码系统的移动对齐功能的方法的实例的流程图。该方法开始于步骤110,其中多部分代码系统的第一计算装置经由网络应用程序从多部分代码系统的网络计算装置接收代码的第一部分。网络应用程序将第一计算装置与多部分代码系统的网络计算装置相关联。
网络应用程序包括图像处理模块,该图像处理模块包括图像处理和编码/解码电路以分析光学扫描的(例如,经由光学扫描器)、保存的(例如,代码的屏幕截图、存储在存储器中的代码)或以其它方式检测到的图像数据,诸如数据的图形编码表示。网络计算装置为第一计算装置与第二计算装置之间的交互生成代码的第一部分。
该方法继续到步骤112,其中第一计算装置在网络应用程序的交互式显示器的取景器/显示区域中显示代码的第一部分以用于移动对齐功能。例如,代码的第一部分显示在网络应用程序的交互式显示器的代码显示区域中。第一计算装置的用户从代码显示区域中选择代码的第一部分用于移动对齐功能,其中该选择在第一计算装置的取景器/显示区域中显示代码的第一部分。作为另一实例,代码的第一部分基于交互信息被自动显示在第一计算装置的取景器/显示区域中(例如,代码的第一部分是专门为移动对齐功能生成的)。
该方法继续步骤114,其中用户将第一计算装置的光学扫描器(例如,背部智能手机相机)定位在第二计算装置的网络应用程序的交互式显示器的取景器/显示区域附近。第二计算装置在取景器/显示区域中显示代码的第二部分。网络计算装置为第一计算装置与第二计算装置之间的交互生成代码的第二部分。
定位扫描并且在第一计算装置的取景器/显示区域中显示代码的第二部分。显示代码的第二部分可以包括将代码的第二部分缩放到对齐窗口,使得代码的第一部分和第二部分的大小合适以用于对齐。该方法继续到步骤116,其中用户将第一计算装置定位在第二计算装置附近,使得代码的第一部分和第二部分在第一计算装置的取景器/显示区域中对齐。
该方法继续到步骤118,其中第一计算装置将终结交互通知发送到网络计算装置。例如,当第一部分和第二部分被正确对齐时,取景器/显示区域可操作以捕获完整代码,并且将成功对齐和完整代码与网络计算装置通信。
图16是包括第一计算装置48和第二计算装置50的多部分代码系统的移动对齐功能的实例的示意性框图。图16的操作类似于图13A至15,除了第一计算装置48使用第二计算装置50的取景器/显示区域作为对齐参考来完成移动对齐功能,并且第二计算装置50的取景器/显示区域捕获完整代码。
在操作的实例中,第一计算装置48从网络计算装置接收代码的第一部分64。代码的第一部分64显示在第一计算装置48的代码显示区域86中。第一计算装置48的用户选择选项以在第一计算装置48的取景器/显示区域84中显示代码的第一部分64。在另一实施例中,代码的第一部分64可以自动显示在第一计算装置48的取景器/显示区域84中以用于移动对齐功能。
第二计算装置50从网络计算装置接收代码的第二部分66。代码的第二部分66显示在第二计算装置50的代码显示区域86中。第二计算装置50的用户选择代码显示区域86内的选项以在第二计算装置50的取景器/显示区域84中显示代码的第二部分66。在另一实施例中,代码的第二部分66可以自动显示在第二计算装置50的取景器/显示区域84中以用于移动对齐功能。
第一计算装置48被放置在第二计算装置50附近(例如,在顶部、悬停在、在可扫描范围内)并且面朝下(例如,取景器/显示区域84到取景器/显示区域84),使得第二计算装置50的前光学扫描器90扫描第一计算装置50的取景器/显示区域84,并且被扫描的代码的第一部分64被显示在第二计算装置50的取景器/显示区域84中。
在继续扫描第一计算装置48的取景器/显示区域84以显示被扫描的代码的第一部分64的同时,第一计算装置48的用户移动第一计算装置48,直到代码的第一部分64的扫描图像与代码的第二部分66对齐(例如,用户正查看第二计算装置50的取景器/显示区域84以供参考)。
例如,代码的第二部分66以固定位置显示在第二计算装置50的取景器/显示区域84中。移动第一计算装置48使第二计算装置50的前光学扫描器90以任何方式移动扫描代码的第一部分64,使得代码的第一部分48的扫描图像在第二计算装置50的取景器/显示区域84上移动。
第二计算装置50的取景器/显示区域84可操作以在这些部分被正确对齐时捕获完整代码,并且将成功对齐和完整代码与网络计算装置通信。然后网络计算装置终结交互。当对齐成功并且交互终结时,出现消息以通知第一计算装置48和第二计算装置50的用户中的一个或多个交互完成。
作为具体实例,代码的第一部分64是票券(例如机票、音乐会票、体育赛事票等)的第一部分,并且代码的第二部分66是票券的第二部分。当代码的第一部分和第二部分对齐时,验证票券。代码的第二部分66可以是通用的,并且代码的第一部分64可以专用于票券信息。例如,第二计算装置50是为每个乘客生成代码的新的部分的运输安全管理局(TSA)代理票券扫描装置。代码的该部分就时变信息(例如时间戳、代理身份等)而言是唯一的,但含有呈现给每个乘客的诸如机场、安全线等的一般信息。
代码的第一部分含有表示第一计算装置48的票券信息的用户的唯一信息。然而,代码的第一部分中的票券信息无法被个别地扫描和读取(例如,如果第一计算装置48被盗,则代码的第一部分将不产生可读信息)。只有当代码的两个部分对齐时,才可以正确地读取信息。智能手机(第一计算装置48)面朝下放置在代理的票券扫描装置(第二计算装置50)上,并且智能手机的用户通过移动智能手机和查看代理的票券扫描装置的显示器来测量这些部分何时对齐。在向任何一方显示代码的这些部分之前,可以使用诸如生物测定扫描的其它安全特征。
例如,第一计算装置48是智能手机,并且第二计算装置50是运输安全管理局(TSA)代理票券扫描装置。第二计算装置50在生成代码的第二部分之前需要生物测定扫描(例如,指纹扫描、面部识别扫描等)。在生物测定扫描中获得的信息用于生成代码的第二部分。然后可以要求第一计算装置的用户执行另一生物测定扫描以解锁代码的第一部分,或者代码的第一部分包括生物测定信息以与代码的第二部分对齐。在这种情况下,试图对齐代码的这些部分的人必须具有链接到编码信息的可验证身份,以便对齐这些部分。
图17是包括第一计算装置48和第二计算装置50的多部分代码系统的移动对齐和缩放功能的实例的示意性框图。图17的操作类似于图16,除了第二计算装置50的取景器/显示区域84包括对齐窗口108并且第一计算装置48的取景器/显示区域84小于第二计算装置50的取景器/显示区域84。
图17对代码的该部分进行缩放类似于图14A的实例,除了第二计算装置50的前光学扫描器90扫描第一计算装置48的取景器/显示域84。在该实例中,代码的第一部分64太小而无法与代码的第二部分66正确对齐。
网络应用程序54的图像处理模块自动缩放第二计算装置50的取景器/显示区域84的对齐窗口108内的代码的第一部分64。对齐窗口108的大小取决于代码的第二部分66的大小。在另一实施例中,第一计算装置或第二计算装置的用户通过在第二计算装置50的对齐窗口中进行的触摸命令(例如,双手指触摸和扩展)将代码的第一部分64手动缩放为对齐窗口108的大小。
随着代码的第一部分64按比例缩放到对齐窗口108,第一计算装置48的用户能够移动第一计算装置48,直到在对齐窗口108中显示的代码的第一部分64的扫描图像与固定的代码的第二部分66对齐。对齐窗口108与代码的第一部分64一起移动。
当第二计算装置50的前光学扫描器90扫描第一计算装置48的取景器/显示区域84并且代码的第一部分64太大而无法与代码的第二部分66正确对齐时,发生类似的过程以自动或手动缩放第二计算装置50的对齐窗口108中的代码的过大的第一部分64。
图18是用于多部分代码系统的移动对齐功能的方法的实例的流程图。该方法开始于步骤122,其中多部分代码系统的第一计算装置经由网络应用程序从多部分代码系统的网络计算装置接收代码的第一部分。网络应用程序将第一计算装置与多部分代码系统的网络计算装置相关联。
网络应用程序包括图像处理模块,该图像处理模块包括图像处理和编码/解码电路以分析光学扫描的(例如,经由光学扫描器)、保存的(例如,代码的屏幕截图、存储在存储器中的代码)或以其它方式检测到的图像数据,诸如数据的图形编码表示。网络计算装置为第一计算装置与第二计算装置之间的交互生成代码的第一部分。网络计算装置为第一计算装置与第二计算装置之间的交互生成代码的第一部分。
该方法继续到步骤124,其中第一计算装置在网络应用程序的交互式显示器的取景器/显示区域中显示代码的第一部分以用于移动对齐功能。例如,代码的第一部分显示在网络应用程序的交互式显示器的代码显示区域中。第一计算装置的用户从代码显示区域中选择代码的第一部分用于移动对齐功能,其中该选择在第一计算装置的取景器/显示区域中显示代码的第一部分。作为另一实例,代码的第一部分基于交互信息被自动显示在第一计算装置的取景器/显示区域中(例如,代码的第一部分是专门为移动对齐功能生成的)。
该方法继续到步骤126,其中用户将第一计算装置的取景器/显示区域定位在第二计算装置的光学扫描器附近。例如,第二计算装置包括与第二计算装置的取景器/显示区域在同一表面上的前光学扫描器(例如,相机)。第一计算装置的用户将第一计算装置翻转过来,使得第一计算装置的取景器/显示区域面向第二计算装置的取景器/显示区域和前光学扫描器。第二计算装置在第二计算装置的取景器/显示区域中显示代码的第二部分。网络计算装置为第一计算装置与第二计算装置之间的交互生成代码的第二部分。
定位扫描并且在第二计算装置的取景器/显示区域中显示代码的第一部分。显示代码的第一部分可以包括将代码的第一部分缩放到第二计算装置的取景器/显示区域的对齐窗口,使得代码的第一部分和第二部分的大小合适以用于对齐。该方法继续到步骤128,其中用户将第一计算装置定位在第二计算装置附近,使得代码的第一部分和第二部分在第二计算装置的取景器/显示区域中对齐,以产生代码。
该方法继续到步骤130,其中第二计算装置将终结交互通知发送到网络计算装置。例如,第二计算装置的取景器/显示区域可操作以在正确对齐时捕获完整代码,并且将成功对齐和完整代码与网络计算装置通信。
图19A至19C是为交互选择代码部分选项的实例的示意图。图19A至19C的操作类似于图8A至10B的拖放对齐功能实例,除了在图19A至19C中,向第二计算装置50呈现多个代码部分选项以与代码的第一部分64一起拖放。
在图19A中,第一计算装置48从网络计算装置接收代码的第一部分64。代码的第一部分64显示在第一计算装置48的代码显示区域86中。第一计算装置48的用户选择在第一计算装置48的取景器/显示区域84中显示代码的第一部分64的选项,以允许第二计算装置50的用户扫描代码的第一部分64。
第二计算装置50的用户选择第二计算装置50的取景器/显示区域84内的扫描选项,以使用第二计算装置50的后光学扫描器88(例如,智能手机相机应用程序)来扫描第一计算装置48的取景器/显示区域84。在该实例中,第一计算装置48的取景器/显示区域84由第二计算装置50的后光学扫描器88扫描,并且代码的第一部分64显示在第二计算装置50的取景器/显示区域84中。
第二计算装置50从网络计算装置接收代码的多个第二部分选项66-1至66-4。代码的多个第二部分选项66-1至66-4被显示在第二计算装置50的代码显示区域86中。例如,一个选项是代码的第二部分66-1,其含有足够的信息来完成交互(例如,其中包括“交互信息”)。其它选项66-2至66-4包括第二计算装置50的用户可以选择共享的附加个人信息。
例如,任选的代码的第二部分66-2包括电子邮件地址,任选的代码的第二部分66-3包括电话号码,以及任选的代码的第二部分66-4包括忠诚度信息(例如,客户忠诚度标识符(ID,飞机常客号码等))。其它实例包括已知的旅行者标识符(ID)(例如,TSA预检查号码)、促销/折扣代码、家庭地址、办公地址、安全信息(例如,对安全问题的回答)、社会保障号码、驾驶执照号码、社会媒体帐户链路、网站链路等。利用多个选项,用户可以决定他或她想要在特定交互中共享多少信息。
在图19B中,第二计算装置50的用户将代码的交互信息第二部分选项66-1拖到取景器/显示区域84中,以与代码64的第一部分对齐。一旦对齐,用户将代码的交互信息第二部分选项66-1“放”(例如,释放触摸)到取景器/显示区域84中以产生完整代码。因为多个第二部分代码选项是可用的,所以取景器/显示区域84向用户显示确认按钮,使得用户可以指示何时应当捕获代码。
在图19C中,第二计算装置50的用户将代码的忠诚度信息第二部分选项66-3拖到代码的交互信息第二部分选项66-1之上的取景器/显示区域84中,以与代码的第一部分64对齐。一旦对齐,用户将代码的忠诚度信息第二部分选项66-3“放”(例如,释放触摸)到取景器/显示区域84中以产生完整代码。在该实例中,用户不希望包括任何附加信息并且选择取景器/显示区域84中的“按下以确认”按钮。
当接收到确认时,取景器/显示区域84可操作以捕获完整代码,正确地对齐这些部分,并且将成功对齐和完整代码与网络计算装置通信。网络应用程序验证所捕获的完整代码含有至少最小量的信息以完成交互。例如,用户可以仅拖放代码的电子邮件地址第二部分选项66-2,并且尝试确认完整代码。取景器/显示区域84可操作以捕获完整代码并且需要辨别更多信息。在这种情况下,将提示用户拖放更多的选项,直到在完整代码中捕获最小量的信息。
当捕获到具有至少最小量的信息以完成交互的完整代码时,然后网络计算装置终结交互。当对齐成功并且交互终结时,出现消息以通知第二计算装置50的用户交互完成。
图20是为交互选择代码部分选项的方法的实例的流程图。该方法从步骤134开始,其中多部分代码系统的第一计算装置获得与多部分代码系统的第二计算装置相关联的代码的第二部分。例如,第一计算装置经由光学扫描器扫描第二计算装置的显示器以检索代码的第二部分的扫描图像。作为另一实例,第一计算装置屏幕截图和/或保存来自在第一计算装置的因特网浏览器应用程序上打开的网站或电子邮件的代码的第二部分。
该方法继续到步骤136,其中第二计算装置在网络应用程序的交互式显示器的取景器/显示区域中显示代码的第一部分。例如,当在取景器/显示区域中显示代码的第二部分的网络应用程序打开时,第一计算装置的用户扫描代码的第二部分。作为另一实例,第一计算装置的用户从存储或另一应用程序中选择代码的第二部分,用于在网络应用程序的取景器/显示区域中上传和显示。作为另一示实例,当在存储装置或另一应用程序中检测到代码的第二部分时(例如,网络应用程序可访问第一计算装置的照片存储装置,使得可以检测代码或代码部分的屏幕截图用于立即使用),网络应用程序自动打开并且显示代码取景器/显示区域的第二部分。
网络应用程序将第二计算装置与多部分代码系统的网络计算装置相关联。网络应用程序包括图像处理模块,该图像处理模块包括图像处理和编码/解码电路以分析光学扫描的(例如,经由光学扫描器)、保存的(例如,代码的屏幕截图、存储在存储器中的代码)或以其它方式检测到的图像数据,诸如数据的图形编码表示。
该方法继续到步骤138,其中第二计算装置接收用于在交互式显示器的代码显示区域中显示的代码的多个第二部分选项。网络计算装置为第一计算装置与第二计算装置之间的交互生成代码的第一部分和代码的多个第二部分选项。
该方法继续到步骤140,其中第二计算装置的用户将代码的多个第二部分选项中的第一选项从代码显示区域拖到取景器/显示区域,以将第一选项与代码的第一部分对齐。代码的多个第二部分选项中的第一选项包括第一信息。
该方法继续到步骤142,其中当第一选项与代码的第一部分对齐时,用户将第一选项放到取景器/显示区域中,以产生具有第一级别的信息的完整代码。当期望的选项被拖放时,用户在步骤144确认产生了具有期望级别的信息的完整代码。
当期望的选项没有被拖放并且用户没有在步骤144确认产生了具有期望级别的信息的完整代码时,该方法继续到步骤146,其中用户继续拖放选项。例如,第二计算装置的用户将代码的多个第二部分选项中的第二选项从代码显示区域拖到取景器/显示区域,以将第二选项与代码的第一部分对齐。
代码的多个第二部分选项中的第二选项包括第二信息。当第二选项与代码的第一部分对齐时,用户将第二选项放到取景器/显示区域中,以产生具有第二级别的信息的完整代码。第二级别的信息包括第一信息和第二信息。当代码的多个第二部分选项中的所期望量的选项已被拖放时,第二计算装置的用户在步骤144确认所产生的代码是最终的。
该方法继续到步骤148,其中网络应用程序确认在所产生的代码中存在最小量的信息以完成交互。当所产生的代码不具有用于完成交互的最小量的信息时,该方法分支到步骤146,其中提示用户拖放另外的选项。在一个实施例中,在添加了足够的信息之后,网络应用程序可以自动确认产生了具有足够信息的完整代码,从而跳过步骤144和148并且继续步骤150以终结交互。
当所产生的代码确实具有完成交互的最小量的信息时,该方法继续到步骤150,其中第二计算装置将终结交互通知发生到网络计算装置。例如,网络应用程序的取景器/显示区域可操作以在正确对齐时捕获最终的完整代码,并且将成功对齐和完整代码与网络计算装置通信。
图21A至21B是为交互选择多个代码部分选项中的代码部分选项的实例的示意图。图21A至21B的操作类似于图19A至19C,除了用户选择含有不同级别的信息的多个代码部分选项中的一个期望的代码部分选项。
在图21A中,第一计算装置48从网络计算装置接收代码的第一部分64。代码的第一部分64显示在第一计算装置48的代码显示区域86中。第一计算装置48的用户选择代码显示区域86内的选项以在第一计算装置48的取景器/显示区域84中显示代码的第一部分64,以允许第二计算装置50的用户扫描代码的第一部分64。
第二计算装置50的用户选择第二计算装置50的取景器/显示区域84内的扫描选项以使用第二计算装置50的光学扫描器(例如,智能手机相机应用程序)来扫描第一计算装置48的取景器/显示区域84。在该实例中,第一计算装置48的取景器/显示区域84由第二计算装置50的后光学扫描器88扫描,并且代码的第一部分64显示在第二计算装置50的取景器/显示区域84中。
第二计算装置50从网络计算装置接收代码的多个第二部分选项66-1和66-2。代码的多个第二部分选项66-1(即,选项“A”)和66-2(即,选项“B”)含有不同级别的信息。例如,选项A是含有足够完成交互的信息的代码的第二部分,并且选项B包括选项A的所有信息加上诸如电子邮件地址的附加个人信息。代码的多个第二部分选项66-1和66-2被显示在第二计算装置50的代码显示区域86中。
在图21B中,第二计算装置50的用户选择代码的第二部分66-2(即,选项B,该代码的第二部分含有比选项A更多的信息),并且将代码的第二部分66-2拖到取景器/显示区域84中以与代码的第一部分64对齐。一旦对齐,用户将代码的第二部分66-2“放”(例如,释放触摸)到取景器/显示区域84中以产生完整代码。与图19A至19C的实例相比,不需要确认步骤来确认期望的部分已被选择或确认所产生的代码含有最小量的信息以完成交互。
取景器/显示区域84可操作以在这些部分被正确对齐时捕获完整代码,并且将成功对齐和完整代码与网络计算装置通信。然后网络计算装置终结交互。当对齐成功并且交互终结时,出现消息以通知第一计算装置48和第二计算装置50中的一个或多个的用户交互完成。
图22是为交互选择多个代码部分选项中的代码部分选项的另一实例的示意图。图22类似于图21A至21B,其中为第一计算装置与第二计算装置之间的交互生成了多个代码部分选项,并且选择了一个选项用于对齐。然而,图22描绘了与先前附图的拖放对齐功能相反,选择期望的代码部分选项用于移动对齐功能的实例。参考图13A至18更详细地讨论了移动对齐功能。
在图22中,从网络计算装置向第一计算装置和第二计算装置发送多个代码部分选项,用于第一计算装置48与第二计算装置50之间的交互。在另一实施例中,第一个或第二个发送多个代码部分选项,并且另一个发送代码的一部分(即,仅一个选项)。在该实例中,第一计算装置接收代码的多个第一部分选项中的第一选项64-1(即,选项“A”)和代码的多个第一部分选项中的第二选项64-2(即,选项“B”)。代码的多个第一部分选项含有不同级别的信息。例如,选项A是代码的第一部分,其含有足够的信息以在与代码的第二部分对齐时完成交互,并且选项B包括选项A的所有信息加上诸如电子邮件地址的附加个人信息。
代码的多个第一部分选项的第一选项64-1和第二选项64-2被显示在第一计算装置48的代码显示区域86中。第一计算装置48的用户选择代码显示区域86内的选项以在第一计算装置48的取景器/显示区域84上显示。例如,用户选择代码的第一部分选项64-1(即,选项“A”)用于在第一计算装置48的取景器/显示区域84中显示,以进行移动对齐功能。
第二计算装置接收代码的多个第二部分选项中的第一选项66-1(即,选项“A”)和代码的多个第二部分选项中的第二选项66-2(即,选项“B”)。代码的多个第二部分选项含有不同级别的信息。例如,选项A是代码的第二部分,其含有足够的信息以完成与代码的第一部分的交互,并且选项B包括选项A的所有信息加上诸如电子邮件地址的附加个人信息。
代码的第二部分选项66-1和66-2被显示在第二计算装置50的代码显示区域86中。第二计算装置50的用户选择代码显示区域86内的选项以在第二计算装置50的取景器/显示区域84中显示。例如,用户选择代码的第二部分选项66-2(即,选项“B”)以在第二计算装置50的取景器/显示区域84中显示,以进行移动对齐功能。移动对齐功能的发生类似于图13B(其中一个装置的后光学扫描器扫描另一个装置的取景器/显示区域84)或图16(其中一个装置的前光学扫描器扫描另一个装置的取景器/显示区域84)的实例。
图23是为交互选择多个代码部分选项中的代码部分选项的方法的实例的流程图。该方法开始于步骤154,其中多部分代码系统的第一计算装置接收用于在第一计算装置的网络应用程序的交互式显示区域的代码显示区域中显示的代码的多个第一部分选项。
网络应用程序将第一计算装置与多部分代码系统的网络计算装置相关联。网络应用程序包括图像处理模块,该图像处理模块包括图像处理和编码/解码电路以分析光学扫描的(例如,经由光学扫描器)、保存的(例如,代码的屏幕截图、存储在存储器中的代码)或以其它方式检测到的图像数据,诸如数据的图形编码表示。网络计算装置为第一计算装置与第二计算装置之间的交互生成代码的多个第一部分选项和代码的第二部分。
在另一实施例中,网络计算装置为第一计算装置与第二计算装置之间的交互生成代码的多个第一部分选项和代码的多个第二部分选项。第二计算装置选择并且向第一计算装置呈现其期望的代码的第二部分选项。
代码的多个第一部分选项个别地包括足够的信息以在与代码的第二部分对齐时完成交互,但是不同的部分选项包括不同级别的附加信息。例如,代码的多个第一部分选项中的第一选项包括第一信息(例如,最小量的信息以完成交互),并且代码的多个第一部分选项中的第二选项包括第二信息。第二信息包括第一信息加上附加信息(例如,电子邮件地址、客户忠诚度信息、电话号码等)。
该方法继续到步骤156,其中第一计算装置的用户基于用户期望在交互中共享的期望级别的信息,从代码显示区域选择代码的多个第一部分选项中的期望的选项用于对齐功能。对齐功能可以是拖放对齐或移动对齐功能。当对齐功能是拖放对齐时,第一计算装置在第一计算装置的取景器/显示区域中捕获代码的第二部分(例如,经由后光学扫描器)。当对齐功能是移动对齐功能时,用户从代码显示区域选择代码的多个第一部分选项中的期望的选项,以在第一计算装置的取景器/显示区域上显示。
该方法继续到步骤158,其中代码的多个第一部分选项中的期望的选项经由对齐功能与代码的第二部分对齐,以产生具有期望的信息级别的代码。当对齐功能是拖放对齐时,第一计算装置的用户将期望的选项拖到取景器/显示区域以与代码的第二部分对齐,并且将期望的选项放到第一计算装置的取景器/显示区域以产生具有期望级别的信息的代码。
当对齐功能是移动对齐功能时,第一计算装置的用户将第一计算装置定位在第二计算装置附近,以将期望的选项与代码的第二部分对齐。例如,使用第一计算装置的后光学扫描器来扫描第二计算装置的取景器/显示区域并且捕获代码的第二部分,第一计算装置的用户移动第一计算装置以将所显示的期望的选项与在第一计算装置的取景器/显示区域中捕获的代码的第二部分对齐。
作为另一实例,使用第二计算装置的前光学扫描器来扫描第一计算装置的取景器/显示区域并且捕获期望的选项,第一计算装置的用户移动第一计算装置以将第二计算装置的取景器/显示区域中捕获的期望的选项与第二计算装置的取景器/显示区域中显示的代码的第二部分对齐。
该方法继续到步骤160,其中将终结交互通知发送到网络计算装置。例如,当这些部分被正确对齐时,捕获所产生的具有期望级别的信息的代码的装置(例如,取决于对齐功能的第一计算装置或第二计算装置)将成功对齐和所产生的代码传送到网络计算装置。
图24是多源多部分代码系统162的实施例的示意性框图,该多源多部分代码系统包括网络计算装置46、多个源计算装置166-1至166-n、目的地计算装置164和接口构件52。图24类似于图3的多部分代码系统,除了代替与另一装置(例如,第二计算装置)交互的一个装置(例如,第一计算装置),在此,多个源计算装置166-1至166-n参与与目的地计算装置164的交互60。
例如,多个源计算装置166-1至166-n是消费者智能手机,目的地计算装置164是商家销售点(POS)装置,以及交互60是从源计算装置到目的地计算装置的分割支付。作为另一实例,多个源计算装置166-1至166-n是由已婚夫妇或商业合伙人操作的智能手机,目的地计算装置164是由个人或实体操作的计算装置,以及交互60是签订合同。
在操作的实例中,网络计算装置46从源计算装置166-1至166-n和目的地计算装置164中的一个或多个接收交互信息(“信息(info)”)62。交互信息62关于源计算装置166-1至166-n与目的地计算装置164之间的交互60。
例如,交互60是源计算装置166-1至166-n向目的地计算装置164支付商品或服务的支付交易。源计算装置166-1至166-n中的一个或多个向网络计算装置46发送交互信息62(例如,经由网络应用程序54,其中网络应用程序54是数字钱包应用程序),诸如源计算装置标识符(ID)、支付金额、要使用的期望货币和/或支付方法、客户忠诚度信息、促销代码、账单地址等。
目的地计算装置164向网络计算装置46发送交互信息62(例如,经由网络应用程序54),诸如目的地计算装置164标识符(例如,商家ID)、支付金额、期望形式的支付方法、所提供的折扣等。网络计算装置46的多部分代码生成模块56生成代码的多个源部分168-1至168-n和代码的目的地部分170,使得代码的源部分和目的地部分无法个别地使用。
代码的目的地部分170和代码的多个源部分168-1至168-n的对齐光学地产生表示交互信息62的代码。源计算装置166-1至166-n和目的地计算装置164中的一个或多个的网络应用程序54的图像处理模块可操作以检测、捕获和处理光学产生的代码。
网络计算装置46将代码的源部分168-1至168-n发送到它们各自的源计算装置166-1至166-n,并且将代码的目的地部分170发送到目的地计算装置164。代码的源部分168-1至168-n必须通过网络应用程序54的对齐功能与代码的目的地部分170对齐,使得光学地产生指示完成交互60的意图的完整代码。
网络计算装置46记录通过对齐功能光学地产生的代码,使得交互60是不完整的,直到代码的所有源部分168-1至168-n与代码的目的地部分170正确对齐。参考图8A至18和图24A至24E更详细地讨论代码的这些部分的对齐。
替代地,源计算装置166-1能够完成其与目的地计算装置的交互的特定部分,而另一源计算装置166-2仍在完成其与目的地计算装置的交互的过程中。整个交互是不完整的,直到代码的所有源部分168-1至168-n与代码的目的地部分170正确对齐,然而源计算装置166-1接收到交互是完整的通知,因为它不需要执行任何进一步的动作。
例如,当交互正在签订合同时,源计算装置166-1的用户执行对齐功能以完成指示签订合同的交互。源计算装置166-1的用户接收签名成功的通知,但直到用户的配偶或商业合伙人还执行对齐功能以完成指示签订合同的交互,合同才完成。
作为另一实例,当交互正分割支付时,源计算装置166-1的用户执行对齐功能以完成指示支付该部分支付的交互。源计算装置166-1的用户接收对齐功能成功的通知,但在全额付款得到验证之前,支付不会从用户的账户中提取(例如,其它源计算装置执行对齐功能以完成指示支付其部分支付的交互)。例如,如果其它源计算装置中的一个或多个不执行对齐功能来完成指示支付其部分支付的交互,则可以通知源计算装置166-1的用户支付更多或取消共享支付交易。
当代码的源部分168-1至168-n与代码的目的地部分170正确对齐时,光学产生的代码已被捕获(例如,经由网络应用程序54的图像处理模块),并且代码已被验证以表示完成交互所需的所有信息,网络计算装置46的交互终结模块58终结交互60。例如,交互终结模块58将金额从与源计算装置166-1至166-n相关联的帐户转移到与目的地计算装置164相关联的帐户。
如果光学产生的代码未被捕获(例如,在对齐之前经过了一段时间之后,通过错误等),则网络计算装置46可以实施一个或多个补救。例如,网络计算装置46在正确对齐之前经过了一定量的时间之后生成并且递送代码的新源和/或目的地部分(例如,在对齐之前每30秒到一分钟生成并且发送代码的新部分)。
作为另一实例,网络计算装置46通知源计算装置166-1至166-n和目的地计算装置164中的一个或多个关于对齐的情况(例如,发送重试对齐的通知、关于是否重新生成新代码的查询、与代码的源部分和目的地部分中的一个或多个有关的错误的通知、向未能完成对齐功能的装置执行对齐功能的通知等)。
图24A至24E是多源多部分代码的实例的示意性框图。在图24A中,网络计算装置46从目的地计算装置164和源计算装置166-1至166-2(其中在该实例中仅有两个源计算装置166-1至166-2)接收交互信息62。网络计算装置46的多部分代码生成模块56生成表示交互信息62的代码70。
基于所涉及的源计算装置的数量和交互信息62的条款,多部分代码生成模块56划分代码70,使得每个装置具有适合在一起以产生完整代码70的唯一片段。网络计算装置46将代码的目的地部分170发送到目的地计算装置164,并且将代码的源部分168-1至168-2发送到对应的源计算装置166-1至166-2。
图24B继续图24A的实例,其中源计算装置166-1至166-2执行对齐功能以将代码的源部分168-1至168-2与代码的目的地部分170对齐,以产生部分代码182-1至182-2。网络应用程序54的图像处理技术捕获部分代码182-1至182-2,并且将部分代码信息发送到网络计算装置46。网络计算装置46的交互终结模块58分析所接收的部分代码182-1至182-2,以确定完整代码70是否由部分代码形成。当形成完整代码时,交互完成。
图24C继续图24A的实例,其中源计算装置166-2将其代码的源部分168-2发送到源计算装置166-1(例如,经由电子邮件、蓝牙、文本消息、源计算装置166-1的光学扫描等)。源计算装置166-1执行对齐功能以将代码的源部分168-1至168-2与代码的目的地部分170对齐。源计算装置166-1的网络应用程序54捕获所产生的完整代码以完成交互。
图24D继续图24A的实例,其中源计算装置166-1和166-2执行类似于图16至18的实例的移动对齐功能。目的地计算装置164的前光学扫描器90扫描来自源计算装置166-1至166-2的取景器/显示区域的代码的源部分168-1至168-2(例如,源计算装置和目的地计算装置被放置在显示器上显示)。
源计算装置166-1至166-2的用户移动源计算装置166-1至166-2以将代码的源部分168-1至168-2与目的地计算装置164的取景器/显示区域84中的代码的目的地部分170对齐。目的地计算装置164的网络应用程序54捕获所产生的完整代码以完成交互。
图24E是网络计算装置46的多部分代码生成模块56生成不具有唯一形状的代码的源部分168-1至168-n的实例。例如,多部分代码生成模块56首先基于从目的地计算装置接收的交互信息生成代码的目的地部分170。此时,多部分代码生成模块56不知道在交互中涉及多少源计算装置。多部分代码生成模块56生成具有与代码的多个源部分无关的特定形状的代码的目的地部分170。
当源计算装置获得代码的目的地部分170时,源计算装置向网络计算装置46发送进一步的交互信息。基于进一步的交互信息和代码的目的地部分170,多部分代码生成模块56生成代码的源部分168-1至168-n(例如,以与代码的目的地部分170的形状对齐)。
图25A至25E是包括源计算装置166-1和166-2以及目的地计算装置164的多源多部分代码系统的实施例的示意性框图。图25A至25C展示了其中源计算装置166-1至166-2是付款人并且目的地计算装置164是收款人的帐单分割交互的实例。例如,源计算装置166-1至166-2是由餐馆的顾客使用的智能手机,并且目的地计算装置是由餐馆雇员使用以生成和结算账单的销售点计算装置(例如,记录器、平板电脑等)。作为另一实例,源计算装置166-1至166-2是零售商店的消费者使用的智能手机,并且目的地计算装置是用于完成结账的销售点计算装置(例如,记录器、平板电脑、电子商务平台等)。
在图25A中,网络计算装置46基于从目的地计算装置164接收的交互信息(例如,商家标识符(ID)、期望的支付方法、欠额、购买的项目、折扣等)生成代码的目的地部分170,并且经由目的地计算装置164的网络应用程序54将其发送到目的地计算装置164。目的地计算装置164向源计算装置166-1至166-2显示代码的目的地部分170(例如,经由光学扫描获得)。
例如,目的地计算装置164在目的地计算装置164的取景器/显示区域84上显示代码的目的地部分170。作为另一实例,目的地计算装置164将代码的目的地部分170打印到可扫描表面(例如,纸质收据)上。在另一实例中,目的地计算装置164通过诸如网络连接的接口构件(例如,经由电子邮件、文本消息等)将代码的目的地部分170递送到源计算装置166-1至166-2。
在该实例中,第一源计算装置166-1扫描(例如,经由诸如智能手机相机应用程序的前或后光学扫描器)代码的目的地部分170(例如,直接来自目的地计算装置164的取景器/显示区域84、来自收据等),该第一源计算装置在第一源计算装置166-1的取景器/显示区域84中显示代码的目的地部分170。
第一源计算装置166-1启用网络应用程序54的帐单分割应用程序。当启用时,网络应用程序54等待其它装置扫描或以其它方式接收代码的目的地部分170。
在图25B中,源计算装置166-2扫描(例如,经由诸如智能手机相机应用程序的前或后光学扫描器)代码的目的地部分170(例如,直接来自目的地计算装置164的取景器/显示区域84、来自收据等)并且在源计算装置166-2的取景器/显示区域84中显示代码的目的地部分170。源计算装置166-2启用网络应用程序54的帐单分割应用程序。当启用时,网络应用程序54生成已经为帐单分割应用程序检测到两个装置,并且询问是否继续分割帐单的消息。
网络应用程序54可操作以基于哪些装置已经上传了代码的目的地部分170而检测用于帐单分割应用程序的装置。在该实例中,源计算装置166-1和源计算装置166-2都选择在两个装置之间分割账单的选项。替代地,源计算装置166-1和源计算装置166-2等待检测附加装置。如果在一段时间之后没有检测到其它装置,则发送错误消息,指示无法使用或在一定时间段之后重试帐单分割应用程序。
图25C绘示了源计算装置166-2接收代码的目的地部分170的替代实例。在该实例中,源计算装置166-1经由连接(例如,蓝牙链路、电子邮件、SMS文本消息等)向源计算装置166-2发送代码的目的地部分170。源计算装置166-2在源计算装置166-2的取景器/显示区域84中显示代码的目的地部分170(例如,源计算装置166-2屏幕截图和/或保存代码的目的地部分170以上传到网络应用程序54)。
源计算装置166-2启用网络应用程序54的帐单分割应用程序。当启用时,网络应用程序54生成已经为帐单分割应用程序检测到两个装置,并且询问是否继续分割帐单的消息。在该实例中,第一源计算装置166-1和第二源计算装置166-2都选择在两个装置之间分割账单的选项。替代地,第一源计算装置166-1和第二源计算装置166-2等待检测附加装置。
在图25D中,网络计算装置基于交互信息以及基于代码的目的地部分170生成代码的第一源部分168-1,以与第二源计算装置166-2平均分割对目的地计算装置164的支付。网络计算装置基于交互信息以及基于代码的目的地部分170生成代码的第二源部分168-2,以与第一源计算装置166-1平均分割对目的地计算装置164的支付。网络计算装置将代码的第一源部分168-1发送到第一源计算装置166-1,并且将代码的第二源部分168-2发送到第二源计算装置166-2。
第一源计算装置和第二源计算装置的用户完成对齐功能,以将代码的第一源部分和第二源部分168-1至168-2与代码的目的地部分170对齐,从而完成交互。例如,此处示出了拖放功能,然而,当源计算装置和目的地计算装置在物理上彼此靠近时,移动对齐功能也是可能的。
图25E继续图25D的实例,其中源计算装置166-1至166-2的用户完成对齐功能以将代码的源部分168-1至168-2分别与代码的目的地部分170对齐以完成交互。当这些部分被对齐时,完整代码由网络应用程序54的图像处理电路光学地产生和捕获。网络应用程序54与网络计算装置46的交互终结模块58通信以终结交互60。
例如,源计算装置166-1的网络应用程序54与网络计算装置46的交互终结模块58关于所捕获的代码通信。例如,所捕获和解码的代码含有指示交互终结模块58将金额从与源计算装置166-1相关联的帐户转移到与目的地计算装置164相关联的帐户的信息。所捕获和解码的代码还含有关于账单分割应用程序的信息(例如,源装置的数量、账单分割的条款、总欠额等)。
当交互完成时,通知用户交互完成(例如,已经支付了总账单)。该通知还可以包括结束或修改的选项。例如,通知源计算装置166-1的用户已经支付了总账单并且用户希望添加附加小费。源计算装置166-1的用户将按下修改选项以请求添加提示。网络计算装置生成用于修改请求的代码的新源部分。如果修改请求将所支付的金额降低到欠额以下,则将错误通知发送到源装置和目的地装置中的一个或多个,并且拒绝该请求。
图26A至26D是多源多部分代码系统的账单分割选项的实例的示意性框图。图26A至26D包括源计算装置166-1至166-3。在图26A中,源计算装置166-1至166-3已扫描(或以其它方式上传到网络应用程序54)代码的目的地部分170(例如,类似于图25A的实例)。
网络应用程序54认识到三个源计算装置已经上传了代码的目的地部分170,并且向源计算装置166-1至166-3呈现显示不同账单分割选项的能力。在该实例中,源计算装置166-1至166-3的用户选择显示账单分割选项。在另一实施例中,由参与账单分割功能的源计算装置166-1至166-3上传代码的目的地部分170,基于用户同意或默认设置(例如,平均分割默认设置)自动生成代码的源部分。
图26B继续图26A的实例,并且示出了在源计算装置166-1至166-3的代码显示区域86中显示的账单分割选项的实例。在本实例中,选项包括:平均分割帐单(例如,基于检测到的源装置的数量)、平均分割20%的提示(或由各方设置的其它小费金额,或默认设置)、输入自定义金额,以及输入自定义小费。帐单分割选项包括确认按钮。
图26C继续图26B的实例,并且示出源计算装置166-1至166-3已选择平均分割帐单并且平均分割20%小费选项的实例。然后第一、第二和第三源计算装置166-1至166-3确认选择。图26D继续图26C的实例,其中网络计算装置基于所选择的账单分割选项(例如,平均分割账单和小费)和代码的目的地部分170来生成代码的源部分168-1至168-3。网络计算装置将代码的源部分168-1至168-3发送到相应的源计算装置166-1至166-3。
源计算装置166-1至166-3的用户完成对齐功能以将代码的源部分168-1至168-3与代码的目的地部分170对齐。例如,源计算装置166-1至166-3的用户将代码的源部分168-1至168-3拖放到他们各自的取景器/显示区域84中,以与代码的目的地部分170对齐。当源计算装置166-1至166-3的网络应用程序54全部捕获光学产生的代码并且与网络计算装置通信时,交互完成。
图27A至27B是多源多部分代码系统的账单分割选项的实例的示意性框图。图27A至27B包括源计算装置166-1至166-3。继续图26A的实例,其中源计算装置166-1至166-3的用户选择显示账单分割选项,在另一实施例中,网络计算装置生成表示不同账单分割选项的代码的源部分,并且将代码的源部分选项发送到源计算装置。
例如,源计算装置166-1至166-3与目的地计算装置164之间的交互是对三个项目(例如,餐馆菜单上的三个主菜)的支付。网络计算装置生成代码的源部分以表示不同项目的支付,并且将代码的源部分选项发送到源计算装置。
在该实例中,源计算装置166-1的用户执行对齐功能以将代码的“支付项目1”源部分168-1与代码的目的地部分170对齐。源计算装置166-2的用户执行对齐功能以将代码的“支付项目2”源部分168-2与代码的目的地部分170对齐。源计算装置166-3的用户执行对齐功能以将代码的“支付项目3”源部分168-3与代码的目的地部分170对齐。帐单分割选项部分可以进一步包括确认按钮和其它帐单分割选项。
对齐功能可以结束交互(例如,如在图21A至21B中讨论的实例中),或者可以需要确认来确认代码的所有期望的源部分选项何时对齐(例如,如在图19A至19C中讨论的实例中)。
在该实例中,需要确认以结束交互。在对齐指示要支付的菜单项目的代码的源部分之后,源计算装置166-1至166-3的用户选择添加小费的选项。在另一实施例中,一旦源计算装置166-1至166-3的用户对齐指示要支付的菜单项目的代码的相应源部分,则网络应用程序自动显示代码的源部分以表示基于所选择的个别项目的价格添加小费。作为另一实例,代码的源部分可能已经包括小费。
在图27B中,当源计算装置166-1至166-3的用户选择添加小费的选项时,网络计算装置基于不同项目的价格生成代码的源部分以表示支付小费,并且将代码的源部分选项发送到源计算装置。
在该实例中,源计算装置166-1的用户执行对齐功能以将代码的“付费项目1小费”源部分168-1与代码的目的地部分170对齐。源计算装置166-2的用户执行对齐功能以将代码的“支付物品2小费”源部分168-2与代码的目的地部分170对齐。源计算装置166-3的用户执行对齐功能以将代码的“支付物品3小费”源部分168-3与代码的目的地部分170对齐。
对齐功能可以结束交互(例如,如在图21A至21B中讨论的实例中),或者可以需要确认来确认代码的所有期望的源部分选项何时对齐(例如,如在图19A至19C中讨论的实例中)。如本文所示,源计算装置166-1至166-3的用户选择选项来确认所有部分都已对齐,以结束交互。
图28A至28B是多源多部分代码系统的帐单分割错误的实例的示意性框图。图28A继续图26A至26C中描述的实例,除了仅源计算装置166-1至166-2已经选择平均分割账单和平均分割20%小费选项。源计算装置166-3的用户在某个时间段内没有选择任何选项。图28B继续图26A-26C中所描述的实例,除了源计算装置166-1至166-2已经选择平均分割账单和平均分割20%小费选项,并且源计算装置166-3已经选择输入自定义金额和自定义小费。在该实例中,所输入的自定义金额和自定义小费小于与其它源计算装置平均分割账单和平均分割小费的金额。
图29A至29C是多源多部分代码系统的错误补救的实例的示意性框图。在图29A中,当检测到错误(例如,像图28A和/或28B的错误)时,网络计算装置不接受对齐功能和结束交互的确认尝试。向源计算装置166-1至166-3发送指示未满足最低支付的错误消息。
网络计算装置生成表示欠额的代码的新源部分,并且将该代码的源部分发送到源计算装置166-1至166-3,使得任何源计算装置都可以补救该错误。
在图29B中,当检测到错误(例如,像图28A和/或28B的错误)时,网络计算装置不接受对齐功能和结束交互的确认尝试。向源计算装置166-1至166-3发送指示未满足最低支付的错误消息。显示取消交易的选项。例如,如果源计算装置拒绝支付正确的金额,则源计算装置166-1、源计算装置166-2、源计算装置166-3和目的地计算装置164中的一个或多个可以选择取消交易。
在图29C中,网络计算装置接收所有部分都对齐的通知以及所产生的代码指示已满足最低支付但常规的小费金额过低或过高。例如,不同的地理区域具有不同的给小费习惯。出国旅行的人可能不会意识到他或她或多或少地给小费习惯。作为另一实例,虽然对于某些服务来说给小费是习惯,但是给小费永远是一种选择。服务水平可以决定超出习惯金额范围的小费。作为另一实例,源计算装置166-1至166-3中的一个的用户可能忘记了包括小费,或计算错误。
当网络计算装置基于当前地理区域和所涉及的服务检测到小费金额过低或过高时,通知源计算装置166-1至166-3小费金额超出习惯范围。该通知可以包括小费超出习惯范围多少的指示。向源计算装置166-1至166-3的用户呈现确认或调整小费金额的选项。
为了调整小费金额,网络计算装置可以呈现当与代码的目的地部分对齐时将调整小费的代码的推荐源部分。代码的推荐源部分可以包括调整小费所需的全部金额或源计算装置之间分割的金额。
图30是由多源多部分代码的网络计算装置执行的方法的实例的流程图。该方法从步骤172开始,其中网络计算装置从以下中的一个或多个接收交互信息:多源多部分代码系统的两个或更多个源计算装置中的源计算装置和多源多部分代码系统的目的地计算装置。两个或更多个源计算装置中的源计算装置和目的地计算装置中的一个或多个包括将两个或更多个源计算装置中的源计算装置和目的地计算装置与网络计算装置相关联的网络应用程序。交互经由接口构件发生。
交互是数据交换。例如,交互是两个或多个源计算装置与目的地计算装置之间的支付交易。作为另一实例,交互是两个或更多个源计算装置与目的地计算装置之间的合同。作为另一实例,交互在两个或更多个源计算装置与目的地计算装置之间共享机密信息。
接口构件包括第一计算装置或第二计算装置中的一个或多个的光学扫描应用程序、直接链路(例如,近场通信(NFC))和网络连接中的一个或多个。网络连接包括一个或多个局域网(LAN)和/或一个或多个广域网(WAN),其可以是公共网络和/或专用网络。LAN可以是无线LAN(例如,Wi-Fi接入点、蓝牙、ZigBee等)和/或有线LAN(例如,火线、以太网等)。WAN可以是有线和/或无线WAN。例如,LAN是个人家庭或企业的无线网络,而WAN是因特网、蜂窝电话基础设施和/或卫星通信基础设施。
该方法继续到步骤174,其中网络计算装置的多部分代码生成模块生成表示交互信息的代码的目的地部分和表示交互信息的代码的两个或更多个源部分,使得代码的目的地部分和两个或更多个源部分无法个别地使用。不可用意指这些部分无法被光学读取器/扫描器光学读取,或者从光学读取器获得的信息不完整或不产生真实数据。代码的两个或更多个源部分的生成可以基于代码的目的地部分和/或两个或更多个源计算装置的源代码选项选择(例如,帐单分割选项等)。参考图24A至24E更详细地讨论用于多个源的多部分代码生成的不同实例。
该方法继续到步骤176,其中网络计算装置将代码的目的地部分发送到目的地计算装置,并且将代码的两个或更多个源部分发送到对应的两个或更多个源计算装置。替代地,网络计算装置将代码的目的地部分发送到目的地计算装置,基于源计算装置与代码的目的地部分的交互来生成代码的两个或更多个源部分,并且然后将代码的两个或更多个源部分发送到对应的两个或更多个源计算装置。
代码的两个或多个源部分必须通过对齐功能(例如,拖放、移动对齐等)与代码的目的地部分对齐,使得产生指示完成交互的意图的完整代码。当在步骤178将代码的两个或多个源部分与代码的目的地部分对齐以产生完整并且准确的代码时,网络计算装置的交互终结模块在步骤180终结交互。例如,当交互是从两个或更多个源计算装置向两个或更多个源计算装置支付时,交互终结模块将金额从与两个或更多个源计算装置相关联的账户转移到与目的地计算装置相关联的账户。
如果在步骤178代码的两个或更多个源部分未与代码的目的地部分对齐以产生完整代码(例如,并非代码的所有源部分均已对齐)和/或代码的两个或更多个源部分与代码的目的地部分对齐以产生不准确的代码(例如,所产生的代码不表示交互信息、已发生用户错误等),则在步骤182,网络计算装置实施一个或多个补救。
例如,网络计算装置生成代码的新源部分并且将其递送到两个或更多个源计算装置中的至少一个,或者网络计算装置生成代码的所有新部分并且将其递送到两个或更多个源计算装置和目的地计算装置。作为另一实例,网络计算装置通知两个或更多个源计算装置和目的地计算装置中的一个或多个关于对齐的情况(例如,发送重试对齐的通知、纠正错误的通知、关于是否重新生成新代码的查询等)。
如本文还可以使用的,术语“被配置成”、“可操作地耦合到”、“耦合到”和/或“耦合”包括项之间的直接耦合和/或项之间经由中间项(例如,项包括但不限于部件、元件、电路和/或模块)的间接耦合,其中对于间接耦合的实例,中间项不修改信号的信息但可以调整其电流电平、电压电平和/或功率电平。如本文可以进一步使用的,推断耦合(即,其中一个元件通过推断耦合到另一元件)包括以与“耦合到”相同的方式进行的两个项之间的直接和间接耦合。
如本文可以更进一步使用的,术语“被配置成”、“可操作以”、“耦合到”或“可操作地耦合到”指示项包括电源连接、输入、输出等中的一个或多个,以用于在激活时执行其对应功能中的一个或多个功能,并且可以进一步包括耦合到一个或多个其它项的推断。如本文仍可以进一步使用的,术语“与……相关联”包括单独项的直接和/或间接耦合,和/或一个项嵌入在另一项中。
如本文可以使用的,术语“有利地比较”指示两个或更多个项、信号等之间的比较提供了期望的关系。例如,当期望的关系是信号1的幅值比信号2的幅值更大时,当信号1的幅值大于信号2的幅值或者当信号2的幅值小于信号1的幅值时,可以实现有利的比较。如本文可以使用的,术语“不利地比较”指示两个或更多个项、信号等之间的比较未能提供期望的关系。
如本文可以使用的,一个或多个权利要求可以包括该一般形式短语“a、b和c中的至少一个”或该一般形式“a、b或c中的至少一个”的具体形式,具有比“a”、“b”和“c”多或少的元素。在任一种措辞中,短语的解释都是相同的。特别地,“a、b和c中的至少一个”等同于“a、b或c中的至少一个”,并且应意指a、b和/或c。例如,其意指:仅“a”、仅“b”、仅“c”、“a”和“b”、“a”和“c”、“b”和“c”,和/或“a”、“b”和“c”。
如本文还可以使用的,术语“处理模块”、“处理电路”、“处理器”、“处理电路系统”和/或“处理单元”可以是单个处理装置或多个处理装置。此类处理装置可以是微处理器、微控制器、数字信号处理器、微计算机、中央处理单元、现场可编程门阵列、可编程逻辑装置、状态机、逻辑电路系统、模拟电路系统、数字电路系统,和/或基于电路系统和/或操作指令的硬编码来操纵信号(模拟和/或数字)的任何装置。处理模块、模块、处理电路、处理电路系统和/或处理单元可以是或进一步包括存储器和/或集成存储器元件,其可以是单个存储器装置、多个存储器装置,和/或另一处理模块、模块、处理电路、处理电路系统和/或处理单元的嵌入式电路系统。此类存储器装置可以是只读存储器、随机存取存储器、易失性存储器、非易失性存储器、静态存储器、动态存储器、快闪存储器、高速缓冲存储器和/或存储数字信息的任何装置。注意,如果处理模块、模块、处理电路、处理电路系统和/或处理单元包括多于一个处理装置,则处理装置可以居中定位(例如,经由有线和/或无线总线结构直接耦合在一起)或者可以分布式地定位(例如,经由局域网和/或广域网间接耦合的云计算)。进一步注意,如果处理模块、模块、处理电路、处理电路系统和/或处理单元经由状态机、模拟电路系统、数字电路系统和/或逻辑电路系统实施其功能中的一个或多个功能,则存储对应操作指令的存储器和/或存储器元件可以嵌入在包含状态机、模拟电路系统、数字电路系统和/或逻辑电路系统的电路系统内或外部。仍进一步注意,存储器元件可以存储并且处理模块、模块、处理电路、处理电路系统和/或处理单元执行对应于图中的一个或多个图中所绘示的步骤和/或功能中的至少一些的硬编码和/或操作指令。此类存储器装置或存储器元件可以包括在制品中。
以上已经借助于说明指定功能的执行及其关系的方法步骤描述了一个或多个实施例。为了便于描述,本文任意地限定这些功能构建框和方法步骤的边界和顺序。只要指定功能及其关系被适当地执行,可以限定替代边界和顺序。因此,任何此类替代边界或顺序都在权利要求的范围和精神内。此外,为了便于描述,任意地限定这些功能构建框的边界。只要某些重要功能被适当地执行,可以限定替代边界。类似地,本文中也可以任意地限定流程图框以说明某些重要功能性。
在所使用的范围内,流程图框边界和顺序可以用其它方式限定,并且仍执行某些重要功能性。因此,功能构建框和流程图框以及顺序的此类替代限定都在权利要求的范围和精神内。所属领域的普通技术人员还将认识到,本文中的功能构建框和其它说明性框、模块和部件可以如所绘示的那样实施,或由离散部件、专用集成电路、执行适当软件的处理器等或其任何组合来实施。
另外,流程图可以包括“开始”和/或“继续”指示。“开始”和“继续”指示反映所呈现的步骤可以任选地并入在一个或多个其它例程中或以其它方式与其联合使用。另外,流程图可以包含“结束”和/或“继续”指示。“结束”和/或“继续”指示反映所呈现的步骤可以如所描述和示出的那样结束,或者任选地并入在一个或多个其它例程中或以其它方式与其联合使用。在该上下文中,“开始”指示开始所呈现的第一步骤,并且其前面可以是未具体示出的其它活动。此外,“继续”指示反映所呈现的步骤可以多次执行,和/或可以由未具体示出的其它活动接替。此外,尽管流程图指示步骤的特定次序,但是其它次序同样是可能的,只要维持因果关系原则即可。
本文使用一个或多个实施例来说明一个或多个方面、一个或多个特征、一个或多个概念和/或一个或多个实例。设备、制品、机器和/或处理的物理实施例可以包括参考本文所讨论的实施例中的一个或多个实施例描述的方面、特征、概念、实例等中的一个或多个。此外,贯穿各图,实施例可以并入有可以使用相同或不同附图标记的相同或类似名称的功能、步骤、模块等,并且这样,功能、步骤、模块等可以是相同或类似的功能、步骤、模块等,或者是不相同的
虽然以上所描述的图中的晶体管被示出为场效应晶体管(FET),但如本领域普通技术人员将理解的,晶体管可以使用任何类型的晶体管结构来实施,包括但不限于双极型晶体管、金属氧化物半导体场效应晶体管(MOSFET)、N阱晶体管、P阱晶体管、增强型晶体管、耗尽型晶体管和零电压阈值(VT)晶体管。
除非具体说明为相反情况,否则到达、来自本文呈现的任何图的图中元件的信号和/或元件之间的信号可以是模拟或数字的、连续时间或离散时间以及单端或差分的。例如,如果信号路径被示出为单端路径,则其还表示差分信号路径。类似地,如果信号路径被示出为差分路径,则其还表示单端信号路径。尽管本文描述了一个或多个特定架构,但同样可以实施其它架构,其它架构使用未明确示出的一个或多个数据总线、元件之间的直接连接和/或如本领域的普通技术人员所了解的其它元件之间的间接耦合。
术语“模块”在实施例的一个或多个的描述中使用。模块经由诸如处理器或其它处理装置或其它硬件等装置实施一个或多个功能,该装置可以包括存储操作指令的存储器或与之相关联地操作。模块可以独立地操作和/或联合软件和/或固件操作。还如本文所使用的,模块可以含有一个或多个子模块,每个子模块可以是一个或多个模块。
如本文可以进一步使用的,计算机可读存储器包括一个或多个存储器元件。存储器元件可以是单独的存储器装置、多个存储器装置或存储器装置内的一组存储器位置。此类存储器装置可以是只读存储器、随机存取存储器、易失性存储器、非易失性存储器、静态存储器、动态存储器、快闪存储器、高速缓冲存储器和/或存储数字信息的任何装置。存储器装置可以是固态存储器、硬盘驱动器存储器、云存储器、拇指驱动器、服务器存储器、计算装置存储器和/或用于存储数字信息的其它物理介质的形式。
尽管本文已明确地描述了一个或多个实施例的各种功能和特征的特定组合,但这些特征和功能的其它组合同样是可能的。本公开不受本文所公开的特定实例限制,并且明确结合了这些其它组合。

Claims (20)

1.一种方法,其包含:
由多部分代码系统的网络计算装置从所述多部分代码系统的第一计算装置和所述多部分代码系统的第二计算装置中的一个或多个接收关于所述第一计算装置与所述第二计算装置之间的交互的交互信息,其中所述第一计算装置和所述第二计算装置中的一个或多个与所述网络计算装置相关联;
由所述网络计算装置的多部分代码生成模块生成代码的第一部分和第二部分,其中所述代码的所述第一部分和所述第二部分不个别地含有有意义的信息,其中所述代码的所述第一部分和所述第二部分的对齐光学地产生所述代码,其中光学产生的代码表示所述交互信息,并且其中所述第一计算装置和所述第二计算装置中的所述一个或多个能够操作以捕获所述光学产生的代码;
由所述网络计算装置将所述代码的所述第一部分和所述第二部分发送到所述第一计算装置和所述第二计算装置中的一个或多个;以及
当所述光学产生的代码已经被捕获时:
由所述网络计算装置的交互终结模块终结所述交互。
2.根据权利要求1所述的方法,其中所述交互包括以下中的一个或多个:
数字支付交易;
数据交换;
协议;
票券验证;以及
身份验证。
3.根据权利要求1所述的方法,其中所述交互信息包含以下中的一个或多个:
第一计算装置标识符(ID);
第二计算装置标识符(ID);
支付金额;
协议条款;
数据文件;
签名页;
活动信息;
期望的支付方法;
支付账户信息;
折扣信息;
促销信息;
忠诚度账户信息;以及
个人信息。
4.根据权利要求1所述的方法,其中所述交互经由接口构件发生,并且其中所述接口构件包括以下中的一个或多个:
所述第一计算装置和所述第二计算装置中的一个或多个的光学扫描器;
直接链路;以及
网络连接。
5.根据权利要求1所述的方法,其进一步包含:
所述代码的所述第一部分和所述第二部分无法由光学扫描器个别地读取。
6.根据权利要求1所述的方法,其中所述生成所述代码的所述第一部分和第二部分包括:
由所述多部分代码生成模块生成表示所述交互信息的所述代码;以及
由所述多部分代码生成模块将所述代码划分为所述代码的所述第一部分和所述第二部分。
7.根据权利要求1所述的方法,其进一步包含:
由所述多部分代码生成模块生成表示所述交互信息的第一交互信息的所述代码的所述第一部分;
由所述网络计算装置将所述代码的所述第一部分发送到所述第一计算装置;
由所述多部分代码生成模块生成表示所述交互信息的第二交互信息并且基于所述代码的所述第一部分的所述代码的所述第二部分;以及
由所述网络计算装置将所述代码的所述第二部分发送到所述第二计算装置。
8.根据权利要求1所述的方法,其进一步包含:
当所述光学产生的代码未被捕获时:
由所述网络计算装置进行以下中的一个或多个:
将所述代码的一个或多个新的第一部分和第二部分发送到所述第一计算装置和所述第二计算装置中的所述一个或多个;
将关于是否创建所述代码的所述一个或多个新的第一部分和第二部分的查询发送到所述第一计算装置和所述第二计算装置中的所述一个或多个;
将通知发送到所述第一计算装置和所述第二计算装置中的所述一个或多个以重试所述代码的所述第一部分和所述第二部分的所述对齐;以及
将通知发送到所述第一计算装置和所述第二计算装置中的所述一个或多个以纠正与所述代码的所述第一部分和第二部分的所述对齐有关的错误。
9.根据权利要求1所述的方法,其进一步包含:
所述交互是从所述第一计算装置到所述第二计算装置的支付交易;
所述交互信息包括:第一计算装置标识符(ID)、第二计算装置标识符(ID)、支付金额、接收支付的期望的支付方法、提供支付的期望的支付方法、第一计算装置支付账户信息和第二计算装置支付账户信息;以及
当所述光学产生的代码已经被捕获时:
由所述交互终结模块根据所述交互信息将所述支付金额从与所述第一计算装置相关联的支付账户转移到与所述第二计算装置相关联的支付账户。
10.根据权利要求1所述的方法,其进一步包含:
由所述网络计算装置从所述第一计算装置接收所述交互信息;
由所述多部分代码生成模块生成表示所述交互信息的所述代码的所述第一部分和所述第二部分;以及
由所述网络计算装置将所述代码的所述第一部分和所述第二部分发送到所述第一计算装置。
11.一种计算机可读存储器,其包含:
存储操作指令的第一存储器元件,所述操作指令在由多部分代码系统的网络计算装置执行时使所述网络计算装置:
从所述多部分代码系统的第一计算装置和所述多部分代码系统的第二计算装置中的一个或多个接收关于所述第一计算装置与所述第二计算装置之间的交互的交互信息,其中所述第一计算装置和所述第二计算装置中的一个或多个与所述网络计算装置相关联;
存储操作指令的第二存储器元件,所述操作指令在由所述网络计算装置的多部分代码生成模块执行时使所述多部分代码生成模块:
生成代码的第一部分和第二部分,其中所述代码的所述第一部分和所述第二部分不个别地含有有意义的信息,其中所述代码的所述第一部分和所述第二部分的对齐光学地产生所述代码,其中光学产生的代码表示所述交互信息,并且其中所述第一计算装置和所述第二计算装置中的所述一个或多个能够操作以捕获所述光学产生的代码;
存储操作指令的第三存储器元件,所述操作指令在由所述网络计算装置执行时使所述网络计算装置:
将所述代码的所述第一部分和所述第二部分发送到所述第一计算装置和所述第二计算装置中的一个或多个;以及
当所述光学产生的代码已经被捕获时:
存储操作指令的第四存储器元件,所述操作指令在由所述网络计算装置的交互终结模块执行时使所述交互终结模块:终结所述交互。
12.根据权利要求11所述的计算机可读存储器,其中所述交互包括以下中的一个或多个:
数字支付交易;
数据交换;
协议;
票券验证;以及
身份验证。
13.根据权利要求11所述的计算机可读存储器,其中所述交互信息包含以下中的一个或多个:
第一计算装置标识符(ID);
第二计算装置标识符(ID);
支付金额;
协议条款;
数据文件;
签名页;
活动信息;
期望的支付方法;
支付账户信息;
折扣信息;
促销信息;
忠诚度账户信息;以及
个人信息。
14.根据权利要求11所述的计算机可读存储器,其中所述交互经由接口构件发生,并且其中所述接口构件包括以下中的一个或多个:
所述第一计算装置和所述第二计算装置中的一个或多个的光学扫描器;
直接链路;以及
网络连接。
15.根据权利要求11所述的计算机可读存储器,其进一步包含:
所述代码的所述第一部分和所述第二部分无法由光学扫描应用程序个别地读取。
16.根据权利要求11所述的计算机可读存储器,其中所述第二存储器元件进一步存储操作指令,所述操作指令在由所述多部分代码生成模块执行时使所述多部分代码生成模块通过以下步骤来生成所述代码的所述第一部分和所述第二部分:
生成表示所述交互信息的所述代码;以及
将所述代码划分为所述代码的所述第一部分和所述第二部分。
17.根据权利要求11所述的计算机可读存储器,其进一步包含:
所述第二存储器元件进一步存储操作指令,所述操作指令在由所述多部分代码生成模块执行时使所述多部分代码生成模块:
生成表示所述交互信息的第一交互信息的所述代码的所述第一部分;
所述第三存储器元件进一步存储操作指令,所述操作指令在由所述网络计算装置执行时使所述网络计算装置:
将所述代码的所述第一部分发送到所述第一计算装置;
所述第二存储器元件进一步存储操作指令,所述操作指令在由所述多部分代码生成模块执行时使所述多部分代码生成模块:
生成表示所述交互信息的第二交互信息并且基于所述代码的所述第一部分的所述代码的所述第二部分;以及
所述第三存储器元件进一步存储操作指令,所述操作指令在由所述网络计算装置执行时使所述网络计算装置:
将所述代码的所述第二部分发送到所述第二计算装置。
18.根据权利要求11所述的计算机可读存储器,其进一步包含:
当所述光学产生的代码未被捕获时:
存储操作指令的第五存储器元件,所述操作指令在由所述网络计算装置执行时使所述网络计算装置:
进行以下中的一个或多个:
将所述代码的一个或多个新的第一部分和第二部分发送到所述第一计算装置和所述第二计算装置中的所述一个或多个;
将关于是否创建所述代码的所述一个或多个新的第一部分和第二部分的查询发送到所述第一计算装置和所述第二计算装置中的所述一个或多个;
将通知发送到所述第一计算装置和所述第二计算装置中的所述一个或多个以重试所述代码的所述第一部分和所述第二部分的所述对齐;以及
将通知发送到所述第一计算装置和所述第二计算装置中的所述一个或多个以纠正与所述代码的所述第一部分和所述第二部分的所述对齐有关的错误。
19.根据权利要求11所述的计算机可读存储器,其进一步包含:
所述交互是从所述第一计算装置到所述第二计算装置的支付交易;
所述交互信息包括:第一计算装置标识符(ID)、第二计算装置标识符(ID)、支付金额、接收支付的期望的支付方法、提供支付的期望的支付方法、第一计算装置支付账户信息和第二计算装置支付账户信息;以及
当所述光学产生的代码已经被捕获时:
所述第四存储器元件进一步存储操作指令,所述操作指令在由所述交互终结模块执行时使所述交互终结模块:
根据所述交互信息将所述支付金额从与所述第一计算装置相关联的支付账户转移到与所述第二计算装置相关联的支付账户。
20.根据权利要求11所述的计算机可读存储器,其进一步包含:
所述第一存储器元件进一步存储操作指令,所述操作指令在由所述网络计算装置执行时使所述网络计算装置:
接收所述交互信息所述第一计算装置;
所述第二存储器元件进一步存储操作指令,所述操作指令在由所述多部分代码生成模块执行时使所述多部分代码生成模块:
生成表示所述交互的所述代码的所述第一部分和所述第二部分;以及
所述第三存储器元件进一步存储操作指令,所述操作指令在由所述网络计算装置执行时使所述网络计算装置:
将所述代码的所述第一部分和所述第二部分发送到所述第一计算装置。
CN202180047400.6A 2020-05-11 2021-05-07 多部分代码系统 Pending CN115885287A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/871,689 US11194981B2 (en) 2020-05-11 2020-05-11 Multi-part code system
US16/871,689 2020-05-11
PCT/US2021/031368 WO2021231223A1 (en) 2020-05-11 2021-05-07 Multi-part code system

Publications (1)

Publication Number Publication Date
CN115885287A true CN115885287A (zh) 2023-03-31

Family

ID=78412739

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180047400.6A Pending CN115885287A (zh) 2020-05-11 2021-05-07 多部分代码系统

Country Status (6)

Country Link
US (7) US11194981B2 (zh)
EP (1) EP4150525A4 (zh)
JP (1) JP2023526002A (zh)
CN (1) CN115885287A (zh)
CA (1) CA3177399A1 (zh)
WO (1) WO2021231223A1 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11347823B2 (en) 2020-02-18 2022-05-31 The DTX Company Refactoring of static machine-readable codes
US11194981B2 (en) * 2020-05-11 2021-12-07 Flexa Network Inc. Multi-part code system
US11205105B1 (en) * 2020-08-09 2021-12-21 The DTX Company Machine-readable label generator
WO2022125898A1 (en) * 2020-12-10 2022-06-16 Orchid Sound Technologies LLC Systems and methods including user authentication
US11593579B2 (en) 2021-01-04 2023-02-28 The DTX Company Multiplexed quick response (“QR”) code experience derivation
USD962966S1 (en) * 2021-03-10 2022-09-06 The DTX Company Display screen or portion thereof with a graphical user interface for a machine-readable label
US11599757B1 (en) 2021-08-24 2023-03-07 The DTX Company Collectible machine-readable codes
US11334779B1 (en) 2022-01-14 2022-05-17 The DTX Company Dynamic embedding of machine-readable codes within video and digital media
US11741331B1 (en) 2022-02-23 2023-08-29 The DTX Company Electronic tag with two scanning modalities
US11734533B1 (en) 2022-06-08 2023-08-22 The DTX Company Secure scanning of machine-readable codes
US11709907B1 (en) 2023-02-01 2023-07-25 The DTX Company Offline to online conversion linkage
US12020114B1 (en) 2024-01-22 2024-06-25 The DTX Company Real-time comprehensive quick response (“QR”) code testing for reliable scanning

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100746641B1 (ko) 2005-11-11 2007-08-06 주식회사 칼라짚미디어 동영상 이미지 코드와 동영상 이미지 코드 생성/디코딩장치 및 그 방법
JP5296687B2 (ja) * 2006-08-30 2013-09-25 ベクトン・ディキンソン・アンド・カンパニー 多重バーコードフォーマットラベルシステム及び方法
EP2431912B1 (en) * 2010-09-20 2013-04-03 Research In Motion Limited Method and device for data transfer through animated barcodes
KR20120116265A (ko) * 2011-04-12 2012-10-22 김준성 분할 바코드를 이용한 인증 방법
US9152903B2 (en) 2011-11-04 2015-10-06 Ebay Inc. Automated generation of QR codes with embedded images
US9111164B1 (en) * 2015-01-19 2015-08-18 Snapchat, Inc. Custom functional patterns for optical barcodes
US9747483B2 (en) * 2015-02-19 2017-08-29 Troy Group, Inc. Methods for securing invisible 2D barcodes and printed images
US10055715B1 (en) 2017-07-26 2018-08-21 Square, Inc. Cryptocurrency payment network
US11194981B2 (en) * 2020-05-11 2021-12-07 Flexa Network Inc. Multi-part code system

Also Published As

Publication number Publication date
US11694049B2 (en) 2023-07-04
US20230351131A1 (en) 2023-11-02
CA3177399A1 (en) 2021-11-18
WO2021231223A1 (en) 2021-11-18
US20230259731A1 (en) 2023-08-17
US20210350096A1 (en) 2021-11-11
US20210350097A1 (en) 2021-11-11
JP2023526002A (ja) 2023-06-20
US11816531B2 (en) 2023-11-14
US20220222462A1 (en) 2022-07-14
EP4150525A4 (en) 2024-04-24
US20220043992A1 (en) 2022-02-10
US11915098B2 (en) 2024-02-27
US20220253626A1 (en) 2022-08-11
EP4150525A1 (en) 2023-03-22
US11194981B2 (en) 2021-12-07
US11829815B2 (en) 2023-11-28

Similar Documents

Publication Publication Date Title
US11194981B2 (en) Multi-part code system
US9721243B2 (en) Mobile payment system using subaccounts of account holder
US9785935B2 (en) Split mobile payment system
US9734498B2 (en) Mobile image payment system using short codes
US20070260558A1 (en) Methods and systems for secure transactions with electronic devices
US20140258110A1 (en) Methods and arrangements for smartphone payments and transactions
US20120185398A1 (en) Mobile payment system with two-point authentication
US20150287021A1 (en) Mobile image payment system
WO2012151660A1 (en) Mobile image payment system
JP6496461B1 (ja) 決済システム、決済方法、及びプログラム
US11605063B2 (en) Point-of-sale device and method for generating a discounted authorization request
US11295280B2 (en) Customized transaction flow for multiple transaction types using encoded image representation of transaction information
WO2014165974A1 (en) Mobile payment system using subaccounts of account holder
JP7129687B2 (ja) ハウス型電子マネーの管理装置、ハウス型電子マネーの管理方法、及びハウス型電子マネーの管理システム。
CA3055500C (en) Point-of-sale device and method for generating a discounted authorization request
KR20120010682A (ko) 이차원 바코드에 기초한 결제 방법 및 결제 시스템

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
CB02 Change of applicant information

Address after: USA New York

Applicant after: Fraser Co.

Address before: USA New York

Applicant before: Fraser Networks

CB02 Change of applicant information