docs.waku.org/assets/js/1f1f54c7.78b63311.js

1 line
13 KiB
JavaScript
Raw Normal View History

2025-08-13 03:52:48 +00:00
"use strict";(self.webpackChunkwaku_guide=self.webpackChunkwaku_guide||[]).push([[4214],{28453:(e,s,r)=>{r.d(s,{R:()=>i,x:()=>a});var t=r(96540);const n={},o=t.createContext(n);function i(e){const s=t.useContext(o);return t.useMemo(function(){return"function"==typeof e?e(s):{...s,...e}},[s,e])}function a(e){let s;return s=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:i(e.components),t.createElement(o.Provider,{value:s},e.children)}},95470:(e,s,r)=>{r.r(s),r.d(s,{assets:()=>c,contentTitle:()=>a,default:()=>h,frontMatter:()=>i,metadata:()=>t,toc:()=>d});const t=JSON.parse('{"id":"guides/js-waku/store-retrieve-messages","title":"Retrieve Messages Using Store Protocol","description":"This guide provides detailed steps to create a Light Node for retrieving and filtering historical messages using the Store protocol.","source":"@site/docs/guides/js-waku/store-retrieve-messages.md","sourceDirName":"guides/js-waku","slug":"/guides/js-waku/store-retrieve-messages","permalink":"/guides/js-waku/store-retrieve-messages","draft":false,"unlisted":false,"editUrl":"https://github.com/waku-org/docs.waku.org/tree/develop/docs/guides/js-waku/store-retrieve-messages.md","tags":[],"version":"current","lastUpdatedAt":null,"frontMatter":{"title":"Retrieve Messages Using Store Protocol","hide_table_of_contents":true},"sidebar":"guides","previous":{"title":"Send and Receive Messages Using Light Push and Filter","permalink":"/guides/js-waku/light-send-receive"},"next":{"title":"Encrypt, Decrypt, and Sign Your Messages","permalink":"/guides/js-waku/message-encryption"}}');var n=r(74848),o=r(28453);const i={title:"Retrieve Messages Using Store Protocol",hide_table_of_contents:!0},a=void 0,c={},d=[{value:"Create a light node",id:"create-a-light-node",level:2},{value:"Connect to store peers",id:"connect-to-store-peers",level:2},{value:"Choose a content topic",id:"choose-a-content-topic",level:2},{value:"Retrieve messages",id:"retrieve-messages",level:2},{value:"<code>queryWithOrderedCallback</code>",id:"querywithorderedcallback",level:3},{value:"<code>queryGenerator</code>",id:"querygenerator",level:3},{value:"Store query options",id:"store-query-options",level:2},{value:"<code>pageDirection</code>",id:"pagedirection",level:3},{value:"<code>cursor</code>",id:"cursor",level:3},{value:"<code>timeFilter</code>",id:"timefilter",level:3}];function l(e){const s={a:"a",admonition:"admonition",code:"code",h2:"h2",h3:"h3",li:"li",p:"p",pre:"pre",ul:"ul",...(0,o.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(s.p,{children:["This guide provides detailed steps to create a Light Node for retrieving and filtering historical messages using the ",(0,n.jsx)(s.a,{href:"/learn/concepts/protocols#store",children:"Store protocol"}),"."]}),"\n",(0,n.jsx)(s.h2,{id:"create-a-light-node",children:"Create a light node"}),"\n",(0,n.jsxs)(s.p,{children:["Use the ",(0,n.jsx)(s.code,{children:"createLightNode()"})," function to create a Light Node and interact with the Waku Network:"]}),"\n",(0,n.jsx)(s.pre,{children:(0,n.jsx)(s.code,{className:"language-js",children:'import { createLightNode } from "@waku/sdk";\n\n// Create and start a Light Node\nconst node = await createLightNode({ defaultBootstrap: true });\nawait node.start();\n'})}),"\n",(0,n.jsx)(s.h2,{id:"connect-to-store-peers",children:"Connect to store peers"}),"\n",(0,n.jsxs)(s.p,{children:["Use the ",(0,n.jsx)(s.code,{children:"node.waitForPeers()"})," method to wait for the node to connect with Store peers:"]}),"\n",(0,n.jsx)(s.pre,{children:(0,n.jsx)(s.code,{className:"language-js",children:'import { Protocols } from "@waku/sdk";\n\n// Wait for a successful peer connection\nawait node.waitForPeers([Protocols.Store]);\n'})}),"\n",(0,n.jsx)(s.p,{children:"You can also specify a dedicated Store peer to use for queries when creating the node. This is particularly useful when running your own Store node or when you want to use a specific Store node in the network:"}),"\n",(0,n.jsx)(s.pre,{children:(0,n.jsx)(s.code,{className:"language-js",children:'const