[{"data":1,"prerenderedAt":602},["ShallowReactive",2],{"navigation_docs_en":3,"-en-ecosystem-geyservoice":116,"-en-ecosystem-geyservoice-surround":597},[4,18,35,56,69,82,107],{"title":5,"path":6,"stem":7,"children":8,"page":17},"Start","\u002Fen\u002Fstart","en\u002F1.start",[9,13],{"title":10,"path":11,"stem":12},"Overview","\u002Fen\u002Fstart\u002Foverview","en\u002F1.start\u002F1.overview",{"title":14,"path":15,"stem":16},"Quick Start","\u002Fen\u002Fstart\u002Fquick-start","en\u002F1.start\u002F2.quick-start",false,{"title":19,"path":20,"stem":21,"children":22,"page":17},"Client","\u002Fen\u002Fclient","en\u002F2.client",[23,27,31],{"title":24,"path":25,"stem":26},"Client Installation","\u002Fen\u002Fclient\u002Finstallation","en\u002F2.client\u002F1.installation",{"title":28,"path":29,"stem":30},"Client Settings (UI)","\u002Fen\u002Fclient\u002Fsettings","en\u002F2.client\u002F2.settings",{"title":32,"path":33,"stem":34},"Settings.json","\u002Fen\u002Fclient\u002Fsettings-json","en\u002F2.client\u002F3.settings-json",{"title":36,"path":37,"stem":38,"children":39,"page":17},"Server","\u002Fen\u002Fserver","en\u002F3.server",[40,44,48,52],{"title":41,"path":42,"stem":43},"Server Installation","\u002Fen\u002Fserver\u002Finstallation","en\u002F3.server\u002F1.installation",{"title":45,"path":46,"stem":47},"First Server Run","\u002Fen\u002Fserver\u002Ffirst-run","en\u002F3.server\u002F2.first-run",{"title":49,"path":50,"stem":51},"ServerProperties.json","\u002Fen\u002Fserver\u002Fserver-properties","en\u002F3.server\u002F3.server-properties",{"title":53,"path":54,"stem":55},"Server Commands","\u002Fen\u002Fserver\u002Fcommands","en\u002F3.server\u002F4.commands",{"title":57,"path":58,"stem":59,"children":60,"page":17},"Minecraft","\u002Fen\u002Fminecraft","en\u002F4.minecraft",[61,65],{"title":62,"path":63,"stem":64},"McHttp for Bedrock Dedicated Server","\u002Fen\u002Fminecraft\u002Fmchttp-bds","en\u002F4.minecraft\u002F1.mchttp-bds",{"title":66,"path":67,"stem":68},"McWss for Singleplayer Worlds","\u002Fen\u002Fminecraft\u002Fmcwss-singleplayer","en\u002F4.minecraft\u002F2.mcwss-singleplayer",{"title":70,"path":71,"stem":72,"children":73,"page":17},"Operations","\u002Fen\u002Foperations","en\u002F5.operations",[74,78],{"title":75,"path":76,"stem":77},"Update and Backup","\u002Fen\u002Foperations\u002Fupdate-backup","en\u002F5.operations\u002F1.update-backup",{"title":79,"path":80,"stem":81},"Troubleshooting","\u002Fen\u002Foperations\u002Ftroubleshooting","en\u002F5.operations\u002F2.troubleshooting",{"title":83,"path":84,"stem":85,"children":86,"page":17},"Ecosystem","\u002Fen\u002Fecosystem","en\u002F6.ecosystem",[87,91,95,99,103],{"title":88,"path":89,"stem":90},"VoiceCraft Ecosystem","\u002Fen\u002Fecosystem\u002Foverview","en\u002F6.ecosystem\u002F1.overview",{"title":92,"path":93,"stem":94},"VoiceCraft (Repository and Build)","\u002Fen\u002Fecosystem\u002Fvoicecraft-repository","en\u002F6.ecosystem\u002F2.voicecraft-repository",{"title":96,"path":97,"stem":98},"GeyserVoice (Java\u002FGeyser Bridge)","\u002Fen\u002Fecosystem\u002Fgeyservoice","en\u002F6.ecosystem\u002F3.geyservoice",{"title":100,"path":101,"stem":102},"VoiceCraft.Addon (Bedrock Addon)","\u002Fen\u002Fecosystem\u002Fvoicecraft-addon","en\u002F6.ecosystem\u002F4.voicecraft-addon",{"title":104,"path":105,"stem":106},"Integration Recipes","\u002Fen\u002Fecosystem\u002Fintegration-recipes","en\u002F6.ecosystem\u002F5.integration-recipes",{"title":108,"path":109,"stem":110,"children":111,"page":17},"Faq","\u002Fen\u002Ffaq","en\u002F7.faq",[112],{"title":113,"path":114,"stem":115},"FAQ","\u002Fen\u002Ffaq\u002Ffaq","en\u002F7.faq\u002F1.faq",{"id":117,"title":96,"body":118,"description":590,"extension":591,"links":592,"meta":593,"navigation":594,"path":97,"seo":595,"stem":98,"__hash__":596},"docs_en\u002Fen\u002F6.ecosystem\u002F3.geyservoice.md",{"type":119,"value":120,"toc":575},"minimark",[121,125,136,147,152,155,178,182,224,230,236,285,290,350,356,363,370,417,421,430,475,479,482,505,510,514,531,535,548,552],[122,123,96],"h1",{"id":124},"geyservoice-javageyser-bridge",[126,127,128,129],"p",{},"Repository: ",[130,131,135],"a",{"href":132,"rel":133},"https:\u002F\u002Fgithub.com\u002FAvionBlock\u002FGeyserVoice",[134],"nofollow","AvionBlock\u002FGeyserVoice",[126,137,138,142,143,146],{},[139,140,141],"code",{},"GeyserVoice"," links Java server infrastructure (Paper\u002FFolia + proxy) to ",[139,144,145],{},"VoiceCraft.Server",".",[148,149,151],"h2",{"id":150},"supported-plugin-platforms","Supported plugin platforms",[126,153,154],{},"From source code:",[156,157,158,166,172],"ul",{},[159,160,161,162,165],"li",{},"Paper\u002FFolia (",[139,163,164],{},"io.greitan.avion.paper.GeyserVoice",")",[159,167,168,169,165],{},"Velocity (",[139,170,171],{},"io.greitan.avion.velocity.GeyserVoice",[159,173,174,175,165],{},"Bungeecord (",[139,176,177],{},"io.greitan.avion.bungeecord.GeyserVoice",[148,179,181],{"id":180},"installation","Installation",[183,184,185,191,206,212,218],"ol",{},[159,186,187,188,146],{},"Download plugin ",[139,189,190],{},".jar",[159,192,193,194,197,198],{},"Put it into ",[139,195,196],{},"plugins\u002F",":\n",[156,199,200,203],{},[159,201,202],{},"standalone Paper,",[159,204,205],{},"or proxy + backend Paper servers.",[159,207,208,209,146],{},"Start server once to generate ",[139,210,211],{},"plugins\u002FGeyserVoice\u002Fconfig.yml",[159,213,214,215,146],{},"Edit ",[139,216,217],{},"config.yml",[159,219,220,221,146],{},"Run ",[139,222,223],{},"\u002Fvoice reload",[148,225,227,229],{"id":226},"configyml-reference",[139,228,217],{}," reference",[126,231,232,235],{},[139,233,234],{},"config"," block:",[156,237,238,244,250,259,267,273,279],{},[159,239,240,243],{},[139,241,242],{},"debug"," — plugin debug mode.",[159,245,246,249],{},[139,247,248],{},"lang"," — plugin message language.",[159,251,252,255,256,258],{},[139,253,254],{},"host"," — ",[139,257,145],{}," host.",[159,260,261,255,264,266],{},[139,262,263],{},"port",[139,265,145],{}," port.",[159,268,269,272],{},[139,270,271],{},"server-key"," — server auth key used by plugin.",[159,274,275,278],{},[139,276,277],{},"auto-reconnect"," — reconnect when transport is lost.",[159,280,281,284],{},[139,282,283],{},"server-behind-proxy"," — required for Paper behind Velocity\u002FBungee.",[126,286,287,235],{},[139,288,289],{},"voice",[156,291,292,298,304,310,320,326,332,338,344],{},[159,293,294,297],{},[139,295,296],{},"proximity-distance"," — proximity logic distance.",[159,299,300,303],{},[139,301,302],{},"proximity-toggle"," — enable\u002Fdisable proximity mode.",[159,305,306,309],{},[139,307,308],{},"voice-effects"," — enable\u002Fdisable voice effects.",[159,311,312,315,316,319],{},[139,313,314],{},"not-in-voice-symbol"," \u002F ",[139,317,318],{},"in-voice-symbol"," — status symbols.",[159,321,322,325],{},[139,323,324],{},"send-binded-message"," — show message on bind.",[159,327,328,331],{},[139,329,330],{},"send-disconnect-message"," — show message on disconnect.",[159,333,334,337],{},[139,335,336],{},"send-voip-disconnect-message"," — show message when VoIP transport closes.",[159,339,340,343],{},[139,341,342],{},"send-connection-lost-message"," — show message when connection is lost.",[159,345,346,349],{},[139,347,348],{},"position-task-interval"," — position update interval in ticks.",[126,351,352,355],{},[139,353,354],{},"players"," block is internal cache\u002Fautobind data.",[148,357,359,362],{"id":358},"voice-commands",[139,360,361],{},"\u002Fvoice"," commands",[126,364,365,366,369],{},"From ",[139,367,368],{},"BaseVoiceCommand",":",[156,371,372,377,382,387,392,397,402,407,412],{},[159,373,374],{},[139,375,376],{},"connect \u003Chost> \u003Cport> \u003Ckey>",[159,378,379],{},[139,380,381],{},"reconnect [true|false]",[159,383,384],{},[139,385,386],{},"disconnect",[159,388,389],{},[139,390,391],{},"settings",[159,393,394],{},[139,395,396],{},"bind \u003Ckey>",[159,398,399],{},[139,400,401],{},"bindfake \u003Ckey> \u003Cname>",[159,403,404],{},[139,405,406],{},"updatefake \u003Ckey>",[159,408,409],{},[139,410,411],{},"clearautobind",[159,413,414],{},[139,415,416],{},"reload",[148,418,420],{"id":419},"permissions","Permissions",[126,422,365,423,426,427,369],{},[139,424,425],{},"plugin.yml"," and ",[139,428,429],{},"bungee.yml",[156,431,432,438,444,449,454,459,465,470],{},[159,433,434,437],{},[139,435,436],{},"voice.cmd"," (default: true)",[159,439,440,443],{},[139,441,442],{},"voice.connect"," (op)",[159,445,446,443],{},[139,447,448],{},"voice.reconnect",[159,450,451,443],{},[139,452,453],{},"voice.disconnect",[159,455,456,443],{},[139,457,458],{},"voice.settings",[159,460,461,464],{},[139,462,463],{},"voice.bind"," (true)",[159,466,467,443],{},[139,468,469],{},"voice.bindfake",[159,471,472,443],{},[139,473,474],{},"voice.reload",[148,476,478],{"id":477},"proxy-mode-important","Proxy mode (important)",[126,480,481],{},"If backend Paper is behind Velocity\u002FBungee and plugin is present on proxy:",[183,483,484,491,498],{},[159,485,486,487,490],{},"Set ",[139,488,489],{},"server-behind-proxy: true"," on backend Paper.",[159,492,493,494,497],{},"Do not set backend ",[139,495,496],{},"host\u002Fport\u002Fkey"," as source of truth.",[159,499,500,501,504],{},"Keep valid ",[139,502,503],{},"host\u002Fport\u002Fserver-key"," on proxy.",[126,506,507,508,146],{},"In Paper code, reconnect is intentionally skipped when ",[139,509,489],{},[148,511,513],{"id":512},"integration-internals","Integration internals",[156,515,516,522,525],{},[159,517,518,519,146],{},"Plugin messaging channel: ",[139,520,521],{},"geyservoice:main",[159,523,524],{},"In proxy mode, dimensions\u002Fworld IDs are namespaced with backend server name.",[159,526,527,528,530],{},"HTTP transport calls to ",[139,529,145],{}," use a 5-second timeout.",[148,532,534],{"id":533},"current-code-limitations","Current code limitations",[156,536,537,543],{},[159,538,539,542],{},[139,540,541],{},"updatefake"," is currently a placeholder.",[159,544,545,547],{},[139,546,391],{}," command exists but currently has minimal practical logic.",[148,549,551],{"id":550},"production-checklist","Production checklist",[183,553,554,561,567,572],{},[159,555,556,557,560],{},"Restrict ",[139,558,559],{},"\u002Fvoice connect|reload"," to staff roles.",[159,562,563,564,566],{},"Use ",[139,565,283],{}," only on real proxy-backed backends.",[159,568,569,570,146],{},"Ensure stable proxy routing to ",[139,571,145],{},[159,573,574],{},"Configure process supervision (systemd\u002Fpanel\u002Fscreen).",{"title":576,"searchDepth":577,"depth":577,"links":578},"",2,[579,580,581,583,585,586,587,588,589],{"id":150,"depth":577,"text":151},{"id":180,"depth":577,"text":181},{"id":226,"depth":577,"text":582},"config.yml reference",{"id":358,"depth":577,"text":584},"\u002Fvoice commands",{"id":419,"depth":577,"text":420},{"id":477,"depth":577,"text":478},{"id":512,"depth":577,"text":513},{"id":533,"depth":577,"text":534},{"id":550,"depth":577,"text":551},"Repository: AvionBlock\u002FGeyserVoice","md",null,{},true,{"title":96,"description":590},"pU4B2dxB_EQFFvq7jUR-e62l5ODoxtRSB03QROKSFHs",[598,600],{"title":92,"path":93,"stem":94,"description":599,"children":-1},"Repository: AvionBlock\u002FVoiceCraft",{"title":100,"path":101,"stem":102,"description":601,"children":-1},"Repository: AvionBlock\u002FVoiceCraft.Addon",1775616497025]