Scannable code tags for use in social networking and group invitation

An apparatus and method for cloud-based storage, retrieval and sharing of files tagged with scannable code tags and group invitation. This application and method includes establishing a user account on a network, the user account being linked to a user space configured to store at least media files for an owner of the user account, generating a scannable code tag, and linking the scannable code tag with the user account and the owner. The method also includes linking a group invitation to one or more media files.

STATEMENT REGARDING FEDERAL SPONSORED RESEARCH OR DEVELOPMENT

Not Applicable

Not Applicable

BACKGROUND

Technical Field

Embodiments relate to mobile tagging, and more particularly but not exclusively, to mobile tagging using scannable code tags that facilitate media and delivery, as well as group invitations and information tracking.

BRIEF SUMMARY

According to some embodiments, the present technology is directed to a method for providing a scannable code tag. The method comprises: (a) establishing a user account on a network, the user account being linked to a user space configured to store at least media files for an owner of the user account; (b) generating a scannable code tag; (c) linking the scannable code tag with the user account and the owner; (d) receiving a request to activate the scannable code tag, the request being generated by a scan of the scannable code tag by a user device associated with the owner of the user account; (e) receiving a media file from the user device; (f) storing the media file in the user space associated with the user account; and (g) selecting a group invitation that is associated with the scannable code tag.

In one embodiment the method includes receiving a request for the media file when a recipient scans the scannable code tag with a user device associated with the recipient. Also, the method includes delivering the media file to the user device associated with the recipient and delivering the group invitation to the user device associated with the recipient.

In another embodiment the method includes tracking metrics regarding any of scanning of the scannable code tag by the recipient, viewing of the media file by the recipient, response to the group invitation, and sharing of the group invitation by the recipient on one or more social networks.

In some embodiments, the method includes applying the scannable code tag to an object.

In one embodiment, the method includes receiving a message indicating that a recipient has scanned the scannable code tag and automatically adding the recipient to a group upon the scanning of the scannable code tag.

In some embodiments, the method comprises receiving a message indicating that a recipient has scanned the scannable code tag and accessing user information included on a user device associated with the recipient that was used to scan the scannable code tag. The method also includes pushing the group invitation to the user device associated with the recipient based upon the user information accessed from the user device.

In another embodiment the method further includes providing to the recipient any of a reward, a coupon, an announcement, or combinations thereof.

In other embodiments the method includes linking a gift, reward, offer and/or coupon to the scannable code tag. The group invitation is defined by a merchant or vendor that provides the gift, reward, offer and/or coupon for the scannable code tag. Also, the method includes delivering the gift, reward, offer and/or coupon to a recipient who scans the scannable code tag and automatically adding the recipient to a group.

In one embodiment the method includes receiving a response to the group invitation in the form of a media file generate by the recipient and storing the response in the user space associated with the user account.

In another embodiment the method includes updating the media file with a second media file as well as receiving a scan of the scannable code tag after updating the media file. Further, the method includes delivering the second media file in response to the scan of the scannable code tag.

In one embodiment, the method includes delivering the group invitation to a plurality of recipients that are included in a list associated with the user account.

In some embodiments the list is derived from an electronic address book, a database, a customer relations management system, or combinations thereof.

According to some embodiments, the present technology is directed to a non-transitory computer readable medium having recorded thereon a program.

The program when executed causing a computer to perform a method. In some instances, the method includes: (a) requesting establishment of a user account on a network, the user account being linked to a user space configured to store at least media files for an owner of the user account; and (b) requesting activation of a scannable code tag by scanning the scannable code tag, the request being generated by a scan of the scannable code tag by a user device associated with the owner of the user account.

In some embodiments, the method includes uploading a media file for storage in a user space associated with the user account and selecting a group invitation that is associated with the scannable code tag.

In yet other embodiments, the method includes scanning the scannable code tag after activation of the scannable code tag and receiving the media file; and receiving a group invitation.

In one embodiment the method includes tracking metrics regarding any of scanning of the scannable code tag, viewing of the media file, response to a group invitation, and sharing of the group invitation on one or more social networks.

In some embodiments, the method includes receiving any of a reward, a coupon, an announcement, or combinations thereof in response to scanning the scannable code tag after activation of the scannable code tag.

According to some embodiments, the present technology is directed to a computing device. The computing device comprises: (a) a memory for storing executable instructions, the executable instructions for creating a scannable code tag; and (b) a processor for executing the instructions to: (i) establish a user account on a network, the user account being linked to a user space configured to store at least media files for an owner of the user account; (ii) generate a scannable code tag; (iii) link the scannable code tag with the user account; (iv) receive a request to activate the scannable code tag, the request being generated by a scan of the scannable code tag by a user device associated with the owner of the user account; (v) receive a media file from the user device; (vi) store the media file in the user space associated with the user account; and (vii) automatically add a recipient to a group when the scannable code tag is scanned.

In one embodiment, the processor further executes the instructions stored in memory to receive a request for the media file when the recipient scans the scannable code tag with a user device associated with the recipient. In response the computing device delivers the media file to the user device associated with the recipient and delivers a group invitation to the user device associated with the recipient rather than automatically add a recipient to a group when the scannable code tag is scanned.

In yet other embodiments, the processor further executes the instructions stored in memory to track metrics regarding any of scanning of the scannable code tag by the recipient, viewing of the media file by the recipient, response to the group invitation, and sharing of the group invitation by the recipient on one or more social networks.

In another embodiment, the processor further executes the instructions stored in memory to receive a message indicating that a recipient has scanned the scannable code tag. The computing device also delivers the media file to the user device associated with the recipient and delivers a media file to the user device associated with the recipient after the media file has been delivered.

In one embodiment, the processor further executes the instructions stored in memory to receive a message indicating that a recipient has scanned the scannable code tag. Also, the computing device can access user information included on a user device associated with the recipient that was used to scan the scannable code tag and select the group based upon the user information accessed from the user device.

In yet other embodiments, the processor further executes the instructions stored in memory to provide to the recipient any of a reward, a coupon, an announcement, or combinations thereof after the recipient scans the scannable code tag, wherein the reward, the coupon, and the announcement are provided by a merchant or vendor that also defines the group.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

In the following description of the best mode of implementation, for purposes of explanation and not limitation, specific details are set forth, such as particular embodiments, procedures, techniques, etc. in order to provide a thorough understanding of the present invention. However, it will be apparent to one skilled in the art that the present invention may be practiced in other embodiments that depart from these specific details.

In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the disclosure. It will be apparent, however, to one skilled in the art, that the disclosure may be practiced without these specific details. In other instances, structures and devices are shown at block diagram form only in order to avoid obscuring the disclosure.

It is noted at the outset that the terms “coupled,” “connected”, “connecting,” “electrically connected,” etc., are used interchangeably herein to generally refer to the condition of being electrically/electronically connected. Similarly, a first entity is considered to be in “communication” with a second entity (or entities) when the first entity electrically sends and/or receives (whether through wireline or wireless means) information signals (whether containing data information or non-data/control information) to the second entity regardless of the type (analog or digital) of those signals. It is further noted that various figures (including component diagrams) shown and discussed herein are for illustrative purpose only, and are not drawn to scale.

Multidimensional bar codes, such as the two dimensional (2D) Quick Response (QR) (trademarked) barcode as described in Masahiro, U.S. Pat. No. 5,726,435 and Masahiro, Jap. Pat. No. 2938338, allow users to enjoy both the convenience of traditional print media and the completeness of online media. Multidimensional bar codes with embedded URL codes often appear in magazine articles, business cards, item tags, and advertisements. Individuals, who wish to supplement this published media, may do so by taking a picture of a 2D bar code with a camera enabled cell phone that will redirect them to the programmed URL. The programmed URL can contain unlimited information to supplement the published media, including a products details, videos or contact information. Publishers and users can also print their own 2D barcodes for others.

For the most part, 2D bar codes have been commercially unavailable to individuals who merely want to generate a bar code and associate it with a video, photograph or document. Ordinary consumers and small businesses, find that the expense of investing into this technology exceeds the benefit provided. Further, another difficulty in using this technology is that the URL or video link usually requires a published website or hosting server. Moreover, current 2D bar codes cannot be processed visually and typically require a scanning mechanism.

Cloud storage providers, examples of whom include: Google Drive (trademarked), Rapidshare (trademarked) or Mega, are based on a model of storage where users upload data onto third party hosted servers. Cloud storage providers own large data centers and allow their customers to pay to buy or lease storage capacity on these websites. Some providers, like Rapidshare (trademarked), encourage sharing of user-submitted data by generating unique URL links to user-submitted content. In turn, users share their content with other by providing a URL link to this content. Typically, those who wish to enjoy user-submitted content must download this content through the unique link. For these reasons, clouds storage has become an incredibly popular service for users to upload and share photographs, videos, documents and other information.

Cloud storage models contain numerous disadvantages. URL links are often difficult to input by a user, unattractive on the text, and out of place when inserted into printed media. Further, users are often forced to download content before they may access it. Moreover, the interface of a cloud storage system is not friendly for a novel user and the files are not easily retrievable and shareable.

Embodiments of the present technology involve the use of scannable code tags. A scannable code tag can include any number of visual objects that are capable of being scanned or read by a reader/scanning device. Suitable, non-limiting examples of a scannable code tag include a set or string of alphanumeric characters such as “ABC1235-%$3”. Another example is a barcode. The barcode can be coupled with a set or string of alphanumeric characters that can be used as a backup when the barcode is damaged or cannot be scanned properly. In another embodiment, a scannable code tag includes a quick response (QR) code.

The scannable code tag can be one dimensional, two dimensional, three dimensional, or n-dimensional. Dimensionality of the scannable code tag allows for multiple types of information to be encoded into the scannable code tag and retrieved independently from one another. For example, a scannable code tag may be associable with two different user accounts for the same (or different) users. The scannable code tag can embed or represent different handles or logical links that point to these user accounts. In one example, a scannable code comprises a username or an email address associated with a user account. Each of these two types of embedded information can be retrieved independently from one another. In one embodiment, all embedded information is retrieved when the scannable code tag is scanned.

The scannable code tag can be applied to any physical object such as a package, a box, a sign, a letter, a greeting card, a business card, a vehicle, or any other physical article. Any suitable method for applying the scannable code tag to any object is also contemplated such as printing, laser printing, embossing, etching, a decal, a sticker, a tag, or other similar methods or products that would be known to one of ordinary skill in the art with the present disclosure before them. An example scannable code tag is illustrated inFIG. 2, which describes a greeting card with a QR code printed onto the greeting card.

In other embodiments, other types of code tags are utilized. The code tag can be a text code, such as an alphanumeric code or other symbol code, which can be read and entered manually into a computer via user interface, such as a keyboard. In some embodiments, the code tag can be a combination of both an aforesaid scannable code and text code.

In some embodiments, an identifier tag can be used as the code tag or in combination with the code tags described herein. Non-limiting examples of identifiers include any kind of arrangement or pattern of markings, objects, lines, shapes, colors or combination thereof in an image that is recognizable by any type of image recognition technology. For example, in one embodiment, the code tag is represented by one or more 3 dimensional object in a photograph or range scan and readable by a pattern recognition or other image data processing technology. In another embodiment, the code tag is represented by a fingerprint, palm veins, face recognition, DNA, palm print, hand geometry, iris recognition, retina and/or odor/scent or other biometric that is readable by a suitable biometric data processing technology.

Turning toFIG. 1which is a schematic diagram of a computing environment for practicing aspects of the present technology. The environment100generally comprises user devices, such as user device105A and user device105B, server110, data storage115, merchant system120, and network125. In addition to the specific purpose computing elements and algorithms described below, each of the computing devices of the environment100may utilize features of a computing system or machine illustrated inFIG. 6and described in greater detail below. It will be understood that some of the computing elements of the environment100can be combined together, such as the server110and the data storage115.

Components of the environment100such as the server110and data storage115may be implemented in a web server or cloud-based computing environment. A cloud-based computing environment is a resource that typically combines the computational power of a large grouping of processors and/or that combines the storage capacity of a large grouping of computer memories or storage devices. For example, systems that provide a cloud resource may be utilized exclusively by their owners; or such systems may be accessible to outside users who deploy applications within the computing infrastructure to obtain the benefit of large computational or storage resources.

The cloud may be formed, for example, by a network of web servers, with each web server (or at least a plurality thereof) providing processor and/or storage resources. These servers may manage workloads provided by multiple users (e.g., cloud resource customers or other users). Typically, each user places workload demands upon the cloud that vary in real-time, sometimes dramatically. The nature and extent of these variations typically depend on the type of business associated with the user.

In other embodiments, the server110and data storage115may each include a distributed group of computing devices such as web servers that do not share computing resources or workload.

End users may access and interact with the environment via an end user computing device such as user device105A and user device105B. For purposes of clarity, user device105A and user device105B are each similar end user computing devices such as a mobile communications device, a laptop, a computer, or any other computing device that would be known to one of ordinary skill in the art. Only the components of user device105A will be described in greater detail. These same components will be included in user device105B.

For context, user device105A is associated with a first user or sender that owns a scannable code tag of the present technology. User device105B is associated with a second user or recipient that scans the scannable code tag after the scannable code tag has been activated.

The user device105A comprises a processor130, memory135, scanning device140, and network interface145. The processor130is configured to execute instructions that are stored in the memory135. In one embodiment, the memory135is a non-transitory computer readable medium that stores a scanning application, hereinafter referred to as “the app150”. Generally, the App150, when executed by the processor130will allow the user device105A to perform methods in accordance with the present technology. For example, the methods include activating a scannable code tag, establishing a user account, storing and/or requesting a scannable code tags, as well as other related methodologies which will be described in greater detail infra.

The scanning device140of the user device105A may include one or more different types of scanning devices that are configured to read or capture a scannable code tag of the present technology. The exact configuration and operation of the scanning device140will depend upon design requirements such as the type of scannable code tag that needs to be scanned. For example, if a scannable code tag includes a set or string of alphanumeric characters

The server110may communicatively couple with the user devices105A and105B via a network125. The network125may include any one of a number of private and public communications mediums such as the Internet. Other suitable networks may include or interface with any one or more of, for instance, a local intranet, a PAN (Personal Area Network), a LAN (Local Area Network), a WAN (Wide Area Network), a MAN (Metropolitan Area Network), a virtual private network (VPN), a storage area network (SAN), a frame relay connection, an Advanced Intelligent Network (AIN) connection, a synchronous optical network (SONET) connection, a digital T1, T3, E1 or E3 line, Digital Data Service (DDS) connection, DSL (Digital Subscriber Line) connection, an Ethernet connection, an ISDN (Integrated Services Digital Network) line, a dial-up port such as a V.90, V.34 or V.34bis analog modem connection, a cable modem, an ATM (Asynchronous Transfer Mode) connection, or an FDDI (Fiber Distributed Data Interface) or CDDI (Copper Distributed Data Interface) connection. Furthermore, communications may also include links to any of a variety of wireless networks, including WAP (Wireless Application Protocol), GPRS (General Packet Radio Service), GSM (Global System for Mobile Communication), CDMA (Code Division Multiple Access) or TDMA (Time Division Multiple Access), cellular phone networks, GPS (Global Positioning System), CDPD (cellular digital packet data), RIM (Research in Motion, Limited) duplex paging network, Bluetooth radio, or an IEEE 802.11-based radio frequency network. The network125can further include or interface with any one or more of an RS-232 serial connection, an IEEE-1394 (Firewire) connection, a Fiber Channel connection, an IrDA (infrared) port, a SCSI (Small Computer Systems Interface) connection, a USB (Universal Serial Bus) connection or other wired or wireless, digital or analog interface or connection, mesh or Digi® networking. Each of the user devices105A and105B can utilize the network using their respective network interfaces, such as the network interface145of the user device105A.

The server110may generally include a processor155and memory160. The processor155may execute various instructions stored in memory160in order to perform methods described herein. For example, the processor155may execute instructions165stored in memory160to activate and manage a scannable code tag, as well as provide features such as media file delivery, gift or reward provision, group invitation, and other features described herein. The executable instructions may include an application (hereinafter “application170”) that provides the aforementioned activation and management processes.

The server110also includes local storage160A that stores user accounts. For example, user accounts created when the user desires to obtain and use a scannable code tag are stored in the local storage160A. The user account175A is linked to a user space175B in the data store115where media files can be stored for the owner of the user account175A.

Methods executed by the server110may alternatively be executed solely by the user devices105A and105B. Alternatively, the server110and user devices105A and105B may cooperatively execute various portions of the methods described herein. For example, computing intensive functions such as extracting of data embedded into a scannable code tag and automatic group creation may be executed by the server110, while information display, user input, and tag scanning may occur at the user devices105A and105B.

The data storage115may include a distributed or cloud storage system that is capable of or configured to maintain the user space175B for each of a plurality of end users, referred to individually as an owner. The account owner can use the user account to store media files180and maintain group lists185.

The end user is prompted to create a user account175A when the end user downloads the app150to their user device105A. The end user can establish a user profile that includes demographic information about the user, as well as authentication credentials (username and password) for the user. The end user can request, or is automatically provided with, a scannable code tag that is linked to the user account175A.

The server110can generate a unique scannable code tag for the end user. In one example, the scannable code tag is linked to the user account175A using scannable code tag information190such as an identifier. The scannable code tag information190allows the user account175A to be located by the server110when the scannable code tag is scanned by a recipient and a request for a media file is received by the server110from the recipient. The recipient is associated with the user device105B, which also includes the app150.

It will be understood that the app150is configured to both create and maintain user accounts, as well as scan scannable code tags to retrieve information associated with the scannable code tag. Stated otherwise, the app150can be downloaded by and executed by user devices associated with both the user account owner and the party that ultimately scans the scannable code tag. Examples of these processes are described in greater detail inFIG. 3.

In some embodiments, when the user account is created, the end user is required to grant access for information stored on their user device105A to the server110or a merchant system120. The merchant system120is operated by a merchant or vendor who desires to push communications, messages, deals, gifts, rewards, coupons, membership awards, offers or other content to the user device105A. In some embodiments, the merchant system120may directly push these messages to the user device105A. In other embodiments, the merchant system120can leverage the server110to push messages to the user device105A. In some embodiments, sending or pushing communications, messages, deals, gifts, rewards, coupons, incentives or other content to the user device or recipient device is performed in response to operation by a purchaser, original creator and/or the end user.

After the user account175A is established by the server110, the end user can upload one or more media files180to a user space175B created on the data store115. The end user can also specify group lists185that include contact information for potential recipients such as friends, co-workers, social media contacts, students, patients, and the like. The contact information can include email addresses, telephone numbers, social media handles, websites, and so forth.

In some embodiments, the group lists185can be determined from examining contact lists for the end user that reside on the user device105A such as an email address book, a contact list, a customer relations management (CRM) list, or other similar list.

Merchants can access user device information and user account information using their merchant system120. As mentioned above, the end user may be required to grant access to information to third parties, allowing these third parties access to their user information and/or device information.

FIGS. 1-3collectively provide a diagrammatic representation of a method of establishing a user account and code activation method of the present technology. In this embodiment, the end user can create a user account175A by scanning a scannable code tag195. For example, the end user scans the scannable code tag195with the user device105A. The scannable code tag19is printed onto a physical object, such as a greeting card197. The user device105A reads the scannable code tag195with their scanning device140. It can be assumed for this example that the scannable code tag195is a barcode. Thus, the scanning device140used by the app150involves a camera of the scanning device140receiving a view of the scannable code tag195. Again, the scanning executed by the scanning device140can include an IR reader, a near field communications sensor, or other similar scanning device. The app150then reads the scannable code tag using a barcode reading algorithm to extract or recover the scannable code tag information embedded into the scannable code tag. This scannable code tag information corresponds to the scannable code tag information190stored in the user account175A. Thus, it will be understood that the server110has created and reserved user account spaces in data storage115. A particular user account is tied to the unique scannable code tag and the user account is activated by the server110when the user scans the scannable code tag195for the first time. The user can create a user profile for the user account175A as mentioned above.

Also, while this example describes the app150as being configured to read the scannable code tag195and extract information therefrom, the app150may also cooperate with the application170of the server110to accomplish this functionality. For example, the user device150A may obtain a view of the scannable code tag195with the scanning device140and transmit the view to the server110for processing. Thus, the server110can perform functions such as determining what type of scannable code tag is included in the view received from the user device, as well as selecting an appropriate means for reading and extracting information from the determined tag type. For example, if the server110determines that the scannable code tag is a barcode, the server110will used a barcode reading functionality. When the scannable code tag is determined to be a QR code, the server will used a QR code reading functionality. Again, the app150of the user device105A can be configured to also provide these features. The app150may be configured to pass the analysis of the scannable code tag to the server110only if the app150is unable to determine what type of scannable code tag it is or is unable to extract information therefrom.

The user can then upload a video file199, to their user space175B. The video file199is represented in the user space175B as the media file(s)180.

FIG. 3illustrates the delivery of both a video file199and a gift199A to the user device105B of a recipient. It will be understood that the recipient is also required to download the app150to their user device105B. The recipient also creates at least a user profile or grants access to their personal or device specific information. The recipient can also create a user account.

The recipient receives the greeting card197that includes the scannable code tag195that is owned by the owner of the user account175A and the user space175B. The app150of the user device105B scans and reads the scannable code tag information, which includes appropriate information that can be used to query the server110for the user account175A associated with the scannable code tag195.

When a match is found, the server110retrieves the video file199from the media file(s)180of the user space175B because the user space175B is linked to the user account175A. The video file199is delivered to the user device105B. The server110also delivers the gift199A to the user device105B.

Examples of gifts include, but are not limited to, a coupon, a gift card, a prize, a voucher, or other gift or reward. The user can select a desired gift199A and the gift199A is linked to the media file180.

The server110can link the video file199to the gift199A such that when the video file199is delivered to a recipient (user device105B), the gift is provided along with the video file199. For example, the video file199may include executable code that causes a user device to download and display a link to the gift199A or the gift199A itself.FIG. 3illustrates the display of a gift199A in the form of a digital coupon. The gift199A could be presented as post-roll video data, for example similarly to a pre or post roll video advertisement.

The gift199A may also be provided to the recipient by email delivery or physical deliver if the gift is a physical object. For example, the merchant system120can email a coupon to an email address associated with the recipient. The merchant system120can also cause the mailing of the coupon to a mailing address of the recipient.

It will be understood that the user or a third party can link a group invitation to either the media file or the gift such that when a recipient receives either the media file or the gift the recipient is delivered a group invitation that invites the recipient to a join a group. The group may include, for example, a social networking group, an email list, an RSS feed, a blog, a pay service, or other group. Types of groups that are specified or defined depend on the particular sector, such as but not limited business, government, healthcare education, etc. in which the application is to be implemented. By way of non-limiting example, in education, a teacher may generate a group for students for a particular class or grade and use the system to provide lesson content which is accessed upon students scanning the associated code tag on books or the like. There are many different sectors and many different types of groups that may be defined.

In another embodiment, the when a recipient receives either the media file or the gift the recipient is automatically joined to with a group.

Again, the group may be defined by the owner of the user account175A or may be defined by a merchant or vendor that provides the gift that is transmitted to one or more recipients.FIG. 3illustrates the display of a group invitation199B on the user device105B. The group invitation199B can be displayed separately from the gift199A in some instances.

In some embodiments, the server110automatically adds the recipient to a group. The server110can determine a group that the recipient is added to by evaluating their user profile or information obtained from their user device. For example, the server110can scan the user's social media accounts, email communications, or application usage to determine the preferences of the user. Using these preferences, the server110can automatically add the user to one or more groups. As mentioned previously, the server110can add the recipient to a group of the merchant's choosing or a group specified by the owner of the user account175A. In these embodiments, rather than displaying a group invitation199B, the group invitation would be replaced with a notification that the recipient has been automatically enrolled in a group.

FIG. 4is a flowchart of another example method for creating and activating a user account and a scannable code tag. This method is executed by the server110when the processor155of the server110executes the application170. In one embodiment, the method includes the server110establishing400a user account on a network. The network can include the data storage115ofFIG. 1, for example. The user account is configured to store at least media files for an owner of the user account. The server110can create this user account when the user requests creation of the account. For example, when the user downloads the app150(FIG. 1) onto their user device105A, the server110cooperates with the app150to create the user account175A and the user space175B.

Next, the method includes the server110generating405a scannable code tag. In some embodiments, the server110can select the type of scannable code tag or the server110can prompt the user to select a scannable code tag type by the app150. For example, the scannable code tag type can include a barcode, QR code, or any other scannable code tag described herein.

The method includes the server110linking410the scannable code tag with the user account. For example, the server110can create a unique scannable code tag identifier. This scannable code tag identifier190could include a logical link, such as a URL that points to a location of the user account175A on the local storage160A of the server, or the user space175B on the data store115. For example, if the user account175A is located during the query, the user space175B can be accessed because it is linked to the user account175A.

In another example, the scannable code tag identifier could include an identifier, such as a unique username or email address. This scannable code tag identifier is embedded into the scannable code tag and is also stored in the local storage160A with the user account175A. Thus, when the scannable code tag is scanned, the scannable code tag identifier is extracted and can be used to locate the user account175A on the server110. By way of example, a scannable code tag embodied as a barcode can embed a string of characters such as a string of numeric characters “12355”. The string is unique to the owner and the user account175A. When the scannable code tag is scanned, “12355” is extracted and this character string can be queried against the data store115for a user account that corresponds.

In some instances, the scannable code tag is activated when the user account is established. In other instances, the method further includes the server110receiving415a request to activate the scannable code tag. In these instances, the request is generated by a scan of the scannable code tag by a user device associated with the owner of the user account. The activation further requires receiving420a media file from the user device and storing425the media file in the user space associated with the user account.

In one embodiment, the method includes the server110selecting430a group invitation that is associated with the scannable code tag. As mentioned above, the server110can select the group invitation based on a dictate from a merchant, the owner of the user account, or the server110may select the group invitation from examining user and/or device data. For example, the server110can locate an email contact list on the user device of the owner of the user account or user space and add the same to a group list185that is stored in the user account175A or the user space175B in the group list(s)185.

When a recipient scans the scannable code tag, the server110can perform a lookup to determine if the recipient is included in any group lists185that are stored in the user space175B associated with the scannable code tag. If the recipient is included, the server110can deliver the group invitation to the recipient.

As mentioned above, the group invitation can be a forced requirement that the recipient join a particular or selected group. That is, rather than presenting the recipient with an invitation that is optional, the server110can automatically add the recipient to the group. In some embodiments, the group invitation may include an automatic subscribe feature that places the recipient in a group when the recipient scans the activated scannable code tag. In some embodiments, a user and/or recipient can, upon downloading of the application to a user/recipient device or during a subsequent user account set up, configure permissions in the user account to determine the manner in which the recipient, in response to the recipient user device scanning the code tag, is to be added to a group and/or the manner in which the media file or other message is to be presented to the recipient and initiated. In some embodiments, in response to the recipient device scanning the code, the system performs automatic addition of the recipient to the group (absent user/recipient intervention). In some embodiments, automatic addition of the recipient to the group is provided in response to the recipient taking further action after scanning of the code tag, such as but not limited to viewing the media file and/or accepting the group invitation. In some embodiments, other device/user account permissions are configurable such as but not limited to: receiving coupons, rewards, offers or the like either automatically or in response to accepting a group invitation and/or viewing the media file or other message.

In some embodiments, the method includes the server110tracking a variety of metrics that include, but are not limited to media file usage and sharing by a recipient, gift redemption, and group invitation response by the recipient. For example, the server110can determine how many recipients that were presented a group invitation actually joined the group. The app150transmits to the server110if the recipient joins the group. In some embodiments, tracking metrics are demographic information an/or geographic information. Non-limiting examples of tracking metrics are: viewing time of the media file, number of views of the media file, stop and/or start times of viewing the media file, identity and/or types of subject matter being shared, identity and/or types of user devices being utilized, information that is being shared, transmitted and/or received over networks including the internet. The system is configured to track the aforementioned metrics for one or more users and/or one or more recipients. In another example, if the recipient is automatically added to a group, the server110may be informed by the app150if the recipient does not participate in the group or if the user unsubscribes from the group. Other group related behavior of the recipient can also be tracked and analyzed.

It will be understood that in some embodiments, steps400-410of the method occur separately and independently from steps415-430. Additional or fewer steps may also be used in the method without departing from the scope of the technology.

Collectively,FIGS. 5A and 5Bare flowcharts of methods for activating and using a scannable code tag. The method illustrated inFIG. 5Aincludes a process executed by a first user device, such as user device105A, to request creation of a user account, a scannable code tag, as well as using the scannable code tag. The method is executed by a processor executing instructions stored in memory. In some instances, the instructions are embodied on a non-transitory computer readable medium. For example, a user device (105A or105B) can download the app150, which is stored in the memory of the user device.

In one embodiment, the method includes the user device requesting500establishment of a user account on a network. Again, the user account is associated with a user space that is configured to store at least media files for an owner of the user account. The user space can be stored in data storage on a cloud and the user account can be stored locally on a server. In some instances the user account and user space can be collocated on the data store.

The method further comprises the user device requesting505creation of a scannable code tag. As mentioned above, the scannable code tag is linked to the user account such that the owner of the user account owns the scannable code tag. Thus, the user can delete or replace the media files as necessary or desired, but the scannable code tag remains the same.

In some embodiments, the method includes the user device requesting510activation of a scannable code tag by scanning the scannable code tag by a user device associated with the owner of the user account. In this manner, the scannable code tag is pre-generated and pre-exists before then being electronically associated with the user account and the user.

During activation, the method includes the user device uploading515a media file for storage in the user account. For example, the user can create a video file using the user device and upload the same for storage on their user account. Again, a gift or reward can be associated with the media file, as has been described in greater detail above.

Next, the activation includes selecting520a group invitation that is associated with the scannable code tag. For example, a merchant may desire to have anyone who scans the active scannable code tag added to a group, such as a social network group, like a Facebook™ page or a Twitter™ feed of the merchant. The merchant may be allowed to include this automatic group subscribe feature, with or without the consent of the owner of the user account. Each time a recipient scans the scannable code tag, the recipient is added to the group.

FIG. 5Bis a flowchart of a method executed by a second user device, such as user device105B, subsequent to activation of a scannable code tag. The method includes the user device105B scanning525the scannable code tag after activation of the scannable code tag. For example, the user device105B receives a view of the activated scannable code tag using a camera device (scanning device140) of the user device105B. The user device105B reads the scannable code tag information and queries the same against the data store115to locate a user account that corresponds.

Once requested, the method includes the user device105B receiving530a media file stored in the user account. For example, the server110may deliver the media file to the user device105B. Next, the method includes the user device105B receiving535a group invitation or notification of automatic enrollment in a group.

In some embodiments, the method includes optionally receiving540the gift or reward in response to receiving and/or requesting of the media file. This step is optional because the delivery of the gift or reward may be conditional upon the recipient actually viewing or playing the media file.

In one embodiment, the method includes generating545or playing an audio song, tune and/or spoken words in response to scanning of the scannable code tag by a user device associated with the recipient.

In one or more of the aforementioned embodiments, the end user device is configured to generate an audio message, song, name, spoken works, tune, sound effect or any combination therefore either alone in combination with the media file. For example, the audio is electronically associated with the code tag in the same manner as the media file, or is part of the media file itself, and/or is programmed via the device application into the end user device/recipient device so that upon the recipient scanning of the code tag, the audio song, tune, message etc. is played automatically without user/recipient intervention or in response to the media file being accessed. By way of non-limiting example, a birthday song, either generic or personalized by the user, can be played automatically on the recipient device in response to the recipient scanning the code tag.

In yet other embodiments, user account information of the user account associated with the scannable code tag is loaded into an electronic form, or other user application, in response to the recipient scanning the scannable code. In one embodiment, an electronic form, such as a pdf document, is automatically generated on the recipient user device in response to scanning the code tag, and the user account information associated with the code tag is auto populated or filled into the electronic form. The user account permission is configured by the user to allow automatic access to the user account information associated with the code tag upon scanning of the code tag by the recipient. Alternatively, the user account permissions are configurable so that a message request is first sent to the user account, or user of the user account, in response to the code tag being scanned by the user device of the recipient and then the user account information is automatically accessible at the recipient end in response to a reply to the message request allowing such access to the user account information.

In some embodiments, a scannable code tag can be associated with a group of individuals. For example, in one embodiment, a recipient is added to a upon the scanning of the scannable code tag by a user device associated with the recipient. The scannable code tag is updated by associating members of the group, and any received group member messages, to the scannable code tag.

Also, the user/recipient are presented both or either of the group members and any received group messages upon the scanning of the updated scannable.

It will be understood that the term “user” can refer to either a sender or a recipient. A user account or user space can be associated with either a sender or a recipient. Whether a user is a “sender” or a recipient” is based on the context in which the term user is found. For example, the user that uploads a media file for association with a scannable code tag is the “sender”, whereas the user that receives the scannable code tag, scans the scannable code tag, and receives the media file, gift and/or group invitation is the “recipient”,

The example computer system1includes a processor or multiple processors5(e.g., a central processing unit (CPU), a graphics processing unit (GPU), or both), and a main memory10and static memory15, which communicate with each other via a bus20. The computer system1may further include a video display37(e.g., a liquid crystal display (LCD)). The computer system1may also include an alpha-numeric input device(s)30(e.g., a keyboard), a cursor control device (e.g., a mouse), a voice recognition or biometric verification unit (not shown), a drive unit35(also referred to as disk drive unit), a signal generation device40(e.g., a speaker), and a network interface device45. The computer system1may further include a data encryption module (not shown) to encrypt data.

The drive unit35includes a computer or machine-readable medium50on which is stored one or more sets of instructions and data structures (e.g., instructions55) embodying or utilizing any one or more of the methodologies or functions described herein. The instructions55may also reside, completely or at least partially, within the main memory10and/or within the processors5during execution thereof by the computer system1. The main memory10and the processors5may also constitute machine-readable media.

One skilled in the art will recognize that the Internet service may be configured to provide Internet access to one or more computing devices that are coupled to the Internet service, and that the computing devices may include one or more processors, buses, memory devices, display devices, input/output devices, and the like. Furthermore, those skilled in the art may appreciate that the Internet service may be coupled to one or more databases, repositories, servers, and the like, which may be utilized in order to implement any of the embodiments of the disclosure as described herein.

The corresponding structures, materials, acts, and equivalents of all means or step plus function elements in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed. The description of the present technology has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the present technology in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the present technology. Exemplary embodiments were chosen and described in order to best explain the principles of the present technology and its practical application, and to enable others of ordinary skill in the art to understand the present technology for various embodiments with various modifications as are suited to the particular use contemplated. Aspects of the present technology are described above with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the present technology. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.

It is to be understood that the described embodiments of the invention are illustrative only and that modifications thereof may occur to those skilled in the art. Accordingly, this invention is not to be regarded as limited to the embodiments disclosed, but is to be limited only as defined by the appended claims herein. It will further be understood that any features described in relation to any particular embodiment may be featured in combinations with other embodiments, for avoidance of doubt.

REFERENCES (incorporated herein by reference)

Please find references below.