專利名稱:將用戶位置信息自動(dòng)發(fā)布到社交網(wǎng)絡(luò)的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本公開內(nèi)容通常涉及社交網(wǎng)絡(luò)。更具體地,本公開內(nèi)容涉及使用位置感知移動(dòng)系統(tǒng)(location-aware mobile system)的基于互聯(lián)網(wǎng)的社交網(wǎng)絡(luò)。
背景技術(shù):
基于互聯(lián)網(wǎng)的社交網(wǎng)絡(luò)已經(jīng)成為全世界人們?nèi)粘I钪袩o(wú)所不在的部分。像Facebook 、Twitter 、Bebo 、Orkut 和Qzone 那樣的網(wǎng)站已被被數(shù)億人經(jīng)常性地使用。這些網(wǎng)站中的每一個(gè),以及其它的網(wǎng)站,使人們能夠,典型地,基于某種共同或共享的聯(lián)結(jié)關(guān)系,諸如,作為朋友、同事、同學(xué)、親屬,或者通過(guò)共享某種共同的興趣,像音樂(lè)、體育、宗教、業(yè)余愛好等,或者僅因?yàn)楹闷?,而在該網(wǎng)站內(nèi)彼此連接。為了本申請(qǐng)的目的,一般性術(shù)語(yǔ)“朋友”或“朋友們”將被用于描述在特定的基于互聯(lián)網(wǎng)的社交網(wǎng)絡(luò)中的一個(gè)或者更多個(gè)相互連接的用戶,并且一般性術(shù)語(yǔ)“社交網(wǎng)絡(luò)”或“多個(gè)社交網(wǎng)絡(luò)”將被用作指代任意的這樣的基于互聯(lián)網(wǎng)的社交網(wǎng)絡(luò)的網(wǎng)站的占位符號(hào)(placeholder)。在至少一些社交網(wǎng)站中,用戶可以手動(dòng)輸入或發(fā)布該用戶當(dāng)前所處的位置,或者該用戶將要去往的位置,以便通知或更新朋友,雖然這是以非實(shí)時(shí)、手動(dòng)的方式進(jìn)行的。但是,對(duì)于例如在繁忙的大街上正在駕駛、騎車,或正在走路的移動(dòng)著的用戶來(lái)說(shuō),無(wú)法或至少?zèng)]有安全的方法來(lái)安全地提供實(shí)時(shí)的更新或發(fā)布。因此,移動(dòng)用戶需要具備能夠與基于互聯(lián)網(wǎng)的社交網(wǎng)絡(luò)直接通過(guò)接口連接的設(shè)備或系統(tǒng),用來(lái)將位置感知的更新安全地提供給朋友們。
發(fā)明內(nèi)容
在某些例子中,提供了一種將用戶位置信息自動(dòng)發(fā)布到社交網(wǎng)絡(luò)的計(jì)算機(jī)實(shí)現(xiàn)的方法。在該方法中,接收用戶數(shù)據(jù),用戶數(shù)據(jù)包括位置更新激活指示符和一個(gè)或多個(gè)位置更新條件。執(zhí)行對(duì)位置更新激活指示符是否激活的判斷。獲取與移動(dòng)用戶的位置相關(guān)的位置信息。判斷是否滿足至少一個(gè)位置更新條件,并且在滿足至少一個(gè)位置更新條件的情況下,將位置更新自動(dòng)發(fā)布到社交網(wǎng)絡(luò)上。在某些例子中,提供了一種用于將用戶位置信息自動(dòng)發(fā)布到社交網(wǎng)絡(luò)的系統(tǒng)。系統(tǒng)接口接收用戶數(shù)據(jù),用戶數(shù)據(jù)包括位置更新激活指示符和一個(gè)或更多個(gè)位置更新條件。導(dǎo)航引擎獲取與移動(dòng)用戶的位置相關(guān)的信息。與該導(dǎo)航引擎耦合的社交網(wǎng)絡(luò)客戶機(jī)判斷位置更新觸發(fā)器是否被激活,并且被適配成判斷是否滿足至少一個(gè)位置更新條件。與導(dǎo)航引擎和社交網(wǎng)絡(luò)客戶機(jī)相耦合的通信接口被適配成,如果社交網(wǎng)絡(luò)客戶機(jī)判斷滿足至少一個(gè)更新條件,則將位置更新自動(dòng)發(fā)布到社交網(wǎng)絡(luò)。
在研究本文的詳細(xì)說(shuō)明書以及以下附圖后,本領(lǐng)域普通技術(shù)人員將容易理解本申請(qǐng)的各個(gè)方面和特征。圖I示出了依據(jù)本發(fā)明的某些實(shí)施方式的高級(jí)移動(dòng)用戶的操作環(huán)境的一個(gè)示例;圖2示出了依據(jù)本發(fā)明的某些實(shí)施方式的移動(dòng)用戶的移動(dòng)設(shè)備的硬件框圖的一個(gè)示例;圖3示出了依據(jù)本發(fā)明的某些實(shí)施方式的汽車信息娛樂(lè)系統(tǒng)的功能框圖的一個(gè)示例;‘圖4示出了依據(jù)本發(fā)明的某些實(shí)施方式的用于位置感知社交網(wǎng)絡(luò)的自動(dòng)更新流程圖的一個(gè)示例;圖5A、5B和5C分別示出了依據(jù)本發(fā)明的某些實(shí)施方式的應(yīng)用場(chǎng)景的一個(gè)示例。
具體實(shí)施例方式現(xiàn)參考某些實(shí)施方式,在附圖中示出了這些實(shí)施方式的例子。為了清楚起見,在附圖中提供的不同的視圖中,相應(yīng)的特征使用一致的附圖標(biāo)記來(lái)表示。對(duì)于本領(lǐng)域技術(shù)人員來(lái)說(shuō),在仔細(xì)閱讀本本開內(nèi)容后,許多類似設(shè)計(jì)、組合和包將會(huì)變得顯而易見。所有這些設(shè)計(jì)、組合和包都應(yīng)包含在本申請(qǐng)的保護(hù)范圍之內(nèi)。在某些實(shí)現(xiàn)中,揭示了能夠與基于互聯(lián)網(wǎng)的社交網(wǎng)絡(luò)自動(dòng)連接的方法和系統(tǒng),用于向移動(dòng)用戶的朋友安全地提供位置感知的更新。圖I示出了高級(jí)移動(dòng)用戶的操作環(huán)境100的一個(gè)示例。如圖I所示,無(wú)線通信系統(tǒng)110包括無(wú)線通信網(wǎng)絡(luò)集線器(hub) 115。無(wú)線通信系統(tǒng)110可以被全球定位系統(tǒng)(GPS) 120覆蓋。無(wú)線通信系統(tǒng)110可包括任意類型的無(wú)線通信協(xié)議、標(biāo)準(zhǔn)或技術(shù),諸如IEEE 802.11標(biāo)準(zhǔn)(WiFi)、IEEE 802. 16標(biāo)準(zhǔn)(WiMAX)、IS-95標(biāo)準(zhǔn)(CDMA)、ETSI全球移動(dòng)通信系統(tǒng)標(biāo)準(zhǔn)(GSM)、正交頻分復(fù)用標(biāo)準(zhǔn)(OFDM)、單載波頻分多址標(biāo)準(zhǔn)(SC-FDMA)、高速下行分組接入標(biāo)準(zhǔn)(HSDPA)、3GPP長(zhǎng)期演進(jìn)標(biāo)準(zhǔn)(LTE),和類似標(biāo)準(zhǔn)。無(wú)線通信系統(tǒng)110大體上包括廣播中心115(例如,發(fā)送站、基站、接入點(diǎn)等),該廣播中心115可被用于促進(jìn)與移動(dòng)設(shè)備的無(wú)線通信。廣播中心115還可包括與互聯(lián)網(wǎng)的有線或無(wú)線連接。操作環(huán)境100還包括全球定位系統(tǒng)(GPS) 120,其具有一個(gè)或更多個(gè)與之相關(guān)聯(lián)的GPS衛(wèi)星125。在特定的實(shí)現(xiàn)中,系統(tǒng)110還能夠執(zhí)行GPS 120的功能,或者反之亦然。環(huán)境100示出了四種可能的移動(dòng)用戶,分別具有移動(dòng)設(shè)備130a至130d。在本示例中,有兩個(gè)移動(dòng)用戶130a和130c是在汽車中,一個(gè)移動(dòng)用戶具有筆記本電腦130b,一個(gè)移動(dòng)用戶使用了手持設(shè)備130d。雖然本揭示內(nèi)容的焦點(diǎn)在于汽車上的移動(dòng)用戶130a和130c,但是,對(duì)于那些本領(lǐng)域技術(shù)人員將變得顯而易見的是,這些特定的實(shí)施例可等價(jià)地應(yīng)用到具有筆記本電腦的移動(dòng)用戶130b、使用手持設(shè)備的移動(dòng)用戶130d,或者具有在本申請(qǐng)中描述的這些功能或接入這些功能的任意其它移動(dòng)設(shè)備。和移動(dòng)用戶一起,環(huán)境100還示出了四個(gè)興趣點(diǎn)(POI) 140a至140d。為了本揭示內(nèi)容的目的,興趣點(diǎn)(POI)意味著包括所有類型的自然界事物(山、水域、森林、沙漠、地形特征,等),所有類型的人造事物(街道、路口、建筑物、機(jī)場(chǎng)、橋梁、湖泊等),所有類型的系統(tǒng)裝入事物(天氣信息、交通延遲、緊急行動(dòng)等),和所有類型的用戶承載事物(geo-cache坐標(biāo)、家的位置、朋友的聯(lián)絡(luò)信息、預(yù)加載的tweet (用戶發(fā)到tweeter上的信息)等)。在特定的實(shí)現(xiàn)中,例如小汽車的移動(dòng)用戶設(shè)備或系統(tǒng)能夠使用環(huán)境100的知識(shí),基于與GPS 120通過(guò)接口連接并具有POI知識(shí)的位置感知子系統(tǒng),通過(guò)無(wú)線通信系統(tǒng)110向一個(gè)或更多個(gè)社交網(wǎng)絡(luò)自動(dòng)提供關(guān)于POI和/或用戶位置的更新。社交網(wǎng)絡(luò)可以是在線系統(tǒng),其用于建立和保持該在線系統(tǒng)的用戶之間的關(guān)系,可包括向用戶提供接入該在線系統(tǒng)的特征和功能的網(wǎng)站。圖2不出了移動(dòng)用戶的移動(dòng)設(shè)備130的硬件框圖200的一個(gè)不例。如圖2所不,移動(dòng)設(shè)備130可大體上包括一個(gè)或更多個(gè)處理器210,其可被耦合到一個(gè)或更多個(gè)存儲(chǔ)器220上。在特定的實(shí)施方式中,處理器210可結(jié)合存儲(chǔ)器220,并且/或者存儲(chǔ)器220可包括內(nèi)部和/或外部存儲(chǔ)器,這些存儲(chǔ)器可以是固定的和/或可移除的。處理器210也可被耦合到一個(gè)或更多個(gè)通信模塊230上。在特定的實(shí)施方式中,通信模塊230的功能可以由存儲(chǔ)器220中包括的軟件來(lái)實(shí)現(xiàn),該軟件可在處理器210上執(zhí)行,這使得不再需要通信模塊230。
移動(dòng)設(shè)備130還可包括一個(gè)或更多個(gè)接口模塊240,其可被耦合到移動(dòng)模塊230上。在特定的實(shí)施方式中,接口模塊240可包括用于促進(jìn)與外部設(shè)備進(jìn)行有線或無(wú)線通信的裝置,外部設(shè)備是,諸如,可提供互聯(lián)網(wǎng)接入和/或GPS支持的基站、接入點(diǎn)或路由器。這些在本領(lǐng)域中已知的用于促進(jìn)與外部設(shè)備的有線或無(wú)線通信的裝置可包括調(diào)制解調(diào)器、無(wú)線電裝置、天線,和類似裝置(未示出)。在特定的實(shí)施方式中,接口模塊240可包括用于在移動(dòng)用戶和移動(dòng)設(shè)備130之間交互的裝置,諸如,鍵盤、顯示器、麥克風(fēng)、揚(yáng)聲器和/或觸摸屏(未示出)。圖3示出了用于汽車信息娛樂(lè)系統(tǒng)的功能框圖300的一個(gè)示例。如前面所述,僅為了說(shuō)明的目的,在本申請(qǐng)中描述的特定的實(shí)施方式使用了汽車或小汽車,但這并不意味著限制了所附權(quán)利要求的保護(hù)范圍。如圖3所示,汽車頭部單元310可包括GPS 320 (在頭部單元310外部的物理無(wú)線電裝置和天線)、導(dǎo)航引擎330和社交網(wǎng)絡(luò)客戶機(jī)模塊340。在特定的實(shí)施方式中,這些頭部單元310中的一個(gè)或全部的子系統(tǒng)可被放置在頭部單元310的外面,其可簡(jiǎn)單地從這些子系統(tǒng)的輸出獲取輸入,并對(duì)它們進(jìn)行處理以用于后續(xù)傳輸。正如在本示例中所見到的,導(dǎo)航引擎330、社交網(wǎng)絡(luò)客戶機(jī)模塊340和GPS 320被耦合在一起,以用于車輛的頭部單元310中的通信。GPS 320可向?qū)Ш揭?30提供實(shí)時(shí)的或周期性實(shí)時(shí)的位置信息。在本示例中,當(dāng)移動(dòng)用戶在車輛中行駛時(shí),導(dǎo)航引擎330接收位置信息,該位置信息通過(guò)GPS 320自動(dòng)更新。在導(dǎo)航引擎330處,可對(duì)位置信息進(jìn)行反向的地理編碼,例如,以生成街道地址。在特定的實(shí)施方式中,導(dǎo)航引擎330還可使用位置信息以使用戶位置與一個(gè)或更多個(gè)興趣點(diǎn)(POI)相關(guān)聯(lián)。然后,導(dǎo)航引擎330可向社交網(wǎng)絡(luò)客戶機(jī)340提供位置信息,和/或反向地理編碼數(shù)據(jù),和/或相關(guān)聯(lián)的P0I。導(dǎo)航引擎330還可向社交網(wǎng)絡(luò)客戶機(jī)340提供其它的導(dǎo)航相關(guān)信息,諸如,路徑選擇信息、出發(fā)時(shí)間、估計(jì)到達(dá)時(shí)間、當(dāng)前位置、目的地、平均速度、行駛距離和類似信息。社交網(wǎng)絡(luò)客戶機(jī)340從導(dǎo)航引擎330接收數(shù)據(jù),對(duì)該數(shù)據(jù)的內(nèi)容和形式進(jìn)行處理,并將得到的社交媒體更新傳遞給通信接口 350。在特定的實(shí)施方式中,用戶可經(jīng)由諸如用戶接口 390的系統(tǒng)接口將更新優(yōu)選,包括究竟是否進(jìn)行更新,預(yù)先編程到頭部單元中。額外的預(yù)編程用戶數(shù)據(jù)可包括社交網(wǎng)絡(luò)登錄信息,這些類型的數(shù)據(jù)被用在更新和/或嘗試更新的時(shí)候。通常,用戶數(shù)據(jù)可控制在何地、何時(shí),以及如何對(duì)社交網(wǎng)絡(luò)進(jìn)行更新的所有方面。在特定的實(shí)施方式中,用戶接口 390可以是物理上位于頭部單元310上的按鈕、旋鈕、開關(guān)和顯示器(未示出)。用戶接口還可包括用于將外部用戶接口耦合到頭部單元310上的連接器和/或無(wú)線接口。例如,使用藍(lán)牙(Bluetooth )或USB線纜,用戶可將智能手機(jī)(例如,黑莓(Blackberry )、iPhone 等)連接到頭部單元310,這樣,能夠使用智能手機(jī)輸入關(guān)于社交網(wǎng)絡(luò)更新的用戶數(shù)據(jù)。社交網(wǎng)絡(luò)客戶機(jī)340可包括用戶指定的和/或系統(tǒng)默認(rèn)的濾波器和/或隱私策略,以用于處理內(nèi)容的導(dǎo)航數(shù)據(jù)。例如,用戶指定的濾波器可防止從導(dǎo)航引擎330提供給社交網(wǎng)絡(luò)客戶機(jī)340的路線信息被包括在向特定的社交網(wǎng)絡(luò)的發(fā)布中,或者向所有社交網(wǎng)絡(luò)的所有發(fā)布中。社交網(wǎng)絡(luò)客戶機(jī)340可包括社交網(wǎng)絡(luò)發(fā)布準(zhǔn)則、規(guī)則和策略,用于對(duì)導(dǎo)航數(shù)據(jù)的形式進(jìn)行處理,其可作為系統(tǒng)默認(rèn)濾波器和/或隱私策略被包括在內(nèi)。例如,Twitter ·要求所有的tweet都不能大于140個(gè)字符。在某些實(shí)施方式中,社交網(wǎng)絡(luò)客戶機(jī)340 —次可處理不止一個(gè)社交網(wǎng)絡(luò),按照所需要、所要求和所期望的,針對(duì)每一個(gè)社交網(wǎng)絡(luò),可以使用不同的內(nèi)容和形式處理濾波器和策略。由于社交網(wǎng)絡(luò)客戶機(jī)340可提供選通(gating)功能,用于導(dǎo)航引擎330向其提供的任意的或所有的信息,用戶的隱私可像該用戶決定的那樣受到保護(hù)。濾波器的自由度或嚴(yán)格度以及隱私策略可由用戶決定,從而確保了用戶的位置數(shù)據(jù)不會(huì)被發(fā)布到用戶沒(méi)有決定要發(fā)布的任何地方。濾波器和隱私策略是指在用戶之間可以是不同的用戶設(shè)定。例如,用戶可將濾波器設(shè)定成“向Twitter 發(fā)送狀態(tài)更新之前提示我”,這將向用戶提供完全控制,通過(guò)這些控制,將tweet送出到Twitter 。另一方面,用戶可決定完全自動(dòng)地進(jìn)行所有更新,或者使用預(yù)先編程的用戶數(shù)據(jù)、系統(tǒng)默認(rèn)數(shù)據(jù)或者兩者的組合,這樣,經(jīng)由社交網(wǎng)絡(luò)客戶機(jī)340,給出對(duì)任意或所有社交網(wǎng)絡(luò)更新的完全控制。正如在前面所討論的,社交網(wǎng)絡(luò)客戶機(jī)340將后置處理更新傳送給通信接口 350。如圖3所示,通信接口 350可在頭部單元的外部。但是,在特定的實(shí)施例中,其可全部或部分地被集成到頭部單元310中。能夠最終提供與互聯(lián)網(wǎng)的連接的本領(lǐng)域已知的任意無(wú)線通信裝置均可被用作通信接口 350。這樣的通信裝置可包括經(jīng)由耦合的智能手機(jī)、筆記本電腦、smartbook、車載電話和類似設(shè)備的,WiFi、WiMAX, CDMA, GSM、OFDM、LTE,以及類似裝置。通信裝置的具體實(shí)施方式
應(yīng)該至少確保在社交網(wǎng)絡(luò)客戶機(jī)340與互聯(lián)網(wǎng)360上的一個(gè)或更多個(gè)指定的或目標(biāo)的社交網(wǎng)絡(luò)之間的偶發(fā)性連接。雖然在本申請(qǐng)中描述的特定的實(shí)施方式是采用將位置感知更新發(fā)布到一個(gè)或更多個(gè)社交網(wǎng)絡(luò)網(wǎng)站的用戶系統(tǒng)的形式,但應(yīng)該理解,這樣的系統(tǒng)可輕易地被擴(kuò)展成包括使用文本、音頻和/或視頻發(fā)送的SMS消息、語(yǔ)音郵件或電子郵件。本揭示內(nèi)容的范圍意圖包括這樣的擴(kuò)展,以及其它的可能僅要求用于向互聯(lián)網(wǎng)提供數(shù)據(jù)的接入,所提供數(shù)據(jù)在這種情況下為在此描述的位置感知數(shù)據(jù)。圖4示出了位置感知社交網(wǎng)絡(luò)的自動(dòng)更新流程圖400的一個(gè)示例。自動(dòng)更新提供了被自動(dòng)發(fā)送的消息,這些消息在諸如社交網(wǎng)絡(luò)的接收系統(tǒng)處被接收并發(fā)布。具有位置信息的位置更新可被提供作為自動(dòng)更新。這樣,當(dāng)用戶在途中時(shí),用戶位置信息可被自動(dòng)發(fā)送到諸如社交網(wǎng)絡(luò)的接收系統(tǒng)。在步驟410,該流程獲取用戶數(shù)據(jù),這些數(shù)據(jù)可使用具有用戶接口 390功能的接口模塊240來(lái)獲取。用戶數(shù)據(jù)可包括究竟是否進(jìn)行自動(dòng)更新(例如,位置更新),以及額外的預(yù)先編程的用戶優(yōu)選(將在下面進(jìn)一步討論)。在步驟420,在獲取用戶數(shù)據(jù)之后,可通過(guò)檢查用戶編程的自動(dòng)更新指示符來(lái)執(zhí)行對(duì)用戶數(shù)據(jù)是否已經(jīng)執(zhí)行自動(dòng)更新激活的檢查。對(duì)于位置更新,可檢查是否激活了位置更新指示符。如果自動(dòng)更新功能未激活,則該自動(dòng)更新流程將前進(jìn)到步驟430并停止。然而,如果自動(dòng)更新功能已經(jīng)被激活,則流程前進(jìn)到步驟440。在步驟440,檢索位置數(shù)據(jù)(以及可能的其它數(shù)據(jù))。例如,GPS 320可接收GPS信號(hào)(例如,經(jīng)由接口模塊240和通信模塊230),其可在當(dāng)移動(dòng)用戶正在移動(dòng)時(shí)被持續(xù)地或周期性地更新,并且將該信號(hào)翻譯成可用于導(dǎo)航引擎330的處理器210的消息。所翻譯的GPS信號(hào)可代表經(jīng)度和緯度或某些其它的地理特定指示符。在特定的實(shí)施方式中,取代所翻譯 的GPS信號(hào),用戶可經(jīng)由內(nèi)嵌到GPS 320和/或頭部單元310中的用戶接口 390的功能,手動(dòng)輸入經(jīng)度和緯度。然后GPS 320將該信息傳送到導(dǎo)航引擎330。在步驟440,可檢索除位置數(shù)據(jù)以外的其它數(shù)據(jù)。例如,社交網(wǎng)絡(luò)客戶機(jī)340可使用通信接口 350在互聯(lián)網(wǎng)360上建立與一個(gè)或更多個(gè)社交網(wǎng)絡(luò)的連接。該連接可以是在發(fā)布和狀態(tài)更新期間的通信的一部分,或者其可與發(fā)布通信是分開的并且截然不同。一旦社交網(wǎng)絡(luò)客戶機(jī)340經(jīng)由通信接口 350與社交網(wǎng)絡(luò)通信,則它可從社交網(wǎng)絡(luò)獲取朋友數(shù)據(jù),包括朋友位置數(shù)據(jù)。朋友數(shù)據(jù)可以是移動(dòng)用戶通??捎玫年P(guān)于他們?cè)谔囟ɑ蛉我馍缃痪W(wǎng)絡(luò)上的朋友的任意數(shù)據(jù)。然后,社交網(wǎng)絡(luò)客戶機(jī)340可處理朋友數(shù)據(jù)的內(nèi)容和形式。然后所處理的朋友數(shù)據(jù)被提供給導(dǎo)航引擎330。然后,導(dǎo)航引擎330可將經(jīng)處理的朋友數(shù)據(jù)結(jié)合到位置數(shù)據(jù)中。例如,導(dǎo)航引擎330可將朋友的位置數(shù)據(jù)和與移動(dòng)用戶相關(guān)的位置信息關(guān)聯(lián)起來(lái)。在特定的實(shí)施方式中,在執(zhí)行正常的導(dǎo)航系統(tǒng)功能(未示出)時(shí),導(dǎo)航引擎330可使用經(jīng)處理的朋友數(shù)據(jù),包括朋友的位置數(shù)據(jù)。例如,如果朋友數(shù)據(jù)包括諸如朋友的附近位置或地址的朋友位置數(shù)據(jù),則導(dǎo)航引擎330可將朋友的圖標(biāo)(表示朋友相對(duì)于該移動(dòng)用戶的位置)插入導(dǎo)航地圖顯示器(未示出)上,向移動(dòng)用戶指示有朋友在附近。在獲取位置(或其它)數(shù)據(jù)之后,在步驟450執(zhí)行檢查,看自動(dòng)更新條件是否滿足。如果條件滿足,則在步驟460進(jìn)行自動(dòng)更新發(fā)布,隨后在步驟470進(jìn)行檢查,看是否將進(jìn)行另一個(gè)自動(dòng)更新,或者是否期望至少部分基于用戶數(shù)據(jù)執(zhí)行另一個(gè)自動(dòng)更新。關(guān)于一個(gè)或更多個(gè)朋友或POI位置的信息可在所發(fā)布的自動(dòng)更新中提供(例如,位置更新)。如果不滿足自動(dòng)更新條件,則不執(zhí)行自動(dòng)更新發(fā)布,并且在步驟470執(zhí)行檢查。在步驟450,導(dǎo)航引擎330接收由GPS 320提供給它的位置(以及其它)數(shù)據(jù),并將該位置信息與導(dǎo)航信息和/或數(shù)據(jù)關(guān)聯(lián)起來(lái)。例如,導(dǎo)航引擎330可將接收信息的位置關(guān)聯(lián)到GPS 320并與導(dǎo)航信息關(guān)聯(lián)起來(lái),以產(chǎn)生相關(guān)聯(lián)的導(dǎo)航-位置數(shù)據(jù)。在特定的實(shí)施方式中,導(dǎo)航引擎330可使用地圖和行駛數(shù)據(jù),將POI和行駛統(tǒng)計(jì)關(guān)聯(lián)到GPS 320位置信息。導(dǎo)航引擎還可將由社交網(wǎng)絡(luò)客戶機(jī)340提供的朋友位置關(guān)聯(lián)到GPS 320位置信息。導(dǎo)航引擎330訪問(wèn)POI信息,并將移動(dòng)用戶的位置信息與POI的位置相比較。通過(guò)這種方式,例如,導(dǎo)航引擎330可識(shí)別出移動(dòng)用戶在哪個(gè)(哪些)P0I在預(yù)先選擇的距離之內(nèi),并且/或者可識(shí)別出正在或很快將位于該移動(dòng)用戶的附近的一個(gè)或更多個(gè)朋友。導(dǎo)航引擎330還可計(jì)算從移動(dòng)用戶的位置到達(dá)特定的POI和/或朋友位置的行駛時(shí)間,以及到達(dá)所編程的旅程目的地的剩余時(shí)間,以及其它導(dǎo)航統(tǒng)計(jì)。導(dǎo)航引擎330將相關(guān)聯(lián)的導(dǎo)航-位置數(shù)據(jù)傳遞給社交網(wǎng)絡(luò)客戶機(jī)340以進(jìn)行處理。使用該相關(guān)聯(lián)的導(dǎo)航-位置數(shù)據(jù),可對(duì)用戶數(shù)據(jù)執(zhí)行檢查,以確定是否應(yīng)該發(fā)布諸如位置更新的自動(dòng)更新。例如,如果用戶數(shù)據(jù)期望在用戶距離最終旅程目的地10分鐘之內(nèi)時(shí)發(fā)布自動(dòng)更新,則可使用相關(guān)聯(lián)的導(dǎo)航-位置數(shù)據(jù)來(lái)做出該確定?;蛘撸脩粲锌赡芟胍谟脩裘恳淮谓?jīng)過(guò)特定類型的POI或朋友的時(shí)候進(jìn)行自動(dòng)更新發(fā)布。相關(guān)聯(lián)的導(dǎo)航-位置數(shù)據(jù)也可被用于進(jìn)行確定。事實(shí)上,取決于時(shí)間和/或取決于位置的統(tǒng)計(jì)的任意組合都可被用戶設(shè)計(jì)成發(fā)布自動(dòng)更新的條件。通過(guò)這種方式,用戶可預(yù)先確定和/或預(yù)設(shè)在何時(shí)和/或在何處發(fā)布自動(dòng)更新的條件。正如前面所討論的,如果自動(dòng)更新條件滿足,則發(fā)布自動(dòng)更新。社交網(wǎng)絡(luò)客戶機(jī)340對(duì)所接收的導(dǎo)航數(shù)據(jù)的內(nèi)容和形式進(jìn)行處理。在特定的實(shí)施方式中,內(nèi)容和形式的處理是根據(jù)發(fā)布準(zhǔn)則和社交網(wǎng)絡(luò)的規(guī)則和/或根據(jù)在步驟410檢索出的用戶數(shù)據(jù)(例如,發(fā)布濾波器和/或移動(dòng)用戶的隱私選項(xiàng)),將導(dǎo)航數(shù)據(jù)轉(zhuǎn)變成用于一個(gè)或更多個(gè)社交網(wǎng)絡(luò)的一個(gè)或更多個(gè)發(fā)布。社交網(wǎng)絡(luò)客戶機(jī)340將經(jīng)處理的數(shù)據(jù)提供給通信接口 350。通信接口 350可將經(jīng)處理的數(shù)據(jù),或者發(fā)布、狀態(tài)更新等,經(jīng)由互聯(lián)網(wǎng)360發(fā)送到目標(biāo)或預(yù)期的一個(gè)或多個(gè)社交網(wǎng)絡(luò)。在特定的實(shí)施方式中,不帶有限制意義,經(jīng)處理的數(shù)據(jù)可包括,如,移動(dòng)用戶將去往哪里和移動(dòng)用戶從哪里出發(fā)。其可包括,如,在POI附近,或即將到達(dá)POI附近。其可包括導(dǎo)航數(shù)據(jù)和旅程統(tǒng)計(jì),如,到達(dá)最終目的地的時(shí)間或旅程過(guò)去的時(shí)間。這些僅是自動(dòng)更新發(fā)布的示例,而并不意味著對(duì)隨附的權(quán)利要求書的范圍構(gòu)成限制。如果,在步驟470,不進(jìn)行額外的發(fā)布,則該流程前進(jìn)到步驟430并停止。在特定的實(shí)施方式中,當(dāng)距離最終旅程目的地一定的距離或時(shí)間之內(nèi)時(shí),用戶可能僅想要發(fā)布一個(gè)自動(dòng)更新。在該發(fā)布執(zhí)行之后,將無(wú)其它發(fā)布,且流程可結(jié)束。然而,如果用戶想要在沿途每個(gè)POI處都發(fā)布自動(dòng)更新,則導(dǎo)航引擎330將能夠得知沿該旅程是否還有P0I,并且當(dāng)沿途沒(méi)有其它POI存在時(shí),則將不會(huì)進(jìn)行其它發(fā)布,并且該流程將停止。 如果,在步驟470,將要進(jìn)行額外的發(fā)布,則該流程前進(jìn)到步驟480,在此步驟處,將等待下一個(gè)自動(dòng)更新檢查。該等待可以是基于時(shí)間的(例如,從0到幾秒或幾分鐘等)、可以是基于距離的(例如,每I米/英里至每幾米/英里進(jìn)行檢查,等),或者可以具有某些其它基準(zhǔn)(例如,在沿途每次經(jīng)過(guò)POI時(shí)進(jìn)行檢查)。無(wú)論自動(dòng)更新檢查頻率如何,當(dāng)需要進(jìn)行檢查時(shí),流程回到步驟440以獲取位置(以及其它)數(shù)據(jù),然后從該步驟繼續(xù),正如前面所討論的。雖然已經(jīng)依據(jù)圖15中的功能框圖討論了該流程,然而應(yīng)該理解,該流程可以在軟件中實(shí)現(xiàn),并被存儲(chǔ)在存儲(chǔ)器220中,并且在處理器210上執(zhí)行,通過(guò)通信模塊230處理,經(jīng)由接口模塊240與外部通信。圖5A至圖5C示出了應(yīng)用場(chǎng)景的一個(gè)示例。圖5A示出了有限的街道地圖500,在該地圖500上示出了單個(gè)的移動(dòng)用戶510,他/她在本示例中在汽車中從本地圖中某些未知的原點(diǎn)出發(fā),沿著所示出的行駛方向520行駛。又例如,移動(dòng)用戶510行駛到POI 530,對(duì)于本示例,僅有一條路線可用(僅在所示出的路線上行駛)。假定移動(dòng)用戶510具有依據(jù)本發(fā)明的位置感知社交網(wǎng)絡(luò)系統(tǒng)。
移動(dòng)用戶510的系統(tǒng),經(jīng)由位置感知社交網(wǎng)絡(luò)系統(tǒng),可將自動(dòng)更新發(fā)布到社交網(wǎng)絡(luò),諸如“前往POI 530,20分鐘到達(dá)”。或者,移動(dòng)用戶510的系統(tǒng)可將多個(gè)自動(dòng)更新發(fā)布到多個(gè)社交網(wǎng)絡(luò)上,其中的每一個(gè)或者全部都可包括移動(dòng)用戶的經(jīng)度和緯度、速度、起點(diǎn)、行駛時(shí)間、去往目的地的時(shí)間、平均或?qū)嶋H速度、采取的路線、要行駛的路線、當(dāng)前行駛的道路、前進(jìn)方向等中的一個(gè)或更多個(gè)。發(fā)布到哪個(gè)社交網(wǎng)絡(luò)以及在何時(shí)/如何/何地發(fā)布自動(dòng)更新的確定在當(dāng)前的旅程開始之前被預(yù)先編程到移動(dòng)用戶的系統(tǒng)中。圖5B示出了圖5A中的地圖,還示出了額外的POI 531-535。正如所示出的,移動(dòng)用戶510最近經(jīng)過(guò)了 POI 534,并且POI 533處在移動(dòng)用戶510去往POI 530的路線上。POI510、532和535未出現(xiàn)在去往目的地的路線上,但是在地圖視圖上是可見的,并且對(duì)于位置感知社交網(wǎng)絡(luò)系統(tǒng)是可知的。在特定的實(shí)施方式中,取決于預(yù)先編程的用戶數(shù)據(jù),移動(dòng)用戶510的系統(tǒng)目前可將諸如“前往POI 530,20分鐘到達(dá),5分鐘后經(jīng)過(guò)POI 533”的自動(dòng)更新發(fā)布到社交網(wǎng)絡(luò)上?;蛘?,移動(dòng)用戶510的系統(tǒng)可將多個(gè)自動(dòng)更新發(fā)布到多個(gè)社交網(wǎng)絡(luò)上,其中的每一個(gè)或全部都可包括當(dāng)前在移動(dòng)用戶510的地圖視圖內(nèi)的與移動(dòng)用戶510數(shù)據(jù)相’關(guān)聯(lián)或者不相關(guān)聯(lián)的與POI 530-535的任意或全部信息中的一個(gè)或更多個(gè)信息。圖5C示出了圖5B的地圖,增加了移動(dòng)用戶510的兩個(gè)朋友511-512。正如所示出的,朋友511在POI 531處或者附近,而朋友512在POI 532處或者附近。在特定的實(shí)施方式中,取決于預(yù)先編程的用戶數(shù)據(jù),移動(dòng)用戶510的系統(tǒng)目前可將諸如“前往POI 530,5分鐘后經(jīng)過(guò)POI 533,可能偏離路線去往POI 532會(huì)見朋友512”的自動(dòng)更新發(fā)布到社交網(wǎng)絡(luò)上。或者,移動(dòng)用戶510的系統(tǒng)可將多個(gè)更新發(fā)布到多個(gè)社交網(wǎng)絡(luò),其中的每一個(gè)或全部更新可單獨(dú)地或同時(shí)包括朋友511-512的任意或者全部信息中的一個(gè)或更多個(gè)信息,并且與移動(dòng)用戶510數(shù)據(jù)和/或POI 530-535相關(guān)聯(lián)或者不相關(guān)聯(lián),其全部在當(dāng)前都在移動(dòng)用戶510的地圖視圖之內(nèi)。雖然參考其特定的實(shí)施方式已經(jīng)具體描述了位置感知社交網(wǎng)絡(luò),但是對(duì)那些本領(lǐng)域技術(shù)人員來(lái)說(shuō)顯而易見的是,該位置感知社交網(wǎng)絡(luò)可做出不同的改變和變形而不背離本申請(qǐng)的精神和范圍。因此,所覆蓋的范圍將意圖包括這些變形和變化,以使其被包括在所附權(quán)利要求書和它們的等價(jià)物的范圍之內(nèi)。
權(quán)利要求
1.一種將用戶位置信息自動(dòng)發(fā)布到社交網(wǎng)絡(luò)上的計(jì)算機(jī)實(shí)現(xiàn)的方法,包括 接收用戶數(shù)據(jù),所述用戶數(shù)據(jù)包括位置更新激活指示符和一個(gè)或多個(gè)位置更新條件; 確定所述位置更新激活指 示符被激活; 獲取與移動(dòng)用戶的位置相關(guān)的位置信息; 確定滿足至少一個(gè)位置更新條件;以及 如果滿足至少一個(gè)位置更新條件,將位置更新自動(dòng)發(fā)布到所述社交網(wǎng)絡(luò)。
2.如權(quán)利要求I所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括建立無(wú)線互聯(lián)網(wǎng)通信鏈路,而無(wú)需用戶交互,并經(jīng)由所述無(wú)線通信鏈路將所述位置更新自動(dòng)發(fā)布到所述社交網(wǎng)絡(luò)上。
3.如權(quán)利要求2所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括當(dāng)所述移動(dòng)用戶在車輛中行駛時(shí),自動(dòng)更新所述位置信息。
4.如權(quán)利要求I所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中,獲取位置信息的步驟進(jìn)一步包括從全球定位系統(tǒng)(GPS)接收實(shí)時(shí)的或者周期性實(shí)時(shí)的位置信息。
5.如權(quán)利要求4所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括將從所述全球定位系統(tǒng)接收的所述位置信息與導(dǎo)航信息關(guān)聯(lián)起來(lái),以產(chǎn)生相關(guān)聯(lián)的導(dǎo)航-位置數(shù)據(jù)。
6.如權(quán)利要求5所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中,所述確定滿足至少一個(gè)位置更新條件的步驟進(jìn)一步包括,使用所述相關(guān)聯(lián)的導(dǎo)航-位置數(shù)據(jù)對(duì)所述用戶數(shù)據(jù)進(jìn)行檢查,以確定是否應(yīng)該發(fā)布所述位置更新。
7.如權(quán)利要求I所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括與至少一個(gè)社交網(wǎng)絡(luò)建立連接,并從該社交網(wǎng)絡(luò)獲取朋友數(shù)據(jù),包括朋友位置數(shù)據(jù)。
8.如權(quán)利要求7所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括將所述朋友位置數(shù)據(jù)和與所述移動(dòng)用戶相關(guān)的位置信息關(guān)聯(lián)起來(lái)。
9.如權(quán)利要求8所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括計(jì)算從所述移動(dòng)用戶的位置到達(dá)朋友位置的行駛時(shí)間。
10.如權(quán)利要求8所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括在導(dǎo)航顯示地圖上顯示相對(duì)于所述移動(dòng)用戶位置的朋友位置。
11.如權(quán)利要求8所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括在被發(fā)布的所述位置更新中提供關(guān)于一個(gè)或更多個(gè)朋友位置的信息。
12.如權(quán)利要求I所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括訪問(wèn)興趣點(diǎn)位置信息;以及 將與所述移動(dòng)用戶的位置相關(guān)的所述位置信息與一個(gè)或更多個(gè)興趣點(diǎn)的位置進(jìn)行比較。
13.如權(quán)利要求12所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括識(shí)別在與所述移動(dòng)用戶相關(guān)的位置的預(yù)選距離之內(nèi)的興趣點(diǎn);以及 計(jì)算從所述移動(dòng)用戶的位置到達(dá)所識(shí)別出的興趣點(diǎn)中的一個(gè)或更多個(gè)的行駛時(shí)間。
14.如權(quán)利要求12所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括在被發(fā)布的所述位置更新中提供關(guān)于一個(gè)或更多個(gè)興趣點(diǎn)的位置的信息。
15.如權(quán)利要求I所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括使用由以下(a)、(b)、(c)組成的組中的至少一個(gè),以在預(yù)定條件下防止發(fā)布所述位置信息,其中 (a)用戶指定濾波器; (b)系統(tǒng)默認(rèn)濾波器;和(C)隱私策略。
16.如權(quán)利要求I所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中,至少一個(gè)位置更新條件包括以下條件中的至少一個(gè) 取決于時(shí)間的相關(guān)聯(lián)的導(dǎo)航-位置的統(tǒng)計(jì);和 取決于位置的相關(guān)聯(lián)的導(dǎo)航-位置的統(tǒng)計(jì)。
17.如權(quán)利要求I所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括至少部分地基于所述用戶數(shù)據(jù)確定第二位置更新是期望的; 等待下一個(gè)位置更新檢查; 檢索第二位置數(shù)據(jù); 確定滿足第二位置更新條件;以及 將第二位置更新自動(dòng)發(fā)布到所述社交網(wǎng)絡(luò)。
18.一種用于將用戶位置信息自動(dòng)發(fā)布到社交網(wǎng)絡(luò)的系統(tǒng),包括 系統(tǒng)接口,用于接收用戶數(shù)據(jù),該用戶數(shù)據(jù)包括位置更新激活指示符和一個(gè)或更多個(gè)位置更新條件; 導(dǎo)航引擎,用于獲取與移動(dòng)用戶的位置相關(guān)的信息; 社交網(wǎng)絡(luò)客戶機(jī),其與所述導(dǎo)航引擎耦合,所述社交網(wǎng)絡(luò)客戶機(jī)用于確定所述位置更新激活指示符被激活,并確定滿足至少一個(gè)位置更新條件;以及 通信接口,其與所述社交網(wǎng)絡(luò)客戶機(jī)和所述導(dǎo)航引擎耦合,如果所述社交網(wǎng)絡(luò)客戶機(jī)確定滿足至少一個(gè)位置更新條件,所述通信接口用于將位置更新自動(dòng)發(fā)布到所述社交網(wǎng)絡(luò)。
19.如權(quán)利要求18所述的系統(tǒng),其中,所述通信接口用于建立無(wú)線互聯(lián)網(wǎng)通信鏈路,而無(wú)需用戶交互,使得所述位置更新經(jīng)由所述無(wú)線鏈路被自動(dòng)發(fā)布到所述社交網(wǎng)絡(luò)。
20.如權(quán)利要求19所述的系統(tǒng),其中,當(dāng)所述移動(dòng)用戶在車輛中行駛時(shí),所述導(dǎo)航引擎用于接收被自動(dòng)更新的位置信息。
21.如權(quán)利要求18所述的系統(tǒng),其中,所述導(dǎo)航引擎與全球定位系統(tǒng)(GPS)耦合,使得所述導(dǎo)航引擎從所述全球定位系統(tǒng)接收實(shí)時(shí)的或者周期性實(shí)時(shí)的位置信息。
22.如權(quán)利要求21所述的系統(tǒng),其中,所述導(dǎo)航引擎將從所述全球定位系統(tǒng)接收的所述位置信息與導(dǎo)航信息關(guān)聯(lián)起來(lái),以創(chuàng)建相關(guān)聯(lián)的導(dǎo)航-位置數(shù)據(jù)。
23.如權(quán)利要求22所述的系統(tǒng),其中,所述社交網(wǎng)絡(luò)客戶機(jī)從所述導(dǎo)航引擎接收所述相關(guān)聯(lián)的導(dǎo)航-位置數(shù)據(jù),所述社交網(wǎng)絡(luò)客戶機(jī)使用所述相關(guān)聯(lián)的導(dǎo)航-位置數(shù)據(jù)對(duì)所述用戶數(shù)據(jù)執(zhí)行檢查,以確定是否應(yīng)該發(fā)布所述位置更新。
24.如權(quán)利要求18所述的系統(tǒng),其中,所述導(dǎo)航引擎和所述社交網(wǎng)絡(luò)客戶機(jī)設(shè)置在車輛的頭部單元中。
25.如權(quán)利要求18所述的系統(tǒng),其中,所述社交網(wǎng)絡(luò)客戶機(jī)建立與至少一個(gè)社交網(wǎng)絡(luò)的連接,以從該社交網(wǎng)絡(luò)獲取朋友數(shù)據(jù),包括朋友位置數(shù)據(jù)。
26.如權(quán)利要求25所述的系統(tǒng),其中,所述導(dǎo)航引擎將所述朋友位置數(shù)據(jù)和與所述移動(dòng)用戶相關(guān)的位置信息關(guān)聯(lián)起來(lái)。
27.如權(quán)利要求26所述的系統(tǒng),其中,所述導(dǎo)航引擎計(jì)算從所述移動(dòng)用戶的位置到達(dá)朋友位置的行駛時(shí)間。
28.如權(quán)利要求26所述的系統(tǒng),進(jìn)一步包括導(dǎo)航地圖顯示器,其用于顯示相對(duì)于所述移動(dòng)用戶位置的朋友位置。
29.如權(quán)利要求26所述的系統(tǒng),其中,在被發(fā)布的所述位置更新中提供關(guān)于所述一個(gè)或更多個(gè)朋友位置的信息。
30.如權(quán)利要求18所述的系統(tǒng),其中,所述導(dǎo)航引擎用于訪問(wèn)興趣點(diǎn)位置信息,并將與所述移動(dòng)用戶位置相關(guān)的位置信息與所述一個(gè)或多個(gè)興趣點(diǎn)的位置相比較。
31.如權(quán)利要求30所述的系統(tǒng),其中,所述導(dǎo)航引擎用于識(shí)別在與所述移動(dòng)用戶相關(guān)的位置的預(yù)選距離之內(nèi)的興趣點(diǎn),并計(jì)算從所述移動(dòng)用戶的位置到達(dá)所識(shí)別的興趣點(diǎn)中的一個(gè)或更多個(gè)的行駛時(shí)間。
32.如權(quán)利要求30所述的系統(tǒng),其中,在被發(fā)布的所述位置更新中提供關(guān)于一個(gè)或更多個(gè)興趣點(diǎn)的位置的信息。
33.如權(quán)利要求18所述的系統(tǒng),其中,進(jìn)一步地,所述社交網(wǎng)絡(luò)客戶機(jī)使用以下(a)、(b)、(c)中的至少一個(gè),以在預(yù)定條件下防止所述位置信息的發(fā)布,其中 (a)用戶指定濾波器; (b)系統(tǒng)默認(rèn)濾波器;和 (c)隱私策略。
34.如權(quán)利要求17所述的系統(tǒng),其中,至少一個(gè)位置更新條件包括以下條件中的至少一個(gè) 取決于時(shí)間的相關(guān)聯(lián)的導(dǎo)航-位置的統(tǒng)計(jì);和 取決于位置的相關(guān)聯(lián)的導(dǎo)航-位置的統(tǒng)計(jì)。
全文摘要
本發(fā)明公開了能夠與基于互聯(lián)網(wǎng)的社交網(wǎng)絡(luò)自動(dòng)通過(guò)接口連接,以將位置更新安全地提供給移動(dòng)用戶的朋友的方法和系統(tǒng)。尤其是,提供了用于將用戶位置信息自動(dòng)發(fā)布到社交網(wǎng)絡(luò)上的系統(tǒng)和方法。系統(tǒng)接口接收包括位置更新激活指示符和位置更新條件的用戶數(shù)據(jù)。導(dǎo)航引擎獲取與移動(dòng)用戶的當(dāng)前位置相關(guān)的信息。該系統(tǒng)的社交網(wǎng)絡(luò)客戶機(jī)模塊被適配成確定位置激活指示符被激活,并且確定滿足位置更新條件。如果社交網(wǎng)絡(luò)客戶機(jī)確定滿足至少一個(gè)位置更新條件,則通信接口將位置更新發(fā)布到社交網(wǎng)絡(luò)。
文檔編號(hào)H04W4/02GK102984192SQ201110429440
公開日2013年3月20日 申請(qǐng)日期2011年12月20日 優(yōu)先權(quán)日2011年9月7日
發(fā)明者A.巴盧, D.查特吉, R.拉奧 申請(qǐng)人:哈曼國(guó)際工業(yè)有限公司